aboutsummaryrefslogtreecommitdiff
path: root/youtube_dl/postprocessor/ffmpeg.py
diff options
context:
space:
mode:
authorJaime Marquínez Ferrándiz <jaime.marquinez.ferrandiz@gmail.com>2014-04-12 15:52:42 +0200
committerJaime Marquínez Ferrándiz <jaime.marquinez.ferrandiz@gmail.com>2014-04-12 15:52:42 +0200
commit77477fa4c916599e7eaa236a3f3eb5703923cf91 (patch)
tree527528edd5feb3eccd088ad171d1e868d0a010ea /youtube_dl/postprocessor/ffmpeg.py
parent381640e3acf65e9eac52b6ad47d7f7cad45a7d6d (diff)
parenta169e18ce16567ef123007a22758bcda48d07f92 (diff)
Merge branch 'atomicparsley' (closes #2436)
Diffstat (limited to 'youtube_dl/postprocessor/ffmpeg.py')
-rw-r--r--youtube_dl/postprocessor/ffmpeg.py20
1 files changed, 19 insertions, 1 deletions
diff --git a/youtube_dl/postprocessor/ffmpeg.py b/youtube_dl/postprocessor/ffmpeg.py
index 8922920cd..602e370f4 100644
--- a/youtube_dl/postprocessor/ffmpeg.py
+++ b/youtube_dl/postprocessor/ffmpeg.py
@@ -464,7 +464,11 @@ class FFmpegMetadataPP(FFmpegPostProcessor):
filename = info['filepath']
temp_filename = prepend_extension(filename, 'temp')
- options = ['-c', 'copy']
+ if info['ext'] == u'm4a':
+ options = ['-vn', '-acodec', 'copy']
+ else:
+ options = ['-c', 'copy']
+
for (name, value) in metadata.items():
options.extend(['-metadata', '%s=%s' % (name, value)])
@@ -483,3 +487,17 @@ class FFmpegMergerPP(FFmpegPostProcessor):
self.run_ffmpeg_multiple_files(info['__files_to_merge'], filename, args)
return True, info
+
+class FFmpegAudioFixPP(FFmpegPostProcessor):
+ def run(self, info):
+ filename = info['filepath']
+ temp_filename = prepend_extension(filename, 'temp')
+
+ options = ['-vn', '-acodec', 'copy']
+ self._downloader.to_screen(u'[ffmpeg] Fixing audio file "%s"' % filename)
+ self.run_ffmpeg(filename, temp_filename, options)
+
+ os.remove(encodeFilename(filename))
+ os.rename(encodeFilename(temp_filename), encodeFilename(filename))
+
+ return True, info