mpegplayer sync_audio_setting(): simplify / clarify

fix fuze+ yellow

git-svn-id: svn://svn.rockbox.org/rockbox/trunk@30739 a1c6a512-1295-4272-9138-f99709370657
This commit is contained in:
Rafaël Carré 2011-10-10 01:39:56 +00:00
parent 0aa12a9717
commit b8f0b09916

View file

@ -397,65 +397,39 @@ static const char* backlight_brightness_formatter(char *buf, size_t length,
/* Sync a particular audio setting to global or mpegplayer forced off */ /* Sync a particular audio setting to global or mpegplayer forced off */
static void sync_audio_setting(int setting, bool global) static void sync_audio_setting(int setting, bool global)
{ {
int val0, val1;
switch (setting) switch (setting)
{ {
case MPEG_AUDIO_TONE_CONTROLS: case MPEG_AUDIO_TONE_CONTROLS:
#if defined(AUDIOHW_HAVE_BASS) || defined(AUDIOHW_HAVE_TREBLE)
if (global || settings.tone_controls)
{
#ifdef AUDIOHW_HAVE_BASS #ifdef AUDIOHW_HAVE_BASS
val0 = rb->global_settings->bass; rb->sound_set(SOUND_BASS, (global || settings.tone_controls)
? rb->global_settings->bass
: rb->sound_default(SOUND_BASS));
#endif #endif
#ifdef AUDIOHW_HAVE_TREBLE #ifdef AUDIOHW_HAVE_TREBLE
val1 = rb->global_settings->treble; rb->sound_set(SOUND_TREBLE, (global || settings.tone_controls)
? rb->global_settings->treble
: rb->sound_default(SOUND_TREBLE);
#endif #endif
}
else
{
#ifdef AUDIOHW_HAVE_BASS
val0 = rb->sound_default(SOUND_BASS);
#endif
#ifdef AUDIOHW_HAVE_TREBLE
val1 = rb->sound_default(SOUND_TREBLE);
#endif
}
#ifdef AUDIOHW_HAVE_BASS
rb->sound_set(SOUND_BASS, val0);
#endif
#ifdef AUDIOHW_HAVE_TREBLE
rb->sound_set(SOUND_TREBLE, val1);
#endif
#endif /* AUDIOHW_HAVE_BASS || AUDIOHW_HAVE_TREBLE */
#ifdef AUDIOHW_HAVE_EQ #ifdef AUDIOHW_HAVE_EQ
for (val1 = 0;; val1++) for (int band = 0;; band++)
{ {
int setting = rb->sound_enum_hw_eq_band_setting(val1, AUDIOHW_EQ_GAIN); int setting = rb->sound_enum_hw_eq_band_setting(band, AUDIOHW_EQ_GAIN);
if (setting == -1) if (setting == -1)
break; break;
if (global || settings.tone_controls) rb->sound_set(setting, (global || settings.tone_controls)
{ ? rb->global_settings->hw_eq_bands[band].gain
val0 = rb->global_settings->hw_eq_bands[val1].gain; : rb->sound_default(setting));
}
else
{
val0 = rb->sound_default(setting);
}
rb->sound_set(setting, val0);
} }
#endif /* AUDIOHW_HAVE_EQ */ #endif /* AUDIOHW_HAVE_EQ */
break; break;
case MPEG_AUDIO_CHANNEL_MODES: case MPEG_AUDIO_CHANNEL_MODES:
val0 = (global || settings.channel_modes) ? rb->sound_set(SOUND_CHANNELS, (global || settings.channel_modes)
rb->global_settings->channel_config : ? rb->global_settings->channel_config
SOUND_CHAN_STEREO; : SOUND_CHAN_STEREO);
rb->sound_set(SOUND_CHANNELS, val0);
break; break;
case MPEG_AUDIO_CROSSFEED: case MPEG_AUDIO_CROSSFEED: