En el Panel de control de Windows 7 -> Sonido -> ventana Propiedades de sonido hay un control deslizante para configurar el volumen de audio del CD:
Y es bastante extraño que no pueda encontrar el correspondiente en mezcladores genéricos de Linux: alsamixer
o amixer
.
Conecté una unidad de CD para intentar configurar el volumen de audio del CD con cdcd
(Reproductor de CD):
$ cdcd setvol 0
Invalid volume
En realidad no es un volumen no válido, es porque la ioctl()
llamada falla. Descubrí eso después de buscar y cambiar un poco el código fuente de esta utilidad (en el libcdaudio):
--- cdaudio.c.orig 2004-09-09 06:26:20.000000000 +0600
+++ cdaudio.c 2012-05-30 21:34:34.167915521 +0600
@@ -578,8 +578,10 @@
cdvol_data.CDVOLCTRL_BACK_RIGHT_SELECT = CDAUDIO_MAX_VOLUME;
#endif
- if(ioctl(cd_desc, CDAUDIO_SET_VOLUME, &cdvol) < 0)
- return -1;
+ if(ioctl(cd_desc, CDAUDIO_SET_VOLUME, &cdvol) < 0) {
+ printf("*** cd_set_volume: ioctl() returned error\n");
+ return -1;
+ }
return 0;
}
Por cierto, el comando get volume de cdcd produce resultados bastante extraños:
Left Right
Front 1281734864 32767
Back 0 0
También probé aumix:
$ aumix -c 0
Pero todo sin éxito.
Leí de este manual: http://tldp.org/HOWTO/Alsa-sound-6.html (sección 6.2 El mezclador ) que el canal de CD puede presentar en la amixer
salida. Quizás falten algunos controladores para la tarjeta de sonido en mi instalación de Ubuntu 12.04 LTS. Aunque no creo que sea el caso:
$ lsmod | grep snd
snd_mixer_oss 22602 0
snd_hda_codec_hdmi 32474 1
snd_hda_codec_realtek 223867 1
snd_hda_intel 33773 4
snd_hda_codec 127706 3 snd_hda_codec_hdmi,snd_hda_codec_realtek,snd_hda_intel
snd_hwdep 13668 1 snd_hda_codec
snd_pcm 97188 3 snd_hda_codec_hdmi,snd_hda_intel,snd_hda_codec
snd_seq_midi 13324 0
snd_rawmidi 30748 1 snd_seq_midi
snd_seq_midi_event 14899 1 snd_seq_midi
snd_seq 61896 2 snd_seq_midi,snd_seq_midi_event
snd_timer 29990 2 snd_pcm,snd_seq
snd_seq_device 14540 3 snd_seq_midi,snd_rawmidi,snd_seq
snd 78855 19 snd_mixer_oss,snd_hda_codec_hdmi,snd_hda_codec_realtek,snd_hda_intel,snd_hda_codec,snd_hwdep ,snd_pcm,snd_rawmidi,snd_seq,snd_timer,snd_seq_device
soundcore 15091 1 snd
snd_page_alloc 18529 2 snd_hda_intel,snd_pcm
Todo lo que necesito es silenciar o establecer el nivel de volumen 0 del canal de audio de CD, como hice en Windows 7, para eliminar el ruido sibilante en los altavoces.