barbitoff programmer`s blog

Здесь я публикую заметки из программерской жизни: грабли, на которые мне случилось наступить, проблемы, для которых было найдено элегантное (или не очень) решение, а также все, с чем мне пришлось столкнуться и чем хотелось бы поделиться =)
PS Если хотите меня поблагодарить - на странице есть 3 места, чтобы это сделать =)
Показаны сообщения с ярлыком CME M-key. Показать все сообщения
Показаны сообщения с ярлыком CME M-key. Показать все сообщения

пятница, 24 июня 2011 г.

Подключение midi-клавиатуры в Linux

Ниже описан процесс подключения midi-клавиатуры CME M-key в Ubuntu 10.10.
CME M-key - пожалуй самая простая види-клавиатура с интерфейсом USB. В Linux работает без каких-либо доп. драйверов, требуется лишь программный синтезатор и звуковой сервер. В качестве первого я выбрал Qsynth (являющийся графической оболочкой для fluidsynth), а в качестве второго - Jack Server (не сказал бы что это хоть сколько-нибудь осознанный выбор, просто это было первое, что я нашел по запросу "midi", и к тому же увидел в интернете в паре инструкций по настройке midi в линухе). Все приложения ставятся через менеджер пакетов Synaptic (я установил fluidsynth и ещё один синтезатор muse, вместе с которым сразу установился Jack вместе с устилитой Jack Audio Control). Итак, сам процесс настройки (логика настройки простая: настроить сервер, настроить синтезатор, с помощью сервера соединить midi-клавиатуру и синтезатор):
1) Запускаем Jack Audio Control (Приложения - Аудио и видео - Jack Control)
2) Нажимаем в открывшемся окне "Параметры", в нём единственное что я поменял - установил в "Драйвер MIDI" - raw:
3) Запускаем Qsynth (не закрывая окна Jack Control), он расположен там же (Приложения - Аудио и видео).
4) Слева нажимаем "Настройки", на вкладке "Звук" я установил размер буфера - 512:
5)  Теперь необходимо перейти на вкладку "Файлы SF2" и добавить банк инструментов. Их можно найти в интернете, или добавить стандартный банк (он лежит прямо в папке, которая открывается по-умолчанию при нажатии на кнопку "Открыть" (я добавил стандартный банк, там достаточно много инструментов). Жмем ОК для сохранения изменений.
6)  Теперь можно запускать jack-cервер, чтобы соединить midi-клавиатуру и Qsynth. Для этого в окне Jack Control нажимаем "Запустить".
7) Соединяем Qsynth и midi клавиатуру. В окне  Jack Control нажимаем "Соединить", в открывшемся окне устанавливаем все, как показано на рисунке (установлено методом нучного тыка):
8) Все, соединение установлено, теперь, при нажатии клавиш на клавиатуре должна моргать зеленая лампочка в левом нижнем углу  Qsynth. Остается только выбрать банк: жмем "Каналы", там после двойного клика на канале 1  выбираем банк (если список пустой - значит Вы не добавили банк SF2, см. п.5).
9) Теперь должно работать)
ЗЫ За основу взята инструкция http://hardsofter.blogspot.com/2010/02/midi-linux.html.