mpeg2,mpeg4,h264编码标准的异同

1、宏块匹配像素精度: MPEG2中,运动估计的精度是1/2的像素,通过线性插值实现(可能有简单修正);

                                           H264和MPEG4 都可以支持1/4像素的精度

2、参考帧的数量:MPEG2,MPEG4的P帧只能有一帧参考帧,B帧可以有两帧参考帧

                                    H.264可以最多有15帧参考帧,一般情况下选择3-5帧作为参考帧

3、滤波器的结构插值滤波器不同,在MPEG4里面是简单的线性插值,而H264里面是5抽头的滤波器;

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

                                 H264有环内deblocking工具 


4、I帧的编码:    MPEG2没有INTRA预测,但是有DC参数预测;MPEG4没有INTRA预测,支持DC预测,

                                并且支持两个AC参数的预测。

                               H264支持INTRA预测,4*4共有9种模式 

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

                                             H.264最小可以到4*4尺寸


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

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

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

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

                                       H264提供基于上下文的CAVLC和CABAC 。

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

                                        H264则是提供NAL单层结构,提供参数集合的形式

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

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

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/254355.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

四十岁学编程(一)

有时想想,人生还真的是曲折,人到中年了,我才开始学编程。 这一学,就是三年多,我居然坚持了下来。 更没想到的是,三年后的我居然有勇气投简历求职前端,虽然面试前战战兢兢。 很多时候&#xff0c…

01_SQlite数据库简介

转载于:https://www.cnblogs.com/ZHONGZHENHUA/p/7023014.html

GNU Make 使用手册(中译版)

翻译:于凤昌译者注:本人在阅读Linux源代码过程中发现如果要全面了解Linux的结构、理解Linux的编程总体设计及思想必须首先全部读通Linux源代码中各级的Makefile文件。目前,在网上虽然有一些著作,但都不能全面的解释Linux源代码中各…

基础10 多进程、协程(multiprocessing、greenlet、gevent、gevent.monkey、select、selector)...

1.多进程实现方式(类似于多线程) 1 import multiprocessing2 import time,threading3 4 def thread_run():#定义一个线程函数5 print("我是子线程%s" %threading.get_ident()) #threading.get_ident()函数获取当前线程的id6 def run(name…

C#比较运算符及解析

文章目录博主写作不容易,孩子需要您鼓励 万水千山总是情 , 先点个赞行不行 比较运算符得出的结果是逻辑型(bool),即 True 或 False 。 比较运算符又称关系运算符,我们可以把它理解为一种判断,判断的结果…

开发人员MySQL调优-理论篇

2019独角兽企业重金招聘Python工程师标准>>> 修改字符集 查看字符集 show variables like character% show variables like %char% 上面的两个命令都可以,我一般使用的下面的,会出来如下几个字符集设定的选项: character_set_clie…

Java基础之反射机制

Java反射机制 反射机制是什么 反射机制是在运行状态中,对于任意一个类,都能够知道这个类的所有属性和方法;对于任意一个对象,都能够调用它的任意一个方法和属性;这种动态获取的信息以及动态调用对象的方法的功能称为ja…

C#逻辑运算符及解析

文章目录博主写作不容易,孩子需要您鼓励 万水千山总是情 , 先点个赞行不行 逻辑运算符用于连接一个或多个条件,判断这些条件是否成立。 C#的逻辑运算符可以分为两类: “&” “|” “&…

通过ProGet搭建一个内部的Nuget服务器

.NET Core项目完全使用Nuget 管理组件之间的依赖关系,Nuget已经成为.NET 生态系统中不可或缺的一个组件,从项目角度,将项目中各种组件的引用统统交给NuGet,添加组件/删除组件/以及更新组件即可一键完成,大大提升工作效…

unity官方教程-TANKS(一)

unity官方教程TANKS,难度系数中阶。跟着官方教程学习Unity,通过本教程你可以学会使用Unity开发游戏的基本流程。 一、环境 Unity 版本 > 5.2Asset Store 里面搜索 Tanks!Tutorial ,下载导入 二、项目设置 为了便于开发,很多时候我们选用的…

Play框架的用户验证。

最近刚刚参与一个基于Play框架的管理平台的升级工作,其中涉及到了用户的验证工作。第一次接触play框架,直接看已有代码,有点晕。因此,自己实现了一个简单的用户验证功能。 首先,新建一个User类,包含两个属性…

C#条件运算符if-else的简化格式

文章目录博主写作不容易,孩子需要您鼓励 万水千山总是情 , 先点个赞行不行 条件运算符(?:)是if……else的简化形式 其使用格式为&#xff1a…

码率控制方式选择

同码率下的图像质量或同图像质量下的码率。 AVCodecContext /** * the average bitrate * - encoding: Set by user; unused for constant quantizer encoding. * - decoding: Set by libavcodec. 0 or some bitrate if this info is available in the strea…

Fortran执行语句中的“双冒号” ::

双冒号“::”,通常出现于Fortran在变量声明中,但是在特殊情况下,也会出现于数组中。例如: ... real,target,dimension(10):: a real,pointer,dimension(:):: pa,pb integer:: n3 ... pa > a(n::1) pb > a(n:10:1) ... 咋一看…

VS配置本地IIS以域名访问

1.IIS下配置自己的网站,添加主机名 2.修改hosts文件(C://Windows/System32/drivers/etc) 3.VS中配置项目Web服务器(选择外部主机) 转载于:https://www.cnblogs.com/zuimeideshi520/p/7028544.html

try、catch、finally 和 throw-C#异常处理

文章目录博主写作不容易,孩子需要您鼓励 万水千山总是情 , 先点个赞行不行 异常是在程序执行期间出现的问题。C# 中的异常是对程序运行时出现的特殊情况的一种响应,比如尝试除以零。 异常提供了一种把程序控制权从某个部分转移到另一个部分的方式。…

Spark RDD/Core 编程 API入门系列 之rdd实战(rdd基本操作实战及transformation和action流程图)(源码)(三)...

本博文的主要内容是: 1、rdd基本操作实战 2、transformation和action流程图 3、典型的transformation和action RDD有3种操作: 1、 Trandformation 对数据状态的转换,即所谓算子的转换 2、 Action 触发作业,即所谓得结果…

用GDB调试程序

GDB概述GDB 是GNU开源组织发布的一个强大的UNIX下的程序调试工具。或许,各位比较喜欢那种图形界面方式的,像VC、BCB等IDE的调试,但如果你是在 UNIX平台下做软件,你会发现GDB这个调试工具有比VC、BCB的图形化调试器更强大的功能。所…

灯塔的出现给那些有想法,有能力而又缺乏资金的社区人士提供了一条途径

2019独角兽企业重金招聘Python工程师标准>>> 在上个月,BCH社区传出基于比特币现金的众筹平台Lighthouse(灯塔)正在复活的消息,并且有网友在论坛上贴出了部分网站图片。当消息被证实为真,官网和项目的审核细…