1
0
Fork 0
forked from len0rd/rockbox
foxbox/apps
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
..
bitmaps Sansa clip zip: fix pinkish outline around usb logo 2012-02-18 16:01:06 +01:00
gui _lists_uiviewport_update_callback can be made static 2012-05-20 01:57:49 +02:00
hosted/android android: Fix crash on start up. 2012-03-30 11:23:07 +02:00
keymaps Initial commit for the Creative ZEN X-Fi2 and X-Fi3 ports 2012-05-19 16:10:52 +02:00
lang New crossfeed algorithm for Rockbox: "Meier" crossfeed 2012-05-28 11:34:15 +02:00
menus Rename HAVE_PITCHSCREEN to HAVE_PITCHCONTROL 2012-05-09 14:32:38 +02:00
player Fix remaining reds/yellows. 2010-05-14 13:21:40 +00:00
plugins New crossfeed algorithm for Rockbox: "Meier" crossfeed 2012-05-28 11:34:15 +02:00
radio Fix some lockup caused by handles not being initialized to < 0... 2012-05-21 02:28:13 -04:00
recorder Clean up peak calculating code. 2012-05-02 20:53:07 -04:00
abrepeat.c abrepeat: drop some inline's and rearrange code to save some size since this stuff is hardly speed critical. 2011-01-18 16:11:33 +00:00
abrepeat.h abrepeat: drop some inline's and rearrange code to save some size since this stuff is hardly speed critical. 2011-01-18 16:11:33 +00:00
action.c touchscreen: Fix kinetic scrolling when the statusbar is off. 2012-04-05 15:01:59 +02:00
action.h Add new actions to %Tp (Touchscreen areas) 2012-03-13 03:17:12 +01:00
alarm_menu.c Changed the FOR_NB_SCREENS macro to always be a for loop that declares its own loop variable. This removes the need to declare this variable in the outer scope. 2011-10-15 19:35:02 +00:00
alarm_menu.h
appevents.h Fix some lockup caused by handles not being initialized to < 0... 2012-05-21 02:28:13 -04:00
applimits.h Remove two unused defines. 2010-08-21 15:49:42 +00:00
apps.make Android: use APPEXTRA instead of makefile hack 2011-03-11 16:08:36 +00:00
audio_path.c Rockbox as an application: Replace many occurences of #ifdef SIMULATOR with #if (CONFIG_PLATFORM & PLATFORM_HOSTED) (or equivalently). 2010-06-21 16:53:00 +00:00
beep.c Make rbcodec/dsp includes more specific. 2012-04-29 17:31:30 -04:00
bookmark.c Rename HAVE_PITCHSCREEN to HAVE_PITCHCONTROL 2012-05-09 14:32:38 +02:00
bookmark.h Fix minor bookmark problems/Enhance bookmark functions 2012-03-12 08:54:02 +01:00
buffering.c Fix some lockup caused by handles not being initialized to < 0... 2012-05-21 02:28:13 -04:00
buffering.h Add more INIT_ATTR and add config.h includes to header files with INIT_ATTR. 2011-12-19 20:12:52 +00:00
codec_thread.c More strictly enforce "no PCM insert" rules for codecs. 2012-05-13 03:25:55 -04:00
codec_thread.h Add more INIT_ATTR and add config.h includes to header files with INIT_ATTR. 2011-12-19 20:12:52 +00:00
codecs.c Fundamentally rewrite much of the audio DSP. 2012-04-29 10:00:56 +02:00
core_asmdefs.c
cuesheet.c Rename 'mp3entry.embed_cuesheet' to 'mp3entry.embedded_cuesheet' and pull out a field (FS#12473) 2011-12-22 18:56:11 +00:00
cuesheet.h FS #12419 : Support for embedded cuesheets. 2011-12-16 10:09:41 +00:00
debug_menu.c zenxfi3&stfm1000: implement fmradio i2c and debug screen 2012-05-19 18:04:25 +02:00
debug_menu.h dbg_ports() : move proto to system.h 2012-01-04 05:21:44 +00:00
enc_config.c Fix different enum comparison warning when building with gcc 4.5 2010-12-20 20:56:22 +00:00
enc_config.h
features.txt Rename HAVE_PITCHSCREEN to HAVE_PITCHCONTROL 2012-05-09 14:32:38 +02:00
filetree.c playlist handling: revert part of r30177. 2011-11-28 12:41:15 +00:00
filetree.h
filetypes.c Sprinkle around some static and const. 2011-12-05 19:23:46 +00:00
filetypes.h Add more INIT_ATTR and add config.h includes to header files with INIT_ATTR. 2011-12-19 20:12:52 +00:00
fixedpoint.c Improve accuracy of NR-based fp_sqrt with better initial estimation and using one more bit internally. More reliable early termination. Good enough until better method is completed. 2010-06-08 04:51:00 +00:00
fixedpoint.h
fracmul.h Build librbcodec with DSP and metadata. 2012-03-18 12:00:39 +01:00
iap.c IAP: use a state machine for handling iap packets, based on FS#12135 2011-09-25 12:19:33 +00:00
keyboard.h
language.c Add stdio.h include for SEEK_SET define to various files. 2010-12-25 18:43:34 +00:00
language.h
logfdisp.c Remove last traces of sprintf.h 2010-05-07 02:13:47 +00:00
logfdisp.h
main.c Fundamentally rewrite much of the audio DSP. 2012-04-29 10:00:56 +02:00
menu.c Remove extraneous parens 2012-05-06 23:13:34 -04:00
menu.h FS#12251 - User shortcuts in the main menu. 2011-11-15 13:22:02 +00:00
misc.c Make DSP's replaygain independent of global_settings. 2012-04-30 22:47:37 +02:00
misc.h Make DSP's replaygain independent of global_settings. 2012-04-30 22:47:37 +02:00
mpeg.c Tweak paramters of mp3_play_data and callback. 2012-03-04 14:50:47 -05:00
mpeg.h
onplay.c Rename HAVE_PITCHSCREEN to HAVE_PITCHCONTROL 2012-05-09 14:32:38 +02:00
onplay.h FS#12251 - User shortcuts in the main menu. 2011-11-15 13:22:02 +00:00
pcmbuf.c Make rbcodec/dsp includes more specific. 2012-04-29 17:31:30 -04:00
pcmbuf.h Fix up some more type stuff in pcmbuf.c. 2012-04-27 16:51:54 -04:00
playback.c More snafu fix. Need a couple more patchups for now. 2012-05-24 20:59:05 -04:00
playback.h FS#12378 : Remove various unused code, and comment out some unused code and data for reference or future use. 2011-12-14 21:45:25 +00:00
playlist.c Option to constrain get_next_dir() to directories below global_settings.start_directory. 2012-03-19 11:49:55 +01:00
playlist.h Add more INIT_ATTR and add config.h includes to header files with INIT_ATTR. 2011-12-19 20:12:52 +00:00
playlist_catalog.c FS#11808 - Major playlist handling changes (on disk playlists) 2011-07-20 14:11:15 +00:00
playlist_catalog.h FS#11808 - Major playlist handling changes (on disk playlists) 2011-07-20 14:11:15 +00:00
playlist_menu.h
playlist_viewer.c FS#12378 : Remove various unused code, and comment out some unused code and data for reference or future use. 2011-12-14 21:45:25 +00:00
playlist_viewer.h FS#11808 - Major playlist handling changes (on disk playlists) 2011-07-20 14:11:15 +00:00
plugin.c New crossfeed algorithm for Rockbox: "Meier" crossfeed 2012-05-28 11:34:15 +02:00
plugin.h New crossfeed algorithm for Rockbox: "Meier" crossfeed 2012-05-28 11:34:15 +02:00
rbcodec_helpers.c Rename HAVE_PITCHSCREEN to HAVE_PITCHCONTROL 2012-05-09 14:32:38 +02:00
rbcodecconfig.h rbcodec: Hooks for target specific functions in dsp_process loop 2012-05-03 23:47:46 +02:00
rbcodecplatform.h rbcodec: abstract tdspeed buffer allocation 2012-05-07 10:29:07 +02:00
README
root_menu.c More meaningful name and type for 'root menu' setting 2012-03-16 22:26:13 +01:00
root_menu.h main menu: Add the ability to hide and reorder the main menu items. 2012-02-25 12:40:44 +01:00
screen_access.c skin_engine: New tag to draw a rectangle (optionally with a gradient) 2012-03-15 22:52:53 +11:00
screen_access.h skin_engine: New tag to draw a rectangle (optionally with a gradient) 2012-03-15 22:52:53 +11:00
screens.c Make rbcodec/dsp includes more specific. 2012-04-29 17:31:30 -04:00
screens.h
scrobbler.c Buflib: Clarification about invalid handles 2011-09-07 23:16:29 +00:00
scrobbler.h Make scrobbler_flush_cache() static 2011-08-01 19:43:13 +00:00
settings.c New crossfeed algorithm for Rockbox: "Meier" crossfeed 2012-05-28 11:34:15 +02:00
settings.h New crossfeed algorithm for Rockbox: "Meier" crossfeed 2012-05-28 11:34:15 +02:00
settings_list.c New crossfeed algorithm for Rockbox: "Meier" crossfeed 2012-05-28 11:34:15 +02:00
settings_list.h
shortcuts.c shortcuts: Don't enter shortcuts menu if there are none 2012-03-28 00:45:42 +11:00
shortcuts.h shortcuts: talk the time and configure the sleep timeout 2011-12-08 10:23:46 +00:00
sound_menu.h Remove unneeded include. 2010-08-21 16:07:34 +00:00
SOURCES Initial commit for the Creative ZEN X-Fi2 and X-Fi3 ports 2012-05-19 16:10:52 +02:00
status.c
status.h Rockbox as an application: Replace many occurences of #ifdef SIMULATOR with #if (CONFIG_PLATFORM & PLATFORM_HOSTED) (or equivalently). 2010-06-21 16:53:00 +00:00
tagcache.c Add const to global pointers to strings. 2011-12-17 18:31:55 +00:00
tagcache.h Add more INIT_ATTR and add config.h includes to header files with INIT_ATTR. 2011-12-19 20:12:52 +00:00
tagnavi.config FS#12132 patch 7: Add a new default format for untagged tracks: 2011-07-31 16:26:39 +00:00
tagtree.c GSoC/Buflib: Enable compaction in buflib. 2011-08-30 14:01:45 +00:00
tagtree.h Add more INIT_ATTR and add config.h includes to header files with INIT_ATTR. 2011-12-19 20:12:52 +00:00
talk.c More snafu fix. Need a couple more patchups for now. 2012-05-24 20:59:05 -04:00
talk.h Add conditionals for functions only needed on SWCODEC targets. 2011-12-15 20:58:14 +00:00
tree.c keyclick: Add a callback so screens can cancel a click. Add a generic list callback to stop clicks when we are at the end of the list 2012-01-12 22:28:36 +11:00
tree.h Add more INIT_ATTR and add config.h includes to header files with INIT_ATTR. 2011-12-19 20:12:52 +00:00
usb_keymaps.c remove superfluous ifdef 2011-12-28 19:23:38 +00:00
usb_keymaps.h
voice_thread.c Zero out voice buffer memory immediately after allocation. 2012-05-17 11:16:20 -04:00
voice_thread.h voice_thread_init was left INIT_ATTR but is being called too late. 2012-05-21 15:21:36 -04:00

For general information see: docs/README
For API information see: docs/API