[英]Android C++ Matlab NDK error: undefined reference to ::rtNaN
[英]Matlab audioread/audioplay into C/C++ through Coder
我正在做一個matlab項目,向音頻文件(mp3,wav)添加效果。 因此,我使用matlab函數audioread(..)將文件加載到數組中。
現在,我想將此導出到Android。 我讀到最好的方法是使用Matlab Coder將Matlab代碼導出到C / C ++(或Java),然后將其導出到android(或多或少)。
但是,不支持函數調用audioplayer(和播放)(這就是代碼生成准備問題所說明的內容)。
我能做什么 ? 一種想法是直接使用c ++代碼播放聲音(因此在代碼生成之后)。 但是如何使用c ++播放數組中的聲音?
或者,如果你們有其他想法而無需接觸c ++代碼(因此直接在matlab中解決問題),我將很高興聽到它!
謝謝,祝你有美好的一天!
通常,在這種情況下,我建議將代碼分為兩部分:
我使用這種方法來利用MATLAB Coder生成的代碼在Android上進行圖像過濾。
正如Navan所說,要執行第(1)部分,您需要使用Android API讀取音頻文件,將數據寫回到文件中,然后根據需要播放它們。 請注意,我尚未進行廣泛的Android開發,因此執行這些任務可能需要進行一些研究或非常困難。
一旦具有適合(2)中函數的格式的數據(可能是數字數組),則可以使用JNI調用生成的代碼以添加所需的效果。 生成的代碼會將數據返回到Java代碼,然后您可以使用Android API對其進行編碼,播放或按照自己的意願進行操作。
播放音頻通常使用依賴於平台的庫。 在DSP System工具箱中,有一個名為dsp.AudioPlayer的音頻播放器對象,它支持C代碼生成。 但是我相信這會在生成的代碼中使用依賴於平台的庫,並且使其直接在Android中運行也不是一件容易的事。 您最好找到適用於Android的音頻播放器庫,並在生成代碼后手動將其掛接。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.