Michael Giacomelli
15dc0750be
Put COOKContext struct into IRAM. Speeds up decoding by 6MHz on PP5024 at the cost of 30.5 kbytes of IRAM.
...
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@21833 a1c6a512-1295-4272-9138-f99709370657
2009-07-13 01:59:32 +00:00
Mohamed Tarek
6258e24e0e
Some fixes for the standalone test program.
...
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@21807 a1c6a512-1295-4272-9138-f99709370657
2009-07-12 14:43:24 +00:00
Mohamed Tarek
edf3af2c68
Add seeking support in cook codec.
...
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@21806 a1c6a512-1295-4272-9138-f99709370657
2009-07-12 14:36:06 +00:00
Jens Arnold
02c031709c
* ARM asm DSP and codec/plugin functions: Use r12 scratch register properly
...
* Fix saving another unused reg in dsp code
* Use less regs in the generic ARM mpegplayer adding idct pure DC case
* Fix ARMv6 mpegplayer adding idct using an unsaved register in pure DC case
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@21803 a1c6a512-1295-4272-9138-f99709370657
2009-07-12 13:14:35 +00:00
Andrew Mahone
1bc67c81b6
Fix type mismatch warnings and errors exposed when building with EABI toolchain.
...
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@21769 a1c6a512-1295-4272-9138-f99709370657
2009-07-11 00:22:26 +00:00
Mohamed Tarek
d259568831
Add the ability to seek to the start of the track.
...
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@21728 a1c6a512-1295-4272-9138-f99709370657
2009-07-08 20:23:24 +00:00
Maurus Cuelenaere
7414140f7c
Previous commit didn't fix compiling on Cygwin, this one should.
...
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@21724 a1c6a512-1295-4272-9138-f99709370657
2009-07-08 18:27:59 +00:00
Maurus Cuelenaere
269ed8a415
Fix compiling on Cygwin hosts.
...
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@21722 a1c6a512-1295-4272-9138-f99709370657
2009-07-08 18:06:38 +00:00
Maurus Cuelenaere
851b0e3234
Try at fixing 'cast to/from pointer to/from integer of different size' warnings
...
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@21719 a1c6a512-1295-4272-9138-f99709370657
2009-07-08 17:18:59 +00:00
Maurus Cuelenaere
24967bd552
Cook codec: make sure the RMContext get aligned correctly, or we won't be able to find it
...
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@21717 a1c6a512-1295-4272-9138-f99709370657
2009-07-08 15:31:36 +00:00
Maurus Cuelenaere
8d4d4610b6
* FS#10411 - Fixed point math code is bloated by Jeffrey Goode
...
* Set svn:keywords properties
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@21701 a1c6a512-1295-4272-9138-f99709370657
2009-07-07 13:36:34 +00:00
Mohamed Tarek
e184ef1027
Adding support for rm playback. Only cook codec is supported for now and no seeking.
...
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@21695 a1c6a512-1295-4272-9138-f99709370657
2009-07-06 22:40:45 +00:00
Maurus Cuelenaere
802743a061
Take 2 at 'Consolidate all fixed point math routines in one library' (FS#10400) by Jeffrey Goode
...
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@21664 a1c6a512-1295-4272-9138-f99709370657
2009-07-05 18:06:07 +00:00
Maurus Cuelenaere
c3bc8fda80
Revert "Consolidate all fixed point math routines in one library (FS#10400) by Jeffrey Goode"
...
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@21635 a1c6a512-1295-4272-9138-f99709370657
2009-07-04 13:17:58 +00:00
Maurus Cuelenaere
4710a32800
Consolidate all fixed point math routines in one library (FS#10400) by Jeffrey Goode
...
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@21633 a1c6a512-1295-4272-9138-f99709370657
2009-07-04 12:26:45 +00:00
Michael Giacomelli
bd70193e98
Commit rest of fix in FS#9866. Don't parse Vorbis comments again in libtremor. It wastes memory and we already have the comments in memory. Looking at the spec and code, I think this fix is proper, but if it breaks any files this may need to be revisited.
...
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@21581 a1c6a512-1295-4272-9138-f99709370657
2009-06-30 22:37:05 +00:00
Michael Giacomelli
3866755d28
Remove unused variable and assignment.
...
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@21304 a1c6a512-1295-4272-9138-f99709370657
2009-06-15 22:36:57 +00:00
Mohamed Tarek
45f72e933a
Move rm.[c/h] from libcook to librm. No functional changes.
...
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@21066 a1c6a512-1295-4272-9138-f99709370657
2009-05-24 14:10:51 +00:00
Mohamed Tarek
95fa7f6a2e
Move the code segment that corrects the value of (number of packets) to
...
the parser. This is strictly parser-related and main.c shouldn't have to
deal with it.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@21043 a1c6a512-1295-4272-9138-f99709370657
2009-05-22 20:35:20 +00:00
Mohamed Tarek
b63028d80a
Modify the test program to read audio frames from a memory buffer rather
...
than a file descriptor, to make the decoding process as much similar
as to how it should be in rockbox.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@21042 a1c6a512-1295-4272-9138-f99709370657
2009-05-22 20:23:38 +00:00
Mohamed Tarek
694b3b734f
-Remove some unnecessary defines from rm.c.
...
-Modify code related to the renamed rm.[c/h] instead of rm2wav.[c/h].
-Remove struct cook_extradata from rm.c as it is not used.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@21041 a1c6a512-1295-4272-9138-f99709370657
2009-05-22 19:51:36 +00:00
Mohamed Tarek
9389a5a4d1
Rename rm2wav.[c/h] to rm.[c/h]. No functional changes.
...
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@21040 a1c6a512-1295-4272-9138-f99709370657
2009-05-22 19:42:00 +00:00
Mohamed Tarek
fde78ddcc0
Move wav related code to main.c
...
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@21039 a1c6a512-1295-4272-9138-f99709370657
2009-05-22 19:36:32 +00:00
Mohamed Tarek
1775866fd3
Move bswap.h up from libavutil/ and remove libavutil/
...
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@20931 a1c6a512-1295-4272-9138-f99709370657
2009-05-14 21:30:44 +00:00
Mohamed Tarek
49ba646d57
-Remove all dynamic allocations, hence remove cook_decode_close() which was basically
...
needed for freeing allocated memory.
-Remove any ffmpeg-specific attributes (av_const,av_always_inline .. etc.).
-Move some math functions to cook_fixpoint.h - libavutil/common.h is no longer
needed.
-Remove libavutil/mem.[c/h], libavutil/common.h and libavutil/internal.h.
-Fix a warning in cookdata_fixpoint.h.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@20922 a1c6a512-1295-4272-9138-f99709370657
2009-05-12 20:50:35 +00:00
Mohamed Tarek
f2c18d6922
-Remove calls to av_log() and use DEBUGF/printf instead, thuse removing
...
libavutil/log.[c/h] and libavutil/avutil.h.
-Take necessary defines to bitstream.h from libavutil/intreadwrite.h to
remove the latter.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@20918 a1c6a512-1295-4272-9138-f99709370657
2009-05-12 13:21:34 +00:00
Mohamed Tarek
950c4747e3
Remove bytestream.h and and a related comment from cook.h
...
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@20917 a1c6a512-1295-4272-9138-f99709370657
2009-05-12 12:30:33 +00:00
Mohamed Tarek
0cb3ad58b3
-Took cook_random() from an old cook.c revision [6 mar 2007], which is a
...
simple RNG, to eliminate the need for lfg.c/h.
-Remove lfg.c/h and md5.c/h as they are no longer needed and use the
more common form of my name in docs/COMMITTERS.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@20915 a1c6a512-1295-4272-9138-f99709370657
2009-05-11 23:35:50 +00:00
Dave Chapman
112f39379c
Patch by Mohamed Tarek from FS#10182 - remove avcodec.h as it is no longer needed. Also remove -lm from Makefile.test for the same reason.
...
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@20909 a1c6a512-1295-4272-9138-f99709370657
2009-05-11 07:59:10 +00:00
Dave Chapman
44afb00e26
Fix the $Id$ line broken by r20907.
...
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@20908 a1c6a512-1295-4272-9138-f99709370657
2009-05-11 07:47:02 +00:00
Michael Giacomelli
5c404a02fb
Commited too much really this time.
...
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@20905 a1c6a512-1295-4272-9138-f99709370657
2009-05-10 23:38:06 +00:00
Michael Giacomelli
9c43aaa41b
Actually remove the unneeded files in the last commit.
...
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@20903 a1c6a512-1295-4272-9138-f99709370657
2009-05-10 23:32:53 +00:00
Michael Giacomelli
65649de515
Patch by Mohamed Tarek from FS #10182 . Remove floating point code (FFT, MDCT, etc) from libcook.
...
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@20902 a1c6a512-1295-4272-9138-f99709370657
2009-05-10 23:18:04 +00:00
Dave Chapman
fc28cb4ed5
Patch by Mohamed Tarek from FS#10182 - convert codec to fixed-point using patches submitted to the ffmpeg mailing list in 2007 by Ian Braithwaite.
...
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@20901 a1c6a512-1295-4272-9138-f99709370657
2009-05-10 22:26:02 +00:00
Dave Chapman
7ba6ef42de
Patch by Mohamed Tarek from FS#10182: 1) Move the main() test program from cook.c to a new main.c; 2) Move some common definitions from cook.c to cook.h. No functional changes.
...
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@20898 a1c6a512-1295-4272-9138-f99709370657
2009-05-09 23:24:02 +00:00
Dave Chapman
868652abaa
Patch by Mohamed Tarek - add #define to protect against multiple inclusion
...
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@20897 a1c6a512-1295-4272-9138-f99709370657
2009-05-09 23:14:55 +00:00
Dave Chapman
67695617a1
The first part of Mohamed Tarek's Google Summer of Code work to implement RealAudio support in Rockbox. This is a self-contained Cook decoder using the original ffmpeg (still floating point) decoder and a new RM parser started by me in 2008 and continued by MT over the past few months. This is the equivalent of libcook.patch1 from FS#10182, but with further cleaning by both MT and me to minimise the differences to the original ffmpeg files. See README.rockbox for more details.
...
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@20883 a1c6a512-1295-4272-9138-f99709370657
2009-05-09 01:21:49 +00:00
Dave Chapman
69db01e72f
Initial commit of the minimal set of ffmpeg (r18079) files required for Cook (realaudio) decoding. These are the unmodified versions from ffmpeg, committed as a base for future changes.
...
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@20882 a1c6a512-1295-4272-9138-f99709370657
2009-05-09 01:04:20 +00:00
Dave Chapman
90f1e5caf2
Check some previously unchecked return values in the standalone FLAC test program - fixes some warnings spotted by Mohamed Tarek El Haddad (mt).
...
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@20875 a1c6a512-1295-4272-9138-f99709370657
2009-05-08 17:52:38 +00:00
Dave Hooper
b10ba5e8b3
Fix for noise after vorbis skipping introduced in r20783 - thanks to Aoyumi and learman
...
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@20843 a1c6a512-1295-4272-9138-f99709370657
2009-05-02 11:26:53 +00:00
Michael Giacomelli
0a1baa36b1
Fix FS#10174 by correcting an oversimplification of the AAC window switching code I introduced with the unified IMDCT library. Should significantly improve accuracy for all AAC files.
...
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@20821 a1c6a512-1295-4272-9138-f99709370657
2009-04-29 17:44:02 +00:00
Dave Hooper
67fb5415f7
Commit FS#9882 - make better use of iram at different quality encodings, remove redundant memsets, implement doublebuffer if it will fit in iram to save a mempcy each frame, and some alignment fixes for coldfire
...
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@20783 a1c6a512-1295-4272-9138-f99709370657
2009-04-25 11:25:13 +00:00
Michael Giacomelli
738824ccdd
Might as well enable SPC so that all codecs build on the Clip. Not yet real time.
...
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@20782 a1c6a512-1295-4272-9138-f99709370657
2009-04-25 04:10:50 +00:00
Michael Giacomelli
f5884fdeb6
Disable AAC-SBR, AAC-SSR, and AAC-PS on Sansa clip. Clean up warnings introduced by this. Enable compiling the AAC codec on the Clip. Due to lack of memory for seek tables, files over 10 minutes long or so will probably fail.
...
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@20781 a1c6a512-1295-4272-9138-f99709370657
2009-04-25 03:51:58 +00:00
Michael Giacomelli
87b231c68c
Enable WMA, MPC, ASAP, NSF, APE, and SID playback on the Sansa clip as these codecs already fit into IRAM. SPC could be made to fit by changing BRRcache define, but without MMU I doubt it would be realtime anyway.
...
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@20780 a1c6a512-1295-4272-9138-f99709370657
2009-04-25 03:16:13 +00:00
Maurus Cuelenaere
17d9d80011
Fix red
...
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@20777 a1c6a512-1295-4272-9138-f99709370657
2009-04-22 15:04:26 +00:00
Maurus Cuelenaere
c89ac3460a
Fix yellow
...
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@20776 a1c6a512-1295-4272-9138-f99709370657
2009-04-22 14:48:07 +00:00
Andree Buschmann
f4ac75752e
Allow higher precision in calculation of seek position and elapsed time for mpc codec.
...
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@20756 a1c6a512-1295-4272-9138-f99709370657
2009-04-20 19:16:48 +00:00
Andree Buschmann
f7a9125781
Fix FS#10139 (broken seek for very long mp3 files) through avoiding int32 overflow in calculation.
...
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@20755 a1c6a512-1295-4272-9138-f99709370657
2009-04-20 19:10:27 +00:00
Maurus Cuelenaere
2995c2d265
Clean code a bit (no functional changes)
...
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@20715 a1c6a512-1295-4272-9138-f99709370657
2009-04-16 14:34:49 +00:00
Maurus Cuelenaere
f3643181ae
Fix header
...
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@20714 a1c6a512-1295-4272-9138-f99709370657
2009-04-16 13:48:34 +00:00
Maurus Cuelenaere
66b078f643
Add setjmp implementation for MIPS targets from newlib
...
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@20713 a1c6a512-1295-4272-9138-f99709370657
2009-04-16 13:41:48 +00:00
Boris Gjenero
cd6cbf5001
Fix FS#10111 - Pops and clicks when playing 24 bit FLAC files. This fixes decoding of RICE2 entropy coding. Backported from ffmpeg.
...
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@20671 a1c6a512-1295-4272-9138-f99709370657
2009-04-10 02:15:04 +00:00
Magnus Holmgren
efef625b3f
Fix FS#10067: Crash when playing very short (less than a second) FLAC files.
...
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@20567 a1c6a512-1295-4272-9138-f99709370657
2009-03-29 14:46:11 +00:00
Nicolas Pennequin
396aeafa6c
Correct Björn's name in various file headers.
...
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@20491 a1c6a512-1295-4272-9138-f99709370657
2009-03-23 17:08:46 +00:00
Michael Giacomelli
754ae4acba
Enable libmad ASM optimized fixed point routines for MIPS.
...
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@20280 a1c6a512-1295-4272-9138-f99709370657
2009-03-10 02:13:35 +00:00
Michael Giacomelli
9f49657c6a
Fix endianness defines in the mdctlib code.
...
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@20279 a1c6a512-1295-4272-9138-f99709370657
2009-03-10 01:50:18 +00:00
Magnus Holmgren
f4515c3082
Add setjmp/longjmp for ARM and ColdFire to the codec lib, and use it in the Vorbis codec to better handle out of memory conditions (to exit rather than crash; the AAC codec could use it too). setjmp/longjmp comes from newlib 1.17.0 with a few minor changes (combine parts of some files, remove support for some architectures, change some ifdef's).
...
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@20235 a1c6a512-1295-4272-9138-f99709370657
2009-03-08 12:48:58 +00:00
Bertrik Sikken
4f87abf90a
Cosmetic fix: remove duplicate semicolons
...
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@20198 a1c6a512-1295-4272-9138-f99709370657
2009-03-04 18:15:06 +00:00
Jens Arnold
23e28f2b0c
Overlooked one place where the 'archive created' warning needs to be suppressed.
...
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@20197 a1c6a512-1295-4272-9138-f99709370657
2009-03-04 07:38:42 +00:00
Jens Arnold
6436b39d4c
Fix some slight inconsistencies.
...
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@20172 a1c6a512-1295-4272-9138-f99709370657
2009-03-02 08:16:36 +00:00
Michael Giacomelli
912b24f078
Make tremor check for very long ogg tags and truncate them if they're larger then 10000 characters rather then seg faulting. Fixes FS#9866.
...
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@20156 a1c6a512-1295-4272-9138-f99709370657
2009-03-01 21:36:13 +00:00
Jens Arnold
6421f94c0d
Silence warning from 'ar' if the archive had to be created.
...
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@20151 a1c6a512-1295-4272-9138-f99709370657
2009-03-01 09:04:15 +00:00
Tom Ross
5d190bc13c
Mac doesn't handle placing variables in specific sections very well. Building the sim on OS X is now possible once again.
...
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@20124 a1c6a512-1295-4272-9138-f99709370657
2009-02-27 07:30:41 +00:00
Daniel Stenberg
2e6d604bb6
Stop hiding errors by redirecting stderr to /dev/null. If we really need to do re-introduce somewhere we should rather make it dependent on the V variable so that make V=1 would still show the error and only "normal" builds would hide it.
...
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@20090 a1c6a512-1295-4272-9138-f99709370657
2009-02-23 08:45:16 +00:00
Michael Giacomelli
bd60270418
Commit FS#9915 by Sei Aoyumi. Adds hints to help GCC better optimize vorbis decoding. Gives a minor speed increase.
...
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@20030 a1c6a512-1295-4272-9138-f99709370657
2009-02-17 17:01:09 +00:00
Michael Sevakis
21f0c9a282
Make basic cache functions into calls, and get rid of CACHE_FUNCTION_WRAPPERS and CACHE_FUNCTIONS_AS_CALL macros. Rename flush/invalidate_icache to cpucache_flush/invalidate. They're inlined only if an implementation isn't provided by defining HAVE_CPUCACHE_FLUSH/INVALIDATE.
...
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@19971 a1c6a512-1295-4272-9138-f99709370657
2009-02-11 12:55:51 +00:00
Daniel Stenberg
dca7d391f1
make sure plugin.lds is not processed when building sims since it isn't used for anything then!
...
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@19957 a1c6a512-1295-4272-9138-f99709370657
2009-02-09 18:31:56 +00:00
Michael Giacomelli
755ddc9fc2
Commit fix suggested by Siaoru Lee in FS#9776. Fixes a bug in our ASF parser.
...
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@19946 a1c6a512-1295-4272-9138-f99709370657
2009-02-08 22:05:15 +00:00
Michael Sevakis
b0befadad1
Include divide-by-zero handling within plugins and codecs for ARM processors.
...
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@19834 a1c6a512-1295-4272-9138-f99709370657
2009-01-24 03:47:09 +00:00
Andrew Mahone
44554e6075
initialize the codecs API in the codec loader, using the same method as used in the plugin loader
...
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@19824 a1c6a512-1295-4272-9138-f99709370657
2009-01-23 09:51:26 +00:00
Michael Giacomelli
e1b01d4608
Remove floor0 stuff from IRAM. Results in a tiny speed decrease for files encoded with 6+ year old versions of the Xiph encoder, but saves IRAM which can be better used elsewhere. Thanks Nils Wallmenius in FS#7832 for the idea.
...
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@19811 a1c6a512-1295-4272-9138-f99709370657
2009-01-21 18:22:46 +00:00
Björn Stenberg
52320b83c0
Added missing dependencies for codeclib and pluginlib. This required renaming some files that have twins in other places.
...
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@19756 a1c6a512-1295-4272-9138-f99709370657
2009-01-12 21:56:46 +00:00
Björn Stenberg
6427d127aa
Calculate watermark from bitrate and harddisk spinup time.
...
Use a smaller PCM buffer on targets with 2MB or less ram.
(FS#9703)
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@19743 a1c6a512-1295-4272-9138-f99709370657
2009-01-10 21:10:56 +00:00
Björn Stenberg
a36cdf5b37
Removed the sim_ prefix from the plugin api.
...
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@19704 a1c6a512-1295-4272-9138-f99709370657
2009-01-07 09:53:46 +00:00
Bertrik Sikken
32c2f455d1
static/const/#include/tab police on various files
...
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@19643 a1c6a512-1295-4272-9138-f99709370657
2009-01-02 21:43:52 +00:00
Bertrik Sikken
8e22f7f5b0
Make local functions static in codecs, where possible.
...
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@19612 a1c6a512-1295-4272-9138-f99709370657
2008-12-29 19:49:48 +00:00
Jens Arnold
ed945e31c1
Slight speedup for the APE filters. Most noticeable on coldfire (+3.5% for -c2000), but also helps on the arm targets (+0.9% for -c2000 on PP5002). This transformation is oveflow safe, as absres < 2^24 is guaranteed.
...
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@19556 a1c6a512-1295-4272-9138-f99709370657
2008-12-22 08:33:49 +00:00
Jens Arnold
dca9f42cdf
Fix decoding of stereo frames with silence in only one channel. * Make the standalone decoder contain debugging information.
...
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@19552 a1c6a512-1295-4272-9138-f99709370657
2008-12-21 23:49:02 +00:00
Jens Arnold
0bf6e36628
Fix handling of 8 bit mono and stereo APE files, and also optimise 16 and 24 bit output in the standalone decoder a bit.
...
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@19517 a1c6a512-1295-4272-9138-f99709370657
2008-12-21 01:29:36 +00:00
Tom Ross
e7afeff072
Sync some changes found in ffmpeg plus a spelling correction I forgot to commit.
...
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@19503 a1c6a512-1295-4272-9138-f99709370657
2008-12-20 06:40:46 +00:00
Tom Ross
c3615119ba
Don't read a full byte if less than 8 bits are available. The change doesn't 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
2008-12-20 06:16:22 +00:00
Michael Giacomelli
6a635b20da
Wrap some of the more ridiculously long lines introduced in the previous revision. Whitespace changes only.
...
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@19501 a1c6a512-1295-4272-9138-f99709370657
2008-12-20 05:53:28 +00:00
Michael Giacomelli
2557251351
Correctly implement remaining portions of ffmpeg's r8627 that I'd forgotten 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
2008-12-20 05:43:58 +00:00
Michael Giacomelli
7a0baa3aa5
Fix occasional glitch when switching from stereo to mono tracks due to uninitialized m/s coding flag.
...
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@19498 a1c6a512-1295-4272-9138-f99709370657
2008-12-20 02:38:35 +00:00
Michael Giacomelli
d909eee0ce
Commit fix by Tom Ross in FS#7488 wherein a silly mistake noise coding 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
2008-12-20 01:49:27 +00:00
Michael Giacomelli
0301ed5594
Fix bug where a mono file using noise coding would be corrupted if it was 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
2008-12-20 01:38:34 +00:00
Björn Stenberg
0d97a5f021
Better file suffix replacement. Bug fix by Nils Wallménius. Closes FS #9644 .
...
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@19443 a1c6a512-1295-4272-9138-f99709370657
2008-12-15 09:55:20 +00:00
Michael Sevakis
8cfbd3604f
Use cookies for thread identification instead of pointers directly which gives a buffer against wrongly identifying a thread when the slot is recycled (which has been nagging me for awhile). A slot gets 255 uses before it repeats. Everything gets incompatible so a full update is required.
...
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@19377 a1c6a512-1295-4272-9138-f99709370657
2008-12-10 08:57:10 +00:00
Jens Arnold
a29b659758
Assembler optimised mono predictor for ARM. Speedup for -c1000 mono is ~5% on PP, ~8% on Gigabeat S (less for higher compression levels). Also fix some overlooked comments in the stereo predictor.
...
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@19375 a1c6a512-1295-4272-9138-f99709370657
2008-12-09 23:20:59 +00:00
Jens Arnold
c1cd0469ca
Implement mono predictor in assembler for coldfire, yielding a ~6% speedup for mono -c1000. Apply ideas gained from it back to the stereo predictor, saving 4 instructions. No speed increase for stereo, probably due to cache aliasing effects. * 80-column police.
...
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@19296 a1c6a512-1295-4272-9138-f99709370657
2008-12-02 02:26:04 +00:00
Jens Arnold
75bd4adbc2
Shuffling around register allocation allows to keep decoded0 and decoded1 in registers, for a slight speedup.
...
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@19287 a1c6a512-1295-4272-9138-f99709370657
2008-12-01 13:21:06 +00:00
Nils Wallménius
5f7db212d5
Restore compiler optimization level for libmad, was lost in the buildsystem rework
...
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@19272 a1c6a512-1295-4272-9138-f99709370657
2008-11-30 14:46:38 +00:00
Jens Arnold
89a6fe7ae4
Remove extraneous semicolons, and fix a comment.
...
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@19268 a1c6a512-1295-4272-9138-f99709370657
2008-11-30 11:54:20 +00:00
Jens Arnold
b153133682
Remove extraneous semicolons, and fix a comment.
...
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@19267 a1c6a512-1295-4272-9138-f99709370657
2008-11-30 11:53:52 +00:00
Jens Arnold
797ef6585a
Fix APE 16-bit mono output: mono signals need to be scaled for rockbox.
...
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@19264 a1c6a512-1295-4272-9138-f99709370657
2008-11-30 01:01:04 +00:00
Jens Arnold
88270f7622
Resurrect the ARM7 16-bit packed vector addition/subtraction for ARMv5, giving a nice speedup for the higher compression levels (tested on Cowon D2).
...
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@19260 a1c6a512-1295-4272-9138-f99709370657
2008-11-28 23:50:22 +00:00
Michael Sevakis
546d0dd4e6
Recording: Change some encoder code the operation of which was apparantly unclear. It seems clearer now anyway. No functional changes.
...
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@19255 a1c6a512-1295-4272-9138-f99709370657
2008-11-28 07:23:13 +00:00
Jens Arnold
113c285045
On ARM9TDMI (e.g. Gigabeat F) it's faster to use a ldr/str pair than add+ldmia/stmia for 2 registers. On ARM7TDMI a str pair is equally fast, so go for the simpler macro and use it for all ARMv4.
...
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@19250 a1c6a512-1295-4272-9138-f99709370657
2008-11-27 22:07:46 +00:00
Jens Arnold
6d34e33b94
Speed up the predictor a little by using ldrd/strd on ARMv5+. This required shuffling around the register allocation somewhat. Performance on ARMv4 is unaffected.
...
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@19248 a1c6a512-1295-4272-9138-f99709370657
2008-11-27 20:52:23 +00:00