From 58c3c7ae38b9c0f5837595eb4027bd2650ae4e09 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Jaime=20Marqui=CC=81nez=20Ferra=CC=81ndiz?= Date: Wed, 15 Jan 2014 12:59:15 +0100 Subject: [PATCH] =?UTF-8?q?Don=E2=80=99t=20try=20to=20merge=20the=20format?= =?UTF-8?q?s=20if=20ffmpeg=20or=20avconv=20are=20not=20installed?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- youtube_dl/YoutubeDL.py | 10 +++++++++- 1 file changed, 9 insertions(+), 1 deletion(-) 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 @@ def dl(name, info): 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 @@ def dl(name, info): 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