This is the bug/patch tracker for Rockbox. Click here for more information.
Quick links: Bugs · Patches · Rockbox frontpage
FS#9306 - resume for m4a isn't consistent
Attached to Project:
Rockbox
Opened by Kim Harbroe (starjasmine0516) - Wednesday, 20 August 2008, 23:24 GMT+2
Last edited by Andree Buschmann (Buschel) - Monday, 31 January 2011, 16:19 GMT+2
Opened by Kim Harbroe (starjasmine0516) - Wednesday, 20 August 2008, 23:24 GMT+2
Last edited by Andree Buschmann (Buschel) - Monday, 31 January 2011, 16:19 GMT+2
|
DetailsI use a sansa e200 to play m4a files. In the latest version of rockbox r18323M-080820, the bug still exists. I have a version that I use that does not exhibit this behaviour. it is: r17907-080701. Looking back at the daily builds, this lack of resume is still happening in r18043-080715. Steps to duplicate this problem. I have lengthy files. A test file can be found at http://www.sendspace.com/file/9s5x0l I have found that it doesn't matter whether I am at the beginning of a file or in the middle. It will sometimes resume perfectly when I press stop, power the play off, and then start it up and press play, while at others, it jumps to earlier in the file, or to another file altogether. Bookmarking that is created separately from resume playback's list works fine. This faulty resume will also work if the player is stopped, and then play is pressed.
|
This task depends upon
Closed by Andree Buschmann (Buschel)
Monday, 31 January 2011, 16:19 GMT+2
Reason for closing: Fixed
Additional comments about closing: Fixed with r29175.
Monday, 31 January 2011, 16:19 GMT+2
Reason for closing: Fixed
Additional comments about closing: Fixed with r29175.
Steps are:
* start playing
* seek to somewhere in the file, remember where
* pres Stop (long play on c200)
* shutdown the player
* start the player
* choose "resume playback"
Sometimes it will resume at another place in the file (I only had one file on the player). This seems to include times beyond the end of file, as sometimes the WPS shows a timestamp equal to the length of the file
buffering >| Q_RESET_HANDLE 2
buffering < Q_RESET_HANDLE 2
reset_handle(2)
fill_buffer()
buffer_handle(2)
buffering >| Q_BUFFER_HANDLE 2
ata_sleep()
buffering < Q_BUFFER_HANDLE 2
buffer_handle(2)
(The handles are closed after this, and playback stops. Didn't have any other logfs enabled at this point, so I don't know why.)
Notice the ata_sleep() (which ought to be the call in fill_buffer), which is called due to buffer_handle being interrupted while processing the last handle. ata_sleep isn't supposed to be called in this case, queue isn't empty. Don't know if this is related to the resume problem though. :)
The byte offset is very close to the desired position (actual file offset at stop, minus pcmbuf latency times bitrate).