【问题标题】:Mime-type of Android camera PreviewFormatAndroid 相机 PreviewFormat 的 Mime 类型
【发布时间】:2012-11-05 06:24:42
【问题描述】:

我想使用MediaCodec 对来自摄像头的数据进行编码(原因:它的级别更低,因此希望比使用MediaRecorder 更快)。使用Camera.PreviewCallBack,我将摄像头中的数据捕获到字节缓冲区中,以便将其传递给 MediaCodec 对象。

为此,我需要填写一个MediaFormat-object,如果我知道来自相机的数据的 MIME 代码,这将相当容易。我可以使用setPreviewFormat() 来选择这种格式,选择在ImageFormat-class 中声明的常量之一。

因此我的问题是:鉴于 ImageFormat 类提供了不同的选项来设置相机预览格式,相应的 MIME 类型代码是什么?

非常感谢。

【问题讨论】:

  • 这在 Android 4.3 中变得更容易了。见bigflake.com/mediacodec/#CameraToMpegTest
  • 顺便说一句,使用较低级别的 API 可以提供更好的性能是一种迷信。相反的情况很可能是正确的:您可以使用 MediaRecorder 将相机硬件“短路”到编码器硬件,而不是发送像素。
  • 如果我错了,请纠正我。 Aegonis 提到:“我想使用 MediaCodec 对来自相机的数据进行编码(原因:它更底层,因此希望比使用 MediaRecorder 更快)。”但我的印象是 Camera Preview 的 fps 比原始相机输出原始数据。
  • 这个性能最后是不是更好了?您是否设法实现了良好的帧速率(即 >15fps)?

标签: android video android-camera mime


【解决方案1】:

参见https://gist.github.com/3990442 的示例。您应该设置要从编码器中获取的 MIME 类型,即 "video/avc"

【讨论】:

  • 感谢您的示例,它们很难找到。那么MediaCodec是如何判断offerEncoder参数中的内容的格式呢? (即在我的情况下来自相机的数据)
  • 我还有一些其他问题。它似乎更适合创建一个单独的主题:stackoverflow.com/questions/13458289/…。你介意看看吗?谢谢
猜你喜欢
  • 2016-05-09
  • 2021-10-23
  • 2014-06-16
  • 2010-12-14
  • 2011-12-01
  • 2012-02-29
  • 1970-01-01
  • 2012-09-13
  • 2011-05-26
相关资源
最近更新 更多