我想使用MATLAB编码器将matlab代码转换为C代码,但是效果不佳。
我尝试在matlab代码下面使用MATLAB编码器构建
function example()
recObj = audiorecorder(44100,16,1);
disp('Start speaking.');
recordblocking(recObj, 5);
disp('End of Recording.');
play(recObj);
但是有一些错误。像..
coder -build ex1.prj ??? ' audiorecorder' class不支持代码生成。
Error in ==> example Line: 2 Column: 10
Code generation failed: Open error report.
所以,我试图删除audiorecorder功能,但它也没有用。
我不知道这些代码中有什么问题。 我该怎么办? 请帮忙。
答案 0 :(得分:1)
并非每个MATLAB函数都可以转换为C代码。
有关支持的功能列表,请参阅here。
如果您希望使用不在列表中的MATLAB函数,您应该在MATLAB中编写自己的版本(如果可能,在我的情况下我怀疑它)或在C中。
答案 1 :(得分:1)
部署到Android可能没什么帮助,但是dsp.AudioRecorder系统对象支持C代码生成并允许进行一些录音。生成的代码可以在安装了MATLAB的系统上运行。
另一种选择是在符合MATLAB Coder的代码中编写计算算法,并使用Android API进行音频捕获,用户交互等。然后,您可以将捕获的音频数据传递给生成的本机代码进行处理。我已经看到了类似的图像处理方法,其中Android API用于捕获图像,然后将图像发送到使用MATLAB Coder生成的C代码进行处理。