这个例子展示了如何使用MATLAB Compiler™从MATLAB函数创建一个独立的应用程序。该函数实现一个音频处理算法,并通过音频输出设备播放结果。
在本例中,您生成并运行一个可执行应用程序,该应用程序将人工混响应用于音频信号,并通过选定的音频设备播放它。这类应用程序的好处是,它们可以在不需要安装MATLAB的机器上运行。您只需要安装MATLAB Runtime就可以部署在本例中创建的应用程序。
混响算法是使用System对象实现的反射器
.它允许您添加混响效果单声道或立体声通道音频输入。该物体提供了六种控制混响性质的属性。可以在模拟运行时对它们进行调优。
功能音频混响编译器示例应用程序
有包装纸吗反射器
.证实…的行为音频混响编译器示例应用程序
,在MATLAB中运行该函数。它需要一个可选的输入,即时间,以秒为单位,你想要播放音频。默认值为60。
音频混响编译器示例应用程序
功能音频混响编译器示例应用程序
使用获取音频设备
的方法audioDeviceWriter
列出当前机器上可用的音频输出设备,以便您可以通过所选的声卡播放混响音频。这在已部署的应用程序中特别有用,因为函数作者很少知道将在目标机器上连接什么设备。
音频混响编译器示例应用程序
的可调属性反射器
以便您可以在模拟运行时轻松地调优它们,并立即观察其效果。例如,在模拟运行时,将滑块“Diffusion”向右移动。你会听到反射密度增加的效果。您可以使用UI上的按钮来暂停或停止模拟。
一旦验证了MATLAB仿真,就可以编译函数了。编译前,请先创建一个具有写权限的临时目录。将MATLAB主函数和相关的辅助文件复制到这个临时目录中。
compilerDir = fullfile (tempdir,“compilerDir”);%临时目录名如果~exist(compilerDir,“dir”mkdir (compilerDir);%创建临时目录结束curDir = cd (compilerDir);拷贝文件((“audioReverberationCompilerExampleApp”));拷贝文件((“HelperAudiorVerbulation”));拷贝文件((“FunkyDrums-44p1-stereo-25秒mp3”)复制文件((“HelperCreateParamTuningUI”));拷贝文件((“HelperUnPackageData”));
使用mcc
(MATLAB编译器)函数从MATLAB编译器编译而成音频混响编译器示例应用程序
进入一个独立的应用程序。这将保存在当前目录中。指定'-m'选项生成独立应用程序,'-N'选项只包含使用'-p'选项指定的路径中的目录。
世纪挑战集团(“锰”,“audioReverberationCompilerExampleApp”,...“p”,完整文件(matlabroot,“工具箱”,“dsp”),...“p”,完整文件(matlabroot,“工具箱”,“音频”));
这个步骤需要几分钟才能完成。
使用系统
命令运行生成的独立应用程序。注意,使用system命令运行独立应用程序将使用当前MATLAB环境和安装MATLAB所需的任何库文件。要在没有安装MATLAB的机器上部署此应用程序,请参阅关于MATLAB运行时(MATLAB编译器).
如果Ismac status = system(fullfile(“audioReverberationCompilerExampleApp.app”,...“目录”,“马科斯”,“audioReverberationCompilerExampleApp”));其他的状态=系统(fullfile (pwd,“audioReverberationCompilerExampleApp”));结束
与MATLAB模拟类似,运行此部署的应用程序将首先要求您选择要用于播放音频的音频设备。然后,在模拟运行时启动用户界面(UI)与混响算法交互。
在生成和部署可执行文件之后,您可以通过在MATLAB命令提示符中运行以下命令来清理临时目录:
cd(curDir);rmdir(compilerDir,“年代”);