sivacohan
V2EX  ›  问与答

求助 avconv/ffmpeg 增加关键帧的问题

  •  
  •   sivacohan ·
    PRO
    · Jul 19, 2013 · 5193 views
    This topic created in 4680 days ago, the information mentioned may be changed or developed.
    视频是h264的mp4文件。

    video stream 每秒1帧
    这个视频是从某种莫名其妙的只能在windows下播放个格式通过ffmpeg libx264转换来的。

    我现在希望这个视频每一帧都是关键帧(keyframe/IDR frame)。这个参数应该怎么写呢?

    PS:

    关于avprobe -show_packets产生的packets中flags指什么啊?看到有flag=key和flag=_

    是指keyframe 和 delta frame吗?
    Supplement 1  ·  Jul 23, 2013
    自己来结贴。

    I-frame IDR-frame 都有可能是指keyframe。如果I-frame和IDR-frame同时存在,那么IDR-frame指keyframe。

    I-frame 和 IDR-frame 本质上来讲,是差不多的。区别在于IDR-frame强制要求,其下一帧不与之前关联。如果需要频繁跳转(seek)可以考虑多用IDR-frame

    h264标准默认采用每250帧一个keyframe。

    使用 -c:v libx264 -g 1 。注意-g参数,这个可以调整关键帧密度。具体可以参照libx264的相关文档。
    No Comments Yet
    About   ·   Help   ·   Advertise   ·   Blog   ·   API   ·   FAQ   ·   Solana   ·   5525 Online   Highest 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 54ms · UTC 03:50 · PVG 11:50 · LAX 20:50 · JFK 23:50
    ♥ Do have faith in what you're doing.