summaryrefslogtreecommitdiff
path: root/apps/sound_menu.c
diff options
context:
space:
mode:
Diffstat (limited to 'apps/sound_menu.c')
-rw-r--r--apps/sound_menu.c67
1 files changed, 60 insertions, 7 deletions
diff --git a/apps/sound_menu.c b/apps/sound_menu.c
index 4a6857d0cb..fe01cd9560 100644
--- a/apps/sound_menu.c
+++ b/apps/sound_menu.c
@@ -55,9 +55,11 @@ bool set_sound(char* string,
55 char* unit; 55 char* unit;
56 char str[32]; 56 char str[32];
57 int talkunit = UNIT_INT; 57 int talkunit = UNIT_INT;
58 int steps;
58 59
59 unit = mpeg_sound_unit(setting); 60 unit = mpeg_sound_unit(setting);
60 numdec = mpeg_sound_numdecimals(setting); 61 numdec = mpeg_sound_numdecimals(setting);
62 steps = mpeg_sound_steps(setting);
61 min = mpeg_sound_min(setting); 63 min = mpeg_sound_min(setting);
62 max = mpeg_sound_max(setting); 64 max = mpeg_sound_max(setting);
63 if (*unit == 'd') /* crude reconstruction */ 65 if (*unit == 'd') /* crude reconstruction */
@@ -103,7 +105,7 @@ bool set_sound(char* string,
103 case BUTTON_RIGHT: 105 case BUTTON_RIGHT:
104 case BUTTON_RIGHT | BUTTON_REPEAT: 106 case BUTTON_RIGHT | BUTTON_REPEAT:
105#endif 107#endif
106 (*variable)++; 108 (*variable)+=steps;
107 if(*variable > max ) 109 if(*variable > max )
108 *variable = max; 110 *variable = max;
109 changed = true; 111 changed = true;
@@ -116,7 +118,7 @@ bool set_sound(char* string,
116 case BUTTON_LEFT: 118 case BUTTON_LEFT:
117 case BUTTON_LEFT | BUTTON_REPEAT: 119 case BUTTON_LEFT | BUTTON_REPEAT:
118#endif 120#endif
119 (*variable)--; 121 (*variable)-=steps;
120 if(*variable < min ) 122 if(*variable < min )
121 *variable = min; 123 *variable = min;
122 changed = true; 124 changed = true;
@@ -176,10 +178,56 @@ static bool loudness(void)
176 SOUND_LOUDNESS); 178 SOUND_LOUDNESS);
177} 179}
178 180
179static bool bass_boost(void) 181static bool mdb_strength(void)
180{ 182{
181 return set_sound(str(LANG_BBOOST), &global_settings.bass_boost, 183 return set_sound(str(LANG_MDB_STRENGTH), &global_settings.mdb_strength,
182 SOUND_SUPERBASS); 184 SOUND_MDB_STRENGTH);
185}
186
187static bool mdb_harmonics(void)
188{
189 return set_sound(str(LANG_MDB_HARMONICS), &global_settings.mdb_harmonics,
190 SOUND_MDB_HARMONICS);
191}
192
193static bool mdb_center(void)
194{
195 return set_sound(str(LANG_MDB_CENTER), &global_settings.mdb_center,
196 SOUND_MDB_CENTER);
197}
198
199static bool mdb_shape(void)
200{
201 return set_sound(str(LANG_MDB_SHAPE), &global_settings.mdb_shape,
202 SOUND_MDB_SHAPE);
203}
204
205static void set_mdb_enable(bool value)
206{
207 mpeg_sound_set(SOUND_MDB_ENABLE, (int)value);
208}
209
210static bool mdb_enable(void)
211{
212 return set_bool_options(str(LANG_MDB_ENABLE),
213 &global_settings.mdb_enable,
214 STR(LANG_SET_BOOL_YES),
215 STR(LANG_SET_BOOL_NO),
216 set_mdb_enable);
217}
218
219static void set_superbass(bool value)
220{
221 mpeg_sound_set(SOUND_SUPERBASS, (int)value);
222}
223
224static bool superbass(void)
225{
226 return set_bool_options(str(LANG_SUPERBASS),
227 &global_settings.superbass,
228 STR(LANG_SET_BOOL_YES),
229 STR(LANG_SET_BOOL_NO),
230 set_superbass);
183} 231}
184 232
185static void set_avc(int val) 233static void set_avc(int val)
@@ -363,8 +411,13 @@ bool sound_menu(void)
363 { STR(LANG_CHANNEL_MENU), chanconf }, 411 { STR(LANG_CHANNEL_MENU), chanconf },
364#ifdef HAVE_MAS3587F 412#ifdef HAVE_MAS3587F
365 { STR(LANG_LOUDNESS), loudness }, 413 { STR(LANG_LOUDNESS), loudness },
366 { STR(LANG_BBOOST), bass_boost }, 414 { STR(LANG_AUTOVOL), avc },
367 { STR(LANG_AUTOVOL), avc } 415 { STR(LANG_SUPERBASS), superbass },
416 { STR(LANG_MDB_ENABLE), mdb_enable },
417 { STR(LANG_MDB_STRENGTH), mdb_strength },
418 { STR(LANG_MDB_HARMONICS), mdb_harmonics },
419 { STR(LANG_MDB_CENTER), mdb_center },
420 { STR(LANG_MDB_SHAPE), mdb_shape },
368#endif 421#endif
369 }; 422 };
370 423