Rockbox

This is the bug/patch tracker for Rockbox. Click here for more information.

Quick links: Bugs · Patches · Rockbox frontpage

Tasklist

FS#9066 - Threads hanging if force track switching near buffer emptyness

Attached to Project: Rockbox
Opened by Sergey Babichev (bsl84) - Tuesday, 03 June 2008, 07:08 GMT+1
Last edited by Nicolas Pennequin (nicolas_p) - Saturday, 28 June 2008, 16:05 GMT+1
Task Type Bugs
Category Music playback
Status Assigned
Assigned To Nicolas Pennequin (nicolas_p)
Player type All players
Severity Low
Priority Normal
Reported Version current build
Due in Version Undecided
Due Date Undecided
Percent Complete 0%
Private No

Details

Build 17661 (and earlier) on Gigabeat F20, iCatcher.
Playing directory containing FLAC files. Last file ends.
In file browser select and load another track/directory (File still plays).
Result - 'Unknown track', 'Unknown album', valid file name. Silence ...
Debug|Show buffering thread - all empty, except bottom one.
In this state select/play does not work, any next file would get the same 'Unknown album' and still silence.
Only reboot helps.
I suppose it happens when buffering thread filling (or just filled) buffers, forcing track switching must empty filled buffers and refill it. Empty is OK, but filling is no..
Switch to rockbox dated before 2007/08 - the error gone.
This task depends upon

Comment by Nicolas Pennequin (nicolas_p) - Sunday, 29 June 2008, 13:55 GMT+1
Does this still happen after r17875?
Comment by Sergey Babichev (bsl84) - Sunday, 29 June 2008, 20:19 GMT+1
build 17876.
The problem persists.
The same sympthoms.
Problem with hanging when playing long files seems gone.
Comment by Nicolas Pennequin (nicolas_p) - Thursday, 03 July 2008, 17:21 GMT+1
Could you report the exact values displayed on the buffering debug screen?
I'm especially interested in the number of handles, but the other values might be useful too.
Comment by Sergey Babichev (bsl84) - Friday, 04 July 2008, 06:02 GMT+1
Exact values on the buffering screen all zeros.
RAM usage, handles count, all zeros.
By the way, this error happens only in the end of directory.
My directory layout is:
music
Brahms
Op025 ...
1- Allegro.flac
2- ...
...
4- ...
...
Op054 ...
Song of destiny ... flac
...
Spohr
...
...

e.t.c

There are many directories that contain only one track. I think, it is why this error hard to reproduce by others...

For example, playing Song of destiny.flac, the only track in directory, while it playing, I browse file system and when Song of destiny ends press play on selected track in Spohr directory, the buffering thread dies with beforementioned sympthoms. I can walk, delete - all I want except play ANY track - until reboot.
Comment by Steve Bavin (pondlife) - Tuesday, 08 July 2008, 16:43 GMT+1
Is this still happening with a brand new build? Does enabling or disabling directory cache make any difference?
Comment by Sergey Babichev (bsl84) - Wednesday, 09 July 2008, 14:29 GMT+1
It happens also in build 17987.
I'll try to disable directory cache (slo-o-o-ow)

Comment by Sergey Babichev (bsl84) - Wednesday, 09 July 2008, 18:09 GMT+1
Yet again. Now on iAudio X5. Last build. Disabled dircache. D2 WPS.

When I press PLAY on selected (in browser) track just about end of playing track, it is happens. Now playing screen points to first track on device.

Gigabeat F20/iCatcher/dircache
iAudio X5L/D2/no dircache

Here is my config.cfg on Gigabeat
# .cfg file created by rockbox r17671-080531 - http://www.rockbox.org

