Re: MIDI
On Mon, Jan 06, 2003 at 05:26:35PM +0300, Sergey A. Sholokhov wrote:
> А как под дебиан/или вообще под линукс midi настроить,
> Звук SBLive! дрова с opensource.creative.com, стоят в /usr/local/
> ядро 2.4.18 почти оригинальное тока DMA по дефолту установлен
> и unix.o в ядре а не в модулях вот.
Для того, чтобы проигрывать MIDI-файлы необходимо либо применить
программный синтезатор TiMidity++, либо воспользоваться возможностями
самой карты по синтезу звука. Потребуется установить пакет awesfx
(потребуются программы sfxload и gusload из этого пакета,
в дистрибутиве Debian эти программы находится в пакете awe-drv,
причем часть утилит устанавливается в каталог /usr/lib/awe/).
Исходные тексты этих утилит, равно как и проигрыватель MIDI drvmidi,
входят в комплект драйверов для звуковых карт AWE32, разработанных
Takashi Iwai. Драйверы для AWE можно найти на странице Creative:
http://opensource.creative.com/. Страницу Takashi Iwai, посвященную AWE,
можно найти по адресу http://members.tripod.de/iwai/awedrv.html).
Для проигрывания MIDI надо загрузить ``звуковой шрифт'' (библиотеку) в
оперативную память. Данная карта не имеет втроенного запоминающего
устройства с библиотекой сэмплов, поэтому требуется их загрузка перед
использованием синтезатора. Для использования программы sfxload нужен файл
``звукового шрифта'' SF2 (или SBK). Загружаем библиотеку:
sfxload <файл.sf2>
По умолчанию библиотека загружается с уровнем звука 70%, поэтому звук
может быть тише, чем при прослушивании PCM. Опциея -V позволяет изменить
уровень звука при загрузке библиотеки. Например,
sfx -V100 2mbgmgs.sf2
загрузит со стопроцентной громкостью файл 2mbgmgs.sf2.
Информация о загруженных библиотеках доступна через файл
/proc/asound/CARD_0/wavetableD1, а о MIDI-устройствах и синтезаторе ---
в /proc/asound/seq/oss (предполагая использование драйверов ALSA).
Количество оставшейся свободной памяти можно получить командой
sfxload -M
С помощью программы gusload можно загружать патчи для GravisUltrasound.
gusload [-b <номер>] [-p <номер>] <файл.pat>
Опция -b указывает номер банка (по умолчанию 0), а опция -p --- номер
инструмента (по умолчанию берется из файла).
Загрузив ``звуковой шрифт'' можно прослушивать MIDI-файлы, например,
используя программу playmidi ().
playmidi -e <файл.mid>
Можно также использовать xplaymidi --- версию для X Window.
Для ALSA существует проигрыватель MIDI pmidi (). Вначале следует
запустить pmidi -l, чтобы получить список доступных устройств:
---------------------Cut here------------------------
Port Client name Port name
64:0 External MIDI 0 MIDI 0-0
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
---------------------Cut here------------------------
Теперь можно проигрывать файл, указав pmidi, с каким портом работать:
pmidi -p 65:0 <файл.mid>
В пакете awe-midi можно найти проигрыватель MIDI, написанный специально
для работы с картами AWE
drvmidi <файл.mid>
К этой программе существует графический интерфейс tkmidi, написанный на
Tcl/Tk.
Однако если модуль звукового драйвера будет выгружен из памяти, то
вместе с ним будет выгружена и библиотека. Придется загружать ее повторно
вручную. Для автоматической загрузки библиотеки сэмплов можно применить
следующий прием:
добавить в файл /etc/modules.conf запись
---------------------Cut here------------------------
post_install snd-seq /usr/bin/sfxload <файл.sf2>
---------------------Cut here------------------------
Теперь после загрузки этого модуля будет подгружаться библиотека.
Библиотеки ``звуковых шрифтов'' SF2 можно найти здесь:
ftp://ftp.lysator.liu.se/pub/awe32.
TiMidity++ также можно прикрутить к ALSA и использовать вместо
синтезатора звуковой карты.
--
Andrey V. Kiselev
Scientific Research Center for Ecological Safety Russian Academy of Sciences
Office phone: +7 812 2307834 ICQ UIN 26871517
Reply to:
- Follow-Ups:
- Re: MIDI
- From: "Sergey A. Sholokhov" <hun7er@sutd.ru>
- References:
- MIDI
- From: "Sergey A. Sholokhov" <hun7er@sutd.ru>