Commit graph

298 commits

Author SHA1 Message Date
Brandon Low
2e8b933c0d Should fix some track ending early problems
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@9777 a1c6a512-1295-4272-9138-f99709370657
2006-04-23 22:21:12 +00:00
Brandon Low
8ecb8582a1 Make some adjustments to when the WPS will be updated, giving faster next track and cleaner track change updates
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@9776 a1c6a512-1295-4272-9138-f99709370657
2006-04-23 20:37:43 +00:00
Brandon Low
83ce56846a Remove an unneeded define, add a todo
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@9765 a1c6a512-1295-4272-9138-f99709370657
2006-04-22 21:31:07 +00:00
Brandon Low
c71ad7ea7f Fix warning
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@9760 a1c6a512-1295-4272-9138-f99709370657
2006-04-22 14:53:00 +00:00
Brandon Low
f3bc1efc49 First commit of reworking voice to be mroe stable on swcodec
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@9758 a1c6a512-1295-4272-9138-f99709370657
2006-04-22 14:40:13 +00:00
Hardeep Sidhu
f635f4a824 Set playing to true immediately when audio_play() is called. Fixes a bug when selecting tracks from playlist viewer.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@9737 a1c6a512-1295-4272-9138-f99709370657
2006-04-20 05:33:53 +00:00
Brandon Low
4b36096b93 Have the codec thread stop the pcm if we need to spin up the disk
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@9727 a1c6a512-1295-4272-9138-f99709370657
2006-04-19 00:23:08 +00:00
Brandon Low
56d6f3ecfc Fix playback if the user does a very fast seek->skip press
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@9726 a1c6a512-1295-4272-9138-f99709370657
2006-04-18 23:43:54 +00:00
Brandon Low
2c9b1717e6 Fix end of playlist handling. I think.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@9725 a1c6a512-1295-4272-9138-f99709370657
2006-04-18 19:52:10 +00:00
Brandon Low
1344ccd3c1 Revert previous, it is broken
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@9724 a1c6a512-1295-4272-9138-f99709370657
2006-04-18 19:51:37 +00:00
Brandon Low
426dc212c6 Make seeking synchronous. It's better this way
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@9722 a1c6a512-1295-4272-9138-f99709370657
2006-04-18 19:08:15 +00:00
Brandon Low
2b18727a8a Fix dir skipping with new playback arch. Enable dir skipping on ipod with a couple of difficult combos (select|right/left) or short-long left / short-long right. The latter causes stuck in pause sometimes.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@9720 a1c6a512-1295-4272-9138-f99709370657
2006-04-18 18:33:09 +00:00
Brandon Low
ed44e19c3f Should fix a bug with track skipping backwards following track skip forward, play, seek backward
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@9718 a1c6a512-1295-4272-9138-f99709370657
2006-04-18 16:53:24 +00:00
Brandon Low
7df187f20e Save empty resume information if the playlist has ended
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@9717 a1c6a512-1295-4272-9138-f99709370657
2006-04-18 16:45:44 +00:00
Brandon Low
095ae809eb Reduce code size when logf is off. Add a todo. Undo a previous fix that broke crossfade on manual track changes
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@9708 a1c6a512-1295-4272-9138-f99709370657
2006-04-17 19:59:16 +00:00
Brandon Low
98097d23ec Misc. minor fixes: Guarantee aligned buffer. Enable load-codec-from-disk if a new track requires a different codec than the playing track, but does not already have it on the buffer. Stop playback immediately on a manual track skip. Handle seeking a distance greater than the size of the audio buffer. Enforce the 'no malloc for voice codec'.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@9704 a1c6a512-1295-4272-9138-f99709370657
2006-04-17 17:05:05 +00:00
Brandon Low
bf397b5635 Remove an unneeded WPS update signal. Make the codec thread more polite about requesting buffering. Prevent more Codec failure pops when the codec was _asked_ to stop.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@9674 a1c6a512-1295-4272-9138-f99709370657
2006-04-15 09:19:49 +00:00
Brandon Low
ebadcc633a Put new_track on the codec_api, and use it instead of the reload_codec variable in most places. Should help with problems people have had with GUI vs. playback sync.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@9670 a1c6a512-1295-4272-9138-f99709370657
2006-04-15 02:03:11 +00:00
Brandon Low
363dbc4b58 This might fix the buffering problem. Didn't happen to me the way I usually reproduce it just now
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@9668 a1c6a512-1295-4272-9138-f99709370657
2006-04-14 22:15:38 +00:00
Brandon Low
530cad32e8 Still not bright
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@9666 a1c6a512-1295-4272-9138-f99709370657
2006-04-14 17:48:01 +00:00
Brandon Low
de25006ad9 I am dumb
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@9665 a1c6a512-1295-4272-9138-f99709370657
2006-04-14 17:39:18 +00:00
Brandon Low
7c986a91a6 Work around the bug with buffer wrapping. Serious performance penalty, and a lot of buffering is discarded to achieve this, but it doesn't crash while I find the real cause
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@9664 a1c6a512-1295-4272-9138-f99709370657
2006-04-14 17:31:19 +00:00
Brandon Low
348d9ece4b Fix some unlikely buffer problems. Doesn't fix any reported bugs, but fixes some possible ones.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@9663 a1c6a512-1295-4272-9138-f99709370657
2006-04-14 17:00:22 +00:00
Brandon Low
86c7e1a947 Fix some stop/pause/boost stuff
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@9662 a1c6a512-1295-4272-9138-f99709370657
2006-04-14 16:42:14 +00:00
Brandon Low
fb966b3cf8 Fix a lack of return on error for check_new_track (rare condition)
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@9661 a1c6a512-1295-4272-9138-f99709370657
2006-04-14 14:19:56 +00:00
Brandon Low
0291a6e200 Fix the queue implementation
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@9660 a1c6a512-1295-4272-9138-f99709370657
2006-04-14 14:03:43 +00:00
Brandon Low
fd08424694 Change to using a queue to synchronize between threads instead of abusing a mutex
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@9659 a1c6a512-1295-4272-9138-f99709370657
2006-04-14 13:05:08 +00:00
Brandon Low
fbe74d1df6 Fix one cause of buffer-offness, but I'm pretty sure this is not the cause of problems that people are having as the debug code I put in detects and corrects it. Make taginfo instead of stupid filename appear on manual track skip, off buffer (stupid bug).
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@9658 a1c6a512-1295-4272-9138-f99709370657
2006-04-14 12:53:29 +00:00
Brandon Low
2f4edabfce Tweak id3v1 tag stripping, better code, same functionality. Ensure correct buf_idx on track when rebuffer&seek.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@9653 a1c6a512-1295-4272-9138-f99709370657
2006-04-14 04:42:11 +00:00
Brandon Low
2f11d60dcd Change when the new_track variable is reset to fix the track display during skipping
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@9652 a1c6a512-1295-4272-9138-f99709370657
2006-04-14 03:47:32 +00:00
Brandon Low
1d41f77b37 Boost during the track transition, trust me, it makes sense. Better logging of buffer-not-synched issues. Revert a previous change to make a function take a parameter intead of using cur_ti. Add some todos.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@9651 a1c6a512-1295-4272-9138-f99709370657
2006-04-13 21:47:00 +00:00
Brandon Low
017914a087 Adjust filesize if id3v1 is stripped
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@9648 a1c6a512-1295-4272-9138-f99709370657
2006-04-13 20:42:11 +00:00
Brandon Low
0744e760cb Ensure that the buffer doesn't get out of sync on rebuffer track changes. Remove the concept of pcmuf_boost_mode as it doesn't seem necessary, and adds an unnecessary way for the CPU to stay boosted.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@9646 a1c6a512-1295-4272-9138-f99709370657
2006-04-13 17:30:54 +00:00
Brandon Low
483c947c3d Add a logf, remove an unused parameter, and an unused member of the track_info struct, ensure that we unboos on stop even if buffering, make a function take a parameter instead of using a global
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@9644 a1c6a512-1295-4272-9138-f99709370657
2006-04-13 15:48:00 +00:00
Brandon Low
c95044a9c1 Track skipping rework more. This seems to handle rapid skipping very gracefully without compromising buffer safety. There may still be a potentially broken code path if the user does a very rapid skip, stop sequence, and I will be sure to investigate this. Due to Slasheri's concern, reimplement rapid GUI update for track skipping in a safe way.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@9643 a1c6a512-1295-4272-9138-f99709370657
2006-04-13 14:17:12 +00:00
Brandon Low
b1fa534f14 Simplify audio startup, and remove some unnecessary code
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@9640 a1c6a512-1295-4272-9138-f99709370657
2006-04-13 02:46:34 +00:00
Brandon Low
44d9576ff5 Track changes should zero the seek_time to prevent undesired seeking in the new track
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@9636 a1c6a512-1295-4272-9138-f99709370657
2006-04-12 03:25:54 +00:00
Brandon Low
54af304a5b use the cur_ti pointer, as it's always synched up with track_ridx any way
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@9635 a1c6a512-1295-4272-9138-f99709370657
2006-04-12 02:01:26 +00:00
Brandon Low
376950155c Get the GUI and audio in sync for track changes
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@9634 a1c6a512-1295-4272-9138-f99709370657
2006-04-12 01:45:53 +00:00
Brandon Low
10c3a34c85 Fix major rebuffer stupidity, remove a redundant call, and a wrong comment.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@9633 a1c6a512-1295-4272-9138-f99709370657
2006-04-12 00:21:29 +00:00
Brandon Low
af09d22125 Add and improve logfing, fix a possible cause of problems due to abuse of read_next_metadata
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@9628 a1c6a512-1295-4272-9138-f99709370657
2006-04-11 23:08:21 +00:00
Brandon Low
d6b370be02 Fix logf build, fix double reporting buffer events.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@9627 a1c6a512-1295-4272-9138-f99709370657
2006-04-11 22:38:33 +00:00
Brandon Low
87484fcbc7 Almost entirely formatting changes, but also add one logf, and fix one nearly impossible to hit (I doubt it's been hit in the history of rockbox) bug
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@9621 a1c6a512-1295-4272-9138-f99709370657
2006-04-11 20:41:04 +00:00
Brandon Low
8529414c7f Clarify a comment
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@9616 a1c6a512-1295-4272-9138-f99709370657
2006-04-11 17:20:55 +00:00
Brandon Low
8966c018fa Clear tracks in more appropriate ways/places
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@9615 a1c6a512-1295-4272-9138-f99709370657
2006-04-11 17:17:24 +00:00
Brandon Low
01219fa29e Handle rebuffer-and-seek and track skip buffer events smarter. Fill the buffer all the way around on a 'normal' rebuffer. Rename and invert a strangely named variable for simpler logic.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@9614 a1c6a512-1295-4272-9138-f99709370657
2006-04-11 17:08:11 +00:00
Brandon Low
a476718aab Fix yellow
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@9613 a1c6a512-1295-4272-9138-f99709370657
2006-04-11 16:13:24 +00:00
Brandon Low
73365c8bda Fix a (very unlikely) bug in buffering
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@9611 a1c6a512-1295-4272-9138-f99709370657
2006-04-11 15:45:11 +00:00
Brandon Low
b6607459c2 Fix some signedness and exit condition stuff. Not sure if this addresses live bugs, but it was wrong nonetheless
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@9610 a1c6a512-1295-4272-9138-f99709370657
2006-04-11 14:13:41 +00:00
Brandon Low
6bd1f143fa Try to recover from a codec failure by restarting playback
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@9608 a1c6a512-1295-4272-9138-f99709370657
2006-04-11 13:21:51 +00:00