I tried to back out the changes for r15816. Â It appears the changes for r15816 have been used in other parts of the code for other revisions so, with my attempt and limited knowledge of the code an coding, it wouldn't compile/make. Â I built a "Frankenstein'ed" version of Rockbox using r15815 as a base and added in the power savings of r16259, 60, 61 and then added in the USB changes beginning with r16350 through r16422. Â To my amazement this thing make'd, runs like the wind, auto-changes directories, has increased battery life and a good USB connection. Â I haven't tried the games, apps, plugins, etc. Â In no way is this *unofficial* build to be considered a "fix", "workaround" or to negate the *very* hard work of the developers -- it is just an elaborate experiment for my simple needs and to learn more about Rockbox and familiarizing myself with the code and build process.
iPod 5.5G 80GB 11,000+ .ogg files varying from -q7, -q8 with a few at -q10 for fun.
EDIT: Narrowing things down for the changes for r15816 it appears the calls: unregister_buffering_callback (buffering_audio_callback) and register_buffering_callback(buffering_audio_callback) contribute to the file access response issue. Â Commenting out those two lines produces a make warning when integrating the r15816 fixes to r15815 but otherwise, the access time is improved. Â Maybe too much is happening within a created tight loop?
Let's say one presses the skip forward or skip back buttons repeatedly or alternatively. Â During that action the Rockbox is quick enough to find the track position but then Rockbox has to perform the register/unregister while the user has already pressed the skip forward or backward buttons again and again.
Too much overhead for each button press?
EDIT: Built Rockbox with r15815 (base) added in, r16259, r16260, r16261 (battery savings), r16279 (USB) and all USB changes beginning with r16350 to present (3/30). Compiled, make'd, and zipped. For my experimentation and learning only.