¿Cómo puedo configurar el volumen de audio del CD en Linux?

2

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:

ingrese la descripción de la imagen aquí

Y es bastante extraño que no pueda encontrar el correspondiente en mezcladores genéricos de Linux: alsamixero 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 amixersalida. 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.

Ilya I
fuente
¿Qué distribución de Linux estás usando?
Der Hochstapler

Respuestas:

1

Finalmente logré resolver este problema reemplazando completamente el subsistema de audio con OSS 4 .

Paquetes relacionados:

ii  oss-compat     2                         amd64    Open Sound System (OSS) compatibility package
ii  oss4-base      4.2-build2006-2+deb7u1    amd64    Open Sound System - base package
ii  oss4-dkms      4.2-build2006-2+deb7u1    amd64    Open Sound System - DKMS module sources
ii  oss4-gtk       4.2-build2006-2+deb7u1    amd64    Open Sound System - simple GTK2-based mixer control
ii  oss4-source    4.2-build2006-2+deb7u1    amd64    Open Sound System - drivers sources

Y la calidad del sonido ahora es excelente. Realmente no puedo entender por qué está siendo obsoleto en algunas distribuciones populares.

Ilya I
fuente