Gigabeat S: Turn off hardware effects (tone and 3d) when doing digital loopback for FM recording otherwise the signal and levels are poorly represented in monitoring (can't just do ADC->DAC for general FM and get voice too). Some tweaking to input setup to improve gain a tiny bit. A little bit quieter startup too.

git-svn-id: svn://svn.rockbox.org/rockbox/trunk@26300 a1c6a512-1295-4272-9138-f99709370657
This commit is contained in:
Michael Sevakis 2010-05-26 05:13:45 +00:00
parent ab27aa1526
commit 72ccb14ab1
2 changed files with 87 additions and 33 deletions

View file

@ -23,6 +23,9 @@
#include "audiohw.h"
#include "audio.h"
void audiohw_enable_tone_controls(bool enable);
void audiohw_enable_depth_3d(bool enable);
/* Set the audio source for IIS TX */
void audio_set_output_source(int source)
{
@ -30,12 +33,19 @@ void audio_set_output_source(int source)
{
default:
case AUDIO_SRC_PLAYBACK:
audiohw_enable_tone_controls(true);
audiohw_enable_depth_3d(true);
/* Receive data from PORT2 (SSI2) */
AUDMUX_PDCR4 = AUDMUX_PDCR_RXDSEL_PORT2;
/* wmc_clear(WMC_COMPANDING_CTRL, WMC_LOOPBACK); */
break;
case AUDIO_SRC_FMRADIO:
/* Analog path doesn't support these and digital radio playback
* cannot be done without mixing on the MCU if voice is to be
* heard. Any recording should match what is heard. */
audiohw_enable_tone_controls(false);
audiohw_enable_depth_3d(false);
/* External source - receive data from self (loopback to TX) */
AUDMUX_PDCR4 = AUDMUX_PDCR_RXDSEL_PORT4;
/* wmc_set(WMC_COMPANDING_CTRL, WMC_LOOPBACK); */