2

В панели управления Windows 7 -> Звук -> Окно «Свойства звука» есть ползунок для настройки громкости CD Audio:

И довольно странно, что я не могу найти соответствующий в обычных микшерах Linux: alsamixer или amixer .

Я подключил привод CD, чтобы попытаться установить громкость звука CD с помощью cdcd (CD Player):

$ cdcd setvol 0
Invalid volume

На самом деле это не недействительный том, это потому, что вызов ioctl() завершился неудачно. Я выяснил это после поиска и небольшого изменения исходного кода этой утилиты (в 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;
 }

Кстати, команда cdcd get volume дает довольно странный вывод:

         Left  Right
Front 1281734864  32767
Back        0      0

Также я попробовал Aumix:

$ aumix -c 0

Но все безуспешно.

Я прочитал из этого руководства - http://tldp.org/HOWTO/Alsa-sound-6.html (раздел 6.2 Микшер), который канал CD может присутствовать в amixer . Может быть, некоторые драйверы для звуковой карты отсутствуют в моей установке Ubuntu 12.04 LTS. Хотя я не думаю, что это так:

$ 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

Все, что мне нужно, это просто отключить звук или установить на 0 уровень громкости канала CD Audio, как я это делал в Windows 7, чтобы избавиться от шума в динамиках.

1 ответ1

1

Наконец мне удалось решить эту проблему, полностью заменив аудиоподсистему на OSS 4.

Связанные пакеты:

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

И качество звука сейчас отличное. Я действительно не могу понять, почему это считается устаревшим в некоторых популярных дистрибутивах.

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .