Audio Toolbox™支万博1manbetx持几种开发音频处理算法的方法。两种常见的方法包括使用MATLAB的过程编程®使用MATLAB类的脚本和面向对象编程。Audio Plugin类是建议的范例,用于在音频工具箱中开发音频处理算法。看音频插件在MATLAB有关音频插件的结构、好处和使用的教程。
本教程介绍了作为MATLAB脚本开发的现有算法,然后通过步骤将脚本转换为音频插件类。使用本教程可以理解过程式编程和面向对象编程之间的关系。您还可以使用本教程作为模板,将您开发的任何音频处理MATLAB脚本转换为音频插件范例。
MATLAB脚本有这些部分:
变量初始化。变量初始化为已知值,包括每帧的样本数(框架化
)对于基于帧的流处理。
对象建设。
两个audioOscillator
系统对象——构造以创建时变增益控制信号。
dsp。AudioFileReader
系统对象 - 从文件读取音频信号的构造。
audiodevicewriter.
系统对象 - 构造将音频信号写入默认音频设备。
音频流循环。将立体声通道混合到单声道信号中。单声道信号用于创建新的立体声信号。新立体声信号的每个通道在0和2之间的施加增益中振荡,具有相应的90度相移。
本教程将MATLAB脚本转换为六个步骤中的音频插件类。首先通过创建基本音频插件类的骨架,然后将Matlab脚本的部分映射到音频插件类。
对于如何将MATLAB脚本转换为插件类的概述,请检查脚本到插件的可视化映射。要执行此转换,请通过示例进行解释和逐步说明。
从音频插件类的基本骨架开始。此骨架不是必需的最低要求,而是创建有趣的音频插件的共同最小值。看音频插件在MATLAB有关创建基本音频插件的最低要求。
属性允许插件跨插件类定义的部分存储信息。如果属性的访问设置为private,则插件的最终用户无法访问该属性。脚本中的变量初始化映射到插件属性。
有效插件必须允许输入到过程
方法以获得可变的帧大小。属性中的每个输入帧都确定帧大小过程
方法的插件。因为帧大小仅用于过程
方法,您不会在“属性”部分中声明。
有效的音频插件必须允许输入过程
方法具有可变采样率。的重启
当环境改变采样率时调用插件的方法。确定样品率重启
方法使用getsampleate.
继承的方法audioPlugin
基类。
插件使用的对象必须声明为要在插件的多个部分中使用的属性。然而,插件的构造函数方法执行对象构造。
将构造函数方法添加到音频插件的方法部分。插件的构造方法方法具有以下形式:
功能plugin = mypluginclassname.%构造插件对象的指令。结尾
在本例中,构造正弦
和余弦
对象在插件的构造函数方法中。
的重启
方法在每次使用插件启动新的会话时调用,或者当环境改变采样率时调用。使用重启
更新方法SampleRate
你的财产正弦
和余弦
对象。如果需要查询采样率,请使用getsampleate.
基类的方法。
脚本中音频流循环的内容映射到过程
一个音频插件的方法,有这些区别:
一个有效的音频插件必须接受一个可变的帧大小,因此帧大小为每次调用计算过程
方法。由于帧大小是可变的,任何依赖于帧大小的处理必须在输入帧大小改变时更新。
环境处理输入和输出到过程
方法。
插件界面允许用户查看插件并调整其属性。指定PluginInterface
作为A.audioPluginInterface
包含一个的对象audioptuginparameter.
目的。第一个论点audioptuginparameter.
是要使用可调参数同步的属性。选择显示名称,标记单位,并设置参数范围。此示例使用0.1到10作为合理范围频率
财产。编写代码,以便在每次调用过程
方法,你正弦
和余弦
对象将使用当前频率值更新。
一旦你的音频插件类定义完成:
保存您的插件类定义文件。
使用以下方法验证插件validateAudioPlugin
.
样机使用音频测试台.
生成使用generateAudioPlugin
.