回顾各种编码的创新和异同-MEPG2, MPEG4, H.264/AVC以及H.265/HEVC比较[通俗易懂]

回顾各种编码的创新和异同-MEPG2, MPEG4, H.264/AVC以及H.265/HEVC比较[通俗易懂]1、宏块匹配像素精度:MPEG2中,运动估计的精度是1/2的像素,通过线性插值实现;                     H.264/AVC和MPEG4都可以支持1/4像素的精度.2、参考帧的数量:    MPEG2,MPEG4的P帧只能有一帧参考帧,B帧可以有两帧参考帧,H.264/AVC可以最多有15帧参考帧(创新之处),

大家好,又见面了,我是你们的朋友全栈君。如果您正在找激活码,请点击查看最新教程,关注关注公众号 “全栈程序员社区” 获取激活教程,可能之前旧版本教程已经失效.最新Idea2022.1教程亲测有效,一键激活。

Jetbrains全系列IDE使用 1年只要46元 售后保障 童叟无欺

1、宏块匹配像素精度: MPEG2中,运动估计的精度是1/2的像素,通过线性插值实现;

                      H.264/AVC和MPEG4 都可以支持1/4像素的精度.

2、参考帧的数量:     MPEG2,MPEG4的P帧只能有一帧参考帧,B帧可以有两帧参考帧 ,H.264/AVC可以最多有15帧参考帧(创新之处),

                      一般情况下选择3-5帧作为参考帧.

3、滤波器的结构:    插值滤波器不同,在MPEG4里面是简单的线性插值,

                     而H.264/AVC里面是5抽头的滤波器(首次提出环路滤波概念);

                     MPEG2没有环内deblocking工具,MPEG4有deblocking工具,但是属于postprocessing;

                     H.264/AVC有环内deblocking工具. 
4、I帧的编码:       MPEG2没有INTRA预测,但是有DC参数预测;MPEG4没有INTRA预测,支持DC预测,

                                     并且支持两个AC参数的预测(这可以理解为早期的帧内预测)。H.264/AVC支持INTRA预测,

                     4*4共有9种模式(这就是H.264的创新之处). 

5、匹配宏块大小的区别:MPEG2最小匹配块尺寸为8*8,MPEG4同样也为8*8,

                       H.264/AVC最小可以到4*4尺寸(创新点,不过复杂度成倍增加)

6、DCT变换的不同:   MPEG系列为8*8的DCT变换,逆变换时会出现漂移现象;

                     H.264/AVC为整数4*4的DCT变换,而且直流系数经过HADMARD变换之后做的DCT变换,

                     整数DCT变换可以防止逆变 换时出现漂移现象.

7、量化之后的编码:  MPEG2/MPEG4则都是基于huffman,并且头部的语法相对比较简单,很少使用变长码; 

                     H.264/AVC提供基于上下文的CAVLC和CABAC(复杂,但是节省码流) 。

8、编码之后的结构:  MPEG2/MPEG4都是分层结构;

                     H.264/AVC则是提供NAL单层结构,提供参数集合的形式

9、量化参数的区别:  MPEG4提供31个量化参数(量化模式:常量化,系统默认量化矩阵,自定义量化矩阵),

                     H.264/AVC提供51个量化参数(量化模式:常量化,量化矩阵,自定义有否还不确定);

其他小的细节也很多.

大家也可以再往下比较, H.265/HEVC的比较呢? 其实博文里面之前已经有过H.264/AVC和H.265/HEVC的大量比较.

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 举报,一经查实,本站将立刻删除。

发布者:全栈程序员-用户IM,转载请注明出处:https://javaforall.cn/191795.html原文链接:https://javaforall.cn

【正版授权,激活自己账号】: Jetbrains全家桶Ide使用,1年售后保障,每天仅需1毛

【官方授权 正版激活】: 官方授权 正版激活 支持Jetbrains家族下所有IDE 使用个人JB账号...

(0)


相关推荐

  • spring cloud 入门系列三:使用Eureka 搭建高可用服务注册中心

    在上一篇中分享了如何使用Eureka进行服务治理,里面搭建的服务注册中心是单体的,但是在实际的应用中,分布式系统为了防止单体服务宕机带来严重后果,一般都会采用服务器集群的形式,服务注册中心也是一样

  • Java与Python哪个更好?「建议收藏」

    Java与Python哪个更好?「建议收藏」一些开发人员声称Python比Java更有生产力。但更应先说明的是:Python和Java有什么区别?PythonvsJava            Java是一个典型化的编程语言,这意味着变量名必须显示声明。相比之下,我们有动态类型的Python,它不需要声明变量。对于编程语言的动态和静态类型有很多争论。不过请注意这样一个特征:Python是一个有着简单句法的多样性的语…

  • 飞机订票系统(C语言)

    飞机订票系统(C语言)用C语言解决飞机订票系统***一、问题描述:根据以下功能说明,设计航班信息、客户信息、订票信息的存储结构,设计程序完成相应功能。*录入:*可以录入航班情况(数据可以存储在一个数据文件中,数据个数不能少于8个、自行设计数据构成);客户信息(姓名,证件号,电话等);订票信息(订单要有编号,其余数据自行设计)。****查询:****可以查询某个航线的情况(如,输入航班号,查询起降时间,起飞抵达城市,航班票价,票价折扣,确定航班是否满仓);可以输入起飞抵达城市,查询飞机航班情况;****订票:**

  • group by 和 order by 的区别 + 理解过程

    group by 和 order by 的区别 + 理解过程orderby和groupby的区别order by 和 group by 的区别:1,order by 从英文里理解就是行的排序方式,默认的为升序。 order by 后面必须列出排序的字段名,可以是多个字段名。2,group by 从英文里理解就是分组。必须有“聚合函数”来配合才能使用,使用时至少需要一个分组标志字段。注意:聚合函数是—sum()、count()、…

  • 福利来了!手把手教你Python爬取女神套图

    福利来了!手把手教你Python爬取女神套图疲惫的生活里总要有些温柔梦想吧目标URL:http://www.win4000.com/meinvtag4_1.html爬取美桌网某个标签下的美女壁纸,点进详情页可以发现,里面是一组套图一、网页分析翻页查看URL变化规律:http://www.win4000.com/meinvtag4_1.htmlhttp://www.win4000.com/meinvtag4_2.htmlhttp://www.win4000.com/meinvtag4_3.htmlhttp:

  • 配置mysql读写分离[通俗易懂]

    配置mysql读写分离[通俗易懂]准备起码三台服务器我这里准备了192.168.0.63mycat192.168.0.64主192.168.0.65从然后是部署环境下载jbk和mycat,然后上传新建/usr/java/文件夹将jdk-8u321-linux-x64.tar.gz解压到该目录[root@xuegod63~]#mkdir/usr/java[root@xuegod63~]#tarxfjdk-8u321-linux-x64.tar.gz-C/usr/java/…

发表回复

您的电子邮箱地址不会被公开。

关注全栈程序员社区公众号