xduoox3ii: Add "Super Slow" filter roll-off
I'm not happy with the proliferation of filter-roll-off options but I don't have a less ugly solution. Change-Id: I740fca006fa0c3443a467acfea55b6574d48346b
This commit is contained in:
parent
ec31a2b4ad
commit
cd17decd5a
4 changed files with 26 additions and 2 deletions
|
@ -12170,6 +12170,23 @@
|
||||||
filter_roll_off: "Short Slow"
|
filter_roll_off: "Short Slow"
|
||||||
</voice>
|
</voice>
|
||||||
</phrase>
|
</phrase>
|
||||||
|
<phrase>
|
||||||
|
id: LANG_FILTER_SUPER_SLOW
|
||||||
|
desc: in sound settings
|
||||||
|
user: core
|
||||||
|
<source>
|
||||||
|
*: none
|
||||||
|
filter_roll_off: "Super Slow"
|
||||||
|
</source>
|
||||||
|
<dest>
|
||||||
|
*: none
|
||||||
|
filter_roll_off: "Super Slow"
|
||||||
|
</dest>
|
||||||
|
<voice>
|
||||||
|
*: none
|
||||||
|
filter_roll_off: "Super Slow"
|
||||||
|
</voice>
|
||||||
|
</phrase>
|
||||||
<phrase>
|
<phrase>
|
||||||
id: LANG_FILTER_SHORT
|
id: LANG_FILTER_SHORT
|
||||||
desc: in sound settings
|
desc: in sound settings
|
||||||
|
|
|
@ -858,6 +858,9 @@ const struct settings_list settings[] = {
|
||||||
#elif defined(AUDIOHW_HAVE_SHORT2_ROLL_OFF)
|
#elif defined(AUDIOHW_HAVE_SHORT2_ROLL_OFF)
|
||||||
"roll_off", "sharp,slow,short sharp,short slow", sound_set_filter_roll_off,
|
"roll_off", "sharp,slow,short sharp,short slow", sound_set_filter_roll_off,
|
||||||
4, ID2P(LANG_FILTER_SHARP), ID2P(LANG_FILTER_SLOW), ID2P(LANG_FILTER_SHORT_SHARP), ID2P(LANG_FILTER_SHORT_SLOW)),
|
4, ID2P(LANG_FILTER_SHARP), ID2P(LANG_FILTER_SLOW), ID2P(LANG_FILTER_SHORT_SHARP), ID2P(LANG_FILTER_SHORT_SLOW)),
|
||||||
|
#elif defined(AUDIOHW_HAVE_SS_ROLL_OFF)
|
||||||
|
"roll_off", "sharp,slow,short sharp,short slow,super slow", sound_set_filter_roll_off,
|
||||||
|
5, ID2P(LANG_FILTER_SHARP), ID2P(LANG_FILTER_SLOW), ID2P(LANG_FILTER_SHORT_SHARP), ID2P(LANG_FILTER_SHORT_SLOW), ID2P(LANG_FILTER_SUPER_SLOW)),
|
||||||
#elif defined(AUDIOHW_HAVE_SHORT_ROLL_OFF)
|
#elif defined(AUDIOHW_HAVE_SHORT_ROLL_OFF)
|
||||||
"roll_off", "sharp,slow,short,bypass", sound_set_filter_roll_off,
|
"roll_off", "sharp,slow,short,bypass", sound_set_filter_roll_off,
|
||||||
4, ID2P(LANG_FILTER_SHARP), ID2P(LANG_FILTER_SLOW), ID2P(LANG_FILTER_SHORT), ID2P(LANG_FILTER_BYPASS)),
|
4, ID2P(LANG_FILTER_SHARP), ID2P(LANG_FILTER_SLOW), ID2P(LANG_FILTER_SHORT), ID2P(LANG_FILTER_BYPASS)),
|
||||||
|
|
|
@ -238,7 +238,8 @@ void audiohw_set_filter_roll_off(int value)
|
||||||
/* 0 = Sharp;
|
/* 0 = Sharp;
|
||||||
1 = Slow;
|
1 = Slow;
|
||||||
2 = Short Sharp
|
2 = Short Sharp
|
||||||
3 = Short Slow */
|
3 = Short Slow
|
||||||
|
4 = Super Slow */
|
||||||
#if defined(XDUOO_X3II)
|
#if defined(XDUOO_X3II)
|
||||||
long int value_hw = value;
|
long int value_hw = value;
|
||||||
alsa_controls_set_ints("AK4490 Digital Filter", 1, &value_hw);
|
alsa_controls_set_ints("AK4490 Digital Filter", 1, &value_hw);
|
||||||
|
|
|
@ -3,7 +3,6 @@
|
||||||
|
|
||||||
#define AUDIOHW_CAPS (LINEOUT_CAP | FILTER_ROLL_OFF_CAP)
|
#define AUDIOHW_CAPS (LINEOUT_CAP | FILTER_ROLL_OFF_CAP)
|
||||||
AUDIOHW_SETTING(VOLUME, "dB", 1, 5, -102*10, 0, -30*10)
|
AUDIOHW_SETTING(VOLUME, "dB", 1, 5, -102*10, 0, -30*10)
|
||||||
AUDIOHW_SETTING(FILTER_ROLL_OFF, "", 0, 1, 0, 4, 0)
|
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
// We want this, but the codec takes over a second to unmute!
|
// We want this, but the codec takes over a second to unmute!
|
||||||
|
@ -12,10 +11,14 @@ AUDIOHW_SETTING(FILTER_ROLL_OFF, "", 0, 1, 0, 4, 0)
|
||||||
#if defined(XDUOO_X3II)
|
#if defined(XDUOO_X3II)
|
||||||
/* The AK4490 glitches when switching sample rates */
|
/* The AK4490 glitches when switching sample rates */
|
||||||
#define AUDIOHW_MUTE_ON_SRATE_CHANGE
|
#define AUDIOHW_MUTE_ON_SRATE_CHANGE
|
||||||
|
AUDIOHW_SETTING(FILTER_ROLL_OFF, "", 0, 1, 0, 5, 0)
|
||||||
|
#define AUDIOHW_HAVE_SS_ROLL_OFF
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
#if defined(XDUOO_X20)
|
#if defined(XDUOO_X20)
|
||||||
//#define AUDIOHW_NEEDS_INITIAL_UNMUTE
|
//#define AUDIOHW_NEEDS_INITIAL_UNMUTE
|
||||||
|
AUDIOHW_SETTING(FILTER_ROLL_OFF, "", 0, 1, 0, 4, 0)
|
||||||
|
#define AUDIOHW_HAVE_SHORT2_ROLL_OFF
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
void audiohw_mute(int mute);
|
void audiohw_mute(int mute);
|
||||||
|
|
Loading…
Reference in a new issue