【问题标题】:How do you encode a video with audio using MediaCodec如何使用 MediaCodec 对带有音频的视频进行编码
【发布时间】:2013-11-18 05:01:36
【问题描述】:

因此,我通过使用 Camera 的 onPreviewFrame 方法收集帧,使用 MediaCodec 对 h264 基本流进行了编码。(使用 Encoding H.264 from camera with Android MediaCodec)。然后,我使用 h264 流生成了一个 mp4 视频。不幸的是,它没有任何音频。

我注意到 MediaCodec 也应该允许对音频进行编码,因为它具有音频编解码器的设置。

现在有什么方法可以将音频添加到 h264 流中吗?

感谢您的阅读,如果有任何 cmets 或建议,我们将不胜感激。

【问题讨论】:

标签: android android-audiorecord android-mediacodec


【解决方案1】:

MediaCodec 的给定实例将对视频或音频进行编码。您需要创建MediaCodec 的第二个实例来进行音频编码,然后将流与MediaMuxer 类(在Android 4.3,API 18 中引入)结合起来。

有在bigflake 上使用MediaMuxer 的示例,但在我写这篇文章的时候,没有一个演示如何结合音频和视频(它们只是将视频“混合”成一个.mp4文件)。不过,演示如何使用该类应该就足够了。

【讨论】:

  • 嗨时尚。首先感谢您抽出宝贵时间回答我的问题。根据您的建议,我现在正在尝试分别编码视频和音频。但是我也遇到了一个新问题。那就是我无法播放录制的音频文件。我为它创建了一个新的 stackoverflow 帖子(stackoverflow.com/questions/19826809/…)......如果您有其他建议,请告诉我。谢谢
猜你喜欢
  • 2016-03-12
  • 1970-01-01
  • 2016-04-24
  • 2013-12-26
  • 2020-03-21
  • 2014-02-06
  • 1970-01-01
  • 2010-11-28
  • 2013-06-10
相关资源
最近更新 更多