diff options
author | Michael Sevakis <jethead71@rockbox.org> | 2017-04-06 19:32:35 -0400 |
---|---|---|
committer | Michael Sevakis <jethead71@rockbox.org> | 2017-04-06 19:32:35 -0400 |
commit | 5e4532c87cf747600ec1d7ae22531e89ecdce6a4 (patch) | |
tree | d65ce6f0c4fb0fd6b214ccf5f12414739f0160cd /apps/playback.c | |
parent | 1597c4fe343f4fee0821f590b592341a00362d85 (diff) | |
download | rockbox-5e4532c87cf747600ec1d7ae22531e89ecdce6a4.tar.gz rockbox-5e4532c87cf747600ec1d7ae22531e89ecdce6a4.zip |
Fix a problem with audio not starting on a list of short files
Forced audio start was left out when a third codec attempts to
start a second track transition. Only one pending transition is
allowed at a time. There wouldn't be enough PCM in the buffer to
trigger audio playback and audio would just return without giving
the pcm buffer a kick.
Fixes FS#13100 - Player failed on short tracks
Change-Id: I338b0b12022c591930451fd5ed26a2a73008835f
Diffstat (limited to 'apps/playback.c')
-rw-r--r-- | apps/playback.c | 7 |
1 files changed, 7 insertions, 0 deletions
diff --git a/apps/playback.c b/apps/playback.c index 8a25375fec..54410ad2cc 100644 --- a/apps/playback.c +++ b/apps/playback.c @@ -2376,9 +2376,16 @@ static void audio_on_codec_complete(int status) Skipping: There was already a skip in progress, remember it and allow no further progress until the PCM from the previous song has finished + + This function will be reentered upon completing the existing + transition in order to do the one that was just tried (below) */ codec_skip_pending = true; codec_skip_status = status; + + /* PCM buffer must know; audio could still be filling and hasn't + yet reached the play watermark */ + pcmbuf_start_track_change(TRACK_CHANGE_AUTO_PILEUP); return; } |