Commit graph

1216 commits

Author SHA1 Message Date
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
Andree Buschmann
c6ced1c466 Comment further unused code in libmad.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@27160 a1c6a512-1295-4272-9138-f99709370657
2010-06-27 18:59:54 +00:00
Andree Buschmann
4c026f0c7f Comment unused code in libmad. Clean up initialization and memset'ing of decoder arrays.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@27159 a1c6a512-1295-4272-9138-f99709370657
2010-06-27 18:11:07 +00:00
Nils Wallménius
99517d6319 Fix inline asm argument. Shouldn't have much impact in practice but might save a load if gcc is clever.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@27157 a1c6a512-1295-4272-9138-f99709370657
2010-06-27 15:15:46 +00:00
Andree Buschmann
96233f9cf7 Refacture libmad's synthesis filter via macro usage. Comment unused special synthesis filter for half bandwidth.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@27153 a1c6a512-1295-4272-9138-f99709370657
2010-06-27 11:21:44 +00:00
Andree Buschmann
d7ee0fe076 Housekeeping. Comment musepack code seqments unused in rockbox.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@27111 a1c6a512-1295-4272-9138-f99709370657
2010-06-24 18:48:04 +00:00
Andree Buschmann
fc1fab4776 Clean up comments.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@27078 a1c6a512-1295-4272-9138-f99709370657
2010-06-23 06:25:18 +00:00
Andree Buschmann
a3541c07de Disable unneeded parts of mpc's file-I/O interface.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@27024 a1c6a512-1295-4272-9138-f99709370657
2010-06-21 18:45:34 +00:00
Thomas Martitz
35e8b1429a Rockbox as an application: Replace many occurences of #ifdef SIMULATOR with #if (CONFIG_PLATFORM & PLATFORM_HOSTED) (or equivalently).
The simulator defines PLATFORM_HOSTED, as RaaA will do (RaaA will not define SIMULATOR).
The new define is to (de-)select code to compile on hosted platforms generally.

Should be no functional change to targets or the simulator.

git-svn-id: svn://svn.rockbox.org/rockbox/trunk@27019 a1c6a512-1295-4272-9138-f99709370657
2010-06-21 16:53:00 +00:00
Mohamed Tarek
e481e887db Add a patch file in libwmapro to make it easier to add the library and the decoder to the main build and modify README.rockbox accordingly.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@27012 a1c6a512-1295-4272-9138-f99709370657
2010-06-21 12:38:08 +00:00
Mohamed Tarek
8eeec17041 Remove the stubbed main() from wmaprodec.c since it's useless now and remove Makefile for the same reason.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@27010 a1c6a512-1295-4272-9138-f99709370657
2010-06-21 12:29:48 +00:00
Mohamed Tarek
e576315c7e Fix reds. (Actually removed wmapro from main build, which was added in a previous commit)
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@27008 a1c6a512-1295-4272-9138-f99709370657
2010-06-21 11:08:33 +00:00
Mohamed Tarek
816fca820c Wrote apps/codecs/wmapro.c and modified libwmapro to make the codec work in the sim. Neither libwmapro nor wmapro.c have been added to the main build yet, codecs.make should be edited to compile both with rockbox.
current status of the decoder :
- Plays and seeks in the sim
- Still in floating point

git-svn-id: svn://svn.rockbox.org/rockbox/trunk@27006 a1c6a512-1295-4272-9138-f99709370657
2010-06-21 10:48:34 +00:00
Andree Buschmann
dc8af759ce Fix FS#11416. Resuming mpc was broken since r26032 due to false assumption of amount of buffered data.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@26990 a1c6a512-1295-4272-9138-f99709370657
2010-06-20 13:02:31 +00:00
Nils Wallménius
273d05906d libmad: Optimize away 2 instructions from coldfire III_imdct, no measurable speed difference.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@26918 a1c6a512-1295-4272-9138-f99709370657
2010-06-18 13:47:37 +00:00
Rafaël Carré
c0bd4173aa Make sure files which aren't windows-specific use \n line endings only
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@26893 a1c6a512-1295-4272-9138-f99709370657
2010-06-17 16:59:51 +00:00
Nils Wallménius
3d2b1cfa6e ARMv6 vector mutiplication asm, speeds up vorbis decoding about 0.1MHz on gigabeat S.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@26892 a1c6a512-1295-4272-9138-f99709370657
2010-06-17 16:49:39 +00:00
Nils Wallménius
b6c17c2c82 Delete some duplicate inline asm macros since they now live in the codeclib.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@26891 a1c6a512-1295-4272-9138-f99709370657
2010-06-17 16:01:20 +00:00
Nils Wallménius
7afea91560 ARMv6 versions of X(N)PROD31 macros and MULT32 macro. Saves about 1MHz or 3% decoding vorbis on gigabeat S.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@26889 a1c6a512-1295-4272-9138-f99709370657
2010-06-17 15:24:23 +00:00
Andree Buschmann
4b0c1cf23b Clean up libmad/mad.h to avoid double or inconsistent definitions of types, functions and structs.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@26838 a1c6a512-1295-4272-9138-f99709370657
2010-06-14 05:57:20 +00:00
Michael Sevakis
6c921f5e04 Build h10 GB with EABI toolchain. Remove some pointless ICODE attributes from mp3_enc.codec and, to make it build, move one function out of IRAM there since it really shouldn't matter.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@26800 a1c6a512-1295-4272-9138-f99709370657
2010-06-11 21:21:36 +00:00
Michael Sevakis
60f843bf18 Configure Gigabeat S with EABI compiler by default. Implement the INIT section that this enables (due to selective need for long calls). Remove pcm_postinit from INIT section since it's asynchronous. Disable strict aliasing on SPC codec for now just to shut it up.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@26779 a1c6a512-1295-4272-9138-f99709370657
2010-06-11 14:39:35 +00:00
Rafaël Carré
45c7498f59 FS#11335 by me: make ARM assembly functions thumb-friendly
We can't pop into pc on ARMv4t when using thumb: the T bit won't be
modified if we are returning to a thumb function
Code running on ARMv4t should use the new ldrpc / ldmpc macros instead
of ldr pc, [sp], #4 and ldm(cond) sp!, {regs, pc}
No modification on pure ARM builds and ARMv5+

