H.264编码实验


前言

H.264,又称为MPEG-4第10部分,高级视频编码(英语:MPEG-4 Part 10, Advanced Video Coding,缩写为MPEG-4 AVC)是一种面向块,基于运动补偿的视频编码标准 。到2014年,它已经成为高精度视频录制、压缩和发布的最常用格式之一。第一版标准的最终草案于2003年5月完成。

H.264的另外一个目标是提供足够的灵活性,以允许该标准能够应用于各种各样的网络和系统的各应用上,包括低和高比特率,低和高分辨率视频,广播,DVD存储,RTP / IP分组网络和ITU-T多媒体电话系统。H.264标准可以被视为由多个不同的应用框架 / 配置文件(profiles)组成的“标准系列”。

H.264/MPEG-4 AVC是一种面向块的基于运动补偿的编解码器标准。由ITU-T视频编码专家组与ISO/IEC联合工作组——即动态图像专家组(MPEG)——联合组成的联合视频组(JVT,Joint Video Team)开发。因ITU-T H.264标准和ISO/IEC MPEG-4 AVC标准(正式名称是ISO/IEC 14496-10—MPEG-4第十部分,高级视频编码)有相同的技术内容,故被共同管理。

H.264因其是蓝光盘的其中一种编解码标准而著名,所有蓝光盘播放器都必须能解码H.264。它也被广泛用于网络流媒体数据如Vimeo、YouTube、以及iTunes Store,网络软件如Adobe Flash Player和Microsoft Silverlight,以及各种高清晰度电视地面电视(ATSC、ISDB-T、DVB-T或DVB-T2)、线缆(DVB-C)以及卫星(DVB-S和DVB-S2)。


一、H.264编解码实验

1. H.264编码器输入参数文件说明

示例:pandas 是基于NumPy 的一种工具,该工具是为了解决数据分析任务而创建的。

二、实验步骤

1. 选择老师给的两个264文件进行解码,得到相应的YUV文件

在这里插入图片描述
我们可以看到程序的命令参数都是在encder.cfg中获得的,而程序的工作目录是./bin目录,也就是我们可以到./bin的相对路径中找到配置文件并对其进行修改
在这里插入图片描述

可以在此修改输入文件名称和输出文件名称
在这里插入图片描述

运行后,我们就可以得到264对应的yuv文件了

在这里插入图片描述
在这里插入图片描述

2. 将上述两个视频序列编码为.264文件

2.1 固定码率,以不同的GOP长度及形状编码

2.1.1 GOP=15,2B帧

修改encoder.cfg文件参数如下
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

在这里插入图片描述

执行程序得到输出
在这里插入图片描述
在这里插入图片描述

2.1.2 GOP=12,2B帧
2.1.3 GOP=9,2B帧
2.1.4 GOP=4,1B帧
2.1.5 GOP=12,0B帧
2.1.6 GOP=1,全I帧

2.1.2 - 2.1.6均同上可更改

2.2 相同的GOP长度及形状,不同的码率

在这里我们以GOP=15,2B帧为例子进行不同码率的测试

2.2.1 1000kb/s

在这里插入图片描述
在这里插入图片描述

2.2.2 800kb/s
2.2.3 400kb/s

2.2.2 - 2.2.3均同上可更改

3. 用码流分析软件检查所生成的码流中各种编码模式和运动矢量等信息

可以看到该示例264文件是IBBBBBBBBB的模式
在这里插入图片描述

在这里插入图片描述
我们也可以看到264文件中的运动矢量的变化## 标题
在这里插入图片描述

4. 用播放器观看所生成码流的质量

在这里插入图片描述

4.1 400000b/s

在这里插入图片描述

4.1 800000b/s

在这里插入图片描述

4.1 1000000b/s

在这里插入图片描述

5. 生成率失真曲线

5.1 400000b/s psnr = 37.171

在这里插入图片描述

5.1 800000b/s psnr = 50.794

在这里插入图片描述

5.1 1000000b/s psnr = 51.701

在这里插入图片描述
在这里插入图片描述


总结

H.264/AVC项目的目的是为了创建一个更佳的视频压缩标准,在更低的比特率的情况下依然能够提供良好视频质量的标准(如,一半或者更少于MPEG-2,H.263,或者MPEG-4 Part2 )。同时,还要不会太大的增加设计的复杂性。

  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值