summaryrefslogtreecommitdiff
path: root/apps/playback.c
diff options
context:
space:
mode:
authorMichael Sevakis <jethead71@rockbox.org>2017-04-06 19:32:35 -0400
committerMichael Sevakis <jethead71@rockbox.org>2017-04-06 19:32:35 -0400
commit5e4532c87cf747600ec1d7ae22531e89ecdce6a4 (patch)
treed65ce6f0c4fb0fd6b214ccf5f12414739f0160cd /apps/playback.c
parent1597c4fe343f4fee0821f590b592341a00362d85 (diff)
downloadrockbox-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.c7
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)
2376 Skipping: There was already a skip in progress, remember it and 2376 Skipping: There was already a skip in progress, remember it and
2377 allow no further progress until the PCM from the previous 2377 allow no further progress until the PCM from the previous
2378 song has finished 2378 song has finished
2379
2380 This function will be reentered upon completing the existing
2381 transition in order to do the one that was just tried (below)
2379 */ 2382 */
2380 codec_skip_pending = true; 2383 codec_skip_pending = true;
2381 codec_skip_status = status; 2384 codec_skip_status = status;
2385
2386 /* PCM buffer must know; audio could still be filling and hasn't
2387 yet reached the play watermark */
2388 pcmbuf_start_track_change(TRACK_CHANGE_AUTO_PILEUP);
2382 return; 2389 return;
2383 } 2390 }
2384 2391