16 |视频编码的工作原理与H.264封装格式
展晓凯
你好,我是展晓凯。今天我们来一起学习视频编码的工作原理与 H.264 的封装格式。
前两节课我们一起学习了 iOS 与 Android 平台的视频画面采集,但是采集下来的内容最终是需要保存到一个视频文件中的,所以就需要用到视频编码相关的知识。
还记得前面我们讨论的音频压缩方式吗?音频编码主要是去除冗余信息,从而达到数据量压缩的目的。那视频方面的编码,又是通过什么方式来压缩数据的呢?其实和音频编码类似,视频编码也是通过去找出冗余信息来压缩数据的。但相比于音频数据,视频数据有极强的相关性,也就是说有大量的冗余信息,包括空间上的冗余信息和时间上的冗余信息。接下来我们就一起看一下目前比较主流的视频压缩标准。
编码标准介绍
我想你一定知道你 JPEG 格式的图片吧,其实它就是 ISO 制定的 JPEG 的图像编码标准。对于视频,ISO 同样也制定了标准,Motion JPEG 就是 MPEG,MPEG 算法是适用于动态视频的压缩算法,它除了可以对单幅图像进行编码外,还可以利用图像序列中的相关性原则,去掉冗余信息,这样就可以大大提高视频的压缩比。
发展到现在,MPEG 也已经经历过了好多代,版本一直在不断更新中,主要有这几个版本:Mpeg1,VCD 用的就是它;Mpeg2,在 DVD 中使用;还有 Mpeg4 AVC,现在的流媒体中使用最多的就是它了。
公开
同步至部落
取消
完成
0/2000
荧光笔
直线
曲线
笔记
复制
AI
- 深入了解
- 翻译
- 解释
- 总结
视频编码是将视频数据进行压缩以减小文件大小或节省网络带宽的过程。本文介绍了视频编码的工作原理以及H.264封装格式。视频编码通过去除冗余信息来压缩数据,其中H.264是目前主流的视频压缩标准,采用了多参考帧、多块类型、整数变换等新的压缩技术,大大提高了压缩性能。文章还介绍了视频帧类型,包括I帧、P帧和B帧,以及消除时间上的冗余信息的帧间预测技术。通过运动估计算法,视频编码可以消除时间上的冗余信息,进而实现更高效的压缩。 在H.264的NALU部分,我们学习了NALU的组成方式以及各种NALU Type,包括SPS、PPS、IDR、SEI等。而在封装格式部分,重点讲解了AVCC格式和Annex-B格式的区别和具体构造。 总的来说,本文深入介绍了视频编码的原理和H.264封装格式,为读者提供了全面的技术知识。对于对音视频感兴趣的读者来说,这篇文章是一次深入了解视频编码技术的绝佳机会。
仅可试看部分内容,如需阅读全部内容,请付费购买文章所属专栏
《快手 · 移动端音视频开发实战》,新⼈⾸单¥59
《快手 · 移动端音视频开发实战》,新⼈⾸单¥59
立即购买
© 版权归极客邦科技所有,未经许可不得传播售卖。 页面已增加防盗追踪,如有侵权极客邦将依法追究其法律责任。
登录 后留言
全部留言(1)
- 最新
- 精选
- peter请教老师几个问题: Q1:图像的“频率”是指什么? 文中提到“它利用图像在低频部分的能量分布比较多,在高频比较少这一特点”, 提到了低频、高频,图像的“频率”是指什么? Q2:startCode 部分替换为 NALULength后的效果是什么? 文中的Annex-B部分,有这样一句“如果需要逆方向的格式转换,你也可以自己将 startCode 部分替换为 NALULength”, 替换以后的效果是什么呢? Q3:修改歌词,然后唱出完整的音乐,有这样的软件吗? 比如《可可托海的牧羊人》这首歌,修改歌词以后,还能完整唱出来,有这样的软件吗?(用原声唱,或者用其他声音唱,都可以)。
作者回复: A1: 高频指的是:图像强度变化剧烈的地方,也就是我们常说的边缘部分;低频值的是:图像强度变换平缓的地方,也就是大片色块的地方;非常经典的一个场景就是磨皮效果器,也叫保边滤波; A2:就是mp4格式的了;如果要写入到mp4文件中去,需要mp4封装格式的H264而不是Annexb格式的H264; A3:目前没有这样的软件吧,因为歌曲生成的歌词是需要详细标注的,标注之后才能有音素的模版,最终才可能按照这个模版结合你的语音模型去生成一个音乐。
2022-08-29归属地:北京
收起评论