主要内容

LoadAudioplugin.

加载VST, VST3和AU插件马铃薯草环境

描述

例子

hostedplugin.= loadAudioPlugin (pluginpath.负载指定的64位VST,VST3或AU音频插件pluginpath..在Windows上®,您可以加载VST和VST3插件。在苹果系统,您可以加载AU,VST和VST3插件。

你的托管插件有两种显示模式:参数属性.默认显示方式为属性

  • 参数使用set和get函数与托管插件的规范化参数值进行交互。

  • 属性- 与具有真实世界的值的启发式解释参数互动。您可以使用标准点表示法来设置并在使用此模式时获取值。

你可以使用标准的点符号来指定托管插件的显示模式,例如:

hostedplugin.displayMode =.'参数'

看到主机外部音频插件来讨论显示模式和两种交互模式。

您可以使用以下函数与托管插件进行交互和练习。

处理音频

  • audioOut =过程(hostedPlugin audioIn)

    返回一个音频信号处理根据算法和参数托管插件。对于源插件,调用过程没有音频输入。

设置和获取规范化参数值

  • 值=GetParameter.(hostedplugin,参数)

    返回指定托管插件参数的归一化值。归一化值在范围内[0,1]。您可以通过其名称或其索引指定参数。要指定名称,请使用字符向量。

  • SetParameter.(hostedplugin,参数,newvalue)

    将指定的托管插件参数的规范化值设置为newValue.归一化值在范围内[0,1]。

获取有关托管插件的高级信息

  • dispParameter(hostedPlugin)

    显示托管插件的所有参数和关联的索引、值、显示值和显示标签。

  • pluginInfo =信息(hostedPlugin)

    返回包含有关托管插件的信息的结构。

设置插件运行的环境

  • frameSize =getsauplesperframe.(hostedPlugin)

    返回宿主插件在后续调用其处理函数时返回的帧大小(仅限源插件)。

  • SeteAmplesPerframe.(hostedPlugin frameSize)

    设置宿主插件在后续调用其处理函数时必须返回的帧大小(仅限源插件)。

  • 筛选(hostedPlugin sampleRate)

    设置托管插件的采样率。

  • sampleRate =getsapprode.(hostedPlugin)

    返回正在运行插件的Hz中的采样率。

例子

全部收缩

使用LoadAudioplugin.在MATLAB®中托管一个VST外部插件和一个VST外部源插件。

使用fullfile.命令来确定音频工具箱™中包含的振荡器VST插件和参数均衡器VST插件的完整路径。如果你使用的是Mac电脑,请更换.dll.文件扩展名与.vst

oscPluginPath =...fullfile (matlabroot'工具箱/音频/样本/振荡器.dll');eqpluginpath =....fullfile (matlabroot'工具箱/音频/样本/ parametricequalizer.dll');

通过调用来创建外部插件对象LoadAudioplugin.对于每个插件路径。

hostedSourcePlugin = loadAudioPlugin (oscPluginPath);hostedPlugin = loadAudioPlugin (EQPluginPath);

托管插件从中导出externalAudioPlugin或者ExternalAuduousourcePlugin.类。因为振荡器是源音频插件,托管对象派生ExternalAuduousourcePlugin..使用类()来验证托管插件的类。

类(hostedPlugin)
ans ='sericalaudioplugin'
类(hostedSourcePlugin)
ans ='serialaudiopluginsource'

调用托管插件以显示有关它们的基本信息。此信息包括格式,插件名称,插入渠道的数量,以及插件的可调性属性。源插件还显示插件的帧大小。

hostedsourceplugin.
hostdsourceplugin = VST插件'振荡器'源,1 out, 256个样本频率:100 Hz振幅:1 AU DCOffset: 0 AU
hostedplugin.
hostdplugin = VST plugin ' parametereq ' 2 in, 2 out LowPeakGain: 0 dB LowCenterFrequency: 100 Hz LowQFactor: 2 MediumPeakGain: 0 dB MediumCenterFrequency: 1000 Hz MediumQFactor: 2 HighPeakGain: 0 dB HighCenterFrequency: 10000 Hz HighQFactor: 2

通过指定完整路径将VST音频插件加载到Matlab™中。如果你使用的是Mac电脑,请更换.dll.文件扩展名与.vst

pluginPath = fullfile (matlabroot,'工具箱'“音频”“样本”“ParametricEqualizer.dll”);hostedPlugin = loadAudioPlugin (pluginPath);

为音频流循环创建输入和输出对象,该循环从文件读取并写入音频设备。将托管插件的采样率设置为插件的输入的采样率。

filereader = dsp.audiofilereader(“FunkyDrums-44p1-stereo-25secs.mp3”);deviceWriter = audioDeviceWriter (“SampleRate”,filereader.samplerate);SetterAveplere(hostedplugin,filereader.samplevere);

设置中等昭销属性为- 20db。

hostedplugin.mediumpeakgain = -20;

使用托管插件在音频流循环中处理音频文件。在环路中向上扫描中等峰值增益以听到效果。

尽管hostedplugin.mediumpeakgain <19 hostedplugin.mediumpeakgain = hostedplugin.mediumpeakgain + 0.04;x = filereader();y =过程(hostedplugin,x);devicewriter(y);结束发布(fileReader)发布(deviceWriter)

通过指定完整路径将VST音频源插件加载到Matlab™中。如果你使用的是Mac电脑,请更换.dll.文件扩展名与.vst

pluginPath = fullfile (matlabroot,'工具箱'“音频”“样本”“oscillator.dll”);hostedsourceplugin = loadaudioplugin(pluginpath);

设置振幅财产为0.5。设置频率财产到16千赫。

hostedsourceplugin.amplitude = 0.5;hostedsourceplugin.frequency = 16000;

设置运行插件的采样率。创建一个输出对象以写入音频设备。

Setterapperge(HostedSourceplugin,44100);deviceWriter = audioDeviceWriter (“SampleRate”, 44100);

使用托管源插件输出音频流。音频流循环中的处理将频率参数先降后升。

k = 1;i = 1:1000 hostedsourceplugin.frequency = hostedsourceplugin.frequency  -  30 * k;y =进程(hostedsourceplugin);devicewriter(y);如果(hostedsourceplugin.frequency  -  30 <= 0.1)||(hostedsourceplugin.frquency + 30> = 20e3)k = -1 * k;结束结束释放(DeviceWriter)

输入参数

全部收缩

外部插件的位置,指定为字符向量。使用完整路径指定要在MATLAB中托管的音频插件®.如果插件位于当前文件夹中,请通过其名称指定它。

例子:loadAudioPlugin(“coolPlugin.dll”)

例子:loadAudioPlugin(“C: \ Program Files \ VSTPlugins \ coolPlugin.dll”)

插件路径苹果电脑

苹果系统,插件的位置是预先确定的,这取决于插件是在系统范围内保存还是为特定用户保存。

该表显示了系统范围的路径。

插件类型 路径
VST2

/图书馆/音频/插件/威仕特/ coolPlugin.vst

VST3

/图书馆/音频/插件/ VST3 / coolPlugin.vst3

非盟

/library/audio/plug-ins/components/coolplugin.component.

此表显示了特定于用户的路径。

插件类型 路径
VST2

~ /图书馆/音频/插件/威仕特/ coolPlugin.vst

VST3

~ /图书馆/音频/插件/ VST3 / coolPlugin.vst3

非盟

~ /图书馆/音频/插件/组件/ coolPlugin.component

输出参数

全部收缩

对象派生的外部插件的externalAudioPlugin或者ExternalAuduousourcePlugin.类。您可以像DAW一样与托管插件交互,并使用MATLAB环境的附加功能。

限制

LoadAudioplugin.函数仅支持64位插金宝app件。您无法使用32位插件使用LoadAudioplugin.函数。

介绍了R2016b