在 Android 上将 wav 编码为 AAC
您可以使用 MediaRecorder 将流直接录制到 AAC,但似乎没有将现有 PCM/WAV 文件编码为 AAC 的方法。 Android 本身就具有编码为 AAC 的功能,我想使用它。有没有办法用预先存在的音频文件来做到这一点?
You can use MediaRecorder to record a stream directly to AAC but there doesn't seem to be a way to encode an existing PCM/WAV file to AAC. The ability to encode to AAC exists natively in Android and I'd like to use that. Is there no way to do it with a pre-existing audio file?
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(3)
看看这个美丽的(并且完美运行的)示例:
Mp4ParserSample
看看课程的最后部分(行335-442),
convert
Runnable 对象就可以完成这项工作!您必须根据需要调整代码,调整输入和输出文件路径以及转换参数(采样率、比特率等)。Look at this beautiful (and perfectly working) example:
Mp4ParserSample
Look at the final part of the class (rows 335-442), the
convert
Runnable object just does the job! You have to shape that code to your needs, adjust the input and the output file paths and the conversion parameters (sampling rate, bit rate, etc).您可以亲自接触本机代码,并使用框架中的解码器的 IOMX C++ 接口。但这是构建敏感的,不适用于其他手机和 Android 版本。
另一种选择是移植一个开源 aac 编码器(如 ffmpeg),并通过 jni 编写一个应用程序。至少可以与具有相同架构的手机(arm-9、cortex a8..)配合使用。
JB 有一个 MediaCodec 来满足您的愿望。但问题是,JB 设备的安装基础将在一段时间内保持精简。
http://developer.android.com/about/versions/android-4.1 .html#多媒体
you can get your hands dirty with the native code and use the IOMX C++ interface to decoders in the framework. But this is build sensitive and will not work on other phones and android flavours.
Another option is port an opensource aac encoder like ffmpeg and write an app over it over jni. Will atleast work with phones with same architecture (arm-9, cortex a8..).
JB has a MediaCodec just to fulfill your wishes. But the problem would be the install base for devices with JB will be lean for some more time.
http://developer.android.com/about/versions/android-4.1.html#Multimedia
我认为你可以使用这个库。
https://github.com/timsu/android-aac-enc
http://betaful.com/post/82668810035/encoding-aac-audio-in-android
I think you can use this library.
https://github.com/timsu/android-aac-enc
http://betaful.com/post/82668810035/encoding-aac-audio-in-android