Меню ссылок

Функция ProcessMIDI

Функция ProcessMIDI() позволяет осуществлять периодические задачи (как правило, относящиеся к синхронизации). Это может быть использовано при работе со сценариями секвенсора, арпеджиатора или другого управляемого темпом MIDI-эффекта. Обычно ProcessMIDI не требуется для приложений, которые не пользуются музыкальной информацией синхронизации хостового приложения. Функция ProcessMIDI вызывается один раз на каждый «process block» («блок обработки»), определяемый хостовыми настройками (частотой дискретизации и буферным размером).

Эта функция часто применяется в комбинации с объектом JavaScript TimingInfo, чтобы использовать информацию синхронизации от хостового приложения. Использование объектов ProcessMIDI и TimingInfo показано в примере. Также см. раздел Использование объекта JavaScript TimingInfo.

Примечание: Для включения функции GetTimingInfo необходимо добавить NeedsTimingInfo = true; на глобальном уровне сценария (вне какой-либо функции).

Пример кода

// Определить NeedsTimingInfo как «истину» глобально для включения GetHostInfo ()

NeedsTimingInfo = true;

function ProcessMIDI() {

var info = GetTimingInfo();       // получить объект TimingInfo от хостового приложения

if (info.playing) {                       // если запущены транспортные функции

Trace(info.tempo);                    // выводить значение темпа в консоли плагина

}

}

Copyright © 2013 Apple Inc. All rights reserved.
Copyright © 2013 Алексей Алимкин (перевод).

< Назад                    Глава 9. MIDI-плагины | Scripter                    Вперед >

Site www.logicprox.ru is an Independent Information site. The site is not affiliated with Apple Inc. and other companies. All trademarks, product names, and company names and logos appearing on this web site are the property of their respective owners. Site www.logicprox.ru makes no guarantees regarding any of the advice offered on this web site or by its staff or users.