参数调整是在传输音频信号时实时修改音频系统参数的能力。在算法开发中,可调参数使您能够快速原型化和测试各种参数配置。在已部署的应用程序中,可调参数使用户能够为特定目的微调通用算法,并对不断变化的动态做出反应。
音频工具箱™ 针对实时音频流中的参数调整进行了优化。系统对象、块和音频插件提供各种可调参数,包括采样率和帧大小,使它们在音频流循环中使用时成为强大的工具。
要优化音频工具箱的使用,请将音频处理算法打包为音频插件。将音频算法打包为音频插件使您能够使用参数调谐器
或音频测试台:
有关详细信息,请参阅MATLAB中的音频插件.
在MATLAB中创建UI的其他方法包括:
App Designer–支持二维绘图的大型交互式控件集的开发环境。请参阅万博1manbetx使用App Designer创建并运行简单的应用程序了解更多信息。
编程工作流–使用MATLAB函数逐个元素定义应用程序。本教程使用编程方法。
看构建应用程序的方法有关参数调整的不同方法的成本和收益的更详细列表,请参阅。
如果不能将算法打包为音频插件,可以使用基本的MATLAB技术创建一个调优UI。
本教程包含三个文件:
parameterRef
–包含可调参数的类定义
参数化
–创建用于参数调整的用户界面的功能
音频处理脚本
–用于音频处理的脚本
查看图表,了解如何实施实时参数调整。要实现实时参数调整,请浏览示例以获得解释和分步说明。
要使用UI优化音频流循环中的参数,您需要将参数与UI小部件的位置相关联。要将参数与UI小部件相关联,请将参数设置为句柄类的对象。句柄类的对象通过引用传递,这意味着您可以在一个位置修改对象的值并使用upda例如,您可以使用图形上的滑块修改对象的值,并在音频处理循环中使用更新后的值。
拯救parameterRef
将类定义文件保存到当前文件夹中。
classdefparameterRef<句柄性质名称值结束结束
目标parameterRef
班上有一个名称
和价值
.这个名称
用于在UI上显示。您可以使用价值
用于调谐。
这个参数化
函数接受指定为对象句柄的参数和所需范围。函数创建一个带有与参数关联的滑块的图形。嵌套函数,滑块
,在滑块位置更改时调用。滑块回调函数将滑块位置映射到参数范围,更新参数值,并更新UI上的文本。您可以轻松修改此函数以在同一UI中调整多个参数。
音频处理脚本:
为音频流循环创建输入和输出对象。
创建句柄类的对象,parameterRef
,它存储您的参数名称和值。
调用调优UI函数,参数化
,以及您的参数和参数范围。
在循环中处理音频。您可以调整参数,x
,在音频流循环中。
脚本运行时,移动滑块的位置以更新参数值并听到结果。