FFmpegMetadataPP; Write temporary file to `something.temp.{ext}` (fixes #2079)
[youtube-dl] / youtube_dl / PostProcessor.py
index 13b56ede5fdb3d66064a8072cdda87787eee1bae..097e1a9e41e67219d4205e8966d311646c9d378f 100644 (file)
@@ -10,6 +10,7 @@ from .utils import (
     PostProcessingError,
     shell_quote,
     subtitles_filename,
+    prepend_extension,
 )
 
 
@@ -496,13 +497,11 @@ class FFmpegMetadataPP(FFmpegPostProcessor):
             return True, info
 
         filename = info['filepath']
-        ext = os.path.splitext(filename)[1][1:]
-        temp_filename = filename + u'.temp'
+        temp_filename = prepend_extension(filename, 'temp')
 
         options = ['-c', 'copy']
         for (name, value) in metadata.items():
-            options.extend(['-metadata', '%s="%s"' % (name, value)])
-        options.extend(['-f', ext])
+            options.extend(['-metadata', '%s=%s' % (name, value)])
 
         self._downloader.to_screen(u'[ffmpeg] Adding metadata to \'%s\'' % filename)
         self.run_ffmpeg(filename, temp_filename, options)