flac icon indicating copy to clipboard operation
flac copied to clipboard

FLAC decoder falls into an infinite read loop if ogg stream serialno changes

Open alxvasilev opened this issue 1 year ago • 7 comments

With some ogg/FLAC online radios, the stream serialno changes with each song. This causes the decoder, at the start of the next song, to enter an infinite loop of calling the read callback and discarding the data, not outputting any decoded data and not returning from FLAC__stream_decoder_process_single() until the read callback returns an ABORT. Even if the callback returns FLAC__STREAM_DECODER_READ_STATUS_END_OF_STREAM, the infinite loop is not aborted. Commenting out the line in framing.c in libogg: if(serialno!=os->serialno)return(-1); solves the issue for my use case.

alxvasilev avatar Mar 15 '23 19:03 alxvasilev