Skip to content

Signed-in listeners skip station breaks outright, no silence (0.46.1) - #303

Merged
ralyodio merged 1 commit into
mainfrom
fix/station-breaks-skip-not-silence
Oct 20, 2026
Merged

ralyodio merged 1 commit into
mainfrom
fix/station-breaks-skip-not-silence

Conversation

@ralyodio

Copy link
Copy Markdown
Contributor

Anthony: "don't go silent just don't play the ad at all".

A live stream can't skip ahead, so a pass holder starts up to two minutes behind live: Channel.listenWithoutBreaks hands them the last ~2 min of break-free music at once (their player buffers it), then the live stream minus break bytes. Each skipped spot spends its length of that head start, so there is no gap. Silence (break-silence.ts) is only the fallback once ~24 breaks have used it all; a rejoin refills it. The station page already delays now-playing titles by what the player holds.

Break detection for radio lists now comes from the CBR output byte count (frame-accurate) instead of once-a-second ffmpeg progress.

Tests: new channel test in test/listen-pass.test.ts; full suite 992 pass / 0 fail.

🤖 Generated with Claude Code

…0.46.1)

A pass holder now gets the last two minutes of break-free music at once and
then the live stream with break bytes left out; each skipped spot spends its
length of that head start, so the player never hears a gap. Silence is only
the fallback once the head start is spent (about 24 breaks), and a rejoin
refills it. Break detection for radio lists is now from the CBR output byte
count (to the frame) instead of once-a-second progress.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
@ralyodio
ralyodio merged commit 0849121 into main Oct 20, 2026
2 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant