Skip to content

Implementing gapless playback #169

Answered by pdeljanov
Giesch asked this question in Q&A
Discussion options

You must be logged in to vote

Hi @Giesch,

Regarding Symphonia, all you need to do is set enable_gapless to true. This options tells a FormatReader to process the gapless metadata and provide trimming information in the Packets. The Decoders will then use that trimming information to chop off the encoder delay and padding samples when required.

It is then your responsibility to seamlessly join the output of your current track and your next track. To accomplish this, you must deal with a few things.

First, you must always preload your next track. My recommendation here is to trigger the preloading of the next track at the time the current track begins playing. Preloading should be done on another thread ideally because …

Replies: 1 comment

Comment options

You must be logged in to vote
0 replies
Answer selected by Giesch
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Category
Q&A
Labels
None yet
2 participants