【问题标题】:Android MediaCodec not working [closed]Android MediaCodec 不工作 [关闭]
【发布时间】:2013-11-20 08:07:00
【问题描述】:

我正在尝试直接解码 Android 设备上 Raspberry Pi 摄像头模块的 H.264 编码摄像头输出,但我的代码无法正确解码文件。我没有得到任何输出,并且在最后一帧我得到一个乱码。

当我自己将输入文件(它是一个 H.264 字节流)解析为 NAL 单元时,我有一个问题:当将它们提供给 MediaCodec 缓冲区时,我是否将 NAL 单元分隔符提供给缓冲区也是?

【问题讨论】:

    标签: android android-mediacodec


    【解决方案1】:

    MediaCodec 解码器需要 H.264 基本流,并且每个缓冲区需要一个访问单元。您还需要在第一个数据包之前提供 SPS/PPS(通过BUFFER_FLAG_CODEC_CONFIG 标志或将其添加到MediaFormat)。

    另见this question

    【讨论】:

    • 我明白,这正是我提供缓冲区的方式。但是,在解析时不清楚是否应该在缓冲区中包含起始代码前缀或在解析期间将其删除。
    • 顺便说一句:我现在在两个单独的缓冲区中发送 SPS 和 PPS。是否应该将它们合并到一个缓冲区中?
    猜你喜欢
    • 1970-01-01
    • 2013-05-10
    • 2021-02-20
    • 1970-01-01
    • 2013-02-04
    • 2014-05-04
    • 2016-04-26
    • 2012-10-08
    • 2012-01-12
    相关资源
    最近更新 更多