Речь сегодня пойдет о том, почему не стоит пытаться устанавливать "неродные" драйвера на Убунту, чем это чревато и как после таких действий вернуть звук в рабочее состояние. Так же расскажу о том, как разблокировать некоторые канальные режимы, которые поддерживаются вашей звуковой платой, но не поддерживаются по умолчанию системой.
А началось все с того, что захотелось мне что то нового, а то все, понимаешь ли, работает - скучно. Почитав форумы, решил я поставить драйвер Realtek для своей встроенной звуковой карты на базе чипа ALC888. Тем более форумы почитал, народ вроде ставит, да и говорят звук лучше работает.
Надо ли говорить что после всех этих манипуляций звук у меня исчез напрочь, а утилита alsacof радостно выдавала :
No supported PnP or PCI card found.
Would you like to probe legacy ISA sound cards/chips?
Соответственно в настройках звука аудиоустройства отсутствовали, а вывод предлагался осуществлять через виртуальное устройство Dummy output.
Можно конечно сказать, что у меня руки кривые. Но! Делал все по инструкции, даже полностью и без ошибок скомпилил альсу из сорцов, но вот alsaconf к сожалению находить мою карту не захотела.. В чем была причина я так и не понял, но просидел пару часов тщетно пытаясь восстановить звук и вернуть все как было -). Это кстати был единственный момент когда я уже подумывал, что придется как в старые, нехорошие виндоузные времена решать проблему переустановкой системы......Мне повезло, и я случайно наткнулся на замечательный скрипт, назначение у которого было апгрейдить альсу из сорцов. Так как последняя альса версии 1.0.24 поставляется с Natty, то обычным пользователем он может пригодиться разве что, если они еще не перешли на 11.04. Но, как оказалось, он может эту самую альсу еще и грамотно переустановить, чего у меня никак не получалось.
Итак, всем тем кто потерял звук и тем, кто просто хочет проапдейтить альсу - Скрипт.
Описание
Сам скрипт ставит Альсу из сорцов, поэтому никаких изменений в Синаптике вы не увидите. При любых ошибках скрипт останавливает свою работу до внесения изменений в вашу систему. В самом плохом случае используйте запуск скрипта с ключом -r, это восстановит стандартные акеты ядра и альсы.
Обновления Ubuntu могут откатить ваши изменения, поэтому если это произошло, используйте ключ -i (если конечно вы еще не удалили скомпилированные сорцы).
Использование
1. Скачайте скрипт и распакуйте его в любое место
2. cd <папка-размещения-скрипта>
3. tar xzvf AlsaUpgrade-1.0.24-2.tar.gz
4. chmod +x AlsaUpgrade-1.0.24-2.sh
5. sudo ./AlsaUpgrade-1.0.24-2.sh -d - (скачиваем сорцы и необходимые пакеты)
6. sudo ./AlsaUpgrade-1.0.24-2.sh -c - (компилим скачанные сорцы)
7. sudo ./AlsaUpgrade-1.0.24-2.sh -i - (устанавливаем скомпилированные сорцы)
8. sudo shutdown -r 0 - (перезагружаемся)
После перезагрузки вы можете поглядеть текущую версию альсы:
cat /proc/asound/version
Приложения и PulseAudio
Бывет так, что после того как альсу вы обновили, у вас одновременно не работает звук в браузере и в системе - только где-то в одном месте. При просмотре логов видим - Failed to open audio device (/dev/dsp): Device or resource busy.
Дело все в том что чистая альса не позволяет использовать себя одноременно нескольким приложениям (ну а если как-то и позволяет, то как, я не вкурсе), для этого служит PulseAudio. Нужно заставить приложения автоматически выводить звук через него.
В файле ~/.asoundrc прописываем:
pcm.!default {
type pulse
}
И перезагружаемся, все будет работать как надо.
7.1 канальный звук
Бывает так, что система не хочет определять нормально вашу карту по умолчанию, что в некоторых случаях может привести к отсутсвию различным режимов в настройках звука. Например у меня отсутствует режим 7.1. Исправить можно следующим образом:
1. В настройках Alsa жестко указываем, какой тип карты использовать - добавляем в конец /etc/modprobe.d/alsa-base.conf следующую строчку:
options snd-hda-intel model="значение"
где значение смотрим тут.
2. В настройках PulseAudio (/etc/pulse/daemon.conf) указываем по умолчанию использовать то количество каналов, какое нам нужно:
default-sample-channels = 8
3. Перезагружаемся
4. В терминале вбиваем alsamixer и в channels выбераем нужное количество каналов.
5. Перезагружаемся6. В настройках звука выбираем нужный режим.
Ссылки по теме
http://help.ubuntu.ru/wiki/alsa - Компилим alsa из сорцов, мануал.
http://ubuntuforums.org/showthread.php?t=1681577 - оригинальная тема на Ubuntuforums.org, где можно скачать последнюю версию скрипта (требуется регистрация).


Единственное что - звук себе 7,1 сделал, тут все ок, а то и карта и мулт. система 7,1, а Убунта только 5,1 почему то по дефолту разрешала.
Мне то же помогло =)
Если честно скачал твою статью до того как сам начал побывать устанавливать драйвер Realtek и естественно звук пропал.
Но с помощью этой статьи звук удалось восстановить =)
В следующий раз лучше пользуйтесь офф. репозиториями, Я так уже как то раз пролетал с установкой дравера nvidia вручную.
Теперь получилось не только все восстановить, но и получить качественный звук, взамен шипящего. Правда, пока только в наушниках, но видимо, нужно больше поперебирать модели звуковух.