Основы записи музыки в системах UbuntuStudio и Ubuntu 7.04
МАТЕРИАЛ ДЛЯ НОВИЧКОВ В ЭТОМ ДЕЛЕ!

Слугин Владимир

Предисловие (в принципе можно не читать)

До недавнего времени меня сильно интересовал вопрос о создании музыки в системах Linux, но все попытки что-либо написать в них кончались крахом. Оказалось что у меня просто мало информации про основы звукозаписи в linux.

С помощью товарищей gumanoed-a и aceler-a была добыта нужная информация и проделаны необходимые эксперименты, на основании которых я приобрел некоторый опыт, которым хотел бы поделится в данной статье...

Когда я начал изучать возможности linux в плане создания музыки, мне не хватало статейки из разряда "для особо одаренных... среди чайников :)", в которой было бы подробно рассказано что к чему. Такой статьи мне под руку не попадалось, поэтому я решил написать её сам. Так как большинство людей пишут музыку в windows - излагаться все будет в сравнении с оной системой.

Отличия Ubuntu 7.04 от Ubuntustudio

Какие приложения нужны и какие пакеты отвечают за их правильную работу!

Я при работе в windows использовал формат семплов SF2, поэтому естественно мне захотелось работать с ними и в этой ОС - это реально. Если просто есть желание поиграть без записи, просто на клавиатуре (о них ниже) - то нужно поставить приложение Qsynth. Пакет называется так же как и приложение.

Установка:
aptitude install qsynth

Но это приложение функционирует под управлением звукового сервера jack. Сервер позволяет соединить миди-порт мидиклавиатуры с миди-портом синтезатора Qsynth и выходной звуковой порт этого синтезатора со входным звуковым портом звуковой системы ALSA, надстройкой над которой является сервер jack.

И вот мы добрались до самой главной части всей системы - музыкального сервера jack. Это программа, представляющая пользователю удобный графический интерфейс, в котором он может следить за подключением миди и аудио портов. Управление аудио и управление миди выполнены на разных вкладках. Для установки сервера (в системе Ubuntu!, т.к. в ubuntustudio он уже установлен) нужно выполнить

aptitude install jack
aptitude install qjackctl

Осталась последняя базовая вещь, без которой собственно запись и редактирование невозможны - сексенсор

Мне достаточно хорошо известны два секвенсора - RoseGarden и Museоба в принципе ничего, но Muse мне более симпатичен. Уж больно он напоминает Cakewelk Pro Audio 9.0 Плюсами Muse является наличие встроенных в него синтезаторов, освобождающих пользователя от перетыкивания портов вручную в интерфейсе управления сервером jack - qjackctl. Аналог того же Qsynth встроен в Muse и носит название fluidsynth. Есть еще fluid, но при его использовании возникает проблема с сохранением проекта - после открытия проекта он не видит SF2 банков, которые ему были указаны. Есть мнение, что это из-за не оптимизации Muse под оболочку Gnome.

ВЫШЕ ЭТОЙ СТРОЧКИ БЫЛ ОПИСАН МИНИМУМ ПРОГРАММ, КОТОРЫЙ НУЖЕН ДЛЯ ТОГО ЧТОБЫ НАЧАТЬ ТВОРИТЬ НЕЧТО, ПОХОЖЕЕ НА МУЗЫКУ В LINUX :)

Итак идем далее - программы, функции которых более или менее изучены мной и, на мой взгляд, могут пригодиться:

Это весь перечень программ, который удалось вспомнить... Но думаю, для первого знакомства и так слишком много непонятных слов. На самом деле все просто :-)

Отдельно про миди-клавиатуры

Честно говоря, когда начинал изучать весь этот софт, боялся, что будут проблемы с миди-контроллером, что нужно будет как нибудь хитро настраивать сий инстрУмент. Оказалось все намного проще. Game-порты компьютера итак видны для программы qjackctl(это интерфейс, позволяющий работать с сервером jack), а контроллеры, подключаемые по USB видны как миди-порты ввода уже через несколько секунд после первого подключения.

Первый музыкальный проект в ubuntustudio

Итак, создаем новый проект в ubuntustudio или ubuntu 7.04 с использованием семплеров SF2

ВАЖНО! Работа а ubuntustudio или ubuntu 7.04 отличается лишь тем, что в ubuntu 7.04 все приложения, о которых пойдет речь ниже, нужно запускать из кансолей. Для этого удобнее всего открыть несколько вкладок в терминале - для 7каждой программы отдельно, в каждой из вкладок нужно зайти под рутом, то есть

$ sudo su 
#

Ниже будет описан порядок запуска, а в квадратных скобках будет описан альтернативный вид запуска приложения, который свойственен системе ubuntu 7.04

1. ЗАПУСКАЕМ JACK-СЕРВЕР

 Приложения - Аудио и видео - JACK Control, в появившемся окне жмем Setup

Далее приемлемы следующие параметры:
Server Path: jackd
Driver: alsa
Realtime=enable; Priority:0
Frames/Period:512
Soft Mode=enable; Periods/Buffer:2
Остальные параметры=disable(это значит не выбраны)
Dither: None
Audio: Duplex
Input и Output device выбираются исходя из параметров звуковой карты, обычно это интерфейс hw:0,0...,
но тут можно поиграться с выбором. Все остальные параметры должны иметь значение 0.
Можно сохранить эти параметры, чтоб не забыть
[Приложения - Стандартные - Терминал, в окне терминала набираем 
lamaster@MusicWorkstation:~$ sudo su
root@MusicWorkstation:/home/lamaster#
root@MusicWorkstation:/home/lamaster# qjackctl
далее запускается Jack Control, действия с которым описаны выше ]

