定义视频有多个参数,您可能知道它们是frame rate
,bit rate
,resolution
,......等等。
我注意到有些新参数我不知道包括B-frames
和I frames
所调用的内容。
我试图了解我正在实施的自定义视频捕捉中的I-intervals
,这就是我所得到的:
I-间隔
I间隔是视频帧之间的间隔,它们以秒为单位相互关联。所以要么它们彼此相距1秒,要么相距2秒或3秒......
当我对视频进行编码并将I Interval设置为(2秒或1秒)时,我注意到输出视频在由媒体控制器控制时无法正确搜索。
当我对视频进行编码并将I Interval设置为(0秒)时,我注意到视频确实正常搜索但视频大小增加了。
问题:
这些I间隔是什么?为什么它们会影响视频的大小和搜索?
将I帧设置为0秒是错误的吗?
答案 0 :(得分:0)
基础知识
H264压缩格式是图片间预测格式。非常简化,要完成和显示一个框架,它需要存储在其他框架中的信息。
大多数基本帧是I表示独立帧,P表示预测,B表示双向帧。
I帧,通常也称为关键帧,是完整的帧,不需要来自其他帧的任何数据。
P帧使用前一帧的数据。
最后,B帧可以使用先前和未来的帧数据
回到问题
现在大多数事情都应该清楚。 尺寸增加是因为I帧只是可压缩性最小的,你可以把所有I帧视频想象成串联jpg图片。
寻求受到影响是因为有些玩家寻找前一个寻找位置的I-Frame而只是从那里进行游戏,因为他们必须从那里进行解码以产生正确的视觉效果。
将I帧间隔设置为0没有任何问题,它实际上很常见。