本章着重介绍有关MPEG-4 Visual标准的细节。

Tool

编码工具集合的子集(比如支持交织等)。

Object

视频元素(比如一个矩形视频帧,或者一个任意形状的区域,静止的图像)。

Profile

视频对象类型的集合。

Level

每个Profile都会有多个Level,不同的Level对机器性能的要求各不相同,因此适用于不同的应用和环境。

VO(Video Object)

视频的一帧是一个VOP(Video Object Plane),多个VOP组成一个VO。VOP可以是矩形的也可以是任意形状的。

The Simple Profile

Simple Profile中的特性。

I-VOP

即通常所说的I帧,该帧的编码不依赖于其他帧,即Intra mode。

P-VOP

即通常所说的P帧,该帧的编码依赖于之前编码了的I帧或P帧。P帧中的宏块可以用帧内编码(出现一块新的找不到很好匹配的区域),或者帧间编码(利用运动补偿,估计)。

编码效率工具

这里介绍了一些提升编码效率的工具

Four motion vector per macroblock

缩小宏块大小,增加运动向量个数,达到更精确的匹配

Unrestricted Motion Vector

在帧边缘位置的宏块,如果物体从边缘位置进入屏幕范围,极有可能搜索不到比较好的匹配,但是如果将边缘位置按照像素值“外推(extrapolate)”,那么匹配准确度会明显提升。

Intra Prediction

因为相邻宏块的内容变化可能并不显著(马尔科夫特性),因此宏块的DC和AC系数可以根据相邻宏块进行预测。

传输效率工具

这里介绍了一些提升传输效率的工具

Video Packet

Packet又称之为Slice,在Packet的头部可以增加一个Sync标签,辅助解码器同步,防止错误的传递。

Data Partitioning

将数据分成两部分传递,第一部分保存每个宏块的编码模式和每个帧内编码宏块的DC系数或者帧间编码宏块的运动向量。而帧间编码宏块的AC系数和DC系数存储在第二部分,这样即使第二部分数据出现了错误,依靠第一部分的数据依然可以恢复出来。

Reversible VLCs

即Reversible Variable Length Codes,使得解码器可以正反两个方向解码,以此减小错误所影响的范围。

The Advanced Simple Profile

Advanced Simple Profile中的特性。

B-VOP

即B帧,双向预测帧。

Quarter-Pixel Motion Vectors

四分之一像素为单位的运动向量,提升精度。

Alternate quantiser

边长的量化步长,低频区域步长小,高频区域步长大,这样能够更高效地压缩。

Global Motion Compensation

支持全局的运动向量共享。

Interlace

对交织的支持。

  • Frame DCT Mode
  • Field DCT Mode

The Advanced Real Time Simple Profile

Advanced Real Time Simple Profile中的特性。

NEWPRED

new prediction,即支持选择更早的VOP进行预测,当出现错误时,利用之前较早的未出现错误的VOP预测,可以防止错误的传递。

Dynamic Resolution Conversion

当画面中出现较复杂的场景变化时,往往会意味着码率的瞬时提高,此时可以通过降低分辨率的方式来减小码率。

