主要内容

实时参数调优

参数调优是修改您的音频系统参数的能力,在实时流音频信号。在算法开发中,可调参数使您能够快速原型化和测试各种参数配置。在已部署的应用程序中,可调参数使用户能够为特定目的调优通用算法,并对不断变化的动态做出反应。

音频工具箱™是优化的参数调整在实时音频流。System对象、块和音频插件提供了各种可调参数,包括采样率和帧大小,使它们在音频流循环中使用时成为可靠的工具。

要优化音频工具箱的使用,请将音频处理算法打包为音频插件。将您的音频算法打包为音频插件,使您可以图形化地调整您的算法使用parameterTuner音频测试台上:

  • 音频测试台上-创建一个用户界面(UI)可调参数,使您可以指定输入和输出从您的音频流循环,并提供访问分析工具,如时间范围和频谱分析仪。将你的代码打包为一个音频插件还可以让你快速同步参数与MIDI控件。

  • parameterTuner创建一个UI可调参数,可以使用任何MATLAB®编程环境。您可以自定义参数控件,以呈现为旋钮、滑块、摇杆开关、拨动开关、复选框或下拉框。还可以定义自定义背景颜色、背景图像或两者。然后,你可以将你的音频插件放在编程环境(如脚本)中的音频处理循环中,然后在循环执行时调整参数。

有关详细信息,请参见MATLAB中的音频插件

在MATLAB中创建ui的其他方法包括:

看到构建应用程序的方法有关不同参数调优方法的成本和收益的更详细列表。

编程参数调优

如果你不能将你的算法打包成一个音频插件,你可以使用基本的MATLAB技术创建一个调优UI。

本教程包含三个文件:

  1. parameterRef——包含可调参数的类定义

  2. parameterTuningUI——为参数调优创建UI的函数

  3. AudioProcessingScript——音频处理脚本

查看图表,了解实时参数调优是如何实现的。要实现实时参数调优,请通过示例进行说明和逐步说明。

1.使用可调参数创建类

要使用UI调优音频流循环中的参数,需要将参数与UI小部件的位置关联起来。要将参数与UI小部件关联,请将参数设置为句柄类的对象。句柄类的对象是通过引用传递的,这意味着您可以在一个地方修改对象的值,并在另一个地方使用更新后的值。例如,您可以使用图形上的滑块修改对象的值,并在音频处理循环中使用更新后的值。

保存parameterRef类定义文件到当前文件夹中。

classdefparameterRef <处理属性名义价值结束结束

对象的parameterRef类有一个的名字价值.的的名字是为了在UI上显示。您使用价值调优。

2.创建函数来生成UI

parameterTuningUI函数接受指定为对象句柄的参数和所需的范围。这个函数创建一个带有与参数关联的滑块的图形。嵌套函数slidercb,当滑块位置改变时调用。滑块回调函数将滑块的位置映射到参数范围,更新参数的值,并更新UI上的文本。您可以轻松地修改这个函数,以便在同一个UI中优化多个参数。

保存parameterTuningUI当前文件夹

3.为音频处理创建脚本

音频处理脚本:

  1. 为音频流循环创建输入和输出对象。

  2. 创建句柄类的对象,parameterRef,它存储参数名称和值。

  3. 调用调优UI函数,parameterTuningUI,与你的参数和参数范围。

  4. 循环处理音频。你可以调整你的参数,x,在音频流循环中。

运行AudioProcessingScript

当脚本运行时,移动滑块的位置来更新参数值并听到结果。

另请参阅

|

相关的话题