视频编码: 通过特定的压缩技术,将某个视频格式文件 转换成 另外一种视频格式文件
目的: 应该是 使保存/传输等 更节省空间 带宽 流量 等等等等 复杂就是为了节俭 O(∩_∩)O~~
例如
现在常用滴:
以下是总结这个的 编码格式
- H.264(AVC)
- 编码效率高 视频画质好 压缩技术的效率高 网络适应能力强 兼容性好 编码选项少
- 编码计算复杂度高,解码复杂度高 对播放的硬件系统要求高 会产生特别大体积文件 压缩视频的效率不高 不支持4K以上分辨率的视频 图像质量不高
- HEVC(H.265)
- 码率低,编码效率高 占存储空间少 节省带宽 网络适应能力更强 体积小 颜色看起来更好 支持 8K及以上的分辨率
- 兼容性差 解码难度更大 解码视频时对电量消耗高 实时编码难度大 编码器使用难度大 专利授权复杂
目前就用到这俩就写这俩完事 O(∩_∩)O~~
音频编码 大概就是为了 压缩音频
下边是百度出来滴
- 无损编码
无损编码技术能够在压缩音频文件的同时保留所有原始音频信息,适合对音质要求极高的场景。
FLAC:一种无损压缩格式,压缩率通常为1:2,支持多通道音频。还原后的文件与原始文件完全一致。
APE:另一种无损压缩格式,压缩后的文件大小约为原始WAV文件的一半,解压后与原始文件完全一致。
- 有损编码
有损编码通过牺牲部分音频信息来大幅减少文件大小,适合存储空间有限或网络传输的场景。
MP3:最常见的音频格式,能够在音质损失较小的情况下将文件压缩到更小的体积。
AAC:一种高效的有损编码格式,广泛应用于流媒体和移动设备,音质优于MP3。
- 蓝牙音频编码
蓝牙音频编码技术用于无线传输音频数据,影响音质、延迟和传输效率。
LDAC:由Sony开发,支持高达990 kbps的比特率,能够动态调整传输速率以适应信号强度,适合高解析度音频传输。
SBC:蓝牙A2DP协议的默认编码格式,最大比特率为328 kbps,兼容性广泛但音质较低。
AptX:一种低延迟编码技术,适合需要实时音频传输的场景,如游戏和视频通话。
框架
- VLC
- FFmpeg
- GStreamer 木有用过 之前也木有听过 也木有搜索过 也木有... (๑•̀ㅂ•́)و✧
视频 or 视频编码的 属性
帧率FPS 就是 每秒的帧数 高帧率更清晰 但是更大 对更大 (๑•̀ㅂ•́)و✧
分辨率 就是 视频每帧图像的大小/尺寸 越高 越清 但是更大 对更大 (๑•̀ㅂ•́)و✧
刷新率HZ 就是 屏幕每秒刷新图像的次数 由显示设备决定; 刷新率决定了屏幕展示的帧率上限;例如,120FPS的视频在60Hz的屏幕上只能显示60帧每秒。 对 越好的手机越 高清无码 (๑•̀ㅂ•́)و✧
码率 也就是比特率 单位时间内播放连续媒体的比特数(字节数)【单位时间内传输数据位数】,一般我们用的单位是kbps即千位每秒。 越高 消耗的 带宽流量越高。 一般码率越高越清晰 高清无码 (๑•̀ㅂ•́)و✧ 二般的话就是 清晰度 与视频质量 码率 编码算法都有关系 与以上同时都有关系 (๑•̀ㅂ•́)و✧
编码格式 就是上边介绍的一堆编码格式
封装格式 视频容器的格式 就是 文件格式
DTS : Decoding Time Stamp 音视频帧应该被解码的时间戳 就是 读入内存中的比特流在什么时候开始送入解码器中进行解
PTS: Presentation Time Stamp 音视频帧应该被显示或播放的时间戳 就是 解码后的是视频帧 社么时候显示出来。
DTS PTS 这俩货是音视频同步的关键。更多信息去看DTS PTS
YUV RGB 颜色空间模型 就是视频图片 数据排列不同 自己个搜吧
I P B 帧
- I 关键帧 最关键 它包含完整的画面 没有它后边的P B 就 PB了个寂寞
- P 前向预测帧 当前帧 与 之前的I帧或P帧 进行预测编码 没有完整画面 是与前一帧画面差别的数据
- B 双向预测帧 参考前一帧I帧或P帧 和 后一帧I帧或P帧进行预测编码 压缩率高 解码复杂