• Status Closed
  • Percent Complete
  • Task Type Bugs
  • Category Music playback
  • Assigned To No-one
  • Operating System All players
  • Severity Low
  • Priority Very Low
  • Reported Version
  • Due in Version Undecided
  • Due Date Undecided
  • Votes
  • Private
Attached to Project: Rockbox
Opened by MikeS - 2006-07-30
Last edited by pondlife - 2007-07-31

FS#5747 - Playback from previous song keeps playing when skipping tracks

When playing a song and *pausing* it, select another track by using joystick right/left or hitting the select button to browse for another sound file to play. Should be paused with track ready. Start playback.

For about a .5-1 second, the previous sound file will continue playback where it left off (peak meters and all) then abruptly start playing the current selection.

Stop doesn’t have this problem.

Closed by  pondlife
2007-07-31 07:59
Reason for closing:  Fixed
Additional comments about closing:   Warning: Undefined array key "typography" in /home/rockbox/flyspray/plugins/dokuwiki/inc/parserutils.php on line 371 Warning: Undefined array key "camelcase" in /home/rockbox/flyspray/plugins/dokuwiki/inc/parserutils.php on line 407

Should be fixed now.

It probably doesn’t flush the PCM buffer. I’m missing exactly what you do though. You browse for another file, and then click select on it to start it?

MikeS commented on 2006-08-01 01:24

I’m guessing that too.

Start playback on a file.
Make sure that’s paused somewhere (||).
Browse/skip to something else (even »|). Even ~browse~ to the same file. |« Won’t do it on the current file.

Try with several formats several times. I can reproduce this at will. It may not do it on non x5 platforms, however. Some iPod owners said there was no problem.

Confirmed on X5 sim with current CVS.

MikeS commented on 2006-10-27 10:48

I’m pretty sure I now know why this occurs but haven’t confirmed my suspicion. On Coldfire at least the buffer given to DMA may be unpaused but still have data left (BCR0 > 0) and this remaining data will play out where it left off if pcm_play_pause(true) is called until BCR0 decrements to zero. If tracks are skipped, pcm_play_stop() should be used first to reset and start a DMA transfer with new data.

Patch  FS#6266  should resolve this.

amar commented on 2007-07-25 08:02

still present in today’s SVN (r13976-070725) on my h300

Can you say whether this is fixed by patch #6266? Attached is an H300 build including this.


Available keyboard shortcuts


Task Details

Task Editing