summaryrefslogtreecommitdiff
path: root/apps/codecs/libwma/wmadeci.c (follow)
Commit message (Collapse)AuthorAge
* 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>
* Fix a bug introduced in r27463 that caused the line spectral pair look up ↵Michael Giacomelli2011-07-28
| | | | | | tables to overwrite the noise coding VLC tables. Should fix decoding of files that have both noise coding and line spectral pairs, which are usually very low bitrate WMAs. git-svn-id: svn://svn.rockbox.org/rockbox/trunk@30220 a1c6a512-1295-4272-9138-f99709370657
* Use more IRAM on S5L870x to speed up wma by ~3%.Andree Buschmann2011-05-20
| | | | git-svn-id: svn://svn.rockbox.org/rockbox/trunk@29905 a1c6a512-1295-4272-9138-f99709370657
* Fix several 'variable set but not used' warnings reported from GCC 4.6.0.Andree Buschmann2011-05-01
| | | | git-svn-id: svn://svn.rockbox.org/rockbox/trunk@29805 a1c6a512-1295-4272-9138-f99709370657
* Align various libwma buffers. Saves about 1 MHz on the Gigabeat S.Michael Giacomelli2010-11-22
| | | | git-svn-id: svn://svn.rockbox.org/rockbox/trunk@28640 a1c6a512-1295-4272-9138-f99709370657
* Remove tabs.Andree Buschmann2010-11-21
| | | | git-svn-id: svn://svn.rockbox.org/rockbox/trunk@28635 a1c6a512-1295-4272-9138-f99709370657
* Remove some unused variables.Michael Giacomelli2010-09-19
| | | | git-svn-id: svn://svn.rockbox.org/rockbox/trunk@28118 a1c6a512-1295-4272-9138-f99709370657
* wma: move inline functions into .h fileRafaël Carré2010-08-03
| | | | | | | use 'static inline' instead of GCC extension 'inline' some GCC don't support this (android NDK for example) git-svn-id: svn://svn.rockbox.org/rockbox/trunk@27679 a1c6a512-1295-4272-9138-f99709370657
* Modify WMA to produce non-interleaved stereo output (FS#11503 by me). speeds ↵Mohamed Tarek2010-07-28
| | | | | | up wma by 3.5MHz on CF and 2.2MHz on ARM. git-svn-id: svn://svn.rockbox.org/rockbox/trunk@27591 a1c6a512-1295-4272-9138-f99709370657
* libwma: void pointer voodoo to get rid ov strict aliasing warningsNils Wallménius2010-07-17
| | | | git-svn-id: svn://svn.rockbox.org/rockbox/trunk@27463 a1c6a512-1295-4272-9138-f99709370657
* libwma: Reuse a static buffer that was unused while decoding lsp files for ↵Nils Wallménius2010-07-17
| | | | | | some lsp related tables. git-svn-id: svn://svn.rockbox.org/rockbox/trunk@27462 a1c6a512-1295-4272-9138-f99709370657
* libwma: Reduce size of runtab and levtab buffers, only one set can get the ↵Nils Wallménius2010-07-17
| | | | | | worst case size so make the other set the second worst case size. git-svn-id: svn://svn.rockbox.org/rockbox/trunk@27459 a1c6a512-1295-4272-9138-f99709370657
* Remove unused 2kB buffer and some dead code.Nils Wallménius2010-07-17
| | | | git-svn-id: svn://svn.rockbox.org/rockbox/trunk@27458 a1c6a512-1295-4272-9138-f99709370657
* Use codeclib version of the ffmpeg bitstream code for wma rather then ↵Michael Giacomelli2010-07-15
| | | | | | ancient hacked up version. git-svn-id: svn://svn.rockbox.org/rockbox/trunk@27432 a1c6a512-1295-4272-9138-f99709370657
* - Modify metadata/asf.c to use libasf.Mohamed Tarek2010-05-02
| | | | | | | - Modify the files in libwma to use libasf. - Remove apps/codecs/libwma/asf.h since it's not used now. git-svn-id: svn://svn.rockbox.org/rockbox/trunk@25783 a1c6a512-1295-4272-9138-f99709370657
* Merge from branches/mdctexp - faster ifft+imdct in codec libDave Hooper2010-02-17
| | | | git-svn-id: svn://svn.rockbox.org/rockbox/trunk@24712 a1c6a512-1295-4272-9138-f99709370657
* Move av_log2 function and asociated table to the codec lib, remove 3 ↵Nils Wallménius2009-12-05
| | | | | | identical implementations, always have LUT in iram (gives a *tiny* speedup on coldfire), make the clz based function return the same value as the non clz based function for 0 input to be safe (slows down flac ~2% on the gigabeat S) git-svn-id: svn://svn.rockbox.org/rockbox/trunk@23858 a1c6a512-1295-4272-9138-f99709370657
* Commit unrolled version of WMA's exponent decode taken from latest ffmpeg. ↵Michael Giacomelli2009-10-02
| | | | | | Gives a 1% speedup @ 192kbps. git-svn-id: svn://svn.rockbox.org/rockbox/trunk@22871 a1c6a512-1295-4272-9138-f99709370657
* Fix red.Mohamed Tarek2009-08-15
| | | | git-svn-id: svn://svn.rockbox.org/rockbox/trunk@22338 a1c6a512-1295-4272-9138-f99709370657
* Move bitstream.[ch] to codecs/lib/ffmpeg_bitstream.[ch] to avoid duplicate ↵Mohamed Tarek2009-08-15
| | | | | | copies across codecs. git-svn-id: svn://svn.rockbox.org/rockbox/trunk@22337 a1c6a512-1295-4272-9138-f99709370657
* Clean up a lot of old and ugly comments. Wrap some long lines. Remove ↵Michael Giacomelli2009-07-28
| | | | | | unneeded fixed point function. Move some fixed point math functions out of wmadeci. No functional changes. git-svn-id: svn://svn.rockbox.org/rockbox/trunk@22077 a1c6a512-1295-4272-9138-f99709370657
* Remove unused variable and assignment.Michael Giacomelli2009-06-15
| | | | git-svn-id: svn://svn.rockbox.org/rockbox/trunk@21304 a1c6a512-1295-4272-9138-f99709370657
* Sync some changes found in ffmpeg plus a spelling correction I forgot to commit.Tom Ross2008-12-20
| | | | git-svn-id: svn://svn.rockbox.org/rockbox/trunk@19503 a1c6a512-1295-4272-9138-f99709370657
* Don't read a full byte if less than 8 bits are available. The change doesn't ↵Tom Ross2008-12-20
| | | | | | fix any problem samples, but the current code makes no sense. Also some spelling corrections in debugfs and comments. git-svn-id: svn://svn.rockbox.org/rockbox/trunk@19502 a1c6a512-1295-4272-9138-f99709370657
* Wrap some of the more ridiculously long lines introduced in the previous ↵Michael Giacomelli2008-12-20
| | | | | | revision. Whitespace changes only. git-svn-id: svn://svn.rockbox.org/rockbox/trunk@19501 a1c6a512-1295-4272-9138-f99709370657
* Correctly implement remaining portions of ffmpeg's r8627 that I'd forgotten ↵Michael Giacomelli2008-12-20
| | | | | | about. This fixes a table overflow in low bitrate files that use noise coding, and in theory should be substantial improvement, but I haven't found any files were it makes a difference. git-svn-id: svn://svn.rockbox.org/rockbox/trunk@19500 a1c6a512-1295-4272-9138-f99709370657
* Fix occasional glitch when switching from stereo to mono tracks due to ↵Michael Giacomelli2008-12-20
| | | | | | uninitialized m/s coding flag. git-svn-id: svn://svn.rockbox.org/rockbox/trunk@19498 a1c6a512-1295-4272-9138-f99709370657
* Commit fix by Tom Ross in FS#7488 wherein a silly mistake noise coding ↵Michael Giacomelli2008-12-20
| | | | | | initialization is corrected. This sample alone has probably resulted in more WMA fixes then all other combined and I suspect there will still be at least one more. git-svn-id: svn://svn.rockbox.org/rockbox/trunk@19496 a1c6a512-1295-4272-9138-f99709370657
* Fix bug where a mono file using noise coding would be corrupted if it was ↵Michael Giacomelli2008-12-20
| | | | | | played immediately after a stereo files using noise coding due to incorrect initialization of the decoder state. Thanks to Tom Ross for pointing out that initialization was incomplete on these files. git-svn-id: svn://svn.rockbox.org/rockbox/trunk@19494 a1c6a512-1295-4272-9138-f99709370657
* Correct poor assumption on my part that WMA frames are 2048 samples long. ↵Michael Giacomelli2008-10-14
| | | | | | Fixed problems with sample rates < 44.1khz. Fixes FS#9242 and FS#9439. git-svn-id: svn://svn.rockbox.org/rockbox/trunk@18805 a1c6a512-1295-4272-9138-f99709370657
* Combine the Vorbis, WMA and AAC IMDCT functions and put them into the ↵Michael Giacomelli2008-09-04
| | | | | | codeclib. Combined IMDCT is now based on existing Tremor transform. Reduces CPU for 192k AAC by 21MHz on Coldfire, and 5MHz on PP5024. WMA and Vorbis should have no functional changes since they already used this code. Further optimization is possible and would benefit all 3 codecs. git-svn-id: svn://svn.rockbox.org/rockbox/trunk@18412 a1c6a512-1295-4272-9138-f99709370657
* Actually put the output in IRAM this time by combining some buffers that ↵Michael Giacomelli2008-08-10
| | | | | | weren't used at the same time. git-svn-id: svn://svn.rockbox.org/rockbox/trunk@18231 a1c6a512-1295-4272-9138-f99709370657
* Speed up WMA decoding on coldfire (14% speedup with a 128kbps test file).Jens Arnold2008-08-09
| | | | git-svn-id: svn://svn.rockbox.org/rockbox/trunk@18228 a1c6a512-1295-4272-9138-f99709370657
* Use Tremor IMDCT for WMA. Gives a ~20% speedup on ARM and coldfire. All my ↵Michael Giacomelli2008-07-17
| | | | | | test samples gave equivilent or better accuracy (>>16 bit), but there may still be problems. Code becomes somewhat less readable since the IMDCT has bits of Vorbis in it, but this is not a serious issue and the old ffmpeg transform remains in SVN if anyone wants it. Also, WMA now passes Vorbis as the fastest transform codec on ARM, although MPC remains the fastest lossy codec overall. git-svn-id: svn://svn.rockbox.org/rockbox/trunk@18084 a1c6a512-1295-4272-9138-f99709370657
* Fix warning due to typo on my part.Michael Giacomelli2008-07-05
| | | | git-svn-id: svn://svn.rockbox.org/rockbox/trunk@17948 a1c6a512-1295-4272-9138-f99709370657
* More WMAv1 fixes by Rafael Carre.Michael Giacomelli2008-07-05
| | | | git-svn-id: svn://svn.rockbox.org/rockbox/trunk@17943 a1c6a512-1295-4272-9138-f99709370657
* Put the WMA windowing and output buffer into IRAM on targets with > 96KB of ↵Michael Giacomelli2008-06-28
| | | | | | it. Improves 192k WMA decoding speed by about 2MHz on PP5024, and maybe saves some more when applying DSP. git-svn-id: svn://svn.rockbox.org/rockbox/trunk@17853 a1c6a512-1295-4272-9138-f99709370657
* Fix for WMAv1 decoding suggested by Rafael Carre. I don't think anyone out ↵Michael Giacomelli2008-06-24
| | | | | | there will ever use V1, but its worth having correct code for its own sake. git-svn-id: svn://svn.rockbox.org/rockbox/trunk@17782 a1c6a512-1295-4272-9138-f99709370657
* Fix mistake in previous WMA commit. Also update comments to reflect changes.Michael Giacomelli2008-04-21
| | | | git-svn-id: svn://svn.rockbox.org/rockbox/trunk@17202 a1c6a512-1295-4272-9138-f99709370657
* Make the WMA decoder less noisy in the sim.Michael Giacomelli2008-04-07
| | | | git-svn-id: svn://svn.rockbox.org/rockbox/trunk@17014 a1c6a512-1295-4272-9138-f99709370657
* Let the console know when the huffman tables have overflown. This should ↵Michael Giacomelli2008-04-07
| | | | | | never happen. git-svn-id: svn://svn.rockbox.org/rockbox/trunk@17012 a1c6a512-1295-4272-9138-f99709370657
* Amazingly, I've only been initing about 1/2 the huffman table entries needed ↵Michael Giacomelli2008-04-07
| | | | | | to actually decode a WMA file for the last 8 months and yet somehow never noticed. Fixes FS#8713, FS#8606 and probably a lot of other files. git-svn-id: svn://svn.rockbox.org/rockbox/trunk@17011 a1c6a512-1295-4272-9138-f99709370657
* Fix misleading debug statement.Michael Giacomelli2008-03-27
| | | | git-svn-id: svn://svn.rockbox.org/rockbox/trunk@16838 a1c6a512-1295-4272-9138-f99709370657
* Apply last fall's exponent fix to WMA v1 files as well.Michael Giacomelli2008-01-19
| | | | git-svn-id: svn://svn.rockbox.org/rockbox/trunk@16114 a1c6a512-1295-4272-9138-f99709370657
* If seek fails, don't insert nonsense for the current position. Also, make ↵Michael Giacomelli2008-01-06
| | | | | | one of the error messages a bit more clear. git-svn-id: svn://svn.rockbox.org/rockbox/trunk@16002 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