From 5b8504ec497c79884881865133e8b80f4836ddf0 Mon Sep 17 00:00:00 2001 From: Alex Shnitman Date: Tue, 11 Apr 2023 19:44:02 +0300 Subject: [PATCH] custom postprocessors overrite built-in ones, and writethumbnail can be set to false (closes #245, closes #246) --- app/dl_formats.py | 16 ++++++++-------- 1 file changed, 8 insertions(+), 8 deletions(-) diff --git a/app/dl_formats.py b/app/dl_formats.py index 8de79e9..68e73bf 100644 --- a/app/dl_formats.py +++ b/app/dl_formats.py @@ -58,26 +58,26 @@ def get_opts(format: str, quality: str, ytdl_opts: dict) -> dict: opts = copy.deepcopy(ytdl_opts) - if "postprocessors" not in opts: - opts["postprocessors"] = [] + postprocessors = [] if format in AUDIO_FORMATS: - opts["postprocessors"].append({ + postprocessors.append({ "key": "FFmpegExtractAudio", "preferredcodec": format, "preferredquality": 0 if quality == "best" else quality, }) #Audio formats without thumbnail - if format not in ("wav"): + if format not in ("wav") and "writethumbnail" not in opts: opts["writethumbnail"] = True - opts["postprocessors"].append({"key": "FFmpegThumbnailsConvertor", "format": "jpg", "when": "before_dl"}) - opts["postprocessors"].append({"key": "FFmpegMetadata"}) - opts["postprocessors"].append({"key": "EmbedThumbnail"}) + postprocessors.append({"key": "FFmpegThumbnailsConvertor", "format": "jpg", "when": "before_dl"}) + postprocessors.append({"key": "FFmpegMetadata"}) + postprocessors.append({"key": "EmbedThumbnail"}) if format == "thumbnail": opts["skip_download"] = True opts["writethumbnail"] = True - opts["postprocessors"].append({"key": "FFmpegThumbnailsConvertor", "format": "jpg", "when": "before_dl"}) + postprocessors.append({"key": "FFmpegThumbnailsConvertor", "format": "jpg", "when": "before_dl"}) + opts["postprocessors"] = postprocessors + (opts["postprocessors"] if "postprocessors" in opts else []) return opts