Управление MIDI для аудиоплагинов

MIDI и плагины

Поверхности управления MIDI обычно используются в сочетании с аудиоплагинами в окружениях цифровых аудио рабочих станций (DAW). Синхронизация элементов управления MIDI с параметрами плагина обеспечивает ощутимый интерфейс для обработки аудио и является эффективным подходом к настройке параметров.

В MATLAB® окружение, аудиоплагины определены как любой допустимый класс, который происходит от audioPlugin базовый класс или audioPluginSource базовый класс. Для получения дополнительной информации о том, как аудиоплагины определены в среде MATLAB, смотрите Audio Plugins в MATLAB.

Используйте MIDI с плагинами MATLAB

Продукт Audio Toolbox™ обеспечивает три функции для обеспечения интерфейса между поверхностями управления MIDI и аудиоплагинами:

  • configureMIDI - Сконфигурируйте соединения MIDI между плагином и контроллером MIDI.

  • getMIDIConnections - Получите MIDI-соединения аудиоплагина.

  • disconnectMIDI -- Отсоедините элементы управления MIDI от аудиоплагина.

Эти функции объединяют способности общих функций MIDI в упрощенный и удобный интерфейс, подходящий для аудиоплагинов в MATLAB. Учебное руководство по общим функциям и протоколу MIDI смотрите в MIDI Control Surface Interface.

В этом руководстве вы узнаете о функциях MIDI для аудиоплагинов в MATLAB.

1. Подключите устройство MIDI и запустите MATLAB

Перед запуском MATLAB подключите поверхность управления MIDI к компьютеру и включите его. Инструкции по подключению см. в инструкциях для вашего MIDI-устройства. Если вы запустите MATLAB перед подключением устройства, MATLAB может не распознать ваше устройство при его подключении. Чтобы исправить проблему, перезапустите MATLAB с уже подключенным устройством.

2. Установление соединений MIDI

Использовать configureMIDI установить MIDI-соединения между устройством MIDI по умолчанию и аудиоплагином. Вы можете использовать configureMIDI программно, или можно открыть пользовательский интерфейс (UI), чтобы провести вас через процесс. configureMIDI UI читает с вашего аудиоплагина и заполняет выпадающий список настраиваемых свойств плагина. Затем появится запрос на перемещение отдельных элементов управления на поверхности управления MIDI, чтобы связать положение каждого элемента управления с нормированным значением каждого выбранного свойства. Для примера создайте объект audiopluginexample.PitchShifter а затем позвоните configureMIDI с объектом в качестве аргумента:

ctrlPitch = audiopluginexample.PitchShifter;
configureMIDI(ctrlPitch)

Откроется диалоговое окно Синхронизация с MIDI, в котором автоматически заполняются настраиваемые свойства плагина. Когда вы управляете MIDI-элементом управления, его идентификация вводится в Operate MIDI control to synchronize поле. После синхронизации настраиваемых свойств с элементами управления MIDI нажмите кнопку OK, чтобы завершить строение. Если ваша поверхность управления MIDI является двунаправленной, она автоматически смещает положение синхронизированных элементов управления к начальным значениям свойств, заданным вашим плагином.

Чтобы открыть функцию MATLAB с программным эквивалентом ваших действий в пользовательском интерфейсе, установите флажок Generate MATLAB Code. Сохранение этой функции позволяет вам повторно использовать настройки и быстро установить строение в будущих сеансах.

3. Настройка параметров плагина с помощью MIDI

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

Audio Toolbox предоставляет приложение для запуска и проверки аудиоплагина. Испытательный стенд имитирует взаимодействие DAW с плагинами.

Откройте Audio Test Bench для своего ctrlPitch объект.

audioTestBench(ctrlPitch)

Когда вы настраиваете элементы управления на поверхности MIDI, соответствующие ползунки параметров плагина перемещаются. Щелкните, чтобы запустить плагин. Переместите элементы управления на поверхности MIDI, чтобы услышать эффект настройки параметров плагина.

Чтобы установить соединения MIDI и изменить существующие таковые, нажмите кнопку «Синхронизировать с MIDI Controls», чтобы открыть configureMIDI UI.

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

fileReader = dsp.AudioFileReader(...
    'Filename','Counting-16-44p1-mono-15secs.wav');
deviceWriter = audioDeviceWriter;

% Audio stream loop
while ~isDone(fileReader)
    input = fileReader();
    output = ctrlPitch(input);
    deviceWriter(output);
    drawnow limitrate; % Process callback immediately
end

release(fileReader);
release(deviceWriter);

4. Получение текущих соединений MIDI

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

connectionInfo = getMIDIConnections(ctrlPitch)
connectionInfo = 

  struct with fields:

    PitchShift: [1×1 struct]
       Overlap: [1×1 struct]
connectionInfo.PitchShift
ans = 

  struct with fields:

            Law: 'int'
            Min: -12
            Max: 12
    MIDIControl: 'control 1081 on 'BCF2000''

5. Отсоедините поверхность MIDI

Как лучшая практика, отпустите внешние устройства, такие как поверхности управления MIDI, когда вы сделаны.

disconnectMIDI(ctrlPitch)

См. также

Приложения

Классы

Функции

Похожие темы

Внешние веб-сайты