summaryrefslogtreecommitdiff
path: root/lib/rbcodec/codecs/flac.c (follow)
Commit message (Collapse)AuthorAge
* Implement time-based resume and playback start.Michael Sevakis2014-03-10
| | | | | | | | | | | | | | | | | | | | | | | | | | | This complements offset-based resume and playback start funcionality. The implementation is global on both HWCODEC and SWCODEC. Basically, if either the specified elapsed or offset are non-zero, it indicates a mid-track resume. To resume by time only, set elapsed to nonzero and offset to zero. To resume by offset only, set offset to nonzero and elapsed to zero. Which one the codec uses and which has priority is up to the codec; however, using an elapsed time covers more cases: * Codecs not able to use an offset such as VGM or other atomic formats * Starting playback at a nonzero elapsed time from a source that contains no offset, such as a cuesheet The change re-versions pretty much everything from tagcache to nvram. Change-Id: Ic7aebb24e99a03ae99585c5e236eba960d163f38 Reviewed-on: http://gerrit.rockbox.org/516 Reviewed-by: Michael Sevakis <jethead71@rockbox.org> Tested: Michael Sevakis <jethead71@rockbox.org>
* flac: fix seeking.Andrew Ryabinin2013-11-18
| | | | | | | | | | | | | | | | | | | | | | | As comment in code states: "It is possible for our seek to land in the middle of audio data that looks exactly like a frame header from a future version of an encoder. When that happens, frame_sync() will return false. But there is a remote possibility that it is properly synced at such a "future-codec frame", so to make sure, we wait to see several "unparseable" errors in a row before bailing out." Currently we wait for 10 "unparseable" errors. libFLAC waits for 20. But I've got a valid flac+cue, wherein switching to certain track gave me 24 "unparsaeable" errors. Therefore I increased unparseable_count to 30. Change-Id: I4e97a5385c729adf3d5075d41ea312622c69e548 Reviewed-on: http://gerrit.rockbox.org/658 Reviewed-by: Michael Giacomelli <giac2000@hotmail.com> Reviewed-by: Boris Gjenero <boris.gjenero@gmail.com> Tested-by: Andrew Ryabinin <ryabinin.a.a@gmail.com> Reviewed-by: Andrew Ryabinin <ryabinin.a.a@gmail.com>
* Purge the usage of DSP_SWITCH_FREQUENCY.Michael Sevakis2013-05-05
| | | | | | | | DSP_SWITCH_FREQUENCY has been deprecated and the same enumerated value as DSP_SET_FREQUENCY since major DSP revisions were committed. This task should have been performed much earlier but, oh well, do it now. Change-Id: I3f30d651b894136a07c7e17f78fc16a7d98631ff
* flac: use 64 bit math to calculate the elapsed timeNils Wallménius2012-10-25
| | | | | | avoids overflows for very long files Change-Id: Idb1e9a411bd9007cfddbbd2d3dcf127645fa9a7c
* Add codecs to librbcodec.Sean Bartell2012-04-25
Change-Id: Id7f4717d51ed02d67cb9f9cb3c0ada4a81843f97 Reviewed-on: http://gerrit.rockbox.org/137 Reviewed-by: Nils Wallménius <nils@rockbox.org> Tested-by: Nils Wallménius <nils@rockbox.org>