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
Michael Giacomelli
8cb4183839
Put decoder array into IRAM. Improves Coldfire (h300) performance 218MHz ->102.84 MHz. Should be realtime on all CF targets.
...
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@25998 a1c6a512-1295-4272-9138-f99709370657
2010-05-13 18:37:06 +00:00
Yoshihisa Uchida
0f5c6d47d4
add True Audio (TTA) codec
...
decoding speed iPod video ~153%
But in some players, the decoding speed is not enough.
(e.g., H180 52.4% (thanks amiconn), H300 55.09% (thanks n1s))
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@25994 a1c6a512-1295-4272-9138-f99709370657
2010-05-13 12:40:09 +00:00
Nils Wallménius
889b4a8ce8
Two tiny tweaks to some arm asm
...
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@25993 a1c6a512-1295-4272-9138-f99709370657
2010-05-13 09:44:05 +00:00
Nils Wallménius
88bd8e74c4
Some asm for mdct on coldfire, speeds up vorbis decoding by about 0.3MHz
...
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@25984 a1c6a512-1295-4272-9138-f99709370657
2010-05-13 08:03:42 +00:00
Nils Wallménius
85f0873682
Simplify special case function, speedup of about 0.2MHz on both coldfire and pp decoding the files in the test set
...
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@25977 a1c6a512-1295-4272-9138-f99709370657
2010-05-12 22:41:17 +00:00
Jens Arnold
08d3c0be37
Revert r25929. Test have shown that the assembler code is more than 50% faster than the C code both on ARM7TDMI (tested on PP5002 and PP5022) and on ARM1136JF-S (tested on Gigabeat S). If it is slower on ARM9*, it should be disabled for ARM9 only.
...
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@25937 a1c6a512-1295-4272-9138-f99709370657
2010-05-10 19:05:25 +00:00
Rafaël Carré
aee2dcf958
flac: remove ARM assembly
...
Using current gcc it only makes decoding a tiny bit slower
Using eabi gcc it makes no speed difference
Tested on fuzev1
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@25929 a1c6a512-1295-4272-9138-f99709370657
2010-05-10 13:01:40 +00:00
Rafaël Carré
b24fac4ca6
wmafixed.h: remove double declaration
...
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@25925 a1c6a512-1295-4272-9138-f99709370657
2010-05-10 10:20:55 +00:00
Mohamed Tarek
270f136fd2
Fix ffmpeg revision number in libwmapro/README.rockbox
...
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@25923 a1c6a512-1295-4272-9138-f99709370657
2010-05-09 21:52:35 +00:00
Mohamed Tarek
cd4d80aeba
nomsg
...
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@25922 a1c6a512-1295-4272-9138-f99709370657
2010-05-09 21:42:09 +00:00
Andree Buschmann
452c5b2197
Unroll mpc's requantization loops for some (minor) speed up.
...
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@25891 a1c6a512-1295-4272-9138-f99709370657
2010-05-07 21:36:55 +00:00
Andree Buschmann
f2b1f8d768
Refactor mpc's requantization to use identical macros for each subframe.
...
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@25887 a1c6a512-1295-4272-9138-f99709370657
2010-05-07 19:58:34 +00:00
Thomas Martitz
50a6ca39ad
Move c/h files implementing/defining standard library stuff into a new libc directory, also standard'ify some parts of the code base (almost entirely #include fixes).
...
This is to a) to cleanup firmware/common and firmware/include a bit, but also b) for Rockbox as an application which should use the host system's c library and headers, separating makes it easy to exclude our files from the build.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@25850 a1c6a512-1295-4272-9138-f99709370657
2010-05-06 21:04:40 +00:00
Thomas Martitz
0a1d7c28b7
Make open() posix compliant api-wise. A few calls (those with O_CREAT) need the additional optional mode parameter so add it. Impact for the core is almost zero, as open() is a wrapper macro for the real open function which doesn't take the variable parameter.
...
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@25844 a1c6a512-1295-4272-9138-f99709370657
2010-05-06 17:35:13 +00:00
Mohamed Tarek
7f9d30ba3e
missed a comment
...
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@25789 a1c6a512-1295-4272-9138-f99709370657
2010-05-02 20:13:27 +00:00
Mohamed Tarek
2fa864b9e6
Remove unnecessary parameter (struct codec_api* ci) passed to libasf functions, and consequently remove the no-longer needed #ifdef in apps/codecs/libasf/asf.h
...
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@25788 a1c6a512-1295-4272-9138-f99709370657
2010-05-02 20:07:11 +00:00
Andree Buschmann
5768f2b145
Remove residual tabs in codec directory.
...
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@25785 a1c6a512-1295-4272-9138-f99709370657
2010-05-02 19:16:47 +00:00
Andree Buschmann
b95326da29
Change naming of arm asm routines in libmad's synthesis to match their functionality.
...
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@25784 a1c6a512-1295-4272-9138-f99709370657
2010-05-02 19:01:37 +00:00
Mohamed Tarek
7aaae54afc
- Modify metadata/asf.c to use libasf.
...
- 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
2010-05-02 18:27:01 +00:00
Mohamed Tarek
80b9bb4f17
Add the Rockbox GPL header to apps/codecs/libasf/asf.c and fix the one in apps/codecs/wma.c
...
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@25781 a1c6a512-1295-4272-9138-f99709370657
2010-05-02 17:30:41 +00:00
Mohamed Tarek
792ae6b1bd
- Factor out container specific code from apps/codecs/wma.c.
...
- Create an independent asf packet-parsing library in apps/codecs/libasf.
- Modify wma.c to use the newly created libasf.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@25780 a1c6a512-1295-4272-9138-f99709370657
2010-05-02 17:19:42 +00:00
Andree Buschmann
13075dea87
Fix a bug introduced with r25777.
...
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@25779 a1c6a512-1295-4272-9138-f99709370657
2010-05-02 16:32:05 +00:00
Mohamed Tarek
703608d8c5
Fix intdentation apps/codecs/libwma/asf.h, no functional changes.
...
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@25778 a1c6a512-1295-4272-9138-f99709370657
2010-05-02 15:56:35 +00:00
Andree Buschmann
eec5eb9ecc
Refacturate arm version of libmad's synthesis filter. Only two asm macros left, renamed asm-implementation for better clarity. No change in speed or precision.
...
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@25777 a1c6a512-1295-4272-9138-f99709370657
2010-05-02 15:45:43 +00:00
Michael Sevakis
9f157ad584
Do some SPC codec optimizing for ARMv6 (as a training exercise), tweak realtime BRR for all CPU that use it, add Gaussian ASM optimization for all ARM that can use it. Add some LIKELY/UNLIKELY branch hints. On Gigabeat-S gives +22% speedup. For Gigabeat F, about +5% speedup. For less-powerful players, no real change aside possibly from branch hints.
...
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@25771 a1c6a512-1295-4272-9138-f99709370657
2010-05-02 02:44:45 +00:00
Mohamed Tarek
fe147cec65
Modify the ffmpeg source files in apps/codecs/libwmapro in order to compile the codec standalone.
...
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@25764 a1c6a512-1295-4272-9138-f99709370657
2010-04-30 12:20:25 +00:00
Mohamed Tarek
cf43e5083b
Add libwmapro to apps/codecs. These files comprise a set of unmodified files needed from ffmpeg's libavcodec and libavutil to compile and use the wma pro decoder standalone. The files were taken from ffmpeg's svn r22886 dated 15 April 2010.
...
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@25763 a1c6a512-1295-4272-9138-f99709370657
2010-04-30 11:11:56 +00:00
Mohamed Tarek
67f7ecf731
Revert r25739 which added libwmapro to apps/codecs, in preparation to commit the unmodified ffmpeg files first, for the sake of a consistent/complete svn history.
...
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@25758 a1c6a512-1295-4272-9138-f99709370657
2010-04-29 15:14:43 +00:00
Mohamed Tarek
dda7fab1d6
Add libwmapro to trunk.
...
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@25739 a1c6a512-1295-4272-9138-f99709370657
2010-04-27 18:04:34 +00:00
Bertrik Sikken
1cd1e66ed3
Clean up libmusepack: move declarations to internal.h and set svn properties.
...
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@25676 a1c6a512-1295-4272-9138-f99709370657
2010-04-18 18:12:32 +00:00
Yoshihisa Uchida
94fb09316a
fix yellow
...
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@25291 a1c6a512-1295-4272-9138-f99709370657
2010-03-22 10:47:09 +00:00
Yoshihisa Uchida
7a3822c8b0
fix bug: WAV file playback does not resume (FS#11077)
...
Not only WAV but also Sun audio, SMAF, vox and WAV64 can resume.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@25289 a1c6a512-1295-4272-9138-f99709370657
2010-03-22 10:02:05 +00:00
Andree Buschmann
cfe51fb0e8
Fix FS#11127. r25165 introduced a bug to the aac codec, which lead to not resetting the time position.
...
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@25249 a1c6a512-1295-4272-9138-f99709370657
2010-03-19 15:27:10 +00:00
Michael Giacomelli
70ac57b95b
Change various CPU_ARM defines to _ARM_ASSEM_ to be more consistent with the rest of Tremor.
...
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@25214 a1c6a512-1295-4272-9138-f99709370657
2010-03-16 04:47:24 +00:00