rockbox/lib
Aidan MacDonald 2f278af760 codecs: alac: Improve resume accuracy and clean up rounding errors
Resume by offset was obviously inaccurate for ALAC -- it tried
to convert the offset to an elapsed time using the approximate
bitrate, which is going to be wrong for VBR files. This became
a problem since commit 26ffcd8f9f restored the ability to resume
by offset.

It turns out that m4a_seek_raw() has terrible resolution since
it can only seek to chunk boundaries, and lies about the real
sample position; basically the same issue that affected seeking
described in commit 4dd3c2b33e. Resuming by offset is still not
very accurate because of this. Prefer to resume by time first,
which is normally highly accurate (and never worse than offset)
but use the file offset if it's the only thing we have.

There were a couple time calculations still using 32-bit math,
so clean those up too to reduce issues due to rounding errors.

Change-Id: Idd3bccd67505f4e59e784d92e45ea80a273975bb
2022-11-16 06:48:28 -05:00
..
arm_support ARM support, optimize popcount fn 2022-03-12 00:00:01 -05:00
fixedpoint Undo hacks to meant to get around string formatting limitations 2017-11-21 05:01:14 -05:00
libsetjmp [1/4] Remove SH support and all archos targets 2020-07-24 21:20:13 +00:00
microtar microtar: Update to latest upstream commit 2021-11-27 13:13:35 +00:00
mipsunwinder mips: add native backtrace implementation 2022-05-22 07:16:11 -04:00
rbcodec codecs: alac: Improve resume accuracy and clean up rounding errors 2022-11-16 06:48:28 -05:00
skin_parser Suppress bogus GCC 12 -Waddress warnings for SKINOFFSETTOPTR 2022-09-18 13:53:27 +01:00
tlsf tlsf make ~0 explicitly unsigned ~0u 2021-07-22 23:23:51 +00:00
unwarminder backtrace, put pc and sp on their own lines 2022-03-08 23:37:50 -05:00
x1000-installer move buflib_free invalid handle check to the function 2022-10-15 09:26:58 -04:00