[vlc-devel] [PATCH 2/2] Add DSF and DFF formats

Marvin Scholz epirat07 at gmail.com
Sun May 27 23:18:12 CEST 2018


---
 extras/package/win32/NSIS/helpers/extensions.nsh |  2 +
 extras/package/win32/msi/extensions.wxs          | 16 +++++
 include/vlc_interface.h                          |  4 +-
 share/Info.plist.in                              | 82 ++++++++++++++++++++++++
 4 files changed, 103 insertions(+), 1 deletion(-)

diff --git a/extras/package/win32/NSIS/helpers/extensions.nsh b/extras/package/win32/NSIS/helpers/extensions.nsh
index 7f2611c687..c7fc6629f5 100644
--- a/extras/package/win32/NSIS/helpers/extensions.nsh
+++ b/extras/package/win32/NSIS/helpers/extensions.nsh
@@ -133,6 +133,8 @@ FunctionEnd
   !insertmacro ${_action} Audio ".caf"
   !insertmacro ${_action} Audio ".cda"
   !insertmacro ${_action} Audio ".dts"
+  !insertmacro ${_action} Audio ".dsf"
+  !insertmacro ${_action} Audio ".dff"
   !insertmacro ${_action} Audio ".flac"
   !insertmacro ${_action} Audio ".it"
   !insertmacro ${_action} Audio ".m4a"
diff --git a/extras/package/win32/msi/extensions.wxs b/extras/package/win32/msi/extensions.wxs
index d535679e16..715e171faf 100644
--- a/extras/package/win32/msi/extensions.wxs
+++ b/extras/package/win32/msi/extensions.wxs
@@ -139,6 +139,22 @@
                         <Verb Id='enqueue' Command='Enqueue in VLC media player' TargetFile="vlc.exe" Argument="--started-from-file --playlist-enqueue "%1"" />
                     </Extension>
                 </ProgId>
+                <RegistryValue Root="HKLM" Key="Software\Clients\Media\VLC\Capabilities\FileAssociations" Name=".dsf" Value="VLC.dsf.Document" Type="string" />
+                <RegistryValue Root="HKCR" Key="Applications\vlc.exe\SupportedTypes" Name=".dsf" Value="" Type="string" />
+                <ProgId Id='VLC.dsf.Document' Description='Video File' Icon='vlc.ico' Advertise='no'>
+                    <Extension Id='dsf'>
+                        <Verb Id='open' Command='Play with VLC media player' TargetFile="vlc.exe" Argument="--started-from-file --no-playlist-enqueue "%1"" />
+                        <Verb Id='enqueue' Command='Enqueue in VLC media player' TargetFile="vlc.exe" Argument="--started-from-file --playlist-enqueue "%1"" />
+                    </Extension>
+                </ProgId>
+                <RegistryValue Root="HKLM" Key="Software\Clients\Media\VLC\Capabilities\FileAssociations" Name=".dff" Value="VLC.dff.Document" Type="string" />
+                <RegistryValue Root="HKCR" Key="Applications\vlc.exe\SupportedTypes" Name=".dff" Value="" Type="string" />
+                <ProgId Id='VLC.dff.Document' Description='Video File' Icon='vlc.ico' Advertise='no'>
+                    <Extension Id='dff'>
+                        <Verb Id='open' Command='Play with VLC media player' TargetFile="vlc.exe" Argument="--started-from-file --no-playlist-enqueue "%1"" />
+                        <Verb Id='enqueue' Command='Enqueue in VLC media player' TargetFile="vlc.exe" Argument="--started-from-file --playlist-enqueue "%1"" />
+                    </Extension>
+                </ProgId>
                 <RegistryValue Root="HKLM" Key="Software\Clients\Media\VLC\Capabilities\FileAssociations" Name=".flac" Value="VLC.flac.Document" Type="string" />
                 <RegistryValue Root="HKCR" Key="Applications\vlc.exe\SupportedTypes" Name=".flac" Value="" Type="string" />
                 <ProgId Id='VLC.flac.Document' Description='Video File' Icon='vlc.ico' Advertise='no'>
