summaryrefslogtreecommitdiff
path: root/apps/codecs/libwma (follow)
Commit message (Collapse)AuthorAge
* Argh.Michael Giacomelli2007-10-29
| | | | git-svn-id: svn://svn.rockbox.org/rockbox/trunk@15368 a1c6a512-1295-4272-9138-f99709370657
* Copyright.Michael Giacomelli2007-10-29
| | | | git-svn-id: svn://svn.rockbox.org/rockbox/trunk@15367 a1c6a512-1295-4272-9138-f99709370657
* We removed the old Q15.16 precision trig functions from decoding ages ago, ↵Michael Giacomelli2007-10-29
| | | | | | so no need to leave them in. Also, this code needs a GPL header. git-svn-id: svn://svn.rockbox.org/rockbox/trunk@15366 a1c6a512-1295-4272-9138-f99709370657
* Move multiply routines into the header. Give Coldfire a fixmul32b(). Remove ↵Thom Johansen2007-10-19
| | | | | | some tabs and empty lines. git-svn-id: svn://svn.rockbox.org/rockbox/trunk@15205 a1c6a512-1295-4272-9138-f99709370657
* Oversight in syncing on my end, sorry.Thom Johansen2007-10-18
| | | | git-svn-id: svn://svn.rockbox.org/rockbox/trunk@15184 a1c6a512-1295-4272-9138-f99709370657
* Add Coldfire and ARM assembler for "reverse multiply and copy" function too. ↵Thom Johansen2007-10-18
| | | | | | Gives big speedup on Coldfire, small on ARM. git-svn-id: svn://svn.rockbox.org/rockbox/trunk@15183 a1c6a512-1295-4272-9138-f99709370657
* Woops, movem.l needs other order.Thom Johansen2007-10-18
| | | | git-svn-id: svn://svn.rockbox.org/rockbox/trunk@15178 a1c6a512-1295-4272-9138-f99709370657
* Add Coldfire assembler for window and add function, yielding a nice speedup. ↵Thom Johansen2007-10-18
| | | | | | Tweak ARM assembler version of same routine to act the same as the Coldfire version. Remove an error condition that newer ffmpegs do not bail out on. Files requiring this new behaviour have been observed. git-svn-id: svn://svn.rockbox.org/rockbox/trunk@15177 a1c6a512-1295-4272-9138-f99709370657
* move structures around in the header filesMarcoen Hirschberg2007-10-01
| | | | git-svn-id: svn://svn.rockbox.org/rockbox/trunk@14941 a1c6a512-1295-4272-9138-f99709370657
* disable the ARM optimized MDCT for the Gigabeat for now as it creates a data ↵Marcoen Hirschberg2007-10-01
| | | | | | abort git-svn-id: svn://svn.rockbox.org/rockbox/trunk@14940 a1c6a512-1295-4272-9138-f99709370657
* reuse the largest sin and cos tables for smaller sizesMarcoen Hirschberg2007-09-20
| | | | git-svn-id: svn://svn.rockbox.org/rockbox/trunk@14786 a1c6a512-1295-4272-9138-f99709370657
* fix a warning for coldfireMarcoen Hirschberg2007-09-20
| | | | git-svn-id: svn://svn.rockbox.org/rockbox/trunk@14779 a1c6a512-1295-4272-9138-f99709370657
* get rid of warningsMarcoen Hirschberg2007-09-20
| | | | git-svn-id: svn://svn.rockbox.org/rockbox/trunk@14778 a1c6a512-1295-4272-9138-f99709370657
* remove unused struct member and variableMarcoen Hirschberg2007-09-20
| | | | git-svn-id: svn://svn.rockbox.org/rockbox/trunk@14777 a1c6a512-1295-4272-9138-f99709370657
* move (i)MDCT and FFT code to separate filesMarcoen Hirschberg2007-09-20
| | | | git-svn-id: svn://svn.rockbox.org/rockbox/trunk@14776 a1c6a512-1295-4272-9138-f99709370657
* small cleanupsMarcoen Hirschberg2007-09-20
| | | | git-svn-id: svn://svn.rockbox.org/rockbox/trunk@14772 a1c6a512-1295-4272-9138-f99709370657
* Fix warning.Jens Arnold2007-09-02
| | | | git-svn-id: svn://svn.rockbox.org/rockbox/trunk@14577 a1c6a512-1295-4272-9138-f99709370657
* Apparently, negative exponents are possible when decoding exponential VLC. ↵Michael Giacomelli2007-09-02
| | | | | | Should fix occasional glitches that happened in files of all bitrates. git-svn-id: svn://svn.rockbox.org/rockbox/trunk@14571 a1c6a512-1295-4272-9138-f99709370657
* Clean up iMDCT coefficient calculations.Michael Giacomelli2007-08-24
| | | | git-svn-id: svn://svn.rockbox.org/rockbox/trunk@14451 a1c6a512-1295-4272-9138-f99709370657
* Faster Q1.31 multiply for ARM. Add some ARM asm windowing code. Simply ↵Michael Giacomelli2007-08-16
| | | | | | replacing c code with loop unrolled + load/store multiple instructions makes a surprising difference on PP. Also, add comments to the windowing code. git-svn-id: svn://svn.rockbox.org/rockbox/trunk@14365 a1c6a512-1295-4272-9138-f99709370657
* use the full resolution we get from the WMA decoder and let the DSP code do ↵Marcoen Hirschberg2007-08-06
| | | | | | the rest git-svn-id: svn://svn.rockbox.org/rockbox/trunk@14224 a1c6a512-1295-4272-9138-f99709370657
* Fix warning.Michael Giacomelli2007-08-06
| | | | git-svn-id: svn://svn.rockbox.org/rockbox/trunk@14207 a1c6a512-1295-4272-9138-f99709370657
* Clean up VLC functions.Michael Giacomelli2007-08-06
| | | | git-svn-id: svn://svn.rockbox.org/rockbox/trunk@14206 a1c6a512-1295-4272-9138-f99709370657
* Cosmetic changes - TAB and whitespace policing.Dave Chapman2007-08-02
| | | | git-svn-id: svn://svn.rockbox.org/rockbox/trunk@14135 a1c6a512-1295-4272-9138-f99709370657
* Initial attept at supporting Line Spectral Pairs. Various issues remain, ↵Michael Giacomelli2007-08-02
| | | | | | and the ffmpeg decoder itself often fails on certain valid LSP files. Expect some issues. git-svn-id: svn://svn.rockbox.org/rockbox/trunk@14134 a1c6a512-1295-4272-9138-f99709370657
* Fix overflow in noise coding. Greatly improves sound quality of some low ↵Michael Giacomelli2007-07-25
| | | | | | bitrate files git-svn-id: svn://svn.rockbox.org/rockbox/trunk@13975 a1c6a512-1295-4272-9138-f99709370657
* Fix decoding of misc sample rates that no one ever usesMichael Giacomelli2007-07-21
| | | | git-svn-id: svn://svn.rockbox.org/rockbox/trunk@13946 a1c6a512-1295-4272-9138-f99709370657
* Add incomplete support for files using noise coding but not LSP. In ↵Michael Giacomelli2007-07-20
| | | | | | practice, this means files >= 20kbps will probably work, and those below will probably not. git-svn-id: svn://svn.rockbox.org/rockbox/trunk@13945 a1c6a512-1295-4272-9138-f99709370657
* Fix nasty bug that causes low bitrate files to crash because of an incorrect ↵Michael Giacomelli2007-07-20
| | | | | | assumption about MDCT window sizes on my part. Clears the way for further low bitrate fixes. git-svn-id: svn://svn.rockbox.org/rockbox/trunk@13937 a1c6a512-1295-4272-9138-f99709370657
* Fix warnings.Michael Giacomelli2007-07-13
| | | | git-svn-id: svn://svn.rockbox.org/rockbox/trunk@13866 a1c6a512-1295-4272-9138-f99709370657
* WMA codec: Coldfire is capable of unaligned memory accesses, so lets make ↵Jens Arnold2007-07-12
| | | | | | use of it. ~1.5% speedup. git-svn-id: svn://svn.rockbox.org/rockbox/trunk@13865 a1c6a512-1295-4272-9138-f99709370657
* Fix the above by including all required files and updating SOURCES.Michael Giacomelli2007-07-12
| | | | git-svn-id: svn://svn.rockbox.org/rockbox/trunk@13860 a1c6a512-1295-4272-9138-f99709370657
* Sync the bitstream functions with ffmpeg. Switch wmadeci.c over to get_vlc2 ↵Michael Giacomelli2007-07-12
| | | | | | which is how ffmpeg now does it and is also slightly faster. Add in defines for later VLC memory usage optization. Kill some header files that weren't needed and update others that were out of sync. We're now much closer to the current ffmpeg codec which should make fixing the remaining issues much easier. git-svn-id: svn://svn.rockbox.org/rockbox/trunk@13859 a1c6a512-1295-4272-9138-f99709370657
* TAB and whitespace policeDave Chapman2007-07-11
| | | | git-svn-id: svn://svn.rockbox.org/rockbox/trunk@13858 a1c6a512-1295-4272-9138-f99709370657
* Don't assume files are WMAv2, instead actually check that they are and quit ↵Michael Giacomelli2007-07-11
| | | | | | gracefully if they are not. git-svn-id: svn://svn.rockbox.org/rockbox/trunk@13855 a1c6a512-1295-4272-9138-f99709370657
* Ancient ffmpeg bug fix that should never have been missed. Prevents ↵Michael Giacomelli2007-07-11
| | | | | | floating point value from truncating downward. My files are byte for byte identical with this fix, but the ffmpeg mailing list claims its important. git-svn-id: svn://svn.rockbox.org/rockbox/trunk@13846 a1c6a512-1295-4272-9138-f99709370657
* Restore some lost copyright headers from the ffmpeg projectDave Chapman2007-07-09
| | | | git-svn-id: svn://svn.rockbox.org/rockbox/trunk@13834 a1c6a512-1295-4272-9138-f99709370657
* Reorganise the wma_decode_superframe() function - split into a separate init ↵Dave Chapman2007-07-09
| | | | | | and decode functions. Each call to the decode function now decodes a single frame (2048 samples) instead of an entire superframe (which typically contained about 7 or 8 frames and can in theory contain up to 16 frames). This allows us to replace the 256KB output buffer with a 8KB buffer, and also perform more yields in the main decoding loop. git-svn-id: svn://svn.rockbox.org/rockbox/trunk@13833 a1c6a512-1295-4272-9138-f99709370657
* Code reorganisation - move the vlc functions back to common.c/common.h ↵Dave Chapman2007-07-09
| | | | | | (where they originally were in the ffmpeg source). This code is still identical to the ffmpeg source. git-svn-id: svn://svn.rockbox.org/rockbox/trunk@13830 a1c6a512-1295-4272-9138-f99709370657
* Compute MDCT in place. Make that place within IRAM. Gives nice speed boost ↵Michael Giacomelli2007-07-09
| | | | | | on ARM. Probably make a huge difference on Coldfire. git-svn-id: svn://svn.rockbox.org/rockbox/trunk@13828 a1c6a512-1295-4272-9138-f99709370657
* Move very commonly accessed array into IRAM. Should give a nice speedup on ↵Michael Giacomelli2007-07-09
| | | | | | Coldfire. git-svn-id: svn://svn.rockbox.org/rockbox/trunk@13827 a1c6a512-1295-4272-9138-f99709370657
* wma_decode_end() doesn't exist any more - it was only used to deallocate memory.Dave Chapman2007-07-09
| | | | git-svn-id: svn://svn.rockbox.org/rockbox/trunk@13826 a1c6a512-1295-4272-9138-f99709370657
* Code clean up.Michael Giacomelli2007-07-09
| | | | git-svn-id: svn://svn.rockbox.org/rockbox/trunk@13825 a1c6a512-1295-4272-9138-f99709370657
* Inline wma_window functions. No real performance improvement. Also, thanks ↵Michael Giacomelli2007-07-08
| | | | | | to Benjamin Larsson for cleaning up some code I was simply to lazy to fix myself. git-svn-id: svn://svn.rockbox.org/rockbox/trunk@13823 a1c6a512-1295-4272-9138-f99709370657
* Merge bit reverse tables together.Michael Giacomelli2007-07-08
| | | | git-svn-id: svn://svn.rockbox.org/rockbox/trunk@13822 a1c6a512-1295-4272-9138-f99709370657
* Fix rare overflow when decoding MDCT coefficients. As a bonus, decoding is ↵Michael Giacomelli2007-07-08
| | | | | | now slightly faster. Thanks to preglow for suggesting I test with a full scale normalized square wave. git-svn-id: svn://svn.rockbox.org/rockbox/trunk@13815 a1c6a512-1295-4272-9138-f99709370657
* Fix previousMichael Giacomelli2007-07-08
| | | | git-svn-id: svn://svn.rockbox.org/rockbox/trunk@13814 a1c6a512-1295-4272-9138-f99709370657
* Move MDCT reconstruction window code over to new trig function. Improves ↵Michael Giacomelli2007-07-08
| | | | | | accuracy significantly and slightly reduces code size. Codec SNR now appears to be limited by truncation to 16 bit. Comparison to MS decoder gives > 91 dB of agreement, and a lower RMS error verses the source wav then MS. Additionally, move one commonly accessed table into IRAM. git-svn-id: svn://svn.rockbox.org/rockbox/trunk@13813 a1c6a512-1295-4272-9138-f99709370657
* Merged in first part of ffmpeg accuracy improvments. No change on my ↵Michael Giacomelli2007-07-06
| | | | | | samples, but brings us closer to ffmpeg's source and clears the way for additional bug fixes. git-svn-id: svn://svn.rockbox.org/rockbox/trunk@13804 a1c6a512-1295-4272-9138-f99709370657
* Merged in ffmpeg combined MDCT reconstruction. Saves us a 16KB buffer, and ↵Michael Giacomelli2007-07-06
| | | | | | gives a nice speed increase. Brings code much closer to ffmpeg's. git-svn-id: svn://svn.rockbox.org/rockbox/trunk@13803 a1c6a512-1295-4272-9138-f99709370657