论文部分内容阅读
在互联网的普及下,视频业务展现了其巨大地影响力,同时与之相关的视频处理技术自然也得到了越来越多的关注。其中有关如何利用视频处理技术来更好地满足视频业务的需求,一直以来都是人们研究的重点。一般来说,视频数据在存储传输、显示回放等过程中根据需求和应用的不同,涉及到的相关处理技术常常也是不尽相同的。例如在视频文件的存储、传输过程中,常用到预处理方法即采用容器封装的方式对视频文件先进行预处理。然而这种通用的方式虽然简单可靠,却存在一些潜在的缺陷,甚至无法满足某些特定场景的需求。针对视频预处理流程的优化自然也就成为了迫在眉睫的事项。为此,本文深入研究了视频文件的编码封装技术,总结出当下常规视频预处理中存在的基本规律,并以此作为切入点,提出了新的处理方案,达到快速视频预处理的目的。本文还研究了视频数据在显示回放过程中涉及的数据处理技术,通过分析存在的性能缺陷,提出了对应的优化方法。本文主要工作如下:(1)分析了现有的视频预处理技术的基本原理及其性能上的缺陷,针对这些缺陷提出改进思路,利用大部分视频所遵循的内在规律对现有视频预处理流程进行简化,提出了“索引式”视频预处理方法,保证了原始文件内部结构不被破坏、降低了磁盘IO。又从整体上分析设计了视频预处理程序的框架,将视频的封装、解析、编码及解码功能按照格式进行模块化处理,从而实现了在遵循统一处理流程的前提下,不同视频格式的解析解码操作之间的解耦。(2)针对不同类型的视频给出详细的“索引化”方法,包括公有视频格式(H.264、H.265、MPEG等)的索引化视频预处理,私有视频格式(某些厂商只提供解析器,而不公开字段含义)的索引化视频预处理。(3)为了解决处理播放器客户端大量视频数据时给播放器带来的性能问题,结合微软提供的DXVA硬解码输出接口,利用SSE多媒体指令,实现了从显存快速拷贝大块视频帧技术,减少了CPU的占用率。(4)论文的最后一部分,对本文提出的两个方法分开进行了实验设计实现及结果分析,对比了传统视频预处理技术与索引式视频预处理技术表现以及传统数据拷贝技术与视频硬解码数据快速拷贝技术的表现,证明了本文方法的有效性。