summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorThomas Martitz <kugel@rockbox.org>2010-03-03 22:47:05 +0000
committerThomas Martitz <kugel@rockbox.org>2010-03-03 22:47:05 +0000
commit2e99a0f561cd5b48dff16d5723ebb8375272f7ee (patch)
tree125ff8097d7a03395a05d5e708042b198ea4a78b
parentdd95d6ecba27b4bd8afcb0eb1016fd897b51040c (diff)
downloadrockbox-v3.5.tar.gz
rockbox-v3.5.tar.bz2
rockbox-v3.5.zip
Backport r24968 again. svn diff -r PREV was too greedy in the previous commit.v3.5.1-finalv3.5
Make the buffer low-level watermark (and the related anti-skip setting) work again. Update the buffering 'base handle' as new tracks start playing, since this is needed to determine how much playable data is left in the buffer. Should fix the buffering problem reported in the forums (http://forums.rockbox.org/index.php?topic=24014.0), and also makes the usefl line in the buffering thread debug screen useful again. git-svn-id: svn://svn.rockbox.org/rockbox/branches/v3_5@25010 a1c6a512-1295-4272-9138-f99709370657
-rw-r--r--apps/playback.c2
1 files changed, 2 insertions, 0 deletions
diff --git a/apps/playback.c b/apps/playback.c
index b7078441c2..90a5e4384b 100644
--- a/apps/playback.c
+++ b/apps/playback.c
@@ -1565,6 +1565,7 @@ static int audio_check_new_track(void)
/* Move to the new track */
track_ridx = (track_ridx + ci.new_track) & MAX_TRACK_MASK;
+ buf_set_base_handle(CUR_TI->audio_hid);
if (automatic_skip)
@@ -1723,6 +1724,7 @@ static void audio_play_start(size_t offset)
sound_set_volume(global_settings.volume);
track_widx = track_ridx = 0;
+ buf_set_base_handle(-1);
/* Clear all track entries. */
for (i = 0; i < MAX_TRACK; i++) {