Dan Everton
d7e1f77146
Commit FS#7440. The iPod Video doesn't actually have a hardware equalizer. It does have hardware bass/treble settings with configurable cutoff. So make the bass/treble settings use the hardware and remove the hardware equalizer configuration.
...
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@15782 a1c6a512-1295-4272-9138-f99709370657
2007-11-24 07:51:00 +00:00
Robert Kukla
a334bd2891
revise commit r15463 - we still get the immediate display of runtime data in the wps, but avoid unnecessary calls while initialising/updating the database.
...
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@15781 a1c6a512-1295-4272-9138-f99709370657
2007-11-23 23:36:42 +00:00
Robert Kukla
5ee2e372f5
Save runtime info for last track in playlist as well (FS#8040)
...
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@15767 a1c6a512-1295-4272-9138-f99709370657
2007-11-23 01:09:49 +00:00
Nicolas Pennequin
c44d2bd4cb
Fix FS#8201 and correct fix for FS#8040 by making the track unbuffer callback be called from where it should be: clear_track_info, and writing track metadata back to the main buffer *before* the callback is called and the track erased. This simplifies audio_clear_track_entries.
...
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@15748 a1c6a512-1295-4272-9138-f99709370657
2007-11-22 00:20:37 +00:00
Michael Sevakis
398d9fd8b4
Hopefully the last word on getting rid of yield_codecs loops (cut read chunk to 16kB). Sansa ata driver also didn't yield enough so buffering would starve other threads. Bump priority of audio thread to keep UI more responsive.
...
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@15724 a1c6a512-1295-4272-9138-f99709370657
2007-11-20 22:45:46 +00:00
Michael Sevakis
fadbf0a6f7
Make threads responsible for explicit cancellation of their own boosted status. Sleeping and timeouts will no longer cancel it.
...
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@15709 a1c6a512-1295-4272-9138-f99709370657
2007-11-20 03:44:25 +00:00
Nicolas Pennequin
2ff513237d
Fix FS#8040 (Gather Runtime Data not working) the right way. Also a few cosmetic changes and comments.
...
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@15696 a1c6a512-1295-4272-9138-f99709370657
2007-11-19 17:30:46 +00:00
Nicolas Pennequin
d3b8245ca8
Second part of FS#8104 by Bertrik Sikken: Simplification of audio_track_count, audio_have_tracks and audio_have_free_tracks. This hopefully won't affect anything, but the semantics of the functions have changed slightly.
...
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@15693 a1c6a512-1295-4272-9138-f99709370657
2007-11-19 16:37:52 +00:00
Nicolas Pennequin
cfa6495356
First part of FS#8104 by Bertrik Sikken: Simplification and consistency improvement for the track index incrementations. There should be no functional change.
...
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@15688 a1c6a512-1295-4272-9138-f99709370657
2007-11-19 15:52:25 +00:00
Michael Sevakis
4f2473db6c
Do the wait for the audio thread init in such a way to avoid an unlikely but possible roundabout deadlock. Not pretty but will suffice for the moment.
...
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@15686 a1c6a512-1295-4272-9138-f99709370657
2007-11-19 13:26:46 +00:00
Michael Sevakis
d6f2a54654
Make sure initial menu item is voiced at startup. Voice thread must wait for the audio thread to finish initializing hardware. A known issue at speex commit time (perhaps only by myself ;). The behavioral refinement time begins.
...
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@15682 a1c6a512-1295-4272-9138-f99709370657
2007-11-19 11:59:52 +00:00
Michael Sevakis
99617d71ba
Make speex the new voice format for SWCODEC targets (non-Archos). Remove codec swapping and build speex voice decoding directly into the core binary.
...
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@15668 a1c6a512-1295-4272-9138-f99709370657
2007-11-18 17:12:19 +00:00
Nicolas Pennequin
9446226276
Erase lasttrack_id3 when end-of-playlist is reached. Fixes FS#8148.
...
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@15659 a1c6a512-1295-4272-9138-f99709370657
2007-11-18 13:41:04 +00:00
Brandon Low
d1c6d53962
I'm a retard, this is definitely more correct
...
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@15627 a1c6a512-1295-4272-9138-f99709370657
2007-11-14 22:34:32 +00:00
Brandon Low
02467cffa0
Might fix FS#8158, I was unable to reproduce so no guarantee.
...
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@15626 a1c6a512-1295-4272-9138-f99709370657
2007-11-14 22:29:26 +00:00
Nicolas Pennequin
4963925767
Fix another NULL pointer dereference crash.
...
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@15591 a1c6a512-1295-4272-9138-f99709370657
2007-11-12 00:17:55 +00:00
Nicolas Pennequin
e71bc67d94
Fix an issue that appeared in r15577, where skipping back to a track that has no audio data left, but still has its metadata and album art, would fail. The fix is to also clear the filesize member (as it should have been previously) to force a rebuffer when skipping back. To prevent the album art bitmap from flashing on the back skip, the whole track info struct is cleared when the track isn't needed anymore, i.e. after the PCM track change.
...
Also a slightly unrelated but trivial change: only load album art if it's not already loaded.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@15588 a1c6a512-1295-4272-9138-f99709370657
2007-11-11 21:27:18 +00:00
Nicolas Pennequin
95db8f8022
Load the album art before the codec because find_albumart would yield to the codec, which would start requesting data before the audio handle is ready.
...
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@15584 a1c6a512-1295-4272-9138-f99709370657
2007-11-11 20:09:13 +00:00
Nicolas Pennequin
496027d8bb
* Make the album art be updated on PCM track change, not codec track change (changes in audio_current_aa_hid).
...
* On codec track change, if not all the audio data is present, only get rid of the audio data and not all the track's handles. This will prevent alum art from disappearing on codec track change after resuming playback (changes in audio_check_new_track).
* Add audio_finalise_track_change() to handle what happens after the PCM track change (no functional change here).
* Add some comments about how the track transition works.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@15577 a1c6a512-1295-4272-9138-f99709370657
2007-11-11 15:50:52 +00:00
Nicolas Pennequin
cf37f4c079
Fix red.
...
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@15573 a1c6a512-1295-4272-9138-f99709370657
2007-11-11 12:52:07 +00:00
Nicolas Pennequin
9d4bed7ff0
Album art support. Based on FS#3045, but heavily modified to adapt to MoB and for cleanness.
...
The cover pictures are loaded from external bitmaps. JPEG and embedded art are not supported. The pictures will only be drawn on the main display. There is no resizing but it is possible to specify the WPS bitmap size in the bitmap names (e.g. cover.100x100.bmp).
The bitmaps are stored in the main buffer and read directly from there. Currently, duplicate bitmaps will simply be present several times in the buffer, but this will be improved.
To enable for a target, #define HAVE_ALBUMART in its config file.
For more information, see the wiki page: http://www.rockbox.org/wiki/AlbumArt .
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@15572 a1c6a512-1295-4272-9138-f99709370657
2007-11-11 12:29:37 +00:00
Nicolas Pennequin
a677678e31
Fix a possible NULL pointer dereference I introduced in r15503 by making an unwise assumption. This would cause crashes on track skip in certain (very unlikely, I think) situations.
...
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@15557 a1c6a512-1295-4272-9138-f99709370657
2007-11-10 18:22:55 +00:00
Nicolas Pennequin
941600f121
Remove nexttrack_id3 and instead use the metadata present on the buffer.
...
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@15540 a1c6a512-1295-4272-9138-f99709370657
2007-11-08 17:27:43 +00:00
Nicolas Pennequin
12d479fd3e
Store the metadata of the first unbuffered track in a static struct so that it gets displayed in the next track info while playing the last buffered track.
...
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@15539 a1c6a512-1295-4272-9138-f99709370657
2007-11-08 16:52:29 +00:00
Nicolas Pennequin
fbdc0e6b57
Fix warning.
...
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@15504 a1c6a512-1295-4272-9138-f99709370657
2007-11-07 01:10:53 +00:00
Nicolas Pennequin
5f7d21dfa0
Fix tracks always being cleared on skip (reported by dionoea). The problem was that skipping the ID3 info from the beginning caused the offset to always be nonzero.
...
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@15503 a1c6a512-1295-4272-9138-f99709370657
2007-11-07 00:59:42 +00:00
Brandon Low
405380e57f
Don't keep resetting to default watermark during buffering, only do it once at play start
...
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@15485 a1c6a512-1295-4272-9138-f99709370657
2007-11-05 18:54:22 +00:00
Nicolas Pennequin
aef008b061
Set all track handles to -1 on audio init to avoid calling bufclose(0) on all of them on the first playback stop. This also revealed a bug in audio_release_tracks where it wouldn't release all the tracks because the wrong #define value was used.
...
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@15484 a1c6a512-1295-4272-9138-f99709370657
2007-11-05 18:46:25 +00:00
Nicolas Pennequin
6631e36fa7
Fix some logf warnings.
...
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@15483 a1c6a512-1295-4272-9138-f99709370657
2007-11-05 18:19:38 +00:00
Brandon Low
3379440a4b
Remove conf_filechunk, it should never have been a setting and its implementation doesn't do what it claims any way
...
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@15478 a1c6a512-1295-4272-9138-f99709370657
2007-11-05 17:48:21 +00:00
Brandon Low
1df1e7b0c7
Remove unused conf_preseek from buffering.c and all of its accountraments. This is _not_ a setting. This is a guessing tool used by either playback or buffering to serve its clients better. Use the REBUFFER_GUESS size in resume to help obviate pondlife's bug. This will also need to be used when FS8092 gets fixed correctly with a complete rebuffer for backward movements. It may also belong in buffering not playback, haven't decided for sure
...
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@15475 a1c6a512-1295-4272-9138-f99709370657
2007-11-05 16:02:12 +00:00
Brandon Low
d02b5c744e
Don't keep useless id3v2 or other leading tag data on the buffer, it could be large
...
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@15465 a1c6a512-1295-4272-9138-f99709370657
2007-11-05 01:56:12 +00:00
Brandon Low
31c1164c49
make handle_id of zero valid, stop using memsets to clear tracks, should be no functional changes
...
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@15462 a1c6a512-1295-4272-9138-f99709370657
2007-11-04 19:01:02 +00:00
Brandon Low
f906498786
OTher part of previous
...
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@15450 a1c6a512-1295-4272-9138-f99709370657
2007-11-04 05:36:35 +00:00
Brandon Low
e8fa7f94b0
More attempt to fix 8077
...
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@15449 a1c6a512-1295-4272-9138-f99709370657
2007-11-04 05:33:06 +00:00
Brandon Low
0c97493a88
This part was good, bring it back
...
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@15440 a1c6a512-1295-4272-9138-f99709370657
2007-11-03 21:55:24 +00:00
Brandon Low
c2e1cc1e39
Revert recent changes that are broken
...
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@15439 a1c6a512-1295-4272-9138-f99709370657
2007-11-03 21:48:08 +00:00
Brandon Low
acb3e9af22
Make handle id semantics more like file id. This may need to be revisited if we ever start storing long lived things on the buffer (if an item lives through 32k other items coming and going, there will be an id collision and things will break)
...
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@15437 a1c6a512-1295-4272-9138-f99709370657
2007-11-03 21:13:15 +00:00
Brandon Low
86919f4609
Misc. buffering related playback tweaks
...
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@15435 a1c6a512-1295-4272-9138-f99709370657
2007-11-03 17:55:29 +00:00
Brandon Low
11a3661d73
Make atomic type work for even first track. Rework low buffer handling... uses a stateful variable because I'm a bitter old man and it works this way
...
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@15425 a1c6a512-1295-4272-9138-f99709370657
2007-11-03 06:21:32 +00:00
Michael Sevakis
4bce3ad98a
Use the correct event state constants.
...
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@15423 a1c6a512-1295-4272-9138-f99709370657
2007-11-03 05:14:09 +00:00
Brandon Low
9c3c6f9c82
Logf when a file is loaded atomic not packet
...
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@15420 a1c6a512-1295-4272-9138-f99709370657
2007-11-03 04:30:43 +00:00
Brandon Low
9a114614d5
Comments and a fix to possibly get more out of backward skipping without rebuffering
...
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@15413 a1c6a512-1295-4272-9138-f99709370657
2007-11-03 02:53:57 +00:00
Nicolas Pennequin
b838a62adf
Make bufread and bufgetdata blocking. They now return when enough data is available or when EOF is reached. This improves the API and removes the need for several duplicate waiting loops.
...
Also fix a few logfqueue messages.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@15412 a1c6a512-1295-4272-9138-f99709370657
2007-11-02 19:13:03 +00:00
Brandon Low
dcca586a9b
Improve upon my hackity hack from before by separating audio into two types: that which may be large and can be streamed and that which is small and cannot be streamed. While modifying types, allow codecs to split across the buffer wrap and dig out/move around the code that reads a codec off of the buffer to facilitate that simple sounding change.
...
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@15408 a1c6a512-1295-4272-9138-f99709370657
2007-11-02 14:06:48 +00:00
Nicolas Pennequin
7f79564abc
Accept FS#8053 by Bertrik Sikken: playback.c and mpeg.c simplification by removal of last_track argument in track_(un)buffer callback.
...
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@15384 a1c6a512-1295-4272-9138-f99709370657
2007-10-31 13:43:50 +00:00
Nicolas Pennequin
9d05e50c6e
Fix a file descriptor leak that happened with large directories of small files with some invalid ones.
...
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@15379 a1c6a512-1295-4272-9138-f99709370657
2007-10-30 18:01:49 +00:00
Brandon Low
7030279dd2
Fix a logf warning
...
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@15375 a1c6a512-1295-4272-9138-f99709370657
2007-10-30 15:09:16 +00:00
Nicolas Pennequin
be6e85dc59
Revert r15360: It didn't completely fix the problem and it's a bit dirty. A better solution has to be found.
...
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@15373 a1c6a512-1295-4272-9138-f99709370657
2007-10-30 13:19:04 +00:00
Nicolas Pennequin
30d3d36513
Invalidate prevtrack_id3 on all track skips to prevent next track info from being displaying for a split second after skipping to the previous track.
...
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@15361 a1c6a512-1295-4272-9138-f99709370657
2007-10-29 15:10:54 +00:00