go开发运维(音开发必备知识)
go开发运维(音开发必备知识)Intra coded frames 内部编码帧 关键帧只使用单帧图像内的空间相关性,没有利用时间相关性。* I 帧 -- 一个完整的画面编码器将多张图像进行编码,生成 GOPGroup of PicturesGOP 是一组连续的画面,由一张 I 帧和数张 B / P 帧组成。视频中的画面帧包含哪些呢?
互联网信息的传播与娱乐方式经历了从文字到图片再到音视频的转变,现如今抖音、快手等短视频更是如日中天,特别是5G时代的到来,笔者相信互联网对音视频开发者的需求会迎来更大的增长需求,何况音视频开发者因为其稀缺性薪酬本来就比较高。
在学习音视频开发之前,我们先来了解一下音视频的基本知识。
首先从视频编码器和解码器开始1、编码器
专用音视频压缩编解码器芯片
数据
报警输入输出通道
网络接口
音视频接口
串行接口控制
协议接口控制
嵌入软件
在网络传输中需要小带宽,码流控制精度高是视频编码器的基本特性。
编码器将多张图像进行编码,生成 GOP
Group of Pictures
GOP 是一组连续的画面,由一张 I 帧和数张 B / P 帧组成。
视频中的画面帧包含哪些呢?
* I 帧 -- 一个完整的画面
Intra coded frames
内部编码帧
关键帧
只使用单帧图像内的空间相关性,没有利用时间相关性。
不依赖其他帧,随机存取的入点,是解码的基准帧。
主要用于视频播放的初始化,压缩倍数相对较低,图像是周期性出现在图像序列中,出现频率由编码器选择。
在视频播放中,如果 I 帧丢失,后面的 P 帧接不出来,出现卡顿和黑屏
* P 帧 - 采用帧间编码方式
Predictive-code frames
前向预测帧
前向参考帧
同时采用空间和时间上的相关性,图像只采用前向时间预测,可以提高压缩效率和图像质量。
没有完整画面数据,只有与前一帧的画面差别的数据。如果丢失,会出现花屏或者马赛克等。
* B 帧 - 采用双向时间预测
Bi-directional predicted frames
双向内插帧
双向参考帧
可以提高压缩倍数,采用未来帧参考。
在视频流中,B 帧无法立即解码,需要等待 I、P 帧先解码完成。
所以注意的是:
P 帧和 B 帧记录的是相对于 I 帧的变化
没有 I 帧,P 帧和 B 帧无法解码。
2、解码器:
对已编码的进行还原解码操作
real 编码器转换 rm 或者 rmvb 格式
包含:
* 软件解码器
* 硬件解码器
* 无线解码器
扩展链接:
1、百科编码器:
https://baike.baidu.com/item/视频编码器/10483427
2、百科解码器:
https://baike.baidu.com/item/视频解码器/8437114