我一直在尝试使用 NDK 将 FFMPEG(用于播放音频)移植到 Android 中。我取得了一些成功
- 我可以构建 FFMPEG 并通过 NDK 链接它。
- 我可以调用
avcodec_decode_audio3()
并解码给定的音频文件。
所以这里我有一个来自函数的音频缓冲区输出。我现在怎么玩这个?任何 ffmpeg 人员都可以告诉我解码和播放音频的确切步骤。我真的不知道如何处理我从 avcodec_decode_audio3()
创建的音频缓冲区。
非常感谢。
最佳答案
为了使用FFmpeg 作为音频播放工具,您可以直到 FFplay (适用于 Windows 和 Linux)。
很简单:ffplay <input audio track>
音轨必须是受支持的格式,这意味着您将需要一些库。
- 如果您想要用于 Windows 系统的东西,那么只需下载 构建 here ,然后将可执行文件放入您的环境中 变量路径。也可以通过艰难的方式下载源代码并构建。但何必呢?
- 如果您使用的是支持 Linux 的软件,包括 Raspbian this link描述了如何获取库,然后在 FFmpeg 构建。 FFmpeg 构建也将包括 FFplay。我已经对此进行了测试,它似乎对我有用。
- 在这两种情况下,您都需要安装C 编译器才能处理 make 命令。
在python3中使用FFplay进程的实现示例:
我正在开展一个个人项目,该项目将 RaspberryPi 用作或多或少的花式 mp3 播放器门铃型物联网设备。它会为任何按门铃的人全力播放 Darude Sandstorm。但它也有一个转折点。它叫做DarudeDoorBell .
关于android - 使用 FFMPEG 播放音频,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5000385/