summaryrefslogtreecommitdiff
path: root/apps/dsp.h (follow)
Commit message (Collapse)AuthorAge
* Build librbcodec with DSP and metadata.Sean Bartell2012-03-18
| | | | | | All associated files are moved to /lib/rbcodec. Change-Id: I572ddd2b8a996aae1e98c081d06b1ed356dce222
* Move to compressor out of dsp.c and into its own source to reduce DSP clutter.Michael Sevakis2012-02-08
| | | | | | A bit of a rough job for the moment but all works. Change-Id: Id40852e0dec99caee02f943d0da8a1cdc16f022a
* Clean up compressor setting codeJeffrey Goode2011-10-05
| | | | git-svn-id: svn://svn.rockbox.org/rockbox/trunk@30715 a1c6a512-1295-4272-9138-f99709370657
* Compressor: simplify makeup gain setting, expand release range, finally ↵Jeffrey Goode2009-11-04
| | | | | | provide documention in the manual! git-svn-id: svn://svn.rockbox.org/rockbox/trunk@23518 a1c6a512-1295-4272-9138-f99709370657
* Code cleanup in dsp.c and misc.c, some commentsJeffrey Goode2009-10-22
| | | | git-svn-id: svn://svn.rockbox.org/rockbox/trunk@23314 a1c6a512-1295-4272-9138-f99709370657
* Replace limiter with dynamic range compressorJeffrey Goode2009-09-25
| | | | git-svn-id: svn://svn.rockbox.org/rockbox/trunk@22832 a1c6a512-1295-4272-9138-f99709370657
* FS#10199: Adds limiter DSP functionJeffrey Goode2009-08-18
| | | | git-svn-id: svn://svn.rockbox.org/rockbox/trunk@22394 a1c6a512-1295-4272-9138-f99709370657
* * Move DSP_CALLBACK_* enum to sound.hMaurus Cuelenaere2009-08-01
| | | | | | | | | * Add software based volume control for a certain range (SW_VOLUME_MIN -> SW_VOLUME_MAX) * Make Onda VX747 use it * Don't change volume or frequency in Ingenic Jz4740 codec driver when they're already set git-svn-id: svn://svn.rockbox.org/rockbox/trunk@22106 a1c6a512-1295-4272-9138-f99709370657
* Improvements to the pitch screen UI (FS#10359 by David Johnston)Alexander Levin2009-07-11
| | | | git-svn-id: svn://svn.rockbox.org/rockbox/trunk@21781 a1c6a512-1295-4272-9138-f99709370657
* Take 2 at 'Consolidate all fixed point math routines in one library' ↵Maurus Cuelenaere2009-07-05
| | | | | | (FS#10400) by Jeffrey Goode git-svn-id: svn://svn.rockbox.org/rockbox/trunk@21664 a1c6a512-1295-4272-9138-f99709370657
* Revert "Consolidate all fixed point math routines in one library (FS#10400) ↵Maurus Cuelenaere2009-07-04
| | | | | | by Jeffrey Goode" git-svn-id: svn://svn.rockbox.org/rockbox/trunk@21635 a1c6a512-1295-4272-9138-f99709370657
* Consolidate all fixed point math routines in one library (FS#10400) by ↵Maurus Cuelenaere2009-07-04
| | | | | | Jeffrey Goode git-svn-id: svn://svn.rockbox.org/rockbox/trunk@21633 a1c6a512-1295-4272-9138-f99709370657
* Renamed routines and changed comments for clarity.Steve Bavin2009-06-16
| | | | git-svn-id: svn://svn.rockbox.org/rockbox/trunk@21309 a1c6a512-1295-4272-9138-f99709370657
* FS#8894 - Add time stretching feature to all SWCODEC targets - the current ↵Steve Bavin2009-06-12
| | | | | | algorithm is best for spoken word. git-svn-id: svn://svn.rockbox.org/rockbox/trunk@21258 a1c6a512-1295-4272-9138-f99709370657
* Calculate watermark from bitrate and harddisk spinup time.Björn Stenberg2009-01-10
| | | | | | | | 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
* Something horrible happened with binsize, so revert FS#8894 completely (for ↵Steve Bavin2008-09-08
| | | | | | now). git-svn-id: svn://svn.rockbox.org/rockbox/trunk@18449 a1c6a512-1295-4272-9138-f99709370657
* Add timestretching from FS#8894, as written by Stephane Doyon based on work ↵Steve Bavin2008-09-08
| | | | | | by Nicolas Pitre. Shouldn't affect playback unless it's explicitly enabled, but let me know if it does. Currently has a dedicated setting, but maybe inclusion of the code will inspire someone to integrate this with the pitch screen... git-svn-id: svn://svn.rockbox.org/rockbox/trunk@18446 a1c6a512-1295-4272-9138-f99709370657
* Updated our source code header to explicitly mention that we are GPL v2 orDaniel Stenberg2008-06-28
| | | | | | | | | 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
* Remove FRACMUL_8_LOOP macro. This only benefited Coldfire, and we have ↵Thom Johansen2008-04-08
| | | | | | assembler routines for the gain function there now. git-svn-id: svn://svn.rockbox.org/rockbox/trunk@17040 a1c6a512-1295-4272-9138-f99709370657
* Remove ACC_INIT, ACC and GET_ACC macros. These were quite Coldfire-centric ↵Thom Johansen2008-04-08
| | | | | | macros which really aren't needed since all performance sensitive target DSP code should be assembler anyway. git-svn-id: svn://svn.rockbox.org/rockbox/trunk@17037 a1c6a512-1295-4272-9138-f99709370657
* Make speex the new voice format for SWCODEC targets (non-Archos). Remove ↵Michael Sevakis2007-11-18
| | | | | | codec swapping and build speex voice decoding directly into the core binary. git-svn-id: svn://svn.rockbox.org/rockbox/trunk@15668 a1c6a512-1295-4272-9138-f99709370657
* Remove conf_filechunk, it should never have been a setting and its ↵Brandon Low2007-11-05
| | | | | | implementation doesn't do what it claims any way git-svn-id: svn://svn.rockbox.org/rockbox/trunk@15478 a1c6a512-1295-4272-9138-f99709370657
* Remove unused conf_preseek from buffering.c and all of its accountraments. ↵Brandon Low2007-11-05
| | | | | | This is _not_ a setting. This is a guessing tool used by either playback or buffering to serve its clients better. Use the REBUFFER_GUESS size in resume to help obviate pondlife's bug. This will also need to be used when FS8092 gets fixed correctly with a complete rebuffer for backward movements. It may also belong in buffering not playback, haven't decided for sure git-svn-id: svn://svn.rockbox.org/rockbox/trunk@15475 a1c6a512-1295-4272-9138-f99709370657
* Code cleaning - remove some unnecessary defined(SIMULATOR) checksDave Chapman2007-05-10
| | | | git-svn-id: svn://svn.rockbox.org/rockbox/trunk@13369 a1c6a512-1295-4272-9138-f99709370657
* Use the new DSP callback functionality in firmware/sound.c to deal with ↵Thom Johansen2007-03-07
| | | | | | SWCODEC stereo width and channel configuration instead of the old more spread out #ifdef based approach. Rename the DSP functions involved for more consistent naming. git-svn-id: svn://svn.rockbox.org/rockbox/trunk@12677 a1c6a512-1295-4272-9138-f99709370657
* Add software based bass/treble controls for targets which have no such ↵Thom Johansen2007-02-26
| | | | | | functionality in hardware (currently only X5). They can also be used on any other SWCODEC target by adding #define HAVE_SW_TONE_CONTROLS in the relevant config-*.h file. Also remove some now unneeded zero checks when using get_replaygain_int(). Comments on sound quality are welcome as some parameters can still be fine-tuned. git-svn-id: svn://svn.rockbox.org/rockbox/trunk@12489 a1c6a512-1295-4272-9138-f99709370657
* SWCODEC: Dsp speed optimizations. Changes for more modularity. Removal of ↵Michael Sevakis2007-02-24
| | | | | | some usless stuff. Some assembly routines for Coldfire with speed in mind over size for the outputs but the channel modes remain compact. Miscellaneous coldfire asm updates to accomodate the changes. Codec API structure version has to increase so do a full update. git-svn-id: svn://svn.rockbox.org/rockbox/trunk@12472 a1c6a512-1295-4272-9138-f99709370657
* SWCODEC: DSP optimizations for conversion to internal format and resampling. ↵Michael Sevakis2007-02-19
| | | | | | Assembly resampling for Coldfire. Word has it ARM will get that soon. git-svn-id: svn://svn.rockbox.org/rockbox/trunk@12399 a1c6a512-1295-4272-9138-f99709370657
* Optimise/touchup some asm macros in dsp.h, and also remove some now unneeded ↵Thom Johansen2007-02-15
| | | | | | ones. Add config.h to dsp.c so that these macros actually get used, and also do some minor nitpicks to the resampler while I'm at it. git-svn-id: svn://svn.rockbox.org/rockbox/trunk@12322 a1c6a512-1295-4272-9138-f99709370657
* SWCODEC: Annoying neatness update. Use intptr_t for codec_configure_callback ↵Michael Sevakis2007-02-10
| | | | | | and dsp_configure and stop all the silly type casting of intergral types to pointers to set dsp configuration and watermarks. Shouldn't have any effect on already compiled codecs at all. Will fix any important patches in the tracker so they compile. git-svn-id: svn://svn.rockbox.org/rockbox/trunk@12259 a1c6a512-1295-4272-9138-f99709370657
* Fix resampling clicking as much as possible at the moment. 1) Upsampling ↵Michael Sevakis2007-02-07
| | | | | | clicked because of size inaccuracies returned by DSP. Fix by simplifying audio system to use per-channel sample count from codec to pcm buffer. 2) Downsampling affected by 1) and was often starting passed the end of the data when not enough was available to generate an output sample. Fix by clamping input range to last sample in buffer and using the last sample value in the buffer. A perfect fix will require a double buffering scheme on the resampler to sufficient data during small data transients on both ends at all times of the down ratio on input and the up ratio on output. git-svn-id: svn://svn.rockbox.org/rockbox/trunk@12218 a1c6a512-1295-4272-9138-f99709370657
* Optimise EQ coef calculation routines for both speed and size. Move now ↵Thom Johansen2007-02-05
| | | | | | | | | unneeded fsqrt function to plugin fixed point library in case it'll be needed. Move all fixed point helper macros to dsp.h. Added FRACMUL_SHL macro to facilitate high-precision shifting of 64 bit multiplies and remove rounding from macsr in main thread to make this work as intended. Tested quite thorougly, but as always, be careful with your ears. git-svn-id: svn://svn.rockbox.org/rockbox/trunk@12203 a1c6a512-1295-4272-9138-f99709370657
* SWCODEC: Stop clicks between tracks when resampler is active by only ↵Michael Sevakis2006-11-26
| | | | | | switching the DSP frequency and not resetting the resampler at track boundaries. Will make sure DSP is correctly flushed at dicontinuities but don't hear any problems currently. git-svn-id: svn://svn.rockbox.org/rockbox/trunk@11600 a1c6a512-1295-4272-9138-f99709370657
* Re-enable the currently unused and broken dithering and noise shaping code ↵Thom Johansen2006-10-27
| | | | | | already in Rockbox, and make it a user option instead of a codec-controlled option. The majority of people probably will not even hear any difference with this enabled, but feedback is welcome. Save your settings! git-svn-id: svn://svn.rockbox.org/rockbox/trunk@11368 a1c6a512-1295-4272-9138-f99709370657
* Applied patch #5879 by Andrew Cupper: Fix backward seeking bug.Magnus Holmgren2006-08-30
| | | | git-svn-id: svn://svn.rockbox.org/rockbox/trunk@10807 a1c6a512-1295-4272-9138-f99709370657
* First commit of reworking voice to be mroe stable on swcodecBrandon Low2006-04-22
| | | | git-svn-id: svn://svn.rockbox.org/rockbox/trunk@9758 a1c6a512-1295-4272-9138-f99709370657
* New crossfeed complete with no volume reducing bugs. Feedback on all theThom Johansen2006-04-11
| | | | | | | | new options is appreciated. Thanks to Dan Everton for the settings/GUI code. git-svn-id: svn://svn.rockbox.org/rockbox/trunk@9609 a1c6a512-1295-4272-9138-f99709370657
* Update equalizer precut value as it's adjusted.Dan Everton2006-03-28
| | | | git-svn-id: svn://svn.rockbox.org/rockbox/trunk@9332 a1c6a512-1295-4272-9138-f99709370657
* Add precut setting for the equalizer and add some more comments to the eq ↵Dan Everton2006-03-27
| | | | | | menu code. git-svn-id: svn://svn.rockbox.org/rockbox/trunk@9298 a1c6a512-1295-4272-9138-f99709370657
* Enabled channel configuration and stereo width option on software codecThom Johansen2006-03-21
| | | | | | | platforms. git-svn-id: svn://svn.rockbox.org/rockbox/trunk@9173 a1c6a512-1295-4272-9138-f99709370657
* Reduce CPU usage while changing EQ by only updating the coefficients of the ↵Dan Everton2006-02-17
| | | | | | band being modified. git-svn-id: svn://svn.rockbox.org/rockbox/trunk@8718 a1c6a512-1295-4272-9138-f99709370657
* Rework PCM bufferBrandon Low2006-02-07
| | | | | | | | | | | | | | | * Linked list instead of static array buffer pointers * Variable sized chunks * Improved mix handling * Reduction in duplicated code * Reduced IRAM usage w/o sacrificing performance * Converted to almost entirely unsigned math * Add pause function to reduce pcm_* exposure to playback. This WILL break playback on the iPod until linuxstb makes a followup commit. git-svn-id: svn://svn.rockbox.org/rockbox/trunk@8612 a1c6a512-1295-4272-9138-f99709370657
* Add Equalizer configuration to Sound Settings menu.Dan Everton2006-02-07
| | | | git-svn-id: svn://svn.rockbox.org/rockbox/trunk@8606 a1c6a512-1295-4272-9138-f99709370657
* Committed a little too muchLinus Nielsen Feltzing2006-02-04
| | | | git-svn-id: svn://svn.rockbox.org/rockbox/trunk@8569 a1c6a512-1295-4272-9138-f99709370657
* The simulator should use the keypad period key, not the regular oneLinus Nielsen Feltzing2006-02-04
| | | | git-svn-id: svn://svn.rockbox.org/rockbox/trunk@8568 a1c6a512-1295-4272-9138-f99709370657
* Enabled playback speed adjustment support for H1x0. Modified the resampler ↵Thom Johansen2005-11-28
| | | | | | to do both channels in one pass. git-svn-id: svn://svn.rockbox.org/rockbox/trunk@8099 a1c6a512-1295-4272-9138-f99709370657
* More stable playback with reduced stuttering when skipping tracks.Miika Pekkarinen2005-11-18
| | | | | | | | Removed CODEC_SET_FILEBUF_LIMIT setting; now playback.c determines how to buffer the files. git-svn-id: svn://svn.rockbox.org/rockbox/trunk@7970 a1c6a512-1295-4272-9138-f99709370657
* add crossfeed dsp effect. Makes some music more enjoyable with headphones.Marcoen Hirschberg2005-11-14
| | | | git-svn-id: svn://svn.rockbox.org/rockbox/trunk@7884 a1c6a512-1295-4272-9138-f99709370657
* DSP_* constants moved from playback.h to dsp.h.Thom Johansen2005-09-21
| | | | git-svn-id: svn://svn.rockbox.org/rockbox/trunk@7529 a1c6a512-1295-4272-9138-f99709370657
* ReplayGain support for Ogg Vorbis files (also called VorbisGain) added.Magnus Holmgren2005-07-24
| | | | | | | | Note that there is a small delay from leaving a setting until the change can be heard (due to audio data buffering). git-svn-id: svn://svn.rockbox.org/rockbox/trunk@7234 a1c6a512-1295-4272-9138-f99709370657