H.264/AVC视频编解码技术详解
课时介绍
现在我们已经实现了查找起始码,例如0001或001,并将文件指针移动到起始码后面的第一个字页位置。然而,这个函数的功能还是不完善的。下面我们希望在一次次调用这个函数时,可以实现以下功能:在查找起始码的过程中,读取并保存每个NLUnit的实际数据,并使用C++提供的STL容器vector来保存这些数据。我们需要在menu函数中调用这个函数,并将其参数修改为一个指向13的引用。我们也需要定义一个uint8变量来保存每次读取的字节值,并在每次读取后将其push到vector中。如果找到了一个001起始码,我们需要将vector中的最后三个值pop出来,因为它们是下一个NLUnit的起始码,而不属于当前NLUnit的内容。我们需要调用这个函数三次,直到找到001起始码为止,处理000起始码的方式类似。如果读取的字节不是起始码,我们需要获取其值并将其push到vector中。
我们尝试运行这个函数,发现它的vector为空。原因是文件开头就是0001起始码,而前面没有任何数据,所以我们需要再次运行函数来读取下一个NLUnit。我们编译并运行程序,发现vector的size为9,输出的内容为67420111858589800.00,这是正确的。我们再次调用函数并复制一部分文件进行测试,发现结果也是正确的。最后我们通过输出一些NLUnit的值,证实了函数的功能的确可以满足我们的要求。在后续的学习中,我们将进一步完善和优化这个函数,并将其集成到我们正在开发的马流分析器中。同时,我们还将专门讲解如何解析NLUnit的内容。
课程介绍
H.264/AVC是目前业界应用为广泛的视频压缩编码标准,包含了先进而且较为成熟的视频编码技术。本课程将从原理、标准和实现等多个角度,详细讲述了H.264/AVC视频编码标准的整体架构与技术细节,不但讲解了H.264/AVC标准协议文档中的内容,还通过实际的H.264码流分析/解码程序的开发来帮助观众更深入地理解H.264编码标准的原理。
推荐课程
信息系统项目管理师自考笔记
李明 · 512人在学
python从0到1:期货量化交易系统(CTP实战,高频及合成K线数据
王先生 · 20580人在学
手把手搭建Java超市管理系统【附源码】(毕设)
汤小洋 · 4047人在学
Java毕设springboot外卖点餐系统 毕业设计毕设源码 使用教
黄菊华 · 731人在学
基于SSM酒店管理系统(毕设)
小尼老师 · 785人在学
java项目实战之购物商城(java毕业设计)
Long · 5073人在学
手把手搭建Java求职招聘系统【附源码】(毕设)
汤小洋 · 1458人在学
Python Django 深度学习 小程序
钟翔 · 2234人在学
城管局门前三包管理系统+微信小程序(vue+springboot)
赖国荣 · 496人在学
Vue+Uni-app(uniapp)入门与实战+赠送仿美团点餐小程序
李杰 · 3843人在学