From c24964a1eed0ae21d47992f7f4a0c59076bf787a Mon Sep 17 00:00:00 2001 From: Mattias Tall Date: Tue, 26 May 2026 17:39:55 +0200 Subject: [PATCH] Fix quality formats: drop AVC1/MP4 codec restrictions that caused 360p fallback Most modern YouTube videos use VP9/AV1, so the old bestvideo[ext=mp4][vcodec^=avc1] filter always failed and fell through to format codes 22/18 (720p/360p). --merge-output-format mp4 handles the container; no need to restrict codec. Co-Authored-By: Claude Sonnet 4.6 --- backend/services/ytdlp.py | 18 +++++++++--------- 1 file changed, 9 insertions(+), 9 deletions(-) diff --git a/backend/services/ytdlp.py b/backend/services/ytdlp.py index 6447981..5a16e53 100644 --- a/backend/services/ytdlp.py +++ b/backend/services/ytdlp.py @@ -449,15 +449,15 @@ def fetch_dislike_count(youtube_video_id: str) -> int | None: QUALITY_FORMATS = { - "best": "bestvideo[ext=mp4][vcodec^=avc1]+bestaudio[ext=m4a]/bestvideo[ext=mp4]+bestaudio[ext=m4a]/22/18/bestvideo+bestaudio/best", - "2160p": "bestvideo[ext=mp4][height<=2160]+bestaudio[ext=m4a]/bestvideo[height<=2160]+bestaudio/best[height<=2160]", - "1440p": "bestvideo[ext=mp4][height<=1440]+bestaudio[ext=m4a]/bestvideo[height<=1440]+bestaudio/best[height<=1440]", - "1080p": "bestvideo[ext=mp4][vcodec^=avc1][height<=1080]+bestaudio[ext=m4a]/bestvideo[ext=mp4][height<=1080]+bestaudio[ext=m4a]/137+140/22/best[height<=1080]", - "720p": "bestvideo[ext=mp4][vcodec^=avc1][height<=720]+bestaudio[ext=m4a]/bestvideo[ext=mp4][height<=720]+bestaudio[ext=m4a]/22/best[height<=720]", - "480p": "bestvideo[ext=mp4][vcodec^=avc1][height<=480]+bestaudio[ext=m4a]/bestvideo[ext=mp4][height<=480]+bestaudio[ext=m4a]/18/best[height<=480]", - "360p": "bestvideo[ext=mp4][height<=360]+bestaudio[ext=m4a]/18/best[height<=360]", - "240p": "bestvideo[ext=mp4][height<=240]+bestaudio[ext=m4a]/best[height<=240]", - "144p": "bestvideo[ext=mp4][height<=144]+bestaudio[ext=m4a]/best[height<=144]", + "best": "bestvideo+bestaudio/best", + "2160p": "bestvideo[height<=2160]+bestaudio/best[height<=2160]", + "1440p": "bestvideo[height<=1440]+bestaudio/best[height<=1440]", + "1080p": "bestvideo[height<=1080]+bestaudio/best[height<=1080]", + "720p": "bestvideo[height<=720]+bestaudio/best[height<=720]", + "480p": "bestvideo[height<=480]+bestaudio/best[height<=480]", + "360p": "bestvideo[height<=360]+bestaudio/best[height<=360]", + "240p": "bestvideo[height<=240]+bestaudio/best[height<=240]", + "144p": "bestvideo[height<=144]+bestaudio/best[height<=144]", }