diff --git a/include/vlc_interface.h b/include/vlc_interface.h
index 85b9d81534..f56eae598b 100644
--- a/include/vlc_interface.h
+++ b/include/vlc_interface.h
@@ -151,7 +151,7 @@ typedef enum vlc_intf_dialog {
 #define INTF_ABOUT_MSG LICENSE_MSG
 
 #define EXTENSIONS_AUDIO_CSV "3ga", "669", "a52", "aac", "ac3", "adt", "adts", "aif", "aifc", "aiff", \
-                         "amb", "amr", "aob", "ape", "au", "awb", "caf", "dts", "flac", "it", "kar", \
+                         "amb", "amr", "aob", "ape", "au", "awb", "caf", "dts", "dsf", "dff", "flac", "it", "kar", \
                          "m4a", "m4b", "m4p", "m5p", "mka", "mlp", "mod", "mpa", "mp1", "mp2", "mp3", "mpc", "mpga", "mus", \
                          "oga", "ogg", "oma", "opus", "qcp", "ra", "rmi", "s3m", "sid", "spx", "tak", "thd", "tta", \
                          "voc", "vqf", "w64", "wav", "wma", "wv", "xa", "xm"
@@ -184,6 +184,8 @@ typedef enum vlc_intf_dialog {
     "*.awb;" \
     "*.caf;" \
     "*.dts;" \
+    "*.dsf;" \
+    "*.dff;" \
     "*.flac;"\
     "*.it;"  \
     "*.kar;" \
diff --git a/share/Info.plist.in b/share/Info.plist.in
index c3f033ab4e..775fc6f257 100644
--- a/share/Info.plist.in
+++ b/share/Info.plist.in
@@ -1175,6 +1175,46 @@
 			<key>NSPersistentStoreTypeKey</key>
 			<string>Binary</string>
 		</dict>
+		<dict>
+			<key>CFBundleTypeExtensions</key>
+			<array>
+				<string>dsf</string>
+			</array>
+			<key>CFBundleTypeIconFile</key>
+			<string>audio.icns</string>
+			<key>CFBundleTypeMIMETypes</key>
+			<array>
+				<string>audio/x-dsf</string>
+			</array>
+			<key>CFBundleTypeName</key>
+			<string>DSD Stream File</string>
+			<key>CFBundleTypeRole</key>
+			<string>Viewer</string>
+			<key>LSTypeIsPackage</key>
+			<false/>
+			<key>NSPersistentStoreTypeKey</key>
+			<string>Binary</string>
+		</dict>
+		<dict>
+			<key>CFBundleTypeExtensions</key>
+			<array>
+				<string>dff</string>
+			</array>
+			<key>CFBundleTypeIconFile</key>
+			<string>audio.icns</string>
+			<key>CFBundleTypeMIMETypes</key>
+			<array>
+				<string>audio/x-dff</string>
+			</array>
+			<key>CFBundleTypeName</key>
+			<string>DSD Interchange File</string>
+			<key>CFBundleTypeRole</key>
+			<string>Viewer</string>
+			<key>LSTypeIsPackage</key>
+			<false/>
+			<key>NSPersistentStoreTypeKey</key>
+			<string>Binary</string>
+		</dict>
 		<dict>
 			<key>CFBundleTypeExtensions</key>
 			<array>
@@ -2373,6 +2413,48 @@
 				</array>
 			</dict>
 		</dict>
+		<dict>
+			<key>UTTypeConformsTo</key>
+			<array>
+				<string>public.audio</string>
+			</array>
+			<key>UTTypeDescription</key>
+			<string>DSD Interchange File</string>
+			<key>UTTypeIdentifier</key>
+			<string>com.philips.dsdiff</string>
+			<key>UTTypeTagSpecification</key>
+			<dict>
+				<key>public.filename-extension</key>
+				<array>
+					<string>dff</string>
+				</array>
+				<key>public.mime-type</key>
+				<array>
+					<string>audio/x-dff</string>
+				</array>
+			</dict>
+		</dict>
+		<dict>
+			<key>UTTypeConformsTo</key>
+			<array>
+				<string>public.audio</string>
+			</array>
+			<key>UTTypeDescription</key>
+			<string>DSD Stream File</string>
+			<key>UTTypeIdentifier</key>
+			<string>com.sony.dsf</string>
+			<key>UTTypeTagSpecification</key>
+			<dict>
+				<key>public.filename-extension</key>
+				<array>
+					<string>dsf</string>
+				</array>
+				<key>public.mime-type</key>
+				<array>
+					<string>audio/x-dsf</string>
+				</array>
+			</dict>
+		</dict>
 	</array>
 </dict>
 </plist>
-- 
2.15.1 (Apple Git-101)



More information about the vlc-devel mailing list