6. H.264/AVC编码器原理
1. H.264/AVC的应用
- 基本档次:主要用于“视频会话”,如会议电视,可视电话,远程医疗、远程教学等;
- 扩展档次:主要用于网络的视频流,如视频点播;
- 主要档次:主要用于消费电子应用,如数字电视广播,数字视频存储等。
2. H.264/AVC编解码器
2.1.编码器
编码器采用的仍是变换和预测的混合编码法 。H.264 编码器的功能组成如下图所示
2.2.解码器
3. H.264/AVC的结构
3.1.术语
3.2.档次和级
- 基本档次:利用 I 片和 P 片支持帧内和帧间编码,支持利用基于上下文的自适应的变长编码进行的熵编码(CAVLC)。主要用于可视电话、会议电视、无线通信等实时视频通信;
- 主要档次:支持隔行视频,采用 B 片的帧间编码和采用加权预测的帧内编码;支持利用基于上下文的自适应的算术编码(CABAC)。主要用于数字广播电视与数字视频存储;
- 扩展档次:支持码流之间有效的切换(SP 和 SI 片)、改进误码性能(数据分割),但不支持隔行视频和 CABAC。展档次包括了基本档次的所有功能,而不能包括主要档次的。
3.3.编码数据格式
- 高的视频压缩比;
- 良好的网络亲和性,即可适用于各种传输网络。
其中片头规定了片的类型,该片属于哪个图像,有关的参考图像等,片的数据包含一系列的编码 MB(宏块),和/或跳编码(不编码)数据。每个 MB 包含头单元(如下表所)示和残差数据。
3.4.帧内预测
- 允许编码器精确的表示像素值
- 提供表示不规则图像内容的准确值,而不引起重大的数据量增加。
- 严格限制宏块解码比特数,但不损害编码效率。
如上图 所示, 4×4 亮度块的上方和左方像素 A~Q 为已编码和重构像素,用作编解码器中的预测参考像素。 a~p 为待预测像素,利用 A~Q 值和 9 种模式实现。其中模式 2(DC 预测)根据 A~Q 中已编码像素预测,而其余模式只有在所需预测像素全部提供才能使用。图 下图 箭头表明了每种模式预测方向。对模式 3~8,预测像素由 A~Q 加权平均而得。例如,模式 4 中,p=round(B/4+C/2+D/4)。下表给出了这 9 种模式的描述。
3.5.帧间预测
类似的, h 由 A、 C、 G、 M、 R、 T 滤波得出。一旦邻近(垂直或水平方向)整像素点的所有像素都计算出,剩余的半像素点便可以通过对 6 个垂直或水平方向的半像素点滤波而得。例如, j 由cc, dd, h,m,ee,ff 滤波得出。这里说明的是, 6 抽头滤器比较复杂,但可明显改善运动补偿性能。
半像素点计算出来以后, 1/4 像素点就可通过线性内插得出,如图 6.23 所示。 1/4 像素点(如 a, c, i, k, d, f, n, q)由邻近像素内插而得,如
剩余 1/4 像素点(p, r)由一对对角半像素点线性内插得出。如, e 由 b 和 h 获得。相应地,色度像素需要 1/8 精度地 MV,也同样通过整像素地线性内插得出,如图 6.24 所示。
- 传输分割不包括 16×8 和 8×16 时, MVp 为 A、 B、 C 分割 MV 的中值;
- 16×8 分割,上面部分 MVp 由 B 预测,下面部分 MVp 由 A 预测;
- 8×16 分割,左面部分 MVp 由 A 预测,右面部分 MVp 由 C 预测;
- 跳跃宏块(skipped MB),同 1)。
转载于:https://www.cnblogs.com/CoderTian/p/8596068.html
6. H.264/AVC编码器原理相关推荐
- 《新一代视频压缩编码标准H.264/AVC》
资料:<新一代视频压缩编码标准H.264/AVC> 毕厚杰 有一些超出 音视频encode decode scope 的content,会过滤阅读,本次学习过程更偏向基础概念的理解,ter ...
- 笔记:新一代视频压缩编码标准-h.264/AVC
第一章绪论: 信源模型: 1.基于波形的编码.基于波形的编码采用了把预测编码和变化编码组合起来的基于块的混合编码方法. 2.基于内容的编码.mpeg4采用的编码方法即是基于块的混合编码,又有基于内容的 ...
- 在FPGA上实现H.264/AVC视频编码标准
尽管H.264/AVC承诺将此已有视频编码标准具有更高的编码效率,它仍为系统架构师.DSP 工程师和硬件设计人员带来了巨大的工程设计挑战.H.264/AVC 标准引入了自 1990 年推出 H.261 ...
- 【H.264/AVC视频编解码技术详解】四. 常见H.264视频编解码器(X264和JM)及参考软件JM的下载与编解码
<H.264/AVC视频编解码技术详解>视频教程已经在"CSDN学院"上线,视频中详述了H.264的背景.标准协议和实现,并通过一个实战工程的形式对H.264的标准进行 ...
- 【H.264/AVC视频编解码技术详解】八、 熵编码算法(2):H.264中的熵编码基本方法、指数哥伦布编码
<H.264/AVC视频编解码技术详解>视频教程已经在"CSDN学院"上线,视频中详述了H.264的背景.标准协议和实现,并通过一个实战工程的形式对H.264的标准进行 ...
- 视频编码标准H.264/AVC
H.264/AVC 是ITU-T VCEG 和ISO/IEC MPEG 共同开发的视频处理标准,ITU-T作为标准建议H.264,ISO/IEC作为国际标准14496-10(MPEG-4 第10部分) ...
- H.264/AVC视频编解码技术详解-殷汶杰-专题视频课程
H.264/AVC视频编解码技术详解-46880人已学习 课程介绍 H.264/AVC是目前业界应用为广泛的视频压缩编码标准,包含了先进而且较为成熟的视频编码技术.本课程将从原理.标准 ...
- 音视频编解码技术(一):MPEG-4/H.264 AVC 编解码标准
一.H264 概述 H.264,通常也被称之为H.264/AVC(或者H.264/MPEG-4 AVC或MPEG-4/H.264 AVC) 1. H.264视频编解码的意义 H.264的出现就是为了创 ...
- 视频教程-H.264/AVC视频编解码技术详解-其他
H.264/AVC视频编解码技术详解 毕业于上海大学通信与信息工程学院,研究生学历,硕士学位.研究方向为视频处理与传输,对H.264/AVC.H.265/HEVC.AVS.AVS+.AVS2等视频编解 ...
最新文章
- 李彦宏首次公布24字百度愿景,要做最懂用户的公司
- 减速电机JGA25-370的控制电路
- ssm插入数据时候栈溢出_程序员算法与数据结构基础中的基础,栈与递归
- C语言 | 函数指针、指针函数、数组指针、指针数组
- 第3章 Python 数字图像处理(DIP) - 灰度变换与空间滤波1 - 灰度变换和空间滤波基础、Sigmoid激活函数
- LVS高可用方案汇总
- matlab计算macd_matlab计算MACD指标
- PreferenceActivity使用简介
- 阿里本地生活电话面试
- 给初学者推荐一个【免费的PHP教学视频】
- 傅里叶变换与小波分析
- INFJ的人格成长阶段与功能类型
- 论文阅读 - On the efficacy of old features for the detection of new bots - CCF B
- 笔记:《深入浅出统计学》第八、九章:概率密度、正态分布(高斯分布)
- 各省金融机构存贷款余额、GDP、金融化程度、城镇化率、大专以上人口比重等(2012-2019年)
- 30岁,转行做软件测试后月薪9K,我仍然坚持转行
- vim插件——cscope
- 模拟微信公众号回调请求
- Fedora 12详细安装设置Compiz+Emerald+AWN实现特效
- 计算机主机拆卸的步骤,硬件组装教程:拆卸机箱与安装电源步骤图文介绍
热门文章
- Python入门字符串
- 获取ntoskrnl的基址
- 汇编之loop指令使用栈实现二重循环,同时了解汇编函数(过程)的概念用法
- [NOTE] Web For Pentester靶场练习笔记
- 无重复字符的最长子串_滑动窗口
- c++primer 4th edithon 第324页的一个练习题(9.43和9.44)
- c++ 该使用类内初始值么?
- CentOS下二进制包/源码安装方式的MySQL卸载步骤
- C++ volatile关键字说明
- 计算机网络——HTTP协议和Web