手机能做网站吗,做网站过时了,网站制作岗位职责,php构建网站GOP#xff08;group of pictures#xff09; 在流行的视频编码算法中#xff0c;都包含GOP这个概念#xff0c;例如MPEG-2, H.264, and H.265。 背景
关于视频存储和传输的“size”#xff1a; Resolution 分辨率 Uncompressed Bitrate 未压缩时的比特率 1280720 (720p… GOPgroup of pictures 在流行的视频编码算法中都包含GOP这个概念例如MPEG-2, H.264, and H.265。 背景
关于视频存储和传输的“size” Resolution 分辨率 Uncompressed Bitrate 未压缩时的比特率 1280×720 (720p)~ 1.5 Gbps1920×1080 (1080p)~ 3 Gbps3180 x 2160 (2160p or 4K)~ 12 Gbps
试想要传输一个4k的视频比特率高达12Gbps而我们普通家用的带宽也就几百Mbps根本无法传输即使传过来了播放效果基本就是PPT。。。
视频压缩
既然原始视频码率太高无法传输那自然想到可以先进行数据压缩减小体积后再传输。
通常是压缩到1-20 Mbps这个范围。
视频压缩的基本原理
在一系列图像中找到并消除冗余。
例如新闻广播每一帧视频通常与之前和之后的视频非常相似。新闻广播员说话时嘴唇可能会移动信息可能会沿着屏幕底部滚动但图像的很大一部分在每一帧之间要么相同要么非常相似。
那这些重复的/非常相似的像素完全没必要传输这样就能起到压缩视频的效果了。
时间压缩
根据上述规律可以先发送一个包含全部信息的关键帧后续的帧就只发送与之前的关键帧不一样的地方。接收方收到数据后通过已经接收到的关键帧差别数据就可以“恢复”出原帧。当然这里的恢复不是100%还原而是有损的
这种利用帧的时间先后顺序的方法属于时间压缩类算法。
空间压缩
思路一脉相承只不过这次是在同一张图片内部找到并消除重复数据。
例如大部分国家的国旗图片上面都是大面积的相同颜色完全可以消除重复。
JPEG格式的图片也是用的类似的方法。 再谈GOP
GOP就是两个关键帧之间的距离。 为什么需要多个关键帧而不是只发送视频的第一个关键帧即可 1. 用户是随机开始播放的并一定是从头开始 2. 若场景变化很大和最开始的关键帧相比几乎没什么冗余的部分此时压缩已经没有意义了 3. 中间再次发送新的关键帧也能纠正传输错误、误差等增强了可控制性 关键帧的另一个名字 Intra-coded frame帧内编码帧简称I帧
这种帧在解码时不依赖其他帧因此称为“帧内”。
预测帧Predicted frame简称P帧
P帧携带的是与前一帧相比差异的地方。
它既利用了时间压缩也使用了图片内部的空间压缩。
为什么叫预测帧预测了与前一帧的变化具体要深入实际的编码算法
双向预测帧Bi-directional Predicted frame简称B帧
B帧的压缩效果更好因为它仅携带和前后两帧之间的差异部分。 如何找到与未来帧之间的差异呢 很简单编码器先缓存一部分帧这样就知道未来帧是啥了 最后总结一下
GOP表示每多少帧发送一个I帧
I帧可以直接被解码不依赖外部
P帧解码需要依赖前一个P帧or I帧
B帧解码通常依赖前和后一个I帧 or P帧 下图中的两个B帧按FIFO解码 注意帧的显示顺序和帧实际被解码的顺序是不一样的。 相关阅读
AI视觉领域流媒体知识入门介绍一-CSDN博客