rockbox/lib/rbcodec/dsp
Bertrik Sikken afc96087f8 New crossfeed algorithm for Rockbox: "Meier" crossfeed
Emulates the basic "Meier" crossfeed (2 capacitors, 3 resistors)
as discussed in
http://www.meier-audio.homepage.t-online.de/passivefilter.htm

This crossfeed blends a bit of low-pass filtered L signal into
the R signal (and vice versa) while adding about 300 us delay
to the crossfed-signal. A difference with the crossfeed already
present in rockbox, is that this algorithm keeps the total
spectrum flat (the one currently in rockbox accentuates
low-frequency signals, making it sound a bit muffled).

This implementation is quite lightweight, just 3 multiplies per
left-right pair of samples. Has a default C implementation and
optimized assembly versions for ARM and Coldfire.

The crossfeed effect is quite subtle and is noticeable mostly
one albums that have very strong left-right separation (e.g.
one instrument only on the left, another only on the right).

In the user interface, the new crossfeed option appears as
"Meier" and is not configureable. The existing crossfeed is
renamed to "Custom" as it allows itself to be customised.

There is no entry for the user manual yet.

Change-Id: Iaa100616fe0fcd7e16f08cdb9a7f41501973eee1
2012-05-28 11:34:15 +02:00
..
eqs
channel_mode.c Put the <string.h> channel_mode.c for memcpy. 2012-04-29 17:44:57 -04:00
channel_mode.h Fundamentally rewrite much of the audio DSP. 2012-04-29 10:00:56 +02:00
compressor.c Make rbcodec/dsp includes more specific. 2012-04-29 17:31:30 -04:00
compressor.h Fundamentally rewrite much of the audio DSP. 2012-04-29 10:00:56 +02:00
crossfeed.c New crossfeed algorithm for Rockbox: "Meier" crossfeed 2012-05-28 11:34:15 +02:00
crossfeed.h New crossfeed algorithm for Rockbox: "Meier" crossfeed 2012-05-28 11:34:15 +02:00
dsp_arm.S New crossfeed algorithm for Rockbox: "Meier" crossfeed 2012-05-28 11:34:15 +02:00
dsp_arm_v6.S Fundamentally rewrite much of the audio DSP. 2012-04-29 10:00:56 +02:00
dsp_cf.S New crossfeed algorithm for Rockbox: "Meier" crossfeed 2012-05-28 11:34:15 +02:00
dsp_core.c Tweak dsp_format_change_process (default format handler). 2012-05-08 22:47:51 -04:00
dsp_core.h Make rbcodec/dsp includes more specific. 2012-04-29 17:31:30 -04:00
dsp_filter.c Fundamentally rewrite much of the audio DSP. 2012-04-29 10:00:56 +02:00
dsp_filter.h Fundamentally rewrite much of the audio DSP. 2012-04-29 10:00:56 +02:00
dsp_misc.c Rename HAVE_PITCHSCREEN to HAVE_PITCHCONTROL 2012-05-09 14:32:38 +02:00
dsp_misc.h Rename HAVE_PITCHSCREEN to HAVE_PITCHCONTROL 2012-05-09 14:32:38 +02:00
dsp_proc_database.h Rename HAVE_PITCHSCREEN to HAVE_PITCHCONTROL 2012-05-09 14:32:38 +02:00
dsp_proc_entry.h Make rbcodec/dsp includes more specific. 2012-04-29 17:31:30 -04:00
dsp_proc_settings.h Rename HAVE_PITCHSCREEN to HAVE_PITCHCONTROL 2012-05-09 14:32:38 +02:00
dsp_sample_input.c Consolidate some sample input code. 2012-05-08 21:27:43 -04:00
dsp_sample_io.h Remove pointless IRAM allocation from voice DSP. 2012-05-04 22:00:44 -04:00
dsp_sample_output.c Make rbcodec/dsp includes more specific. 2012-04-29 17:31:30 -04:00
eq.c Make rbcodec/dsp includes more specific. 2012-04-29 17:31:30 -04:00
eq.h Fundamentally rewrite much of the audio DSP. 2012-04-29 10:00:56 +02:00
lin_resample.c Revert "Work in progress hermite resampler." 2012-05-20 01:11:52 -04:00
pga.c Make rbcodec/dsp includes more specific. 2012-04-29 17:31:30 -04:00
pga.h Fundamentally rewrite much of the audio DSP. 2012-04-29 10:00:56 +02:00
tdspeed.c Stop timestretch freezing things during format changes. 2012-05-21 17:12:04 -04:00
tdspeed.h rbcodec: abstract tdspeed buffer allocation 2012-05-07 10:29:07 +02:00
tone_controls.c Make rbcodec/dsp includes more specific. 2012-04-29 17:31:30 -04:00
tone_controls.h Fundamentally rewrite much of the audio DSP. 2012-04-29 10:00:56 +02:00