|
@@ -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
|