====== Интегрированный звук на платах с чипом nForce4, ArchLinux, ALSA и 5.1 звук ======
===== Короткое интро =====
А так же 4.0 звук. Это скорее не руководство, не how-to, а просто записка чтобы не зыбыть, а потом может кому и пригодится.
На платах с чипом nForce4 есть интегрированный 5.1 звук. Про качество звучания ничего говорить не будем - каждому свое. ''lshwd -cc'' на моей машине говорит про неё следующее:
nVidia Corp.|CK804 AC'97 Audio Controller
и рекомендует использовать модуль ядра ''snd-intel8x0''. Сама nVidia прекратила поддрежку своего OSS драйвера ''nvsound'' и рекомендует использовать данный.
===== Кратко про конфигурацию =====
Кратко про конфигурацию: запустить ''alsaconf'', ответить на все вопросы, в ''/etc/modprobe.conf'', по желанию добавить следующее:
# ALSA
install snd_intel8x0 /sbin/modprobe --ignore-install snd_intel8x0 ; sleep 1; /usr/sbin/alsactl restore >/dev/null 2>&1 || :
remove snd_intel8x0 { /usr/sbin/alsactl store >/dev/null 2>&1 || : ; }; /sbin/modprobe -r --ignore-remove snd_intel8x0
# OSS Compatibility
install snd-pcm modprobe -i snd-pcm ; modprobe snd-pcm-oss ; true
install snd-seq modprobe -i snd-seq ; modprobe snd-seq-oss ; true
Все, считаем что звук у вас работает и все играется. Теперь нужно что бы звук был более чем стерео.
===== Делаем звук многоканальным =====
Итак, для этого достаточно сделать у вас в домашнем каталоге файл ''.asoundrc'' со следующим содержимым:
pcm.CK804 {
type hw
card 0
}
ctl.CK804 {
type hw
card 0
}
pcm.!default {
type route;
slave.pcm "surround51";
slave.channels 6;
ttable.0.0 1;
ttable.1.1 1;
ttable.0.2 1;
ttable.1.3 1;
ttable.0.4 1;
ttable.1.5 1;
}
Это даст нам 5.1 звук. Регуляторы при этом станут:
^ Колонки ^ Регулятор ^
| Front | Master |
| Rear | Surround |
| Center | Center |
| LFE | LFE |
Общего регулятора нет. Плохо. Пока не решил проблему использую метод о котором ниже.
pcm.CK804 {
type hw
card 0
}
ctl.CK804 {
type hw
card 0
}
pcm.!default {
type route;
slave.pcm "surround40";
slave.channels 4;
ttable.0.0 1;
ttable.1.1 1;
ttable.0.2 1;
ttable.1.3 1;
}
Это нам даст 4.0 звук (квадрофонический). Пока использую по причине наличия двух стерео-колонок и отсутствия 5.1 системы. Регуляторы при этом станут:
^ Колонки ^ Регулятор ^
| Front | Master |
| Rear | Surround |
Общего регулятора опять таки нет.
===== Регулирование громкости =====
Для данного действия написал скрипт что устанавливает громкость по всем указанным каналам.
#!/bin/bash
DIFF=5%
Front="Master"
Rear="Surround"
Center="Center"
LFE="LFE"
Side=""
case "$1" in
"+"|"-")
if [ ! -z "$2" ]; then
DIFF=$2%
fi
amixer sset "$Front" $DIFF$1
amixer sset "$Rear" $DIFF$1
amixer sset "$Center" $DIFF$1
amixer sset "$LFE" $DIFF$1
amixer sset "$Side" $DIFF$1
;;
*)
if [ ! -z "$1" ]; then
amixer sset "$Front" $1%
amixer sset "$Rear" $1%
amixer sset "$Center" $1%
amixer sset "$LFE" $1%
amixer sset "$Side" $1%
fi
;;
esac
Файл обозвал ''mmix''. После чего его можно использовать так:
mmix +|- [шаг]
mmix [значение]
''+'' или ''-'' увеличивает или уменьшает громкость на указанный ''шаг''. Если ''шаг'' не указан его значение принимается 5%\\
Если параметром заданое только числовое ''значение'' громкость выставляется сразу в данную величину.
===== Источники =====
* [[http://www.asplinux.net/modules/newbb_plus/viewtopic.php?topic_id=2436&forum=26]]
* [[http://www.alsa-project.org/alsa-doc/index.php?vendor=vendor-Nvidia]]
* [[http://www.alsa-project.org/alsa-doc/doc-php/template.php?company=Nvidia&card=.&chip=nForce&module=intel8x0]]
* [[http://www.linux.kiev.ua/ru/forum/thread/26/42/143/?page=2]]
(c) Alexander 'hatred' Drozdov, Vladivostok 2007