summaryrefslogtreecommitdiff
path: root/apps/codecs (follow)
Commit message (Collapse)AuthorAge
* FS#12117: Use more IRAM for atrac3. Speeds up decoding from 1-2% (PP5022, ↵Andree Buschmann2011-05-16
| | | | | | PP5024, S5L870x) to 11% (MCF5250). git-svn-id: svn://svn.rockbox.org/rockbox/trunk@29892 a1c6a512-1295-4272-9138-f99709370657
* Use more IRAM for mpc on S5L870x. Speed up decoding by ~2%.Andree Buschmann2011-05-16
| | | | git-svn-id: svn://svn.rockbox.org/rockbox/trunk@29891 a1c6a512-1295-4272-9138-f99709370657
* FS#12113: Optimize IRAM configuration for SPC. Performance increases by 5-6% ↵Andree Buschmann2011-05-15
| | | | | | on PP5022, PP5024 and S5L870x. No change of performance on Coldfire, PP5002 and PP5020. git-svn-id: svn://svn.rockbox.org/rockbox/trunk@29887 a1c6a512-1295-4272-9138-f99709370657
* FS#12113: Optimize IRAM configuration for NES Sound Format. Performance is ↵Andree Buschmann2011-05-15
| | | | | | stable on Coldfire and shows performance gains from about 50-100% (PP5020, S5L870x, PP5022) up to 168% (PP5002). git-svn-id: svn://svn.rockbox.org/rockbox/trunk@29886 a1c6a512-1295-4272-9138-f99709370657
* FS#12113: Optimize IRAM configuration for Atari SAP format. Performance ↵Andree Buschmann2011-05-15
| | | | | | gains range from 5% (PP5020), over 13-16% (PP5002, PP5022, PP5024, S5L870x) to 115% (MCF5249, MCF5250). git-svn-id: svn://svn.rockbox.org/rockbox/trunk@29883 a1c6a512-1295-4272-9138-f99709370657
* Trapped into ifdef-hell. Configure libfaad's IRAM/DRAM usage like it is ↵Andree Buschmann2011-05-12
| | | | | | meant to be. git-svn-id: svn://svn.rockbox.org/rockbox/trunk@29864 a1c6a512-1295-4272-9138-f99709370657
* The last submit had one define too much. Nevertheless fix the IRAM ↵Andree Buschmann2011-05-12
| | | | | | configuration for static allocation method. git-svn-id: svn://svn.rockbox.org/rockbox/trunk@29863 a1c6a512-1295-4272-9138-f99709370657
* libfaad: AAC including HE-profile needs ~470 KB for playback (measured on ↵Andree Buschmann2011-05-12
| | | | | | ARM). Therefor it does not make sense to enable HE on devices with CODEC_SIZE < 512 KB. This will allow to load and play larger AAC-LC files on such devices. git-svn-id: svn://svn.rockbox.org/rockbox/trunk@29862 a1c6a512-1295-4272-9138-f99709370657
* Make libfaad compilable again without PS_DEC.Andree Buschmann2011-05-12
| | | | git-svn-id: svn://svn.rockbox.org/rockbox/trunk@29861 a1c6a512-1295-4272-9138-f99709370657
* libfaad: Move PS related variables to sbr_info struct. This allows dynamic ↵Andree Buschmann2011-05-11
| | | | | | allocation including error handling. git-svn-id: svn://svn.rockbox.org/rockbox/trunk@29857 a1c6a512-1295-4272-9138-f99709370657
* Implement error handling for libfaad's memory allocation. Do not allocate PS ↵Andree Buschmann2011-05-10
| | | | | | related types dynamically anymore to minimize code changes. git-svn-id: svn://svn.rockbox.org/rockbox/trunk@29854 a1c6a512-1295-4272-9138-f99709370657
* Proper initialization of static variables in codeclib.Andree Buschmann2011-05-10
| | | | git-svn-id: svn://svn.rockbox.org/rockbox/trunk@29853 a1c6a512-1295-4272-9138-f99709370657
* Use CACHEALIGN_SIZE in codec_malloc for optimal alignment.Andree Buschmann2011-05-08
| | | | git-svn-id: svn://svn.rockbox.org/rockbox/trunk@29838 a1c6a512-1295-4272-9138-f99709370657
* Minor loop optimization in libfaad's is/ms decoding.Andree Buschmann2011-05-08
| | | | git-svn-id: svn://svn.rockbox.org/rockbox/trunk@29837 a1c6a512-1295-4272-9138-f99709370657
* Use MEM_ALIGN_ATTR and CACHEALIGN_SIZE in oggmalloc to ensure optimal alignment.Andree Buschmann2011-05-08
| | | | git-svn-id: svn://svn.rockbox.org/rockbox/trunk@29833 a1c6a512-1295-4272-9138-f99709370657
* codeclib: Declare several variables static and remove unused variables.Andree Buschmann2011-05-08
| | | | git-svn-id: svn://svn.rockbox.org/rockbox/trunk@29831 a1c6a512-1295-4272-9138-f99709370657
* Fix even more 'variable set but not used' warnings reported from GCC 4.6.0.Andree Buschmann2011-05-03
| | | | git-svn-id: svn://svn.rockbox.org/rockbox/trunk@29819 a1c6a512-1295-4272-9138-f99709370657
* Work around another 'set but not used' warning.Nils Wallménius2011-05-01
| | | | git-svn-id: svn://svn.rockbox.org/rockbox/trunk@29811 a1c6a512-1295-4272-9138-f99709370657
* Fix nearly all residual 'variable set but not used' warnings reported from ↵Andree Buschmann2011-05-01
| | | | | | GCC 4.6.0. git-svn-id: svn://svn.rockbox.org/rockbox/trunk@29810 a1c6a512-1295-4272-9138-f99709370657
* Fix further 'variable set but not used' warnings reported from GCC 4.6.0.Andree Buschmann2011-05-01
| | | | git-svn-id: svn://svn.rockbox.org/rockbox/trunk@29809 a1c6a512-1295-4272-9138-f99709370657
* Fix several 'variable set but not used' warnings reported from GCC 4.6.0.Andree Buschmann2011-05-01
| | | | git-svn-id: svn://svn.rockbox.org/rockbox/trunk@29805 a1c6a512-1295-4272-9138-f99709370657
* Clean up speex a bit after the playback changes in r29785. Haven't found any ↵Michael Sevakis2011-05-01
| | | | | | idiosyncracies not present before then. Fix it always returning CODEC_ERROR even when exiting codec_run normally. git-svn-id: svn://svn.rockbox.org/rockbox/trunk@29804 a1c6a512-1295-4272-9138-f99709370657
* Remove unneeded update of ci->id3->frequency in aac and raac codec.Andree Buschmann2011-04-28
| | | | git-svn-id: svn://svn.rockbox.org/rockbox/trunk@29794 a1c6a512-1295-4272-9138-f99709370657
* Get the NSF internal playlists working again. Fix a few wrongdoings in the ↵Michael Sevakis2011-04-28
| | | | | | metadata parser. Use the larger of track or playlist count to determine 'duration' so that the repeat-one switching to access the raw tracks works. git-svn-id: svn://svn.rockbox.org/rockbox/trunk@29793 a1c6a512-1295-4272-9138-f99709370657
* Fix compiler warnings ('variable set ut not used') with GCC 4.6.0.Andree Buschmann2011-04-27
| | | | git-svn-id: svn://svn.rockbox.org/rockbox/trunk@29792 a1c6a512-1295-4272-9138-f99709370657
* Get NSF fixed up a bit and parse metadata in the core.Michael Sevakis2011-04-27
| | | | git-svn-id: svn://svn.rockbox.org/rockbox/trunk@29790 a1c6a512-1295-4272-9138-f99709370657
* Having a default weak codec_main symbol doesn't seem to be working out for ↵Michael Sevakis2011-04-27
| | | | | | compiling the sim under cygwin in at least some cases. Just implement it explicitly in all cases. git-svn-id: svn://svn.rockbox.org/rockbox/trunk@29789 a1c6a512-1295-4272-9138-f99709370657
* Commit FS#12069 - Playback rework - first stages. Gives as thorough as ↵Michael Sevakis2011-04-27
| | | | | | possible a treatment of codec management, track change and metadata logic as possible while maintaining fairly narrow focus and not rewriting everything all at once. Please see the rockbox-dev mail archive on 2011-04-25 (Playback engine rework) for a more thorough manifest of what was addressed. Plugins and codecs become incompatible. git-svn-id: svn://svn.rockbox.org/rockbox/trunk@29785 a1c6a512-1295-4272-9138-f99709370657
* Submit FS#12081. Check validity of channel configuration, comment unneeded ↵Andree Buschmann2011-04-26
| | | | | | code that is too inflexible to work with MAX_CHANNELS = 2. Fixes compiler warnings with GCC 4.6.0. git-svn-id: svn://svn.rockbox.org/rockbox/trunk@29784 a1c6a512-1295-4272-9138-f99709370657
* Rework of libfaad in several areas. Allow removal of malloc with a new ↵Andree Buschmann2011-04-24
| | | | | | define FAAD_STATIC_ALLOC (in common.h). For now malloc is not fully removed but used by a few arrays needed for AAC-HE SBR+PS only. Reason to keep malloc is to have this amount of memory available for AAC-LC files which might require large m4a tables. The changes make the allocation routines much smaller, better centralized and allow to move duplicated code from aac.c/raa.c to libfaad. The rework includes removal of (now and former) unused code as well. git-svn-id: svn://svn.rockbox.org/rockbox/trunk@29778 a1c6a512-1295-4272-9138-f99709370657
* Fix yellow.Andree Buschmann2011-04-24
| | | | git-svn-id: svn://svn.rockbox.org/rockbox/trunk@29777 a1c6a512-1295-4272-9138-f99709370657
* Use dedicated function to internally reset aac decoder synthesis after seek.Andree Buschmann2011-04-24
| | | | git-svn-id: svn://svn.rockbox.org/rockbox/trunk@29775 a1c6a512-1295-4272-9138-f99709370657
* Ensure proper termination of m4a lookup table.Andree Buschmann2011-04-24
| | | | git-svn-id: svn://svn.rockbox.org/rockbox/trunk@29774 a1c6a512-1295-4272-9138-f99709370657
* Clean up array sizes in the SBR + PS part of libfaad. Add MAX_NTSRPS (=38), ↵Andree Buschmann2011-04-24
| | | | | | use MAX_NTSR and MAX_NTSRHFG at the right places. RAM (IRAM) usage is reduced by 2 KB. git-svn-id: svn://svn.rockbox.org/rockbox/trunk@29773 a1c6a512-1295-4272-9138-f99709370657
* get_sample_info() has been removed.Andree Buschmann2011-04-23
| | | | git-svn-id: svn://svn.rockbox.org/rockbox/trunk@29771 a1c6a512-1295-4272-9138-f99709370657
* Minor speed optimization to m4a lookup table build up.Andree Buschmann2011-04-23
| | | | git-svn-id: svn://svn.rockbox.org/rockbox/trunk@29770 a1c6a512-1295-4272-9138-f99709370657
* Optimization to latest aac decoder changes. Significantly reduce loop count ↵Andree Buschmann2011-04-19
| | | | | | in m4a_check_sample_offset() during standard playback. Before this change the loop count increased with each decoded chunk and for each frame. git-svn-id: svn://svn.rockbox.org/rockbox/trunk@29750 a1c6a512-1295-4272-9138-f99709370657
* Major rework of the m4a parser for aac/alac playback, seek and resume ↵Andree Buschmann2011-04-18
| | | | | | support. As a result the memory consumption was drastically reduced. This allows to play several files with long duration -- especially on low memory targets. The change builds a lookup table from m4a's sample_to_chunk[] and chunk_offset[] and completely removes the allocation of the large tables chunk_offset[] and sample_byte_size[]. To be able to remove reading and allocating sample_byte_offset[] the aac and alac decoder now buffer a fixed amount of bytes for each frame. The generated lookup table is used for seek/resume and skipping bytes in empty chunks (aac decoder only). The precision for seek/resume is somewhat lower but still equals 0.5 sec for the worst case. Fixes FS#8923. git-svn-id: svn://svn.rockbox.org/rockbox/trunk@29745 a1c6a512-1295-4272-9138-f99709370657
* Refactor aac decoder as preparation for upcoming m4a changes. The aac ↵Andree Buschmann2011-04-16
| | | | | | decoder does not need to use get_sample_info() to gather frame size or the number of consumed bytes. git-svn-id: svn://svn.rockbox.org/rockbox/trunk@29727 a1c6a512-1295-4272-9138-f99709370657
* Fix yellow.Andree Buschmann2011-04-16
| | | | git-svn-id: svn://svn.rockbox.org/rockbox/trunk@29725 a1c6a512-1295-4272-9138-f99709370657
* Refactor alac decoder as preparation for upcoming m4a changes. The alac ↵Andree Buschmann2011-04-16
| | | | | | decoder does not need to use get_sample_info() to gather frame size or the number of consumed bytes. git-svn-id: svn://svn.rockbox.org/rockbox/trunk@29724 a1c6a512-1295-4272-9138-f99709370657
* Headroom in AAC SBR HF-generator's fixed point implementation of ↵Andree Buschmann2011-03-20
| | | | | | autocorrelation was too small. Fixes FS#12019. git-svn-id: svn://svn.rockbox.org/rockbox/trunk@29622 a1c6a512-1295-4272-9138-f99709370657
* FS#12014 by Huan Zhang fixing some link errors with a recent mips toolchain.Nils Wallménius2011-03-19
| | | | git-svn-id: svn://svn.rockbox.org/rockbox/trunk@29615 a1c6a512-1295-4272-9138-f99709370657
* Purge buffer and codec APIs existing exclusively in support of mpa.codec and ↵Michael Sevakis2011-03-16
| | | | | | fix that to not require them: buf_get_offset and ci.advance_buffer_loc. Sort APIs; everything must become incompatible. :( git-svn-id: svn://svn.rockbox.org/rockbox/trunk@29595 a1c6a512-1295-4272-9138-f99709370657
* Merge functionality of wakeups and semaphores-- fewer APIs and object types. ↵Michael Sevakis2011-03-02
| | | | | | semaphore_wait takes a timeout now so codecs and plugins have to be made incompatible. Don't make semaphores for targets not using them. git-svn-id: svn://svn.rockbox.org/rockbox/trunk@29492 a1c6a512-1295-4272-9138-f99709370657
* r29348 changes can cause certain codecs to jump to code on early track ↵Michael Sevakis2011-03-02
| | | | | | change that assumes initializations have been done. Make sure that track change cleanups are only called if the state is sane to do so. Stops my vorbis data abort issue. Correctness for speex is a guess based on the library calls' source. It appears only speex/vorbis should have been bothered by said revision. git-svn-id: svn://svn.rockbox.org/rockbox/trunk@29489 a1c6a512-1295-4272-9138-f99709370657
* Give playback engine better control over the codec. Codec simply follows ↵Michael Sevakis2011-02-23
| | | | | | commands and doesn't concern itself with audio state. Get track change notification in on the actual last buffer insert of the track because now audio simply waits for a track change notify from PCM on the last track and it must be sent reliably. This is still at an intermediate stage but works. Codecs and plugins become incompatible. git-svn-id: svn://svn.rockbox.org/rockbox/trunk@29387 a1c6a512-1295-4272-9138-f99709370657
* Enforce that codecs wait for their metadata in a proper-ish and consistent ↵Michael Sevakis2011-02-20
| | | | | | manner. Sort of a halfway patch; best would be to give them an internal copy of the current track information which lasts unaltered by playback until a track switch or unload. git-svn-id: svn://svn.rockbox.org/rockbox/trunk@29348 a1c6a512-1295-4272-9138-f99709370657
* Fix standalone demac tool build.Jens Arnold2011-02-06
| | | | git-svn-id: svn://svn.rockbox.org/rockbox/trunk@29239 a1c6a512-1295-4272-9138-f99709370657
* Use the very large IRAM of S5L870x to speed up AAC-HE by ~1-5%.Andree Buschmann2011-02-05
| | | | git-svn-id: svn://svn.rockbox.org/rockbox/trunk@29212 a1c6a512-1295-4272-9138-f99709370657