summaryrefslogtreecommitdiff
path: root/apps/dsp.c
AgeCommit message (Collapse)Author
2010-02-24Partially revert svn r24888 that causes build failure on coldfire targetsBertrik Sikken
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@24889 a1c6a512-1295-4272-9138-f99709370657
2010-02-24Kill some global variablesBertrik Sikken
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@24888 a1c6a512-1295-4272-9138-f99709370657
2009-11-04Compressor: simplify makeup gain setting, expand release range, finally ↵Jeffrey Goode
provide documention in the manual! git-svn-id: svn://svn.rockbox.org/rockbox/trunk@23518 a1c6a512-1295-4272-9138-f99709370657
2009-11-02Tweak logf statementsJeffrey Goode
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@23486 a1c6a512-1295-4272-9138-f99709370657
2009-10-22Code cleanup in dsp.c and misc.c, some commentsJeffrey Goode
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@23314 a1c6a512-1295-4272-9138-f99709370657
2009-10-19Compressor: save lots of RAM, bug fix to work with internally clipped samplesJeffrey Goode
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@23268 a1c6a512-1295-4272-9138-f99709370657
2009-10-03Cleanup some logf info in dsp_set_compressorJeffrey Goode
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@22890 a1c6a512-1295-4272-9138-f99709370657
2009-09-25Fix yellow: braces around logf statementsJeffrey Goode
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@22834 a1c6a512-1295-4272-9138-f99709370657
2009-09-25Replace limiter with dynamic range compressorJeffrey Goode
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@22832 a1c6a512-1295-4272-9138-f99709370657
2009-09-21Fix red: remove buffer from IRAMJeffrey Goode
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@22773 a1c6a512-1295-4272-9138-f99709370657
2009-09-21Potential fix for FS#10572: limiter + time stretch produces garbage outputJeffrey Goode
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@22772 a1c6a512-1295-4272-9138-f99709370657
2009-09-19Performance improvement in limiter, about 2%Jeffrey Goode
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@22735 a1c6a512-1295-4272-9138-f99709370657
2009-09-18Fix subtle bug in limiterJeffrey Goode
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@22725 a1c6a512-1295-4272-9138-f99709370657
2009-08-18FS#10199: Adds limiter DSP functionJeffrey Goode
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@22394 a1c6a512-1295-4272-9138-f99709370657
2009-08-12FS#10446: Bug defense in dsp.c, minor tweaks and commentsJeffrey Goode
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@22282 a1c6a512-1295-4272-9138-f99709370657
2009-08-01 * Move DSP_CALLBACK_* enum to sound.hMaurus Cuelenaere
* 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
2009-07-11Improvements to the pitch screen UI (FS#10359 by David Johnston)Alexander Levin
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@21781 a1c6a512-1295-4272-9138-f99709370657
2009-07-05Take 2 at 'Consolidate all fixed point math routines in one library' ↵Maurus Cuelenaere
(FS#10400) by Jeffrey Goode git-svn-id: svn://svn.rockbox.org/rockbox/trunk@21664 a1c6a512-1295-4272-9138-f99709370657
2009-07-04Revert "Consolidate all fixed point math routines in one library (FS#10400) ↵Maurus Cuelenaere
by Jeffrey Goode" git-svn-id: svn://svn.rockbox.org/rockbox/trunk@21635 a1c6a512-1295-4272-9138-f99709370657
2009-07-04Consolidate all fixed point math routines in one library (FS#10400) by ↵Maurus Cuelenaere
Jeffrey Goode git-svn-id: svn://svn.rockbox.org/rockbox/trunk@21633 a1c6a512-1295-4272-9138-f99709370657
2009-06-20 Merge the "Replaygain Off" option into the replaygain type; eliminate the ↵Alexander Levin
"On/Off" setting (FS#10356). All WPS tags should work as before. git-svn-id: svn://svn.rockbox.org/rockbox/trunk@21414 a1c6a512-1295-4272-9138-f99709370657
2009-06-17Fix silly typo in comment, but nothing more.Steve Bavin
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@21318 a1c6a512-1295-4272-9138-f99709370657
2009-06-17Rework internal timestretch enable/disable code - fix FS#10341(hopefully).Steve Bavin
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@21317 a1c6a512-1295-4272-9138-f99709370657
2009-06-16Renamed routines and changed comments for clarity.Steve Bavin
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@21309 a1c6a512-1295-4272-9138-f99709370657
2009-06-16Get rid of tdspeed_enabled in struct dsp_config and use the global_settings ↵Thomas Martitz
member instead. That one needs to be checked in tdspeed_init() as well, else the buffers are always allocated. git-svn-id: svn://svn.rockbox.org/rockbox/trunk@21305 a1c6a512-1295-4272-9138-f99709370657
2009-06-15Fix FS#10331 and get mpegplayer working again.Steve Bavin
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@21293 a1c6a512-1295-4272-9138-f99709370657
2009-06-12FS#8894 - Add time stretching feature to all SWCODEC targets - the current ↵Steve Bavin
algorithm is best for spoken word. git-svn-id: svn://svn.rockbox.org/rockbox/trunk@21258 a1c6a512-1295-4272-9138-f99709370657
2008-09-08Something horrible happened with binsize, so revert FS#8894 completely (for ↵Steve Bavin
now). git-svn-id: svn://svn.rockbox.org/rockbox/trunk@18449 a1c6a512-1295-4272-9138-f99709370657
2008-09-08Add timestretching from FS#8894, as written by Stephane Doyon based on work ↵Steve Bavin
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
2008-07-07Fix FS #8361 - Custom stereo width reset by changing treble on e200. Thanks ↵Dan Everton
to Tomer Shalev for the investigation work and the patch. git-svn-id: svn://svn.rockbox.org/rockbox/trunk@17976 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
2008-05-03Made source files #include the header file that they implement to make sure ↵Bertrik Sikken
they are in sync. Made some local functions static. git-svn-id: svn://svn.rockbox.org/rockbox/trunk@17312 a1c6a512-1295-4272-9138-f99709370657
2008-04-08Remove FRACMUL_8_LOOP macro. This only benefited Coldfire, and we have ↵Thom Johansen
assembler routines for the gain function there now. git-svn-id: svn://svn.rockbox.org/rockbox/trunk@17040 a1c6a512-1295-4272-9138-f99709370657
2008-04-08Remove ACC_INIT, ACC and GET_ACC macros. These were quite Coldfire-centric ↵Thom Johansen
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
2008-03-20Turnaround time must be included in dsp yielding to throttle against other ↵Michael Sevakis
threads. Do at least one per buffer full as well (or things can stick a bit on initial input triggers). git-svn-id: svn://svn.rockbox.org/rockbox/trunk@16721 a1c6a512-1295-4272-9138-f99709370657
2008-03-19Commit FS#8750. Add ARM assembler for the dsp-functions ↵Andree Buschmann
channels_process_sound_chan_mono(), channels_process_sound_chan_karaoke(), sample_output_mono() and sample_output_stereo(). By measurement the speed up is ~75% for the first three functions and ~40% for sample_output_stereo(). Additionally avoid calling yield() to often in dsp.c -- it is now limited to once per tick. git-svn-id: svn://svn.rockbox.org/rockbox/trunk@16717 a1c6a512-1295-4272-9138-f99709370657
2007-12-08Crossfeed settings used to be stored inverted in the cfg file for legacy ↵Thom Johansen
reasons, change that and kill some identical formatting functions while we're at it. NOTE TO CROSSFEED USERS: this will completely garble your crossfeed settings, write them down if you want to keep them. git-svn-id: svn://svn.rockbox.org/rockbox/trunk@15895 a1c6a512-1295-4272-9138-f99709370657
2007-12-04FS #8106. Fix overflow when dithering files that clip a lot, caused by noise ↵Thom Johansen
shaping error being calculated after clipping instead of before. git-svn-id: svn://svn.rockbox.org/rockbox/trunk@15873 a1c6a512-1295-4272-9138-f99709370657
2007-11-18Make speex the new voice format for SWCODEC targets (non-Archos). Remove ↵Michael Sevakis
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
2007-10-30Just because it's #if 0 doesn't make it inferior...Thom Johansen
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@15370 a1c6a512-1295-4272-9138-f99709370657
2007-10-29Fix faulty clipping when dithering is enabled (thanks to Jens Arnold). This ↵Thom Johansen
bug would only affect people using WMA. Also, add a small comment in an unrelated place. git-svn-id: svn://svn.rockbox.org/rockbox/trunk@15369 a1c6a512-1295-4272-9138-f99709370657
2007-08-29FS #7286. Do correct rounding of final 16 bit samples before sending to DAC, ↵Thom Johansen
for you golden-eared people. git-svn-id: svn://svn.rockbox.org/rockbox/trunk@14514 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
2007-03-29Accept FS#6918 - Remove Nested Functions by Tim Ross. Adjust some names. ↵Michael Sevakis
Hunt down and remove the remaining ones in the recording system as well. git-svn-id: svn://svn.rockbox.org/rockbox/trunk@12955 a1c6a512-1295-4272-9138-f99709370657
2007-03-26SWCODEC: Need to call resampler_new_delta when resetting DSP.Michael Sevakis
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@12929 a1c6a512-1295-4272-9138-f99709370657
2007-03-25SWCODEC & Coldfire: Do some more DSP straigntening out. Do as much Coldfire ↵Michael Sevakis
optimizing as seems reasonably possible by jumping through some hoops to avoid stalls. Further boost reduction will just be fractional points if taken to extremes-- not worth it. Wrap up the ASM for awhile. git-svn-id: svn://svn.rockbox.org/rockbox/trunk@12905 a1c6a512-1295-4272-9138-f99709370657
2007-03-07Use the new DSP callback functionality in firmware/sound.c to deal with ↵Thom Johansen
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
2007-03-07Factor first order shelving filter code out for easier reuse and replace the ↵Thom Johansen
crossfeed filter with it. Crossfeed _should_ still sound the same, so please do tell if it doesn't. git-svn-id: svn://svn.rockbox.org/rockbox/trunk@12674 a1c6a512-1295-4272-9138-f99709370657
2007-02-28SWCODEC: Patchup the short crossfade glitching reported for FLAC but seemed ↵Michael Sevakis
not limited to FLAC actually. Crossfade doesn't like being hand the larger chunks that the dsp was now able to process when not resampling. The real fix is making it not matter. git-svn-id: svn://svn.rockbox.org/rockbox/trunk@12521 a1c6a512-1295-4272-9138-f99709370657
2007-02-27Fix a problem when dithering mono audio. Left samples weren't being ↵Michael Sevakis
duplicated into right channel in pcm buffer. git-svn-id: svn://svn.rockbox.org/rockbox/trunk@12509 a1c6a512-1295-4272-9138-f99709370657