ALSA Сравнение версий

Различия

Здесь показаны различия между двумя версиями данной страницы.

Ссылка на это сравнение

Предыдущая версия справа и слева Предыдущая версия
Следующая версия
Предыдущая версия
Последняя версия Следующая версия справа и слева
wiki:alsa [2012/05/07 00:31]
ПользовательПользовательRuntu XFCE 18.04 (64-bit)
wiki:alsa [2012/07/04 21:58]
ZwSZwSZwS
Строка 1: Строка 1:
-====== ​Установка,​ обновление,​ переконфигурирование системы вывода звука ​ALSA ====== +====== ALSA ======
-   * Если у вас в Ubuntu нет звука, не работает микрофон или неправильно настроены каналы вывода звука, то вам придётся скачать и пересобрать вручную систему вывода звука ALSA.+
  
-<​note>​Перед тем, как выполнять инструкции, приведённые на этой странице, проверьте настройки микшера ​и регулятора громкости ​в Ubuntu, в современных версиях особенных ​проблем ​c выводом ​звука замечено не было.</note>+{{:​wiki:​alsa:​alsa-logo.png?​nolink&​64 |}} 
 +**ALSA** (**A**dvanced **L**inux **S**ound **A**rchitecture) -- архитектура звуковых драйверов,​ обеспечивающая ​поддержку множества звуковых карт. Главными особенностями ALSA являются:​ 
 +  * Широкая поддержка аудиоаппаратурыначиная от потребительских звуковых карт и заканчивая ​профессиональными мультиканальными аудио интерфейсами
 +  * Поддержка устаревшего ​[[Open Sound System (OSS)]] API, обеспечивающего бинарную совместимость с большинством программ использующих OSS. 
 + 
 +===== Обновление ALSA ===== 
 +Если у вас возникают какие-либо ​проблемы в работе звуковой подсистемы попробуйте обновить ALSA из [[PPA]], поддерживаемого //Ubuntu Audio Development Team//. 
 +<code bash>​sudo apt-add-repository ppa:​ubuntu-audio-dev/​ppa 
 +sudo apt-get update 
 +sudo apt-get upgrade</code>
  
 ===== Сборка,​ установка и конфигурирование ALSA ===== ===== Сборка,​ установка и конфигурирование ALSA =====
 +<note important>​При решении проблем со звуком прибегайте к этой части статьи в последнюю очередь!</​note>​
  
