mirror of
https://gitlab.freedesktop.org/pulseaudio/pulseaudio.git
synced 2025-11-01 22:58:47 -04:00
add new paramter ignore_dB= to alsa modules
This commit is contained in:
parent
d5f46e824e
commit
0ca16caff7
5 changed files with 25 additions and 9 deletions
|
|
@ -1072,7 +1072,7 @@ pa_source *pa_alsa_source_new(pa_module *m, pa_modargs *ma, const char*driver, p
|
|||
size_t frame_size;
|
||||
snd_pcm_info_t *pcm_info = NULL;
|
||||
int err;
|
||||
pa_bool_t use_mmap = TRUE, b, use_tsched = TRUE, d;
|
||||
pa_bool_t use_mmap = TRUE, b, use_tsched = TRUE, d, ignore_dB = FALSE;
|
||||
pa_source_new_data data;
|
||||
|
||||
snd_pcm_info_alloca(&pcm_info);
|
||||
|
|
@ -1116,6 +1116,11 @@ pa_source *pa_alsa_source_new(pa_module *m, pa_modargs *ma, const char*driver, p
|
|||
goto fail;
|
||||
}
|
||||
|
||||
if (pa_modargs_get_value_boolean(ma, "ignore_dB", &ignore_dB) < 0) {
|
||||
pa_log("Failed to parse ignore_dB argument.");
|
||||
goto fail;
|
||||
}
|
||||
|
||||
if (use_tsched && !pa_rtclock_hrtimer()) {
|
||||
pa_log_notice("Disabling timer-based scheduling because high-resolution timers are not available from the kernel.");
|
||||
use_tsched = FALSE;
|
||||
|
|
@ -1324,8 +1329,8 @@ pa_source *pa_alsa_source_new(pa_module *m, pa_modargs *ma, const char*driver, p
|
|||
}
|
||||
|
||||
if (suitable) {
|
||||
if (snd_mixer_selem_get_capture_dB_range(u->mixer_elem, &u->hw_dB_min, &u->hw_dB_max) < 0)
|
||||
pa_log_info("Mixer doesn't support dB information.");
|
||||
if (ignore_dB || snd_mixer_selem_get_capture_dB_range(u->mixer_elem, &u->hw_dB_min, &u->hw_dB_max) < 0)
|
||||
pa_log_info("Mixer doesn't support dB information or data is ignored.");
|
||||
else {
|
||||
#ifdef HAVE_VALGRIND_MEMCHECK_H
|
||||
VALGRIND_MAKE_MEM_DEFINED(&u->hw_dB_min, sizeof(u->hw_dB_min));
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue