关键帧间隔越大 I帧越少 体积越小画质越差 但压缩率越高
关键帧间隔越小 I帧越多 体积越大画质越好 但压缩率越低
IPPPPP结构是对IIIIIIIIIIIII结构的压缩体现 IBBPBBPBBP结构是对IPPPPP结构的进一步画质与压缩率的改良体现 P只预测前面的帧 B前后预测
现在H265又一步改良成IBBBrBPBBrBP 进一步提高压缩率
关键帧长短只会严重的对两方面有影响
1:严重影响到你输出视频的2次编辑 间距越大就越无法精准的无损剪切 间距越小2次编辑越方便 但压缩率有影响 这里你不要理解为B帧省码率 而是应该理解为I帧占码率
2: 在对输出成品播放时 关键帧间距越大 也就是BP帧越多 解码压力越大 体现为CPU过载时播放会出现视觉卡顿 甚至画面块移位
同时快进指针定位距离也越大 比如你拖动进度条想直接跳到5分钟位置 则可能定位到了7分钟位置 因为这里无论剪辑还是播放都是以I帧位置决定的 关键帧间距越大则I帧越少 关键帧间距越短则I帧越多
出版物通常GOP组是按视频帧率设定的 比如24帧电影 它的规范设定就是48 Field (24 frames) 也就是说关键帧间距一般为视频的帧率 素材交付一般为全I帧 面世成品一般按片源风格不同1-4个B帧设定 比如动漫都是高B帧 真人电影大多低B帧
而像X264X265的默认一般是500Field(250frames)目的也就是为了减少I帧数量提高压缩率 因为你要知道有时一组镜头的长度远大于24帧 在编码时加入repeat-headers指令即可最大限度的在每组镜头切换时插入一个I帧
这里顺带提下B帧的设定 最大的压缩率其实是4个B帧 约50% 其次到8个B帧 约75% 只提高了25% 到16个B帧是 可能只有约80%了 提高仅30% 压缩比相对8仅多5% 所以超过8基本就没有压缩率可言了 也就是说最安全科学的B帧是4 最大的压缩率科学是8
关于GOP长短或者说关键帧长短再通俗解释下 比如现在拍摄一组视频是这样 我打开门 进入房间 打开灯 转身做下 拿出手机 点开手机
那么正确科学的GOP应该是 I我打开门 I进入房间 I打开灯 I转身做下 I拿出手机 I点开手机
I与I之间都是连贯的过渡动作 I帧都是起始点 也可以理解成时间戳 那么你不管剪辑还是播放 都很容易就可以定位到起始
如果这时需要压缩率就可能变成
I我打开门 进入房间 I打开灯 转身做下 I拿出手机 点开手机
I我打开门进入房间打开灯I转身做下拿出手机点开手机
甚至。。。。。。
我打I开门 进入房间 打开I灯 转身做下 拿I出手机 点开手I机
看明白了没?