В начало → Руководство Gentoo Linux ALSA → Другие возможности ALSA |
Сначала проверьте, что у вас включён USE-флаг midi в файле /etc/make.conf. Если вы до сих пор этого не сделали, то сделайте это сейчас. Помимо этого вам потребуется пересобрать все пакеты ALSA, использующие флаг midi: alsa-lib, alsa-utils и alsa-driver.
Если ваша карта имеет встроенный MIDI синтезатор и вы хотите слушать *.mid файлы, вам придётся установить пакет awesfx, содержащий основной набор программ для управления драйвером AWE32. Сначала вам надо установить его. Если у вас нет синтезатора, вы можете использовать виртуальный. Обратитесь к разделу виртуальные синтезаторы для дополнительной информации.
Вам понадобится скопировать файлы банка звуков (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
Если у вашей карты отсутствует встроенный синтезатор, вы можете использовать виртуальный, например, timidity++. Установка происходит на одном дыхании.
Чтобы timidity воспроизводил звуки, ему нужен набор сэмплов (или банк звуков). К счастью, вместе с пакетом устанавливаются несколько банков звуков. Есть ещё несколько пакетов с банками звуков в Portage, например, timidity-freepats и timidity-eawpatches. Вы можете установить несколько банков звуков, а также можете разместить собственный банк звуков в каталог /usr/share/timidity/. Для переключения timidity между разными банками звуков используйте eselect.
Не забудьте добавить timidity в основной уровень исполнения.
Листинг 25. Добавление timidity в основной уровень исполнения
#
rc-update add timidity default
#
/etc/init.d/timidity start
Теперь вы можете попробовать проиграть MIDI файлы.
Для некоторых звуковых карт могут быть полезны утилиты из пакетов alsa-tools и alsa-firmware. Вы можете установить любой из этих пакетов, просто запустив emerge.
Вы можете использовать больше одной звуковой карты, при условии что вы собрали 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
Для расширения возможностей ALSA вы можете установить дополнительные расширения. Пакет alsa-plugins является собранием полезных модулей расширения, который включает: модуль вывода PulseAudio, конвертер частоты дискретизации,
jack (аудио сервер с малым временем задержки) и кодек, позволяющий вам выводить шестиканальный звук через цифровой S/PDIF-вывод
(оптический или коаксиальный). Вы можете выбрать те расширения, которые вы хотите установить, добавив соответствующие USE-флаги
в /etc/portage/package.use
.
Всем, кто принимал участие в написании ранних версий руководства ALSA в Gentoo: Vincent Verleye, Grant Goodyear, Arcady Genkin, Jeremy Huddleston, John P. Davis, Sven Vermeulen, Benny Chuang, Tiemo Kieft и Erwin. А также Dr][aM за перевод ранней версии руководства на русский язык.
В начало → Руководство Gentoo Linux ALSA → Другие возможности ALSA |