Підручники/MIDI у Linux
Синтезатор MIDI перетворює події MIDI у звук. Синтезатором може бути зовнішній апаратний пристрій або пристрій, вбудований до звукової картки. Крім того, синтезатором може бути і певне програмне забезпечення, тобто певна програма.
Існують файли MIDI (назви таких файлів закінчуються суфіксом .MID), у яких містяться дані у форматі MIDI. Якщо коротко окреслити ситуацію у термінах кулінарії, прослуховування музики з компакт-дисків подібне до харчування у ресторані, а прослуховування MP3 — у простій їдальні швидкого приготування. Файл MIDI у цьому сенсі подібний до рецепта: вам слід придбати відповідні складові та скористатися кухонним приладдям. Замість плити, каструль та сковорідок ви користуєтеся синтезаторами MIDI. Подібно до будь-якого знавця і користувача Linux, можливо, ви захочете змінити рецепт і складові. І це можна зробити! У KMid ви можете відкрити вікно каналів і перемкнути інструмент з піаніно на гітару або будь-який інший інструмент.
Зовнішні синтезатори MIDI
Зовнішні синтезатори — це інструменти, які може бути з’єднано з комп’ютером або іншими інструментами за допомогою MIDI-кабелів. Щоб подібне з’єднання було можливим, на вашому комп’ютері має бути передбачено інтерфейс MIDI. Таким інтерфейсом може бути звукова картка з гніздом для кабеля MIDI або USB-адаптор, що підтримується ALSA за допомогою відповідного модуля ядра. Ним можуть бути навіть MIDI-інструменти, які можна з’єднати безпосередньо з комп’ютером за допомогою USB. Яким би не був це інтерфейс, вам слід переконатися, що відповідна модель інтерфейсу MIDI підтримується ALSA за такою адресою.
Якщо коротко, вам потрібні:
- MIDI-інтерфейс
- Драйвер ALSA для MIDI-інтерфейсу
- MIDI-кабелі
Апаратний синтезатор звукової картки
У частині звукових карток, зокрема звукових картках, вироблених Creative Labs (SB AWE, Sound Blaster Live! і Audigy), передбачено синтезатор MIDI, який працює на основі таблиці хвиль — звукових зразків. Ці зразки завантажуються до звукової картки до використання програмного забезпечення для роботи з MIDI, в основному під час завантаження системи. Якщо ви є власником чи власницею такої картки:
- Окрім ALSA, встановіть пакунок програмного забезпечення awesfx. У цьому пакунку містяться програми для завантаження звукових зразків, скрипти ALSA та правила udev для автоматичного завантаження зразків під час завантаження системи.
- Встановіть файли SoundFont, які надано виробником картки, або інші файли SF2 до /usr/share/sounds/sf2.
- Внесіть зміни до файла налаштувань /etc/sysconfig/sound. Вкажіть для параметра назву одного або декількох файлів SF2, які має бути завантажено під час завантаження системи. Назви файлів та їх адреси можуть бути різними у різних дистрибутивах. Наведені нижче настанови стосуються openSUSE.
Крім того, файли SoundFont може бути завантажено вручну. Щоб дізнатися більше, ознайомтеся зі сторінкою довідника (man) програми asfxload.
Програмні синтезатори
Класичним програмним синтезатором у Linux є TiMidity++, але останній випуск цього програмного продукту датовано 2004 роком. Для роботи пакунка потрібні звукові зразки у форматі GUS або SF2. У пакунку передбачено власну програму відтворення, але якщо ви бажаєте скористатися нею з іншої сумісної з синтезатором ALSA програми, вам слід вказати параметр "-iA", наприклад, так:
timidity -iA
Іншим програмним синтезатором з сучасним модульним дизайном і активними розробниками є FluidSynth. Цей синтезатор використовує зразки у форматі SF2. Передбачено графічний інтерфейс, який називається QSynth. Крім того, запустити синтезатор можна за допомогою командного рядка:
fluidsynth -a alsa /usr/share/sound/sf2/soundfont.sf2
або:
fluidsynth -a pulseaudio /usr/share/sound/sf2/soundfont.sf2
Графічне налаштування QSynth дуже просте. Приклади у картинках можна знайти тут.
Файли SoundFont
Ці файли є рибою, м’ясом та овочами у вашому рецепті MIDI. Ось декілька корисних посилань.
- Збірки файлів SoundFont: http://www.hammersound.net
- General User GS, автор — S.Christian Collins.
- Пакунок зі сховищ packman для openSUSE.
- FluidR3. Великий, дуже якісний набір SoundFont.
- Пакунок для openSUSE від Jan Engelhardt.
- Крім того, пакунок для Debian.