【问题标题】:Hardware encoding video on Android phoneAndroid手机上的硬件编码视频
【发布时间】:2011-10-26 08:34:14
【问题描述】:

我正在寻找有关使用硬件加速在 Android 手机上编码视频的一些信息。我知道有些手机(如果有人有清单?)支持摄像头编码,并希望我可以访问芯片来对通过 wifi、usb 等提供的实时信息进行编码。 另外,我对任何此类芯片会提供的延迟很感兴趣。

编辑:显然 Android 使用 PacketVideo,但是找不到太多用于编码的文档。

编辑:Android 文档显示了一个视频编码器:http://developer.android.com/reference/android/media/MediaRecorder.VideoEncoder.html。但是它并没有说明硬件加速。

【问题讨论】:

    标签: android video encoding hardware-acceleration


    【解决方案1】:

    MediaCodec 应该满足您的需求。文档没有提到硬件加速,但根据日志和基准测试,它依赖于 OpenMAX 库。

    【讨论】:

    • 没错。通用文档没有指定硬件加速,因为这是特定于设备的。但实际上,我曾经使用过的所有设备都至少为 h263/mpeg2 和 h264/avc 提供了硬件编码器和解码器(后者支持的配置文件可能会有所不同)。
    • @AlexCohn 我在/system/libs/ 内部看到OMX.SEC.AVC.ENCODER.so。它是指硬件芯片的openmax il接口还是只是软件实现的openmax il接口?我确定 OMX.google.* 是软件 OMX 组件,同样我想确定 OMX.SEC.* !!
    • @nmxprime:您对寻找答案的坚持令人钦佩,但提出完整的问题可以节省您的时间,甚至是对社区的更好礼物。请注意,OpenMax 的情况正在迅速变化,因此旧问题和旧答案可能无关紧要。关于OMX.SEC.AVC.ENCODER.so,是的,它是 OpenMax IL 和三星硬件 h264 编码器之间的连接器。 IIRC,您不能直接使用此组件,除非您具有 root 访问权限(更准确地说,如果您可以授予您的应用程序 media GID)。连接到媒体编解码器的最佳选择是通过libstagefright.so
    • @AlexCohn 谢谢!很快我就会提出我自己的问题,因为我仍在查看 android 源代码以了解 openmax
    猜你喜欢
    • 2013-11-11
    • 2016-08-21
    • 2013-07-13
    • 1970-01-01
    • 1970-01-01
    • 2012-07-04
    • 1970-01-01
    • 2019-12-31
    • 2012-08-19
    相关资源
    最近更新 更多