gpt4 book ai didi

ffmpeg - 通过 FFmpeg 的 GOP 结构

转载 作者:行者123 更新时间:2023-12-04 02:18:12 67 4
gpt4 key购买 nike

关于 MPEG4 视频(MPEG4 Part2 和 H.264)中的图片组 (GOP),我有两个问题:

  • 如何使用 FFmpeg 提取视频序列的 GOP 结构和大小?我知道 av_get_picture_type_char AVPicture 的功能struct 为每一帧生成图片类型,但我想知道是否有更直接的方法来获取 GOP 信息?
  • 如何检测序列是否具有开放 GOP 或封闭 GOP,即是否允许来自一个 GOP 的 B 帧引用相邻 GOP 中的 I 和 P 帧?
  • 最佳答案

    这些都不是直接在 ffmpeg 中导出的,所以你必须自己弄清楚这些事情。所以 1 的简短回答是“不”。如果您解析帧(您不需要解码它们)并获取帧类型,您应该能够在 AVPacket.pos 中识别文件中的位置(偏移量,以字节为单位)。对于序列中的每个 I 帧,搜索其后的数据包并注意 AVPacket . posAVPacket . pts .如果 B(pos) > I(pos) 但 B(pts) < I(pts),则您有打开的 GOP,否则关闭 GOP。如果你想更精确,想办法从 h264 解析器中导出 POC,它与时间戳成正比。

    解析循环只是 av_read_frame ()。

    关于ffmpeg - 通过 FFmpeg 的 GOP 结构,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/32782447/

    67 4 0
    Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
    广告合作:1813099741@qq.com 6ren.com