Chapter 5. MPEG-4 Visual的更多相关文章

  1. (英文版)使用Visual Studio 2015 编写 MASM 汇编程序!

    原文地址:http://kipirvine.com/asm/gettingStartedVS2015/index.htm#CreatingProject Getting Started with MA ...

  2. Interacted Action-Driven Visual Tracking Algorithm

    文章来源:Attentional Action-Driven Deep Network for Visual Object Tracking   博士论文(2017年8月份完稿) http://s-s ...

  3. VES Hand Book Contents

    3...ABOUT THE VES4...Foreword 6...Chapter 1......Introduction6......Visual Effects and Special Effec ...

  4. 转:LIRe 源代码分析

    1:整体结构 LIRE(Lucene Image REtrieval)提供一种的简单方式来创建基于图像特性的Lucene索引.利用该索引就能够构建一个基于内容的图像检索(content- based ...

  5. LIRe 源代码分析 2:基本接口(DocumentBuilder)

    ===================================================== LIRe源代码分析系列文章列表: LIRe 源代码分析 1:整体结构 LIRe 源代码分析 ...

  6. 零元学Expression Blend 4 - Chapter 33 简单轻松的学会如何使用Visual States(下)

    原文:零元学Expression Blend 4 - Chapter 33 简单轻松的学会如何使用Visual States(下) 上篇提到了Visual State Manager中文翻译为视觉状态 ...

  7. 零元学Expression Blend 4 - Chapter 32 简单轻松的学会如何使用Visual States(上)

    原文:零元学Expression Blend 4 - Chapter 32 简单轻松的学会如何使用Visual States(上) Visual State Manager中文翻译为视觉状态管理器,这 ...

  8. how to build apache log4cxx 0.10 by Visual Studio 201*

    Chapter 1 Official Steps  We are going to follow the steps here, http://logging.apache.org/log4cxx/b ...

  9. [转]第四章 使用OpenCV探测来至运动的结构——Chapter 4:Exploring Structure from Motion Using OpenCV

    仅供参考,还未运行程序,理解部分有误,请参考英文原版. 绿色部分非文章内容,是个人理解. 转载请注明:http://blog.csdn.net/raby_gyl/article/details/174 ...

随机推荐

  1. JS执行效率与性能提升方案

    如果是追加字符串,最好使用s+=anotherStr操作,而不是要使用s=s+anotherStr.如果要连接多个字符串,应该少使用+=,如 s+=a;s+=b;s+=c;应该写成s+=a + b + ...

  2. Phaser类详解

    Phaser允许并发多阶段任务.Phaser类机制是在每一步结束的位置对线程进行同步,当所有的线程都完成了这一步,才允许执行下一步. 一个Phaser对象有两种状态: 活跃态(Active):当存在参 ...

  3. 【转】解决response.AddHeader("Content-Disposition", "attachment; fileName=" + fileName) 中文显示乱码

    如果fileName为中文则乱码.解决办法是 方法1: response.setHeader("Content-Disposition", "attachment; fi ...

  4. centos永久修改主机名

    永久修改主机名 以上的修改只是临时修改,重启后就恢复原样了. 步骤1: 修改/etc/sysconfig/network中的hostname vi /etc/sysconfig/network HOS ...

  5. [C#] BarcodeLib -- 一个精简而不失优雅的条形码生成库

    BarcodeLib -- 一个精简而不失优雅的条形码生成库 引言 在百度进行“C# 条形码”等类似关键字搜索的时候,基本上是使用 ZXing 类库进行条形码的生成.今天我所介绍的是另一款类库 Bar ...

  6. 关于关系型数据库(MySQL)的一些概念

    主键:关系型数据库中的一条记录中有若干个属性,若其中某一个属性组(注意是组)能唯一标识一条记录, 该属性组就可以成为一个主键,主键不允许为空,主键只能有同一个 外键:如果一个表的某个属性是另一个表的主 ...

  7. Day2-字符编码转换

    1.在python2默认编码是ASCII, python3里默认是unicode 2.unicode 分为 utf-32(占4个字节),utf-16(占两个字节),utf-8(占1-4个字节), so ...

  8. html学习笔记 - sublime text 插件安装

    command + shift + p 呼出搜索界面 输入 Packge Control:Install Package 进入到插件搜索列表 Emmet -- >快速生成html标签结构 Emm ...

  9. 改进Android语音对讲系统的方法

    本文属于Android局域网内的语音对讲项目系列,<实时Android语音对讲系统架构>阐述了局域网内Android语音对讲功能的框架,本文在此基础上进行了优化,包括音频的录制.播放,通信 ...

  10. fiddler导致页面确定按钮无法使用(测试遇到的问题经验)

    这几天在测试的是遇到几个问题,就是在删除或者保存有些提示信息的时候 比如下面这种: 点击确定的时候,一直无响应,换了几台电脑其他电脑都是正常的,本机清楚缓存.关闭浏览器重新打开.重启电脑都试过了了就是 ...