视频编码 == 视频压缩视频解码 == 视频解压缩后播放视频压缩的情况对于物品没动,只有摄像头动的情况:全局运动预测存整体信息和镜头运动轨迹对于摄像头没动,镜头里只有局部物品运动的情况:存发生变化的(8x8)格子信息对于镜头切换的情况:Intra frame 关键帧Prediction Frame ... ...
分类:
其他好文 时间:
2018-03-18 01:23:10
阅读次数:
217
一、PPS相关概念: 除了序列参数集SPS之外,H.264中另一重要的参数集合为图像参数集Picture Paramater Set(PPS)。 通常情况下,PPS类似于SPS,在H.264的裸码流中单独保存在一个NAL Unit中, PPS NAL Unit的nal_unit_type值为8 在封 ...
分类:
其他好文 时间:
2018-03-11 19:16:59
阅读次数:
200
一、准备工作: 回到之前 程序,找到SPS信息,并对其做解析 调整项目目录结构: ![1][1] 修改 文件中代码,添加新数据类型UINT16,之前编写的工程中,UINT8和UINT32都为小写表示,为了更符合编程规范,将其改为全大写(可使用ctrl+H在整个解决方案内进行替换)。 之后编写的程序会 ...
分类:
其他好文 时间:
2018-03-11 19:11:34
阅读次数:
250
一、H.264中的熵编码基本方法: 熵编码具有消除数据之间统计冗余的功能,在编码端作为最后一道工序,将语法元素写入输出码流 熵解码作为解码过程的第一步,将码流解析出语法元素供后续步骤重建图像使用 在H.264的标准协议中,不同的语法元素指定了不同的熵编码方法。在协议文档中共指定了10种语法元素的描述 ...
分类:
编程语言 时间:
2018-03-05 11:07:16
阅读次数:
202
一、熵编码概念: 熵越大越混乱 信息学中的熵: 用于度量消息的平均信息量,和信息的不确定性 越是随机的、前后不相关的信息,其熵越高 信源编码定理: 说明了香农熵越信源符号概率之间的关系 信息的熵为信源无损编码后平均码长的下限 任何的无损编码方法都不可能使编码后的平均码长小于香农熵,只能使其尽量接近 ...
分类:
编程语言 时间:
2018-02-12 13:48:49
阅读次数:
248
一、准备工作: 新建一个VS工程 SimpleH264Analyzer , 修改工程属性参数 输出目录: ,工作目录: 编译一下工程,工程目录下会生成 文件夹,其中的debug文件夹中有刚才编译生成的exe文件。将一个.264视频文件拷贝到这个文件夹中(本次使用的仍是 "学习笔记3" 中生成的.26 ...
分类:
其他好文 时间:
2018-02-11 23:43:36
阅读次数:
404
FFmpeg是一套可以用来记录、转换数字音频、视频,并能将其转化为流的开源计算机程序。采用LGPL或GPL许可证。它提供了录制、转换以及流化音视频的完整解决方案。它包含了非常先进的音频/视频编解码库libavcodec,为了保证高可移植性和编解码质量,libavcodec里很多code都是从头开发的 ...
分类:
其他好文 时间:
2018-02-08 10:17:01
阅读次数:
281
一、码流封装格式简单介绍: H.264的语法元素进行编码后,生成的输出数据都封装为NAL Unit进行传递,多个NAL Unit的数据组合在一起形成总的输出码流。对于不同的应用场景,NAL规定了一种通用的格式适应不同的传输封装类型。 通常NAL Unit的传输格式分两大类:字节流格式和RTP包格式 ...
分类:
其他好文 时间:
2018-02-05 10:44:59
阅读次数:
255
在上一节中通过一个小程序,可以提取NAL Unit所包含的的字节数据。H.264码流中的每一个NAL Unit的作用并不是相同的,而是根据不同的类型起不同的作用。下面将对NAL Unit中的数据进行解析。 一、NAL Unit结构 一个NAL Unit都是由一个NAL Header和一个NAL Bo ...
分类:
其他好文 时间:
2018-02-05 10:33:42
阅读次数:
117
一、H.264视频编码标准 H.264视频编码标准是ITU T与MPEG合作产生的又一巨大成果,自颁布之日起就在业界产生了巨大影响。严格地讲,H.264标准是属于MPEG 4家族的一部分,即MPEG 4系列文档ISO 14496的第10部分,因此又称作MPEG 4/AVC。同MPEG 4重点考虑的灵 ...
分类:
其他好文 时间:
2018-01-29 11:37:21
阅读次数:
181