zoukankan      html  css  js  c++  java
  • I帧和IDR帧的区别

    视频编码中,经常提到I帧。I帧只使用帧内压缩,不能除去帧间冗余度。P帧做帧间编码,根据当前帧与前面最近的I帧或P帧的差别来编码。

    另外一个比较少提到的概念是IDR帧。IDR属于I帧,但是I帧不一定是IDR帧。只有IDR帧,才有SPS和PPS。解码器收到IDR帧时,将reference buffer清空;而收到I帧不会清空reference buffer。也就是说,对某个IDR帧之后的帧,解码器不会参考这个IDR帧之前的任何帧做解码。对某个I帧之后的帧,解码器可能会参考这个I帧之前的帧做解码。还可以参考文档https://malleshamdasari.wordpress.com/2013/07/31/difference-between-i-frame-and-idr-frame/。
    在Xilinx VCU GStreamer里,使用参数periodicity-idr指定IDR帧的间隔。在Xilinx VCU Ctrl-SW里,使用参数Gop.FreqIDR指定IDR帧的间隔。PG252里的说明如下:

    IDR picture frequency 
    periodicity-idr 
    Specifies the number of frames between consecutive
    instantaneous decoder refresh (IDR) pictures. The periodicity-
    idr property was formerly called gop-freq-idr.
    Allowed values: <Positive value> or -1 to disable IDR insertion
    Default value: 0 (first frame is IDR)
    
    Gop.FreqIDR Specifies the minimum number of frames between two IDR pictures (AVC and HEVC). IDR
    insertion depends on the position of the GOP boundary.
    Allowed values: positive integer or -1 to disable IDR region.
    Default value: -1
    
  • 相关阅读:
    WHENEVER SQLERROR EXIT AND DDL
    WHENEVER SQLERROR EXIT AND DML
    我的友情链接
    我的友情链接
    我的友情链接
    我的友情链接
    我的友情链接
    我的友情链接
    我的友情链接
    我的友情链接
  • 原文地址:https://www.cnblogs.com/hankfu/p/13968625.html
Copyright © 2011-2022 走看看