summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorMiika Pekkarinen <miipekk@ihme.org>2005-06-07 21:51:29 +0000
committerMiika Pekkarinen <miipekk@ihme.org>2005-06-07 21:51:29 +0000
commitf472410d57b2d71d69d0d9a13511de3ad0e5678a (patch)
tree40a63ba04daf4e658b1ba76ae737bd69f4fecc70
parentb15e546937c57fec340ff737dbb60a8ec79aab55 (diff)
downloadrockbox-f472410d57b2d71d69d0d9a13511de3ad0e5678a.zip
rockbox-f472410d57b2d71d69d0d9a13511de3ad0e5678a.tar.gz
rockbox-f472410d57b2d71d69d0d9a13511de3ad0e5678a.tar.bz2
rockbox-f472410d57b2d71d69d0d9a13511de3ad0e5678a.tar.xz
Previous track button should work a little better.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@6602 a1c6a512-1295-4272-9138-f99709370657
-rw-r--r--apps/playback.c14
1 files changed, 8 insertions, 6 deletions
diff --git a/apps/playback.c b/apps/playback.c
index d600fff..1593b58 100644
--- a/apps/playback.c
+++ b/apps/playback.c
@@ -296,13 +296,10 @@ int mp3_get_file_pos(void);
off_t codec_mp3_get_filepos_callback(int newtime)
{
- int oldtime;
off_t newpos;
- oldtime = cur_ti->id3.elapsed;
cur_ti->id3.elapsed = newtime;
newpos = mp3_get_file_pos();
- cur_ti->id3.elapsed = oldtime;
return newpos;
}
@@ -360,7 +357,11 @@ int probe_file_format(const char *filename)
return AFMT_UNKNOWN;
suffix += 1;
- if (!strcmp("mp3", suffix))
+ if (!strcmp("mp1", suffix))
+ return AFMT_MPA_L1;
+ else if (!strcmp("mp2", suffix))
+ return AFMT_MPA_L2;
+ else if (!strcmp("mp3", suffix))
return AFMT_MPA_L3;
else if (!strcmp("ogg", suffix))
return AFMT_OGG_VORBIS;
@@ -770,10 +771,11 @@ void audio_update_trackinfo(void)
} else {
buf_ridx -= ci.curpos;
codecbufused += ci.curpos;
+ cur_ti->available = cur_ti->filesize;
cur_ti = &tracks[track_ridx];
- buf_ridx -= cur_ti->filesize;
- buf_ridx -= cur_ti->codecsize;
+ buf_ridx -= cur_ti->filesize + cur_ti->codecsize;
+ codecbufused += cur_ti->filesize + cur_ti->codecsize;
cur_ti->available = cur_ti->filesize;
if (buf_ridx < 0)
buf_ridx = codecbuflen + buf_ridx;