Update bundled yt-dlp and report source failures in chat
The image shipped a year-old yt-dlp, which YouTube now rejects with "The page needs to be reloaded". Bumped to 2026.08.19 and documented rebuilding as the standard fix, including how to pass a newer tag without waiting for a repository update. A downloader dying mid-stream also looked exactly like a very short track: ffmpeg saw EOF, the player advanced, and the channel only got "queue finished". The failure reason now reaches the chat. Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
This commit is contained in:
co-authored by
Claude Opus 5
parent
823a9f1565
commit
315760e076
@@ -110,6 +110,8 @@ export interface PlaybackInput {
|
||||
input: string | Readable;
|
||||
inputOptions: string[];
|
||||
cleanup(): void;
|
||||
/** Resolves with a reason if the downloader died on its own, for reporting. */
|
||||
failure?: Promise<string | null>;
|
||||
}
|
||||
|
||||
const HTTP_RESILIENCE = [
|
||||
@@ -139,5 +141,10 @@ export async function openPlayback(track: Track, seekSeconds = 0): Promise<Playb
|
||||
}
|
||||
|
||||
const proc = ytdlp.openAudioStream(track.url);
|
||||
return { input: proc.stream, inputOptions: [], cleanup: () => proc.kill() };
|
||||
return {
|
||||
input: proc.stream,
|
||||
inputOptions: [],
|
||||
cleanup: () => proc.kill(),
|
||||
failure: proc.failure,
|
||||
};
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user