diff options
author | Miika Pekkarinen <miipekk@ihme.org> | 2005-07-05 15:51:59 +0000 |
---|---|---|
committer | Miika Pekkarinen <miipekk@ihme.org> | 2005-07-05 15:51:59 +0000 |
commit | 3e33a0f8ee62dc37e6e028e5dcb39b91e0e0d154 (patch) | |
tree | 1bcb2fbcda422a064c9d55df3ac7d517693f72f0 /apps | |
parent | d6e79424264147e52f70d9ed34b80e34a9d3c23b (diff) | |
download | rockbox-3e33a0f8ee62dc37e6e028e5dcb39b91e0e0d154.tar.gz rockbox-3e33a0f8ee62dc37e6e028e5dcb39b91e0e0d154.zip |
More crossfade adjustments. Now crossfade should work shortly even if
the disk was not spinning while a new track was loaded from the disk.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@7028 a1c6a512-1295-4272-9138-f99709370657
Diffstat (limited to 'apps')
-rw-r--r-- | apps/playback.c | 7 |
1 files changed, 5 insertions, 2 deletions
diff --git a/apps/playback.c b/apps/playback.c index e251a1ee89..8186cf3191 100644 --- a/apps/playback.c +++ b/apps/playback.c | |||
@@ -614,13 +614,16 @@ void codec_track_changed(void) | |||
614 | queue_post(&audio_queue, AUDIO_TRACK_CHANGED, 0); | 614 | queue_post(&audio_queue, AUDIO_TRACK_CHANGED, 0); |
615 | } | 615 | } |
616 | 616 | ||
617 | /* Give codecs or file buffering the right amount of processing time | ||
618 | to prevent pcm audio buffer from going empty. */ | ||
617 | void yield_codecs(void) | 619 | void yield_codecs(void) |
618 | { | 620 | { |
619 | yield(); | 621 | yield(); |
620 | if (!pcm_is_playing()) | 622 | if (!pcm_is_playing()) |
621 | sleep(5); | 623 | sleep(5); |
622 | while (pcm_is_lowdata() && !ci.stop_codec && | 624 | while ((pcm_is_crossfade_active() || pcm_is_lowdata()) |
623 | playing && queue_empty(&audio_queue) && codecbufused > (128*1024)) | 625 | && !ci.stop_codec && playing && queue_empty(&audio_queue) |
626 | && codecbufused > (128*1024)) | ||
624 | yield(); | 627 | yield(); |
625 | } | 628 | } |
626 | 629 | ||