diff --git a/src/add-ons/media/plugins/ffmpeg/AVCodecDecoder.cpp b/src/add-ons/media/plugins/ffmpeg/AVCodecDecoder.cpp index cb63387a5c..6714aa4d9b 100644 --- a/src/add-ons/media/plugins/ffmpeg/AVCodecDecoder.cpp +++ b/src/add-ons/media/plugins/ffmpeg/AVCodecDecoder.cpp @@ -729,6 +729,9 @@ AVCodecDecoder::_DecodeNextAudioFrame() } status_t decodeAudioChunkStatus = _DecodeNextAudioFrameChunk(); + if (decodeAudioChunkStatus == B_LAST_BUFFER_ERROR + && fRawDecodedAudio->nb_samples > 0) + break; if (decodeAudioChunkStatus != B_OK) return decodeAudioChunkStatus; }