В началоРуководство Gentoo Linux ALSA → Другие возможности ALSA
Gentoo-doc HOME Пред.: Настройка/тестирование ALSAВ началоУровень выше: Руководство Gentoo Linux ALSA

4. Другие возможности ALSA

4.1. Настройка поддержки MIDI

Сначала проверьте, что у вас включён USE-флаг midi в файле /etc/make.conf. Если вы до сих пор этого не сделали, то сделайте это сейчас. Помимо этого вам потребуется пересобрать все пакеты ALSA, использующие флаг midi: alsa-lib, alsa-utils и alsa-driver.

Если ваша карта имеет встроенный MIDI синтезатор и вы хотите слушать *.mid файлы, вам придётся установить пакет awesfx, содержащий основной набор программ для управления драйвером AWE32. Сначала вам надо установить его. Если у вас нет синтезатора, вы можете использовать виртуальный. Обратитесь к разделу виртуальные синтезаторы для дополнительной информации.

Листинг 20. Установка awesfx

# emerge awesfx


Примечание

Вам понадобится скопировать файлы банка звуков (SoundFont: SF2) с компакт-диска с драйверами для вашей звуковой карты или установленные в Windows в каталог /usr/share/sounds/sf2/. Например, файл банка звуков для карты Creative SBLive! может называться 8MBGMSFX.SF2.

После копирования файлов банка звуков мы сможем проигрывать midi-файлы. Также, для того чтобы банк звуков загружался каждый раз при загрузке системы, вы можете добавить команду asfxload в /etc/conf.d/local.start.

Примечание

Использованные ниже пути, начинающиеся с /mnt, не применимы для вашего компьютера. Они являются примерами. Пожалуйста, будьте осторожны при изменении путей на соответствующие вашей системе.

Листинг 21. Загрузка сэмплов

(Сначала копируем файл с банком звуков)
# cp /mnt/win2k/Program\ Files/CreativeSBLive2k/SFBank/8MBGMSFX.SF2 /usr/share/sounds/sf2/
(Или берём его с компакт-диска SoundBlaster)
# cp /mnt/cdrom/AUDIO/ENGLISH/SFBANK/8MBGMSFX.SF2 /usr/share/sounds/sf2/
(Загружаем определённый банк звуков)
# asfxload /usr/share/sounds/sf2/8MBGMSFX.SF2


Теперь вы можете проигрывать midi-файлы, используя программу, подобную aplaymidi. Запустите aplaymidi -l, чтобы получить список доступных портов, а затем задействуйте один из них для проигрывания файла.

Листинг 22. Проигрывание MIDI

(Проверка открытых портов)
# aplaymidi -l
 Port    Client name                      Port name
 64:0    EMU10K1 MPU-401 (UART)           EMU10K1 MPU-401 (UART)
 65:0    Emu10k1 WaveTable                Emu10k1 Port 0
 65:1    Emu10k1 WaveTable                Emu10k1 Port 1
 65:2    Emu10k1 WaveTable                Emu10k1 Port 2
 65:3    Emu10k1 WaveTable                Emu10k1 Port 3
(Выбираем порт и проигрываем mid-файл)
#  aplaymidi --port=65:0 /mnt/shyam/music/midi/mi2.mid


4.2. Виртуальные синтезаторы

Если у вашей карты отсутствует встроенный синтезатор, вы можете использовать виртуальный, например, timidity++. Установка происходит на одном дыхании.

Листинг 23. Установка timidity++

# emerge timidity++


Чтобы timidity воспроизводил звуки, ему нужен набор сэмплов (или банк звуков). К счастью, вместе с пакетом устанавливаются несколько банков звуков. Есть ещё несколько пакетов с банками звуков в Portage, например, timidity-freepats и timidity-eawpatches. Вы можете установить несколько банков звуков, а также можете разместить собственный банк звуков в каталог /usr/share/timidity/. Для переключения timidity между разными банками звуков используйте eselect.

Листинг 24. Изменение конфигураций

# eselect timidity list
# eselect timidity set eawpatches


Не забудьте добавить timidity в основной уровень исполнения.

Листинг 25. Добавление timidity в основной уровень исполнения

# rc-update add timidity default
# /etc/init.d/timidity start


Теперь вы можете попробовать проиграть MIDI файлы.

4.3. Утилиты и Firmware

Для некоторых звуковых карт могут быть полезны утилиты из пакетов alsa-tools и alsa-firmware. Вы можете установить любой из этих пакетов, просто запустив emerge.

Листинг 26. Установка утилит ALSA

# emerge alsa-tools


4.4. Несколько звуковых карт

Вы можете использовать больше одной звуковой карты, при условии что вы собрали ALSA как модули ядра (или из пакета alsa-driver). Сначала в файле /etc/modules.d/alsa вам следует лишь указать, какая из карт должна быть запущена первой. В этом файле карты идентифицируются по именам своих драйверов. 0 означает первую карту, 1 — вторую, и так далее. Вот пример для системы, в которой присутствуют две звуковые карты.

Листинг 27. Две карты в файле /etc/modules.d/alsa

options snd-emu10k1 index=0
options snd-via82xx index=1


Или если у вас две карты, использующие один и тот же драйвер, то их следует указать на одной строке, разделяя цифры запятой. Ниже приведён пример системы, в которой установлено три звуковые карты, две из которых являются картами Intel High Definition Audio.

Листинг 28. Несколько звуковых карт в /etc/modules.d/alsa

options snd-ymfpci index=0
options snd-hda-intel index=1,2


4.5. Модули расширения

Для расширения возможностей ALSA вы можете установить дополнительные расширения. Пакет alsa-plugins является собранием полезных модулей расширения, который включает: модуль вывода PulseAudio, конвертер частоты дискретизации, jack (аудио сервер с малым временем задержки) и кодек, позволяющий вам выводить шестиканальный звук через цифровой S/PDIF-вывод (оптический или коаксиальный). Вы можете выбрать те расширения, которые вы хотите установить, добавив соответствующие USE-флаги в /etc/portage/package.use.

Листинг 29. Установка alsa-plugins

# emerge -avt alsa-plugins


4.6. Огромное спасибо вам всем...

Всем, кто принимал участие в написании ранних версий руководства ALSA в Gentoo: Vincent Verleye, Grant Goodyear, Arcady Genkin, Jeremy Huddleston, John P. Davis, Sven Vermeulen, Benny Chuang, Tiemo Kieft и Erwin. А также Dr][aM за перевод ранней версии руководства на русский язык.

4.7. Ссылки

Пред.: Настройка/тестирование ALSAВ началоУровень выше: Руководство Gentoo Linux ALSA
В началоРуководство Gentoo Linux ALSA → Другие возможности ALSA