0
有沒有辦法在Android中解碼AMR音頻文件並訪問原始音頻數據? MediaCodec僅適用於API 16及更高版本。我需要能在Android 2.2及更高版本上運行的東西。在Android中解碼AMR音頻文件
有沒有辦法在Android中解碼AMR音頻文件並訪問原始音頻數據? MediaCodec僅適用於API 16及更高版本。我需要能在Android 2.2及更高版本上運行的東西。在Android中解碼AMR音頻文件
我認爲在2.X平臺中沒有本地API來做到這一點。相反,您可以在應用程序中使用ffmpeg
二進制文件。
通過快速搜索,我發現this precompiled version of ffmpeg
for Android
2.2。
您可以將它的可執行文件放在您的應用程序raw
資源文件夾中並使用Runtime.getRuntime().exec()
來執行它。
要將AMR
文件轉換爲WAV
與ffmpeg
,你可以做這樣的事情:
ffmpeg -i file.amr file.wav
,併爲WAV原始PCM,你可以做以下的轉換:(從here拍攝)
ffmpeg -i file.wav -f s16le -acodec pcm_s16le file.pcm
這是一個非常大的包 - 超過9 MB。這是一個完整的音頻處理應用程序。爲我的應用程序過度殺傷,它只有2 MB的大小。 – AndroidDev 2013-02-11 13:44:20