Так случилось, что у меня наушники со встроенной звуковой картой и USB подключением. По установке Gentoo возникла необходимость упорядочить использование нужной мне звуковухи в той или иной программе. Оказалось, что необходим вдумчивый диалог с Гуглем.
Что интересно, имеет место быть полный разнобой конфигурационных настроек для разных программ и неочевидность параметров настройки для ОС.

Далее приведу свой файл "/etc/modprobe.d/alsa.conf" а также способы задания нужной звуковухи в mplayer, mpg321, amarok и skype.
Как говориться, добро пожаловать в наш зверинец.
Итак, прописываем обе звуковые карты и явно задаем им индексы. По умолчанию ставим наушники.

alias char-major-116 snd
alias char-major-14 soundcore
#
alias /dev/mixer snd-mixer-oss
alias /dev/dsp snd-pcm-oss
alias /dev/midi snd-seq-oss

## --- ALSACONF version 1.0.14rc1 ---
## card 1
alias snd-card-0 snd-usb-audio
alias sound-slot-0 snd-card-0

## card2
alias snd-card-1 snd-atiixp
alias sound-slot-1 snd-card-1

alias sound-service-1-0 snd-mixer-oss
alias sound-service-1-3 snd-pcm-oss
alias sound-service-1-12 snd-pcm-oss

options snd-usb-audio index=0 #индекс наушников
options snd-atiixp index=1 #индекс встроенной звуковой карты ноута

options snd cards_limit=3

После перезагрузки модулей (update-modules -f) и звука (/etc/init.d/alsasound restart) должно заработать по идее. Наушники определяются индексом 0 а встроенная карта индексом 1. Например, для настройки уровня звука надо набрать «alsamixer -c1» для встроенной звуковой карты. Для наушников можно без дополнительных параметров.

Далее, надо задать программе какой звуковой картой пользоваться. По умолчанию все программы выберут наушник с моим конфигом. Для вывода звука в динамик задаем звук строкой:

mplayer -ao alsa:device=hw=1.0 filename

Плохо, то что данный параметр явно не приведен в мануале и Гуглится тоже неважно.

Казалось бы, мы теперь знаем как задать звук для mpg321. Но не совсем! Для mpg321 немного по-другому:

mpg321 -a hw:1,0 filename

Как видим синтаксис почему-то уже другой. Ладно запомнили. Теперь попробуем сделать то же самое в amarok, xine или kaffein. Искомая строка теперь уже совсем другая! В нужном месте в окне настроек вводим:

plughw=1.0

А с какого, собственно говоря такой разнобой? Неужели нельзя выработать единый формат этих самых настроек, xml файл там, или еще что?
Ну, и наконец добрые слова в адрес Skype. С версии 1.4 кажется, там звуковая карта выбирается по имени из окна настроек.
Надеюсь сэкономить время тем, кто оказался в моей ситуации, хотя сейчас wiki движки гораздо полнее нежели 4 года тому назад и хорошо индексируются.
За рамками мини-обзора осталось, как привязать горячие клавиши к программам и WM-ам. Попробую об этом в другой раз написать.

Комментарии (15)


  1. anonymous
    12.12.2009 12:57


    1. temujin Автор
      12.12.2009 12:57

      Ну, лучше поздно чем никогда. Давно пора.


  1. Archon
    12.12.2009 12:57

    Линукс — это просто и понятно.


    1. temujin Автор
      12.12.2009 12:57

      Речь о другом, нужна более полная интеграция между различными open source проектами и более полная документация.


  1. PoZitron
    12.12.2009 12:57

    > Оказалось, что необходим вдумчивый диалог с Гуглем.
    Прошу прощения, а как же пульс?
    Выбор основного устройства, выбор устройств для отдельных потоков (изображения). Всё легко выбирается, вообще без конфигов.


    1. temujin Автор
      12.12.2009 12:57

      Не знаком с PulseAudio. Наверное, когда появится общее убеждение что он превосходит alsa перейду на него так как с alsa мягко говоря у меня частенько возникают различные проблемы.


      1. PoZitron
        12.12.2009 12:57

        Общая волна настроений по-поводу пульсаудио — негатив. У меня знакомый на генте, когда я тоже не любил пульс, говорил что он отлично работает (у меня Убунту). Я ему не верил, потому что этот пульс как то не очень хотел работать. Всё резко изменилось с выходом Ubuntu 9.10. Дело в том, что там пульс стоит по-умолчанию, что многим не понравилось, и многие, как и я, его удалили. Однако на ноуте у меня пульс всегда хорошо работал, поэтому я увидел как он ещё лучше стал работать в новой версии, как блютус-наушники можно подключать в 2 клика (подключить в блютус-менеджере и сменить устройство в пульсе) и прочие приятные фишки. Ради экспремента вернул пульс на место на основном компе. Теперь не нарадуюсь! У меня отлично работает звуковуха, все потоки микшируются как надо и вообще всё работает.
        Поэтому моё предложение такое — попробуй пульс. Несмотря на негатив в интернете его последнии версии стоит попробовать.
        Когда я его вернул, я удалил все-все костыли альсы которые у меня были, и при этом он отлично встал и заработал, отправив в прошлую пыхтение над тоннами конфигов.


        1. temujin Автор
          12.12.2009 12:57

          А вкуривать долго его установку и настройку? Кстати для флеша, с PA динамично можно поменять звуковую карту? А то с alsa можно только в целом менять местами звуковухи. Если да, то это был бы большой плюс.


          1. PoZitron
            12.12.2009 12:57

            Посмотри вторую картинку в моём комментарии выше, я там для Банши поставил одну звуковуху, а для Скайпа другую. Точно так же можно и для флеша и вообще для любого потока.
            > А вкуривать долго его установку и настройку?
            Нет. Совсем не долго. Честно говоря, его достаточно поставить и он сразу берёт работу на себя (в отличии от альсы где я писал тонну конфигураций). Альсу кстати сносить не надо!!! Просто после установки пульса нужно в настройках твоего рабочего окружения выбрать чтобы звук шёл через пульс (например в gstreamer), а в остальных приложениях, звук тоже должен идти в пульс автоматом. В общем, всё будет идти в пульс и он будет с этим всем разбираться. По крайней мере, в Убунту 9.10 так и у знакомого на генту так.


            1. temujin Автор
              12.12.2009 12:57

              Посмотрю-ка на gentoo wiki по этой теме. Раньше нормальных доков не было.


            1. temujin Автор
              12.12.2009 12:57

              Думаю назревает топик по установке PA. Прочу ему рейтинг 100+.


  1. anonymous
    12.12.2009 12:57


  1. anonymous
    12.12.2009 12:57


    1. advix
      12.12.2009 12:57

      А у меня пульс не работает на нетбуке :(
      звук заводится только с чистой альсой, пляски с бубном н протяжении месяца результатов не дали


  1. EKrava
    12.12.2009 12:57

    хм. вроде как достаточно давно к alsa девайсам можно обращаться по именам.
    вот у меня в mpd.conf например для интегрированной и для SB Live оно выглядит вот так.
    device «hw:CARD=Intel,DEV=0» # optional
    device «hw:CARD=Live,DEV=0» # optional

    — названия карточек брал из
    aplay -L | grep front
    front:CARD=Live,DEV=0
    front:CARD=Intel,DEV=0

    и уже не важно в каком порядке были загружены модули.