Commit graph

1256 commits

Author SHA1 Message Date
Mohamed Tarek
090768194f Enable ff_copy_bits in ffmpeg_bitstream.c and put_bits.h and intreadwrite.h to codeclib.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@27452 a1c6a512-1295-4272-9138-f99709370657
2010-07-17 07:46:38 +00:00
Nils Wallménius
bb22ac539b libwma has Huffman tables that are too big for the stack temp buffer. Make temp buffer static.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@27446 a1c6a512-1295-4272-9138-f99709370657
2010-07-16 08:49:22 +00:00
Nils Wallménius
e700e195d8 Remove two unused macros.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@27438 a1c6a512-1295-4272-9138-f99709370657
2010-07-15 21:20:47 +00:00
Nils Wallménius
74063845c0 Properly fix warning by copying the swap16 and swap32 inline functions from system.h to mips/ingenic_jz47xx/system-target.h to replace the defines.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@27433 a1c6a512-1295-4272-9138-f99709370657
2010-07-15 17:15:20 +00:00
Michael Giacomelli
b9e7c18dda Use codeclib version of the ffmpeg bitstream code for wma rather then ancient hacked up version.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@27432 a1c6a512-1295-4272-9138-f99709370657
2010-07-15 17:14:56 +00:00
Nils Wallménius
30a55c15c0 Hopefully fix 'comparison between signed and unsigned' warning
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@27431 a1c6a512-1295-4272-9138-f99709370657
2010-07-15 16:30:48 +00:00
Nils Wallménius
a87c61854e Sync codeclib bitstream code with upstream ffmpeg code. Build ffmpeg_bitstream.c as a part of the codec lib. Use this codeclib implementation in libffmpegFLAC. Implement adapted version of the unaligned longword reading optimization for coldfire from the libwma version of this code. Speeds up cook decoding by 2-3% on h300 and flac by 25% on h300, also speeds up flac decoding by 2% on c200 (decoding speed of cook on c200 is unchanged).
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@27430 a1c6a512-1295-4272-9138-f99709370657
2010-07-15 16:19:17 +00:00
Mohamed Tarek
387af97a26 Initial cleanup for libwmapro.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@27425 a1c6a512-1295-4272-9138-f99709370657
2010-07-15 05:38:09 +00:00
Rafaël Carré
de8369f3a2 Build wmapro, disabled on targets with less than 2MB of ram
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@27423 a1c6a512-1295-4272-9138-f99709370657
2010-07-14 20:27:43 +00:00
Rafaël Carré
0159c0c09c remove unused CODECLIBS variable from makefile
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@27422 a1c6a512-1295-4272-9138-f99709370657
2010-07-14 20:27:37 +00:00
Rafaël Carré
4a3e6de32a wmapro: silence some warnings related to function prototypes unused in rockbox
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@27421 a1c6a512-1295-4272-9138-f99709370657
2010-07-14 20:19:57 +00:00
Rafaël Carré
7a1e04920e wmapro: don't force little endianness
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@27420 a1c6a512-1295-4272-9138-f99709370657
2010-07-14 20:19:50 +00:00
Rafaël Carré
b3fee10175 Check if ROCKBOX_LITTLE_ENDIAN and ROCKBOX_BIG_ENDIAN are defined, no which value they have
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@27419 a1c6a512-1295-4272-9138-f99709370657
2010-07-14 20:19:44 +00:00
Mohamed Tarek
26e70eba26 Remove WMA Pro again from the main build temporarily till the errors/warnings are sorted out.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@27418 a1c6a512-1295-4272-9138-f99709370657
2010-07-14 20:07:44 +00:00
Mohamed Tarek
d63abfc7eb Add WMA Pro to the main build. WMA Pro now plays on target and decodes in 151% realtime in a 320kbps sample on a sansa e200. Lots of cleanup still need to be done, and optimisations should start soon too.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@27417 a1c6a512-1295-4272-9138-f99709370657
2010-07-14 19:37:52 +00:00
Mohamed Tarek
16284ae8ae Remove the floating point code from wmaprodec.c and change variable names accordingly.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@27416 a1c6a512-1295-4272-9138-f99709370657
2010-07-14 17:55:17 +00:00
Nils Wallménius
44f8faa6cb Tune compiler optimizations for libtta, gives a speedup of 1.1MHz on h300 and 0.4MHz on c200v1.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@27405 a1c6a512-1295-4272-9138-f99709370657
2010-07-12 16:37:03 +00:00
Nils Wallménius
a4cad3d926 Coldfire assembler implementation of hybrid_filter for libtta. Speeds up decoding on h300 by 4.2MHz. Set svn properties.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@27404 a1c6a512-1295-4272-9138-f99709370657
2010-07-12 16:14:32 +00:00
Nils Wallménius
d3a1945939 Use more iram in the tta lib, speeds up decoding by 47MHz on h300 (mcf5249) and 2.7MHz on c200v1 (pp5024)
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@27403 a1c6a512-1295-4272-9138-f99709370657
2010-07-12 15:59:11 +00:00
Mohamed Tarek
ec4ee48318 Complete the conversion of WMA Pro to fixed point. Floating point code is still there for better history and to have a returning point in svn should something go wrong.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@27402 a1c6a512-1295-4272-9138-f99709370657
2010-07-12 15:41:10 +00:00
Andree Buschmann
c9a4fb0d0d Clean up libfaad's sbr-qmf code. Move array to correct #ifdef-path, introduce macro, beautify indentations.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@27394 a1c6a512-1295-4272-9138-f99709370657
2010-07-11 22:02:06 +00:00
Andree Buschmann
fe61885e48 Minor correction to macros, beautification of loop.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@27391 a1c6a512-1295-4272-9138-f99709370657
2010-07-11 18:41:41 +00:00
Andree Buschmann
cef3681bae Further changes to aac-he decoding. Refactor and rearrange dct tabs to be able to use consecutive addresses (this allows additional optimization for ARM through ldm-usage). Define a macro for identical butterfly operations and exchange 2 butterflyies with less compex operations.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@27384 a1c6a512-1295-4272-9138-f99709370657
2010-07-11 14:40:05 +00:00
Jens Arnold
911ed00171 Revert accidental change.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@27382 a1c6a512-1295-4272-9138-f99709370657
2010-07-11 13:58:02 +00:00
Jens Arnold
12857cedfa EMACify HE-AAC QMF on coldfire: 5% speedup on MCF5249.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@27381 a1c6a512-1295-4272-9138-f99709370657
2010-07-11 13:44:41 +00:00
Andree Buschmann
6cf66eb08c Refacture parts of libfaad filterbank. Faster windowing for 8-short-window sequences.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@27380 a1c6a512-1295-4272-9138-f99709370657
2010-07-11 12:33:35 +00:00
Thomas Martitz
57613ea5fa Rename/change SIMVER to APP_TYPE in the Makefiles.
SIMVER was really only used to detect a simulator build. With APP_TYPE you can
now differentiate between simulator, application, checkwps and database builds.

git-svn-id: svn://svn.rockbox.org/rockbox/trunk@27372 a1c6a512-1295-4272-9138-f99709370657
2010-07-10 13:49:49 +00:00
Andree Buschmann
2f271ac54a Just another MHz saved on ARM for aac he decoding.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@27365 a1c6a512-1295-4272-9138-f99709370657
2010-07-10 00:11:39 +00:00
Andree Buschmann
e7ffe1cd4a More work on libfaad's aac he decoder. Resort table to allow more efficient load access.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@27364 a1c6a512-1295-4272-9138-f99709370657
2010-07-09 21:42:21 +00:00
Rafaël Carré
ae79b67956 Revert r27359
The ipod4g has enough free IRAM when built with gcc 4.4 eabi

git-svn-id: svn://svn.rockbox.org/rockbox/trunk@27362 a1c6a512-1295-4272-9138-f99709370657
2010-07-09 19:58:55 +00:00
Andree Buschmann
c6898a0d55 Fix red. Remove a small array from IRAM that is not critical to performance.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@27359 a1c6a512-1295-4272-9138-f99709370657
2010-07-09 18:49:33 +00:00
Andree Buschmann
811af5968a Submit FS#11461. Major speedup for aac he profile (PP5002 +20%, PP5020 +15%, PP5022 +19%, MCF5249 +35%, MCF5250 +80%), still not realtime on most targets though. This change does a lot of refactoring in the sbr filters and the dct, switching to our optimized codeclib fft and tweaking IRAM usage.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@27358 a1c6a512-1295-4272-9138-f99709370657
2010-07-09 18:32:37 +00:00
Rafaël Carré
d05a24e64e wmapro codec sim build needs to link with libm
Override generic rule in libwmapro/*.make

git-svn-id: svn://svn.rockbox.org/rockbox/trunk@27336 a1c6a512-1295-4272-9138-f99709370657
2010-07-07 17:10:26 +00:00
Andree Buschmann
91d6fa7e1b Remove unneeded libfaad files from SOURCE.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@27320 a1c6a512-1295-4272-9138-f99709370657
2010-07-06 19:23:13 +00:00
Andree Buschmann
5ac3545843 Integrate FS#11445 to raac. In addition remove faad specific pcm conversion and use rockbox' optimized dsp routines. On a 192kbps file and PP5022 the decoding speeds up by 17%.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@27319 a1c6a512-1295-4272-9138-f99709370657
2010-07-06 19:20:55 +00:00
Mohamed Tarek
d884af2b99 Partial conversion of the wmapro decoder to fixed point arithmetic. Currently inverse quantization & rescaling,
imdct and windowing are all in fixed point.


git-svn-id: svn://svn.rockbox.org/rockbox/trunk@27302 a1c6a512-1295-4272-9138-f99709370657
2010-07-05 22:33:37 +00:00
Andree Buschmann
4158192975 Submit FS#11450. Change compile option for libfaad to -O2 for ARM target and -O1 for other CPUs. This speeds up decoding by 1-5%.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@27297 a1c6a512-1295-4272-9138-f99709370657
2010-07-05 19:29:09 +00:00
Rafaël Carré
3982f1e932 Simulator: build recording code
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@27280 a1c6a512-1295-4272-9138-f99709370657
2010-07-04 13:37:52 +00:00
Frank Gevaerts
b8286d45be Move -Wl,-z,defs to GLOBAL_LDOPTS (instead of GCCOPTS), to avoid noise in older gcc output when not linking
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@27260 a1c6a512-1295-4272-9138-f99709370657
2010-07-03 20:58:22 +00:00
Nils Wallménius
a89fea6754 We already build with -fomit-frame-pointer so there's no need to specify that again.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@27255 a1c6a512-1295-4272-9138-f99709370657
2010-07-03 11:36:35 +00:00
Andree Buschmann
1e5327eee0 Fix red.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@27232 a1c6a512-1295-4272-9138-f99709370657
2010-07-02 04:40:24 +00:00
Andree Buschmann
bcbe317565 r27225 broke AAC HE profile decoding due to missing check for buffersize. Introduce a check of needed buffersize and decide whether to use a static buffer from IRAM or faad's internal allocation routines.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@27231 a1c6a512-1295-4272-9138-f99709370657
2010-07-02 04:35:37 +00:00
Andree Buschmann
5633ece5a8 Remove false comment.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@27228 a1c6a512-1295-4272-9138-f99709370657
2010-07-01 22:32:46 +00:00
Andree Buschmann
c794c1feae Fix red and yellow. Needed to remove one codebook from IRAM due to full IRAM on iPod4G.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@27226 a1c6a512-1295-4272-9138-f99709370657
2010-07-01 21:39:55 +00:00
Andree Buschmann
52f17dfe9d Submit FS#11445. Speed up of faad (aac) decoder via several optimizations like refactoring some requantization routines, moving several arrays and code tables to IRAM, using an optimized swap32() function and inlining several huffman decoder functions. Decoding is sped up by ~10% (PP5002, PP5022, MCF5249) and ~22% (MCF5250).
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@27225 a1c6a512-1295-4272-9138-f99709370657
2010-07-01 21:18:42 +00:00
Nils Wallménius
01f91ed14d Factor out sane code list bisection code and use instead of insane code, clean up some tests for readability's sake. Gives a small speedup on h300 (coldfire, 0.1-0.6MHz) and a tiny speedup on gigabeat s (armv6 0.1-0.2MHz), no real difference on PP.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@27223 a1c6a512-1295-4272-9138-f99709370657
2010-07-01 20:31:07 +00:00
Rafaël Carré
a64fa107d1 mp3 encoder (codec): left and right channels were inverted in mono
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@27219 a1c6a512-1295-4272-9138-f99709370657
2010-07-01 14:21:28 +00:00
Rafaël Carré
7da040bf22 encoders are not built in sim builds
no need to check for SIMULATOR in the .c files

git-svn-id: svn://svn.rockbox.org/rockbox/trunk@27209 a1c6a512-1295-4272-9138-f99709370657
2010-07-01 08:40:00 +00:00
Nils Wallménius
7c716d6eac Clean up a leftover preprocessor symbol and improve the workaround for the 'arm-elf and static functions in iram' quirk so it doesn't affect builds with eabi toolchain (only affects nano2g).
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@27176 a1c6a512-1295-4272-9138-f99709370657
2010-06-29 14:57:52 +00:00
Andree Buschmann
df238bcaf5 Remove unneeded libmad files from build.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@27163 a1c6a512-1295-4272-9138-f99709370657
2010-06-28 06:28:05 +00:00