diff options
author | Linus Nielsen Feltzing <linus@haxx.se> | 2002-08-08 14:51:58 +0000 |
---|---|---|
committer | Linus Nielsen Feltzing <linus@haxx.se> | 2002-08-08 14:51:58 +0000 |
commit | fe8a7e7f50bd36d846211909c337fe2ab6354b8b (patch) | |
tree | c2959ecd222b7abbd722677ff9e9bbed73108180 | |
parent | 235d9d2565517ec73451390713a443d4fbac000c (diff) | |
download | rockbox-fe8a7e7f50bd36d846211909c337fe2ab6354b8b.tar.gz rockbox-fe8a7e7f50bd36d846211909c337fe2ab6354b8b.zip |
Now handles watermark on MPEG_NEXT
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@1616 a1c6a512-1295-4272-9138-f99709370657
-rw-r--r-- | firmware/mpeg.c | 11 |
1 files changed, 7 insertions, 4 deletions
diff --git a/firmware/mpeg.c b/firmware/mpeg.c index ce50115f05..23af9d480b 100644 --- a/firmware/mpeg.c +++ b/firmware/mpeg.c | |||
@@ -735,17 +735,20 @@ static void mpeg_thread(void) | |||
735 | if ( num_tracks_in_memory() > 1 ) { | 735 | if ( num_tracks_in_memory() > 1 ) { |
736 | int track_offset = (tag_read_idx+1) & MAX_ID3_TAGS_MASK; | 736 | int track_offset = (tag_read_idx+1) & MAX_ID3_TAGS_MASK; |
737 | mp3buf_read = id3tags[track_offset]->mempos; | 737 | mp3buf_read = id3tags[track_offset]->mempos; |
738 | playing = true; | ||
739 | last_dma_tick = current_tick; | ||
740 | init_dma(); | 738 | init_dma(); |
741 | start_dma(); | 739 | last_dma_tick = current_tick; |
742 | track_change(); | ||
743 | 740 | ||
744 | /* should we start reading more data? */ | 741 | /* should we start reading more data? */ |
745 | if(!filling && (get_unplayed_space() < MPEG_LOW_WATER)) { | 742 | if(!filling && (get_unplayed_space() < MPEG_LOW_WATER)) { |
746 | filling = true; | 743 | filling = true; |
747 | queue_post(&mpeg_queue, MPEG_NEED_DATA, 0); | 744 | queue_post(&mpeg_queue, MPEG_NEED_DATA, 0); |
745 | play_pending = true; | ||
746 | } else { | ||
747 | playing = true; | ||
748 | start_dma(); | ||
748 | } | 749 | } |
750 | |||
751 | track_change(); | ||
749 | } | 752 | } |
750 | else { | 753 | else { |
751 | reset_mp3_buffer(); | 754 | reset_mp3_buffer(); |