Como posso definir o volume do áudio do CD no Linux?

Como posso definir o volume do áudio do CD no Linux?

No Painel de Controle do Windows 7 -> Som -> janela Propriedades do Som, há um controle deslizante para definir o volume do CD Audio:

insira a descrição da imagem aqui

E é muito estranho que eu não consiga encontrar um correspondente em mixers genéricos do Linux: alsamixerou amixer.

Conectei uma unidade de CD para tentar definir o volume do áudio do CD com cdcd(CD Player):

$ cdcd setvol 0
Invalid volume

Na verdade, não é um volume inválido, é porque ioctl()a chamada falhou. Descobri isso depois de pesquisar e alterar um pouco o código fonte deste utilitário (no 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;
 }

A propósito, o comando get volume do cdcd produz uma saída bastante estranha:

         Left  Right
Front 1281734864  32767
Back        0      0

Também tentei aumix:

$ aumix -c 0

Mas tudo sem sucesso.

Eu li este manual -http://tldp.org/HOWTO/Alsa-sound-6.html(seção6.2 O misturador) que o canal de CD pode apresentar na amixersaída. Talvez alguns drivers para placa de som estejam faltando na minha instalação do Ubuntu 12.04 LTS. Embora eu não ache que seja o 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

Tudo o que preciso é apenas silenciar ou definir o nível de volume do canal de áudio do CD para 0, como fiz no Windows 7, para me livrar do ruído sibilante nos alto-falantes.

Responder1

Finalmente consegui resolver este problema substituindo totalmente o subsistema de áudio porOSS 4.

Pacotes 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

E a qualidade do som agora é excelente. Eu realmente não consigo entender por que está sendo obsoleto em algumas distribuições populares.

informação relacionada