Note: USE_THUMB is currently never defined, no targets can currently be
built with -mthumb, see FS#6734

git-svn-id: svn://svn.rockbox.org/rockbox/trunk@26756 a1c6a512-1295-4272-9138-f99709370657
2010-06-11 04:41:36 +00:00
Andree Buschmann
00e01e82cb Submit FS#11365. Speed up mp3 decoding on ARM processors. It is faster to use the C-implementation of dct32 compiled with -O1 as the asm implementation of dct32 compiled with -O2. Configuration for Coldfire processors is untouched. In the new configuration the stack of the COP decoding thread needs to be increased on dualcore targets. Speed is increasing by up to 0.9 MHz (-O2 against -O1 using eabi).
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@26746 a1c6a512-1295-4272-9138-f99709370657
2010-06-10 19:02:27 +00:00
Andree Buschmann
e02ceefdbc Submit FS#11381. Use -O2 for ffmpegFLAC on ARM targets. This will give reasonable speed-up (+3% on PP502x) for svn and major speed-up when switching to eabi tool chain (+9% on PP502x). Coldfire was tested to be faster when keeping -O1.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@26712 a1c6a512-1295-4272-9138-f99709370657
2010-06-09 06:21:28 +00:00
Andree Buschmann
45ab395c2f Some asm code beautification in the mpc decoder.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@26592 a1c6a512-1295-4272-9138-f99709370657
2010-06-05 17:52:31 +00:00
Michael Sevakis
06a98b15bc SPC codec: The inline asm 'memory' clobbers should be unneeded since the ASM either does not modify memory (only loads values), or it modifies things only other ASM blocks deal with and the operand constraints mark them as in/out/both.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@26538 a1c6a512-1295-4272-9138-f99709370657
2010-06-04 02:20:19 +00:00
Yoshihisa Uchida
6ebe76c147 tta codec: optimize for arm target. pp502x: ~1% speed up.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@26478 a1c6a512-1295-4272-9138-f99709370657
2010-06-02 10:54:11 +00:00
Rafaël Carré
0ea7905395 ARM: use BX when branch to an address in register
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@26432 a1c6a512-1295-4272-9138-f99709370657
2010-05-31 15:14:26 +00:00
Andree Buschmann
6805448195 Correction to clobber lists of several codec's inline assembly.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@26376 a1c6a512-1295-4272-9138-f99709370657
2010-05-29 15:00:10 +00:00
Andree Buschmann
9ab57e510e Small changes to asm for better readability.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@26375 a1c6a512-1295-4272-9138-f99709370657
2010-05-29 14:56:25 +00:00
Mohamed Tarek
76aeb6028e Rename seek() to asf_seek()
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@26237 a1c6a512-1295-4272-9138-f99709370657
2010-05-21 16:05:28 +00:00
Mohamed Tarek
546edf3621 Move seek() from wma.c to libasf since it's really ASF-specific.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@26235 a1c6a512-1295-4272-9138-f99709370657
2010-05-21 15:51:22 +00:00
Nils Wallménius
04bd1a045f fix red
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@26085 a1c6a512-1295-4272-9138-f99709370657
2010-05-16 12:34:43 +00:00
Nils Wallménius
4f22052b5a Since we no longer use -fno-strict-aliasing in CFLAGS we don't need to strip it out for the codecs.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@26084 a1c6a512-1295-4272-9138-f99709370657
2010-05-16 11:57:47 +00:00
Jeffrey Goode
6083f3dff5 Fix logf lines in codecs (type mismatches)
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@26038 a1c6a512-1295-4272-9138-f99709370657
2010-05-15 01:57:32 +00:00
Andree Buschmann
db42781ca8 Fix FS#11261 (slow seek forward in mpc files). Since the introduction of the sv8 library mpc did not use efficient buffering when seeking forward. With this change the implementation will not flush the buffer on each frame but will keep the already buffered data as long as possible.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@26032 a1c6a512-1295-4272-9138-f99709370657
2010-05-14 22:06:28 +00:00
Yoshihisa Uchida
9fedf45814 updates the README document.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@26017 a1c6a512-1295-4272-9138-f99709370657
2010-05-14 11:24:36 +00:00
Nils Wallménius
800e710258 Set up EMAC mode in cook, fixing whitenois when transitioning from a codec using different emac mode.'
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@26016 a1c6a512-1295-4272-9138-f99709370657
2010-05-14 11:08:59 +00:00
Yoshihisa Uchida
32794a9eef fix: The second playback time is not correct in playing TTA musics continuously.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@26015 a1c6a512-1295-4272-9138-f99709370657
2010-05-14 11:08:56 +00:00
Nils Wallménius
abd6b147cc Restor setting of EMAC mode on coldfire lost in r25056 fixes whitenoise when transitioning from a codec using a different EMAC mode.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@26013 a1c6a512-1295-4272-9138-f99709370657
2010-05-14 10:48:26 +00:00