volume: -25
balance: 0
bass: 0
treble: 0
channels: stereo
stereo_width: 100
shuffle: off
repeat: off
contrast: 47
backlight timeout: 10
backlight timeout plugged: 60
flip display: off
selector type: bar (inverse)
statusbar: on
scrollbar: on
volume display: numeric
battery display: numeric
time format: 24hour
show icons: on
idle poweroff: 3
max files in playlist: 1000
max files in dir: 800
battery capacity: 2250
car adapter mode: off
backlight filters first keypress: off
caption backlight: off
brightness: 6
scroll speed: 10
scroll delay: 100
bidir limit: 0
Screen Scrolls Out Of View: off
scroll step: 7
screen scroll step: 16
scroll paginated: off
foreground color: 000000
background color: FFFFFF
line selector start color: FFEB9C
line selector end color: B58E00
line selector text color: 000000
play selected: on
party mode: off
volume fade: on
scan min step: 1
scan accel: 3
antiskip: 5s
disk spindown: 5
show files: supported
sort case: off
show filename exts: on
follow playlist: on
playlist viewer icons: on
playlist viewer indices: on
playlist viewer track display: track name
recursive directory insert: on
autocreate bookmarks: off
autoload bookmarks: off
use most-recent-bookmarks: off
peak meter clip hold: 60
peak meter hold: 500ms
peak meter release: 8
peak meter dbfs: on
peak meter min: 60
peak meter max: 0
talk menu: off
talk dir: off
talk dir clip: off
talk file: off
talk file clip: off
talk filetype: off
Announce Battery Level: off
sort files: alpha
sort dirs: alpha
folder navigation: on
gather runtime data: off
replaygain: off
replaygain type: album
replaygain noclip: off
replaygain preamp: 0
beep: off
crossfade: off
crossfade fade in delay: 0
crossfade fade out delay: 0
crossfade fade in duration: 3
crossfade fade out duration: 3
crossfade fade out mode: crossfade
crossfeed: off
crossfeed direct gain: -15
crossfeed cross gain: -30
crossfeed hf attenuation: 160
crossfeed hf cutoff: 700
eq enabled: off
eq precut: 50
eq band 0 cutoff: 60
eq band 1 cutoff: 200
eq band 2 cutoff: 800
eq band 3 cutoff: 4000
eq band 4 cutoff: 12000
eq band 0 q: 7
eq band 1 q: 10
eq band 2 q: 10
eq band 3 q: 10
eq band 4 q: 7
eq band 0 gain: 50
eq band 1 gain: 40
eq band 2 gain: -20
eq band 3 gain: 10
eq band 4 gain: 20
dithering enabled: on
dircache: on
tagcache_ram: on
tagcache_autoupdate: on
default codepage: cp1251
warn when erasing dynamic playlist: on
backlight on button hold: off
hold_lr_for_scroll_in_list: on
show path in browser: current directory
pause on headphone unplug: pause and resume
rewind duration on pause: 3
disable autoresume if phones not present: on
Last.fm Logging: off
font: /.rockbox/fonts/nimbus-19.fnt
wps: /.rockbox/wps/iCatcher.wps
lang: /.rockbox/langs/english.lng
backdrop:
kbd:
usb charging: on
cuesheet support: off
Study mode: off
Study hop step: 6
start in screen: wps
iconset:
viewers iconset:
filetype colours: /.rockbox/themes/-.colours
button light timeout: off
button light brightness: 1
list_accel_start_delay: 2
list_accel_wait: 3
keyclick: off
keyclick repeats: off
playlist catalog directory: /Playlists
touchpad sensitivity: normal
Comment by Sergey Babichev (bsl84) - Wednesday, 30 July 2008, 20:39 GMT+1
Build 18148.
It happens again and again...
Comment by Sergey Babichev (bsl84) - Wednesday, 29 October 2008, 19:30 GMT+1
Situation the same.
Very anoying with my method of listening (browse files near the end of directory for to decide what to listen next.
Where can I get version before this !@#$%^ change (near april 2007, there was very good and stable version)? I need it at least for Gigabeat F20.
Comment by Steve Bavin (pondlife) - Wednesday, 29 October 2008, 21:38 GMT+1
Does this only happen with FLAC? I couldn't repro it (with your settings), but I was using only MP3s.
Comment by Sergey Babichev (bsl84) - Wednesday, 29 October 2008, 22:27 GMT+1
Any format (testing mp3, flac, ogg, aac, mpc).
If you try to browse files at the end of directory (directories I have contain 1-5 files usually), the buffering thread hanged.
There are 'Unknown artist' and 'Unknown album' on the screen. Only shutdown helps.
ANY new build, 18789 at least.
On X5L and on F20.
I wonder, is there anybody to observe this error, or all using random or album-oriented style.
Comment by Steve Bavin (pondlife) - Wednesday, 29 October 2008, 22:39 GMT+1
I think I've just reproduced *something* in the simulator (H300) with MP3s.

Basically I select a file from the file browser in the last 4 seconds of the last track in a playlist. This initial selection then fails to play (I return straight back to the browser), and if I then select the same track again it plays ok but the track index is out by 1 for subsequent tracks (i.e. it displays 1,1,2,3 rather than 1,2,3,4 - and the playlist viewer is similarly confused).

Pressing STOP and restarting sorts it out in this case though, so not as bad as you're suffering.

Loading...