-<note important>​Все ​команды выполняются в [[терминал|терминале]]. ​Копируются отсюда и вставляются в терминал с помощью "правого клика мыши => вставить"</note> +Все ​дальнейшие ​действия ​выполняются в [[терминал|терминале]]. ​Все команды ​рекомендуется ​вводить по одной, чтобы отслеживать процесс ​на возможные ошибки. Продолжать сборку ​при возникновении ошибки бессмысленно. Если не можете ​выяснить ее причину обратитесь на [[http://​forum.ubuntu.ru/​index.php?​topic=99987.0|форум]]. 
- +  ​-- Для начала следует установить необходимые пакеты для сборки ПО из исходных текстов:​ 
-  ​* 1. Для начала следует установить необходимые пакеты для сборки ПО из исходных текстов:​ +  .. <​code ​bash>sudo apt-get install linux-headers-`uname -r` linux-backports-modules-alsa-`uname -r` build-essential gawk libgettext-ruby-util libgettext-ruby1.8 libncurses5-dev libncursesw5-dev xmlto autoconf automake checkinstall pkg-config</​code>​ 
- +  .. :!:Установка этих пакетов потянет за собой около 400МБ траффика. Выполнять дальнейшие инструкции без их установки бессмысленно. 
-<​code>​ +  ​-- Скачиваем исходные коды ALSA с официального сайта, желательно самые последние //(на момент последнего обновления статьи 29 Января 2012г. это была версия 1.0.25)// : 
-sudo apt-get update +  .. :!:Поддержка Alsa версий __выше 1.0.23__ есть в ядрах версий __2.6.38__ и выше. Сборка на старом ядре в результате приведет к тому, что Alsa не будет распознавать звуковые карты. Последние сборки ядра можно скачать [[http://​kernel.ubuntu.com/​~kernel-ppa/​mainline/​|отсюда]]. 
-</​code>​ +  ​.. ​<​code ​bash>wget ftp://​ftp.alsa-project.org/​pub/​driver/​alsa-driver-1.0.25.tar.bz2
-Для Ubuntu 10.04: +
-<​code>​ +
-sudo apt-get install linux-headers-`uname -r` linux-backports-modules-alsa-`uname -r` linux-backports-modules-alsa-lucid-generic build-essential +
-</​code>​ +
-Для Ubuntu 10.10: +
-<​code>​ +
-sudo apt-get install linux-headers-`uname -r` linux-backports-modules-alsa-`uname -r` linux-backports-modules-alsa-maverick-generic ​build-essential +
-</​code>​ +
-Далее:​ +
-<​code>​ +
-sudo apt-get install gcc gawk libgettext-ruby-util libgettext-ruby1.8 libncurses5-dev libncursesw5-dev xmlto autoconf automake checkinstall pkg-config +
-sudo apt-get upgrade +
-</​code>​ +
-<note important>​**Установка этих пакетов ​займет продолжительное время и потянет за собой около 400МБ траффика. +
-Выполнять дальнейшие инструкции без их установки бессмысленно.** +
-</​note>​ +
-<note warning>​**Все команды рекомендуется вводить по одной, чтобы отслеживать процесс на возможные ошибки. Продолжать сборку при возникновении ошибки бессмысленно! \\ +
-Если не можете выяснить ее причину обратитесь на [[http://​forum.ubuntu.ru/​index.php?​topic=99987.0|форум]].** +
-</​note>​ +
- +
-  ​* 2. Скачиваем исходные коды ALSA с официального сайта, желательно самые последние //(на момент последнего обновления статьи 29 Января 2012г. это была версия 1.0.25)// : +
-<note important>​ +
-Внимание! Поддержка Alsa версий __выше 1.0.23__ есть в ядрах версий __2.6.38__ и выше.\\ +
-Сборка на старом ядре в результате приведет к тому, что Alsa не будет распознавать звуковые карты.\\ +
-Последние сборки ядра можно скачать [[http://​kernel.ubuntu.com/​~kernel-ppa/​mainline/​|отсюда]]. +
-</​note>​ +
-<​code>​ +
-wget ftp://​ftp.alsa-project.org/​pub/​driver/​alsa-driver-1.0.25.tar.bz2+
 wget ftp://​ftp.alsa-project.org/​pub/​lib/​alsa-lib-1.0.25.tar.bz2 wget ftp://​ftp.alsa-project.org/​pub/​lib/​alsa-lib-1.0.25.tar.bz2
 wget ftp://​ftp.alsa-project.org/​pub/​utils/​alsa-utils-1.0.25.tar.bz2 wget ftp://​ftp.alsa-project.org/​pub/​utils/​alsa-utils-1.0.25.tar.bz2
 wget ftp://​ftp.alsa-project.org/​pub/​firmware/​alsa-firmware-1.0.25.tar.bz2 wget ftp://​ftp.alsa-project.org/​pub/​firmware/​alsa-firmware-1.0.25.tar.bz2
-wget ftp://​ftp.alsa-project.org/​pub/​plugins/​alsa-plugins-1.0.25.tar.bz2 +wget ftp://​ftp.alsa-project.org/​pub/​plugins/​alsa-plugins-1.0.25.tar.bz2</​code>​ 
-</​code>​ +  ​-- Распаковываем архивы:​ 
- +  ​.. ​<​code ​bash>tar jxvf alsa-driver-1.0.25.tar.bz2
-  ​* 3. Распаковываем архивы:​ +
-<​code>​ +
-tar jxvf alsa-driver-1.0.25.tar.bz2+
 tar jxvf alsa-lib-1.0.25.tar.bz2 tar jxvf alsa-lib-1.0.25.tar.bz2
 tar jxvf alsa-utils-1.0.25.tar.bz2 tar jxvf alsa-utils-1.0.25.tar.bz2
 tar jxvf alsa-firmware-1.0.25.tar.bz2 tar jxvf alsa-firmware-1.0.25.tar.bz2
-tar jxvf alsa-plugins-1.0.25.tar.bz2 +tar jxvf alsa-plugins-1.0.25.tar.bz2</​code>​ 
-</​code>​ +  ​-- Собираем и устанавливаем alsa-driver:​ 
-  ​* 4. Собираем и устанавливаем alsa-driver:​ +  ​.. ​<​code ​bash>cd
-<​code>​ +
-cd+
 rm -rf ~/.pulse* rm -rf ~/.pulse*
 cd ./​alsa-driver-1.0.25 cd ./​alsa-driver-1.0.25
 ./configure ./configure
 make make
-sudo make install ​ +sudo make install</​code>​ 
-</​code>​ +  ​-- Собираем и устанавливаем alsa-lib: 
-  ​* 5. Собираем и устанавливаем alsa-lib: +  ​.. ​<​code ​bash>cd
-<​code>​ +
-cd+
 cd ./​alsa-lib-1.0.25 cd ./​alsa-lib-1.0.25
 ./configure ./configure
 make make
-sudo make install ​ +sudo make install</​code>​ 
-</​code>​ +  ​-- Собираем и устанавливаем alsa-utils:​ 
-  ​* 6. Собираем и устанавливаем alsa-utils:​ +  ​.. ​<​code ​bash>cd
-<​code>​ +
-cd+
 sudo /​sbin/​alsa-utils stop sudo /​sbin/​alsa-utils stop
 sudo /sbin/alsa stop sudo /sbin/alsa stop
Строка 80: Строка 52:
 ./configure ./configure
 make make
-sudo checkinstall ​ +sudo checkinstall</​code>​ 
-</​code>​ +  .. :!:Если при компиляции alsa-utils выдает ошибку вроде такой: ​<​file>​mv: невозможно выполнить stat для «t-ja.gmo»:​ Нет такого файла или каталога</​file>​ 
-<note warning>Если при компиляции alsa-utils выдает ошибку вроде такой: +  ​.. ​то нужно установить пакет ​''​gettext''​
-''​mv: невозможно выполнить stat для «t-ja.gmo»:​ Нет такого файла или каталога''​ +  .. <code bash>sudo apt-get install gettext</​code
- +  .. :!:Внимательно смотрите чтобы сборка alsa-utils прошла без ошибок! На некоторых компьютерах сборка не проходит. Если ошибка всеже есть, скачиваем готовый пакет по ссылкам:​ 
-то нужно установить пакет gettext+    * [[http://​dl.dropbox.com/​u/​8047492/​alsa-utils_1.0.24.2-0ubuntu1_i386.deb|Для 32-bit]] 
-''​sudo apt-get install gettext''​ +    * [[http://​dl.dropbox.com/​u/​8047492/​alsa-utils_1.0.24.2-0ubuntu1_amd64.deb|Для 64-bit]] 
- +  ​-- Собираем и устанавливаем alsa-firmware:​ 
-</note+  ​.. ​<​code ​bash>cd
-<note warning>​**Внимательно смотрим чтобы сборка alsa-utils прошла без ошибок! На некоторых компьютерах сборка не проходит. Если ошибка всеже есть, скачиваем готовый пакет по ссылкам:​** +
-  * [[http://​dl.dropbox.com/​u/​8047492/​alsa-utils_1.0.24.2-0ubuntu1_i386.deb|Для 32-bit]] +
-  * [[http://​dl.dropbox.com/​u/​8047492/​alsa-utils_1.0.24.2-0ubuntu1_amd64.deb|Для 64-bit]] +
-</​note>​ +
-  ​* 7. Собираем и устанавливаем alsa-firmware:​ +
-<​code>​ +
-cd+
 cd ./​alsa-firmware-1.0.25 cd ./​alsa-firmware-1.0.25
 ./configure ./configure
 make make
-sudo make install ​ +sudo make install</​code>​ 
-</​code>​ +  ​-- Собираем и устанавливаем alsa-plugins:​ 
-  ​* 8. Собираем и устанавливаем alsa-plugins:​ +  ​.. ​<​code ​bash>cd
-<​code>​ +
-cd+
 cd ./​alsa-plugins-1.0.25 cd ./​alsa-plugins-1.0.25
 ./configure ./configure
 make make
-sudo make install ​ +sudo make install</​code>​ 
-</​code>​ +  ​-- Настраиваем ALSA
-  ​* 9. Настраиваем ALSA. Выбираем нужную звуковую карту, нажимаем "​ок"​ и на последующие вопросы отвечаем всегда "​Да/​Y":​ +  .. FIXME Судя по багу [[lpbug>​29597]] не стоит использовать alsaconf так как он нарушает работу других скриптов настройки. 
-<​code>​ +  .. Выбираем нужную звуковую карту, нажимаем "​ок"​ и на последующие вопросы отвечаем всегда "​Да/​Y":​ 
-sudo alsaconf +  ​.. ​<​code ​bash>sudo alsaconf</​code>​ 
-</​code>​ +  ​.. ​Начиная с версии 1.0.24 alsaconf нужно брать в папке alsa-utils/​alsaconf:​ 
-Начиная с версии 1.0.24 alsaconf нужно брать в папке alsa-utils/​alsaconf:​ +  ​.. ​<​code ​bash>cd
-<​code>​cd+
 cd ./​alsa-utils-1.0.25/​alsaconf/​ cd ./​alsa-utils-1.0.25/​alsaconf/​
 chmod +x alsaconf chmod +x alsaconf
 sudo ./​alsaconf</​code>​ sudo ./​alsaconf</​code>​
-  ​* 10. Перезаружаем систему и настраиваем громкость вывода звука, ставим все на максимум //​(кроме PC Beep)//: +  ​-- Перезаружаем систему и настраиваем громкость вывода звука, ставим все на максимум //​(кроме PC Beep)//: 
-<​code>​ +  ​.. ​<​code ​bash>​alsamixer</​code>  ​
-alsamixer +
-</​code>  ​+
  
 <note warning>​Если после обновления ядра пропал или неправильно воспроизводится звук, нужно проделать все действия заново.</​note>​ <note warning>​Если после обновления ядра пропал или неправильно воспроизводится звук, нужно проделать все действия заново.</​note>​
Строка 127: Строка 87:
  
 ===== Возможные проблемы и их решение =====  ​ ===== Возможные проблемы и их решение =====  ​
-<note tip> :!: Если звука по прежнему нет, то нужно ​добавить в файл ​**/​etc/​modprobe.d/​alsa-base.conf** одно из следующих значений:​\\ +Если звука по прежнему нет, ​попробуйте выполнить следующие ​действия: 
-</​note>​ +  ** Откройте ​в файл ​///​etc/​modprobe.d/​alsa-base.conf// в текстовом редакторе: 
-  * Для этого в терминале: +  ​.. ​<​code ​bash>sudo gedit /​etc/​modprobe.d/​alsa-base.conf</​code>​ 
-<​code>​sudo gedit /​etc/​modprobe.d/​alsa-base.conf +  ​** Добавьте в конце строчку 
-</​code>​ +  ​.. ​<file>options snd-hda-intel model="​значение"</​file
-  * Добавляем в конце строчку ​с одним из значений:​ +  .. с одним из значений: 
-<code>options snd-hda-intel model="​значение"​ +<file>
-</code+
-<​note>​ +
- ​Чтобы узнать какое именно значение вам нужно, вводим команду в терминале:​ +
-<​code>​cat /​proc/​asound/​pcm</​code>​ +
- В выводе будут строчки с информацией о чипе наподобие этих:  +
-<​code>​ +
-00-00: STAC92xx Analog : STAC92xx Analog : playback 1 : capture 1 +
-00-01: STAC92xx Digital : STAC92xx Digital : playback 1 +
-</​code>​  +
- ​Ниже в таблице ищем свой чип и берем оттуда значенияОписанию большого значения не придавать, оно подобрано владельцами этих звуковых карт. \\ +
- ​Если вам помогло какое-нибудь ​значение,​ а в описании этого ​значения нет модели вашего ноутбука,​ можете ее смело добавить в таблицу. +
-</note> +
-<code>+
 1  Чип ​   Значение Описание 1  Чип ​   Значение Описание
 2          2         
Строка 559: Строка 506:
 411   imac27 IMac 27 Inch 411   imac27 IMac 27 Inch
 412   auto BIOS setup (default) 412   auto BIOS setup (default)
-</​code>​ +</file> 
- +<​note>​Чтобы узнать какое именно значение вам нужно, вводим команду в терминале:​ 
 +<code bash>cat /​proc/​asound/​pcm</​code>​ 
 + В выводе будут строчки с информацией о чипе наподобие этих:  
 +<​code>​00-00:​ STAC92xx Analog : STAC92xx Analog : playback 1 : capture 1 
 +00-01: STAC92xx Digital : STAC92xx Digital : playback 1</​code>​  
 +В таблице ищем свой чип и берем оттуда значения. Описанию большого значения не придавать,​ оно подобрано владельцами этих звуковых карт. \\ 
 + ​Если вам помогло какое-нибудь значение,​ а в описании этого значения нет модели вашего ноутбука,​ можете ее смело добавить в таблицу.</​note> 
 +===== Смотрите также ===== 
 +  * [[PulseAudio]] 
 +  * [[OSS]] 
 +  * [[JACK]] 
 ===== Ссылки ===== ===== Ссылки =====
-  * Обсуждение этой статьи на [[http://​forum.ubuntu.ru/​index.php?​topic=99987.0|форуме]] +  * [[http://​alsa-project.org|Официальный сайт ALSA]] (англ.) 
-  * [[http://​www.gentoo.org/​doc/​ru/​alsa-guide.xml]]+  * [[http://​forum.ubuntu.ru/​index.php?​topic=99987.0|Обсуждение этой статьи на форуме]] 
 +  * [[http://​www.gentoo.org/​doc/​ru/​alsa-guide.xml|Руководство ALSA в Gentoo Linux]]
  
 {{tag>​Аудиоаппаратура ALSA HOWTO}} {{tag>​Аудиоаппаратура ALSA HOWTO}}