ИТАК, ЗАПУЩЕН ЗВУКОВОЙ СЕРВЕР JACK Если нажать кнопку Connect, то на вкладке Audio мы увидим входные и выходные порты alsa_pcm, а на вкладке Midi, среди прочих миди интерфейсов мы видим подключенную мидиклавиатуру (если Вы её конечно подключили), кстати если последней по каким-либо причинам не имеется, то можно воспользоваться виртуальной клавиатурой - это приложение vkeybd(выше я о нем упоминал) и играть на клавиатуре компьютерной :-)

В процессе запуска различных секвенсоров, синтезаторов и т.д. среди аудио и миди портов будут появляться дополнительные соответствующие порты запущенных программ. В принципе их можно соединять между собой мышкой, но, как правило это делается на уровне секвенсора автоматически или при помощи пользователя.

2. ЗАПУСКАЕМ СЕКВЕНСОР MUSE

Приложения - Аудио и видео - MusE
[Так как терминал, в котором запущен сервер, занят его закрытие приведет к падению сервера, поэтому создадим новую   
вкладку в терминале и запустим оттуда секвенсор MusE. Не забудем это сделать из-под рута.
lamaster@MusicWorkstation:~$ sudo su
root@MusicWorkstation:/home/lamaster#
root@MusicWorkstation:/home/lamaster# muse

3. ЗАПУСКАЕМ В СЕКВЕНСОРЕ СЕМПЛЕР, ПРОИГРЫВАЮЩИЙ SF2 БАНКИ И ПАТЧИ И ПОДКЛЮЧАЕМ МИДИ-КЛАВИАТУРУ

После запуска Mus-а работаем в нем не обращая внимания на сервер JACK(естественно предварительно он должен быть запущен)

Настройки - MIDI-порты/Прогр. синтезаторы, появится окно "Настройка программного синтезатора".
В нем в низу выбираем fluidsynth и жмем кнопку "Добавить ипостась", в правом нижнем окне "Ипостаси"
появится ипостась под именем fluidsynth-0.
Сверху в окне "MIDI-соединения" на полюбившийся МИДИ-порт вешаем добавленную ипостась (тык на "Имя
устройства"),чтобы вызвать интерфейс синтезатора - щелкаем на белый кружочек соответствующего порта с надписью GUI.
В появившемся интерфейсе загружаем полюбившиеся в виндовсе sf2 инструменты и разбрасываем их по каналам, номера
которых впоследствии можно будет присвоить миди-трекам, которые соответственно заиграют определенными каналами
инструментами. После распределения инструментов по каналам, а синтезаторов по МИДИ-портам окна с их настройками
можно закрыть (ну или переместить на какой-либо из рабочих столов)...

Переходим в основное окно секвенсора для работы с миди-треками.

- ПКМ - Добавить МИДИ-дорожку
- слева выбираем МИДИ-порт, на который только что повесили синтезатор.
-чуть ниже вибираем выходной канал для МИДИ-трека - это один из 16 каналов семплера fluidsynth (который висит на
первом МИДИ-порту), на которые можно распределить все 16 инструментов исходя из собственных вкусов. Причем!
Все равно на какой канал ставить ударные.

Допустим мы добавили две миди-дорожки, тогда вых. канал 1-ой дорожки будет - 1, а второй - 2, подразумевая, что на 1 и 2 выходных каналах синтезатора(семплера) есть инструменты, которыми можно играть. И так далее... Если мало 16 каналов - никто не мешает добавить новую ипостась и получить ещё 16 каналов уже на другом МИДИ-порту, например на втором.

Ещё немаловажно - не забудьте подключить миди-контроллер (хоть железный, хоть виртуальный). Это делается так же:

Настройки - MIDI-порты/Прогр. синтезаторы, появится окно "Настройка программного синтезатора", здесь тыком в "Имя  
устройства" на свободном МИДИ-порту (я обычно выбираю 16 порт) выбираем имя миди контроллера, или MPU-401 (если
миди-устройство подключено посредством game-порта). Готово, можно начинать запись.

4. ЗАПИСЬ И СОХРАНЕНИЕ МАТЕРИАЛА

Закрываем или перетаскиваем на другие рабочие столы ненужные окна, оставляем лишь главное окно Mus-а :-) Сейчас начнется самое интересное.

- Жмем красный кружочек на треке, на который будет производиться запись, слева на панели сразу под надписью "Инфо о  
канале" тыком мыша выбирается конкретный патч из банка, загруженного на номер миди-канала в синтезаторе (семплере)
- Жмем кнопку записи, затем кнопку плэй - запись начата
- Кнопка стоп - запись завершена
- Далее аналогично полюбившимся программам windows и mac

Можно также вынести панель транспорта, тут она называется "Панель пульта управления", вызывается клавишей F11

Метроном настраивается в: Настройка - Метроном

- Чтобы сохранить файл проекта нужно сохранить его с расширением med через меню Файл
- Чтобы сохранить в формат wav нужно поставить метки по тактам (причем левая метка ставится нажатым скроллом мыша,
а правая - нажатой ПКМ), звук которых должен входить в конечный waw файл, затем перейти в меню "Звук" и "Свести в
файл" указав путь для сохранения...

СОХРАНЕНИЕ МАТЕРИАЛА В ФОТМАТ WAV, К СОЖАЛЕНИЮ, ИДЕТ В РЕАЛЬНОМ ВРЕМЕНИ :(