summaryrefslogtreecommitdiff
path: root/apps/codecs/libffmpegFLAC (unfollow)
Commit message (Collapse)Author
2012-04-25Add codecs to librbcodec.Sean Bartell
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>
2011-12-19FS#12463: Improve performance for multichannel FLAC decoding. Speeds up ↵Andree Buschmann
decoding by 3 MHz on PP5022, 6-7 MHz on S5L870x and 11-12 MHz on MCF5250. 5.1-88kHz-files still do not decode in realtime on Coldfire and PP502x. git-svn-id: svn://svn.rockbox.org/rockbox/trunk@31367 a1c6a512-1295-4272-9138-f99709370657
2011-12-14FS#12443: Implement downmixing to stereo for multichannel flac.Andree Buschmann
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@31253 a1c6a512-1295-4272-9138-f99709370657
2011-12-14Correct decorrelation within flac decoding. Finally fixes FS#12371.Andree Buschmann
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@31252 a1c6a512-1295-4272-9138-f99709370657
2011-12-10Fix decoding of multichannel flac, refactor sample buffer handling and ↵Andree Buschmann
decorrelation (taken from ffmpeg sources) and add some flac details to the manual. Solves FS#12371. git-svn-id: svn://svn.rockbox.org/rockbox/trunk@31207 a1c6a512-1295-4272-9138-f99709370657
2011-08-18FS#12231Nils Wallménius
Centralize the selection of codec compilation flags to codec.make to avoid having to duplicate the per cpu selection logic and the build rule in the individual codec lib make files and make tweaking easier. The two special cases, libmad and libspeex were left alone. I plan to introduce a var for arm generation so that appropriate flags can be selected per generation as benchmarking results have shown that different arm arches might have different optimal flags. git-svn-id: svn://svn.rockbox.org/rockbox/trunk@30330 a1c6a512-1295-4272-9138-f99709370657
2011-06-02FS#12141 by Sean BartellNils Wallménius
Some of these were found with http://www.samba.org/junkcode/#findstatic. Changes of note: * The old MDCT has been removed. * Makefile.test files that create test programs for libatrac, libcook, and libffmpegFLAC have been removed, as they don't work. My project will have a replacement that works with all codecs. * I've tried not to remove anything useful. CLIP_TO_15 was removed from libtremor because there's another copy (also commented) in codeclib. git-svn-id: svn://svn.rockbox.org/rockbox/trunk@29945 a1c6a512-1295-4272-9138-f99709370657
2011-01-30Use __builtin_constant_p() to select the best byteswapping method: constant ↵Michael Sevakis
or target optimized. Same macro can then be used for constant values and inits as well as non-constant. git-svn-id: svn://svn.rockbox.org/rockbox/trunk@29171 a1c6a512-1295-4272-9138-f99709370657
2011-01-12Switch coldfire builds over to new toolchain using gcc 4.5.2 and binutils 2.20.1Nils Wallménius
Retune codec compiler optimizations with new compiler. Overall speedup with aac and flac getting big speedups. git-svn-id: svn://svn.rockbox.org/rockbox/trunk@29042 a1c6a512-1295-4272-9138-f99709370657
2010-11-17ffmpeg flac does actually support up to 192k sample rates, and my test file ↵Michael Giacomelli
seems to decode fine, so lets enable it. Note that using 192khz is over 6 times slower then 44.1khz on my test file, so I recommend sticking to more reasonable bitrates. git-svn-id: svn://svn.rockbox.org/rockbox/trunk@28609 a1c6a512-1295-4272-9138-f99709370657
2010-07-20Shorten: tweak some inline asm, use local lables to not cause problems when ↵Nils Wallménius
the function gets inlined, mark it as inline, tweak clobbers and use lea instead of add in one place. Fixes problems when building libffmpegFLAC with newer gcc. git-svn-id: svn://svn.rockbox.org/rockbox/trunk@27503 a1c6a512-1295-4272-9138-f99709370657
2010-07-15Remove two unused macros.Nils Wallménius
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@27438 a1c6a512-1295-4272-9138-f99709370657
2010-07-15Properly fix warning by copying the swap16 and swap32 inline functions from ↵Nils Wallménius
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-15Hopefully fix 'comparison between signed and unsigned' warningNils Wallménius
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@27431 a1c6a512-1295-4272-9138-f99709370657
2010-07-15Sync codeclib bitstream code with upstream ffmpeg code. Build ↵Nils Wallménius
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-06-11FS#11335 by me: make ARM assembly functions thumb-friendlyRafaël Carré
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-09Submit FS#11381. Use -O2 for ffmpegFLAC on ARM targets. This will give ↵Andree Buschmann
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-05-10Revert r25929. Test have shown that the assembler code is more than 50% ↵Jens Arnold
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-10flac: remove ARM assemblyRafaël Carré
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-06Make open() posix compliant api-wise. A few calls (those with O_CREAT) need ↵Thomas Martitz
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-02-22Remove all tabs within codec path.Andree Buschmann
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@24862 a1c6a512-1295-4272-9138-f99709370657
2009-12-06Fix red: av_log2 undefined for ARM_ARCH <= 4, missing codeclib.h includes.Andrew Mahone
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@23869 a1c6a512-1295-4272-9138-f99709370657
2009-12-05Move av_log2 function and asociated table to the codec lib, remove 3 ↵Nils Wallménius
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
2009-11-29Use clz instruction to calculate integer logarithms, speeds up decoding of ↵Nils Wallménius
one flac 8 sample by 12%. git-svn-id: svn://svn.rockbox.org/rockbox/trunk@23783 a1c6a512-1295-4272-9138-f99709370657
2009-05-08Check some previously unchecked return values in the standalone FLAC test ↵Dave Chapman
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-04-10Fix FS#10111 - Pops and clicks when playing 24 bit FLAC files. This fixes ↵Boris Gjenero
decoding of RICE2 entropy coding. Backported from ffmpeg. git-svn-id: svn://svn.rockbox.org/rockbox/trunk@20671 a1c6a512-1295-4272-9138-f99709370657
2009-03-01Silence warning from 'ar' if the archive had to be created.Jens Arnold
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@20151 a1c6a512-1295-4272-9138-f99709370657
2009-02-23Stop hiding errors by redirecting stderr to /dev/null. If we really need to ↵Daniel Stenberg
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
2008-11-25Added 'keywords' and 'eol-style' properties.Björn Stenberg
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@19218 a1c6a512-1295-4272-9138-f99709370657
2008-11-20Remove .a files before running ar, to avoid problems with renamed files ↵Björn Stenberg
remaining in the library. git-svn-id: svn://svn.rockbox.org/rockbox/trunk@19160 a1c6a512-1295-4272-9138-f99709370657
2008-11-20New makefile solution: A single invocation of 'make' to build the entire ↵Björn Stenberg
tree. Fully controlled dependencies give faster and more correct recompiles. Many #include lines adjusted to conform to the new standards. git-svn-id: svn://svn.rockbox.org/rockbox/trunk@19146 a1c6a512-1295-4272-9138-f99709370657
2008-07-19Make the standalone FLAC test program work again (compile with make -f ↵Dave Chapman
Makefile.test). git-svn-id: svn://svn.rockbox.org/rockbox/trunk@18093 a1c6a512-1295-4272-9138-f99709370657
2008-06-28Updated our source code header to explicitly mention that we are GPL v2 orDaniel Stenberg
later. We still need to hunt down snippets used that are not. 1324 modified files... http://www.rockbox.org/mail/archive/rockbox-dev-archive-2008-06/0060.shtml git-svn-id: svn://svn.rockbox.org/rockbox/trunk@17847 a1c6a512-1295-4272-9138-f99709370657
2007-11-08from ffmpeg: replace FIR with finite differences.Marcoen Hirschberg
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@15530 a1c6a512-1295-4272-9138-f99709370657
2007-11-07from ffmpeg: Add decoding support for variable block size FLAC files using ↵Marcoen Hirschberg
the latest FLAC specification. git-svn-id: svn://svn.rockbox.org/rockbox/trunk@15521 a1c6a512-1295-4272-9138-f99709370657
2007-11-07from ffmpeg: Add support for FLAC's new RICE2 entropy coding method. fixes ↵Marcoen Hirschberg
24-bit FLAC files encoded with flac-1.2.1 git-svn-id: svn://svn.rockbox.org/rockbox/trunk@15517 a1c6a512-1295-4272-9138-f99709370657
2007-09-15Remove some unrequired SIMULATOR checks - the CPU_* family of defines are ↵Dave Chapman
never defined for the sim. git-svn-id: svn://svn.rockbox.org/rockbox/trunk@14711 a1c6a512-1295-4272-9138-f99709370657
2007-05-10Code cleaning - remove some unnecessary defined(SIMULATOR) checksDave Chapman
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@13369 a1c6a512-1295-4272-9138-f99709370657
2006-12-31fix previous commit and use just .textMarcoen Hirschberg
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@11870 a1c6a512-1295-4272-9138-f99709370657
2006-12-31fix flac on ARM platforms which don't use iramMarcoen Hirschberg
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@11869 a1c6a512-1295-4272-9138-f99709370657
2006-11-09Added macros controlling what goes to IRAM on different targets.Tomasz Malesinski
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@11483 a1c6a512-1295-4272-9138-f99709370657
2006-11-08Sample-accurate seeking for FLACAdam Boot
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@11474 a1c6a512-1295-4272-9138-f99709370657
2006-10-30Update several codec Makefiles so that the codec libs build again on ↵Magnus Holmgren
Coldfire targets, after the recent move of system-related things to the target tree. (Note to admins: make errors aren't detected on the CVS build page. :)) git-svn-id: svn://svn.rockbox.org/rockbox/trunk@11401 a1c6a512-1295-4272-9138-f99709370657
2006-10-27Next step of Makefile tuning: * Use 'make' internal commands for printing ↵Jens Arnold
messages. Saves build time especially on cygwin. * SILENT variable used in more places. * Bitmap build system uses one Makefille less. git-svn-id: svn://svn.rockbox.org/rockbox/trunk@11369 a1c6a512-1295-4272-9138-f99709370657
2006-10-25Assembler optimised FLAC 24 bit handling routines for Coldfire based ↵Thom Johansen
players. Decoding speed should be improved drastically. Haven't got so many 24 bit files myself, so let me know if something sounds off. git-svn-id: svn://svn.rockbox.org/rockbox/trunk@11329 a1c6a512-1295-4272-9138-f99709370657
2006-10-23Consistent style of 'make' messages. Always use ranlib after ar.Jens Arnold
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@11322 a1c6a512-1295-4272-9138-f99709370657
2006-08-02Fix erronous ARM assembler case for order 1 frames in the FLAC codec. Fixes ↵Thom Johansen
FS #5759. git-svn-id: svn://svn.rockbox.org/rockbox/trunk@10411 a1c6a512-1295-4272-9138-f99709370657
2006-03-17Free one register extra so we can block load a bit more.Thom Johansen
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@9069 a1c6a512-1295-4272-9138-f99709370657
2006-03-06Enable ARM optimisation.Thom Johansen
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@8931 a1c6a512-1295-4272-9138-f99709370657
2006-03-06ARM assembler optimised LPC decode routine for FLAC (not yet enabled).Thom Johansen
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@8927 a1c6a512-1295-4272-9138-f99709370657