From ab7b1551cc18e1788b7e919043c7d591de80af26 Mon Sep 17 00:00:00 2001 From: ayrisdev Date: Sun, 30 Aug 2026 16:24:12 +0300 Subject: [PATCH] =?UTF-8?q?fix:=20yt-dlp=20format=20se=C3=A7icisini=20best?= =?UTF-8?q?video+bestaudio/best'e=20=C3=A7evir?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Cookie bot-check'i çözdü ama yeni bir hata çıktı: "No video formats found" / "Requested format is not available". AyrisTech'in canlı yayını dikey (1080x1920) ve HLS formatları video-only/audio-only ayrı geliyor — tek parça "best" format hiç yok. Hem live-check hem capture çağrısını "bestvideo+bestaudio/best" seçicisine çevirdik; lokal olarak doğrulandı (yt-dlp video id'yi doğru döndürüyor). Co-Authored-By: Claude Sonnet 5 --- apps/api-daemon/src/capture/streamIngest.ts | 2 +- apps/api-daemon/src/youtubePolling.ts | 1 + 2 files changed, 2 insertions(+), 1 deletion(-) diff --git a/apps/api-daemon/src/capture/streamIngest.ts b/apps/api-daemon/src/capture/streamIngest.ts index ff8f2b9..a01c807 100644 --- a/apps/api-daemon/src/capture/streamIngest.ts +++ b/apps/api-daemon/src/capture/streamIngest.ts @@ -77,7 +77,7 @@ async function runCapture(job: Job): Promise { [ "--extractor-args", "youtube:player_client=android", ...ytdlpCookieArgs(), - "-f", "best", "-o", "-", youtubeUrl, + "-f", "bestvideo+bestaudio/best", "-o", "-", youtubeUrl, ], { stdio: ["ignore", "pipe", "pipe"] }, ); diff --git a/apps/api-daemon/src/youtubePolling.ts b/apps/api-daemon/src/youtubePolling.ts index 2c5585a..012fa5b 100644 --- a/apps/api-daemon/src/youtubePolling.ts +++ b/apps/api-daemon/src/youtubePolling.ts @@ -34,6 +34,7 @@ async function findLiveVideoId(channelId: string): Promise { "--no-warnings", "--extractor-args", "youtube:player_client=android", ...ytdlpCookieArgs(), + "-f", "bestvideo+bestaudio/best", "--print", "%(id)s", liveUrl, ],