summary refs log tree commit diff
diff options
context:
space:
mode:
authorJaime Marquínez Ferrándiz <jaime.marquinez.ferrandiz@gmail.com>2014-01-15 12:59:15 +0100
committerJaime Marquínez Ferrándiz <jaime.marquinez.ferrandiz@gmail.com>2014-01-15 12:59:15 +0100
commit58c3c7ae38b9c0f5837595eb4027bd2650ae4e09 (patch)
tree38d7cac627a069bec1f551ad72a98d94cac994ce
parenta9f53ce7ea10d0f69e09bd38d4ab60d079229d93 (diff)
downloadyoutube-dl-58c3c7ae38b9c0f5837595eb4027bd2650ae4e09.tar.gz
youtube-dl-58c3c7ae38b9c0f5837595eb4027bd2650ae4e09.tar.xz
youtube-dl-58c3c7ae38b9c0f5837595eb4027bd2650ae4e09.zip
Don’t try to merge the formats if ffmpeg or avconv are not installed
-rw-r--r--youtube_dl/YoutubeDL.py10
1 files changed, 9 insertions, 1 deletions
diff --git a/youtube_dl/YoutubeDL.py b/youtube_dl/YoutubeDL.py
index d40314ee5..a0ab89b3d 100644
--- a/youtube_dl/YoutubeDL.py
+++ b/youtube_dl/YoutubeDL.py
@@ -908,6 +908,14 @@ class YoutubeDL(object):
                     if info_dict.get('requested_formats') is not None:
                         downloaded = []
                         success = True
+                        merger = FFmpegMergerPP(self)
+                        if not merger._get_executable():
+                            postprocessors = []
+                            self.report_warning('You have requested multiple '
+                                'formats but ffmpeg or avconv are not installed.'
+                                ' The formats won\'t be merged')
+                        else:
+                            postprocessors = [merger]
                         for f in info_dict['requested_formats']:
                             new_info = dict(info_dict)
                             new_info.update(f)
@@ -916,7 +924,7 @@ class YoutubeDL(object):
                             downloaded.append(fname)
                             partial_success = dl(fname, new_info)
                             success = success and partial_success
-                        info_dict['__postprocessors'] = [FFmpegMergerPP(self)]
+                        info_dict['__postprocessors'] = postprocessors
                         info_dict['__files_to_merge'] = downloaded
                     else:
                         # Just a single file