【问题标题】:Decode AMR audio file in Android在 Android 中解码 AMR 音频文件
【发布时间】:2013-02-11 21:34:12
【问题描述】:

有没有办法在 Android 中解码 AMR 音频文件并访问原始音频数据? MediaCodec 仅适用于 API 16 及更高版本。我需要可以在 Android 2.2 及更高版本上运行的东西。

【问题讨论】:

    标签: android decode amr


    【解决方案1】:

    我认为 2.X 平台中没有用于执行此操作的本机 API。您可以在您的应用程序中使用 ffmpeg 二进制文件。

    通过快速搜索,我找到了this precompiled version of ffmpeg for Android 2.2

    您可以将可执行文件放在您的应用程序raw资源文件夹中,并使用Runtime.getRuntime().exec()执行它。

    要使用ffmpegAMR 文件转换为WAV,您可以执行以下操作:

    ffmpeg -i file.amr file.wav
    

    要将 wav 转换为原始 PCM,您可以执行以下操作:(取自 here

    ffmpeg -i file.wav -f s16le -acodec pcm_s16le file.pcm
    

    【讨论】:

    • 这是一个非常大的包 - 超过 9 mb。这是一个成熟的音频处理应用程序。我的应用程序只有 2 mb 大小。
    • 在 android kitkat 4.4.2 或更高版本中是否可以将 AMR 文件解码/转换为 mp3/(任何可播放格式)?如果是,那么您能否展示一些代码 sn-p 或任何示例来做到这一点?请帮忙。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2013-07-03
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多