def report_conflict(arg1, arg2):
write_string('WARNING: %s is ignored since %s was given\n' % (arg2, arg1), out=sys.stderr)
+
if opts.remuxvideo and opts.recodevideo:
report_conflict('--recode-video', '--remux-video')
opts.remuxvideo = False
+ if opts.sponskrub_cut and opts.split_chapters and opts.sponskrub is not False:
+ report_conflict('--split-chapter', '--sponskrub-cut')
+ opts.sponskrub_cut = False
+
if opts.allow_unplayable_formats:
if opts.extractaudio:
report_conflict('--allow-unplayable-formats', '--extract-audio')
})
if not already_have_thumbnail:
opts.writethumbnail = True
- # XAttrMetadataPP should be run after post-processors that may change file
- # contents
- if opts.xattrs:
- postprocessors.append({'key': 'XAttrMetadata'})
- # This should be below all ffmpeg PP because it may cut parts out from the video
+ # This should be below most ffmpeg PP because it may cut parts out from the video
# If opts.sponskrub is None, sponskrub is used, but it silently fails if the executable can't be found
if opts.sponskrub is not False:
postprocessors.append({
'force': opts.sponskrub_force,
'ignoreerror': opts.sponskrub is None,
})
+ if opts.split_chapters:
+ postprocessors.append({'key': 'FFmpegSplitChapters'})
+ # XAttrMetadataPP should be run after post-processors that may change file contents
+ if opts.xattrs:
+ postprocessors.append({'key': 'XAttrMetadata'})
# ExecAfterDownload must be the last PP
if opts.exec_cmd:
postprocessors.append({