summaryrefslogtreecommitdiff
path: root/apps/playback.c
diff options
context:
space:
mode:
authorMagnus Holmgren <magnushol@gmail.com>2010-02-28 13:02:02 +0000
committerMagnus Holmgren <magnushol@gmail.com>2010-02-28 13:02:02 +0000
commit75e105a6a38dde8e3a3d1fc22998271d796c294a (patch)
tree4aef6c0c2f1554da4e4df481d39c6f10d9500506 /apps/playback.c
parent4dad0dd76223d7799f364df5af3a2d7b9fe321d4 (diff)
downloadrockbox-75e105a6a38dde8e3a3d1fc22998271d796c294a.tar.gz
rockbox-75e105a6a38dde8e3a3d1fc22998271d796c294a.zip
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/trunk@24968 a1c6a512-1295-4272-9138-f99709370657
Diffstat (limited to 'apps/playback.c')
-rw-r--r--apps/playback.c2
1 files changed, 2 insertions, 0 deletions
diff --git a/apps/playback.c b/apps/playback.c
index 67ab362c39..536fd614ca 100644
--- a/apps/playback.c
+++ b/apps/playback.c
@@ -1565,6 +1565,7 @@ static int audio_check_new_track(void)
1565 1565
1566 /* Move to the new track */ 1566 /* Move to the new track */
1567 track_ridx = (track_ridx + ci.new_track) & MAX_TRACK_MASK; 1567 track_ridx = (track_ridx + ci.new_track) & MAX_TRACK_MASK;
1568 buf_set_base_handle(CUR_TI->audio_hid);
1568 1569
1569 1570
1570 if (automatic_skip) 1571 if (automatic_skip)
@@ -1723,6 +1724,7 @@ static void audio_play_start(size_t offset)
1723 1724
1724 sound_set_volume(global_settings.volume); 1725 sound_set_volume(global_settings.volume);
1725 track_widx = track_ridx = 0; 1726 track_widx = track_ridx = 0;
1727 buf_set_base_handle(-1);
1726 1728
1727 /* Clear all track entries. */ 1729 /* Clear all track entries. */
1728 for (i = 0; i < MAX_TRACK; i++) { 1730 for (i = 0; i < MAX_TRACK; i++) {