Этот пример показывает, как связаться между цифровой звуковой рабочей станцией (DAW) и MATLAB с помощью пользовательского дейтаграммного протокола (UDP). Информация, поделившаяся между DAW и MATLAB, может используемый, чтобы выполнить визуализацию в режиме реального времени в MATLAB на параметрах, которые изменяются в DAW.
UDP является базовым членом интернет-набора протоколов. Это - простая передача без установления соединения, которая не использует методов для проверки ошибок. Поскольку это не проверяет ошибки, UDP является быстрой, но ненадежной альтернативой протоколу управления передачей (TCP) и потоковому протоколу передачи управления (SCTP). UDP широко используется в приложениях, которые готовы обменять точность на высокоскоростную передачу, такую как организация видеоконференций и компьютерные игры в реальном времени. Если вы будете использовать UDP для коммуникации в одной машине, пакеты, менее вероятно, понизятся. Примеры, обрисованные в общих чертах здесь, работают лучше всего, когда выполняется над одной машиной.
Эти Системные объекты позволяют вам использовать UDP с MATLAB:
dsp.UDPReceiver
- Получите пакеты UDP от сети
dsp.UDPSender
- Отправьте пакеты UDP, чтобы объединиться в сеть
Чтобы связаться между DAW и MATLAB с помощью UDP, поместите отправителя UDP в плагин, используемый в DAW, и запустите соответствующий получатель UDP в MATLAB.
dsp.UDPSender
и Системные объекты dsp.UDPReceiver
используют предварительно созданные файлы библиотеки, которые включены с MATLAB.
Эти плагины Audio Toolbox™ в качестве примера используют UDP:
audiopluginexample.UDPSender
- Отправьте звуковой сигнал от DAW до сети. Если вы генерируете этот плагин и развертываете его на DAW, плагин передает кадры сигнала стерео к сети. Формат кадра определяется DAW. Можно изменить плагин в качестве примера, чтобы отправить любую информацию, которую вы хотите анализировать в MATLAB.
audiopluginexample.ParametricEqualizerWithUDP
- Отправьте коэффициенты фильтра плагина от DAW до сети. Если вы генерируете этот плагин и запускаете его в DAW, плагин отправляет коэффициенты параметрического эквалайзера, вы настраиваете DAW на сеть. Функция HelperUDPPluginVisualizer
содержит получатель UDP, который получает дейтаграмму и использует ее, чтобы построить ответ значения фильтра, вы настраиваете DAW.
Шаг 1: сгенерируйте плагин VST
Чтобы сгенерировать плагин VST от audiopluginexample.UDPSender
, используйте функцию generateAudioPlugin
. Это - лучшая практика переместиться в директорию, которая может сохранить сгенерированный плагин прежде, чем выполнить эту команду:
generateAudioPlugin audiopluginexample.UDPSender
Сгенерированный плагин сохранен в вашу текущую папку и назвал UDPSender
.
Шаг 2: открытый DAW с соответствующим набором переменных окружения
Чтобы запустить отправителя UDP за пределами MATLAB, необходимо открыть DAW от терминала команды с соответствующим набором переменных окружения. Установка переменных окружения позволяет развернутому отправителю UDP использовать необходимые файлы библиотеки в MATLAB. Чтобы изучить, как установить переменные окружения, см. пример, характерный для вашей системы:
После того, как вы устанавливаете переменные окружения, открываете ваш DAW от того же терминала команды, такой как в этом терминале в качестве примера от системы Windows.
Шаг 3: получите и обработайте звуковой сигнал
a. В DAW откройте сгенерированный файл UDPSender
.
b. В MATLAB, выполнение эта функция: HelperUDPPluginReceiver
Звуковой сигнал отображен на dsp.SpectrumAnalyzer
для анализа.
1. Следуйте шаги 1-2 от Отправляют Аудио от DAW до MATLAB, заменяя audiopluginexample.UDPSender
на audiopluginexample.ParametricEqualizerWithUDP
.
2. Получите и коэффициенты фильтра процесса
a. В DAW откройте сгенерированный файл ParameterEqualizerWithUDP
. Сменным именем отображения является ParametricEQ
.
b. В MATLAB, выполнение эта команда: HelperUDPPluginVisualizer
Функция HelperUDPPluginVisualizer
использует dsp. UDPReceiver, чтобы получить коэффициенты фильтра и затем отображает ответ значения в течение 60 секунд. Можно изменить код, чтобы расширить или уменьшать количество времени. Нанесенный на график ответ значения соответствует плагину параметрического эквалайзера, вы настраиваете DAW.