一种视频文件播放方法及装置与流程

文档序号:14881240发布日期:2018-07-07 09:47阅读:197来源:国知局

本发明涉及多媒体技术领域,具体而言,涉及一种视频文件播放方法及装置。



背景技术:

传统的智能识别参数都是通过存储,分析后存储在磁盘空间,需要的时候才通过读取磁盘文件与视频文件播放呈现给用户,具有一定的延时性。

存储的智能文件数据都是原始的文件数据,通过网络传输必须要先识别完成以后,才能传输,传输过程一个文件传输结束继续传输另外一个文件,不能达到别识别边传输,实时传输效果差。此外,由于传统的播放方法,需要单独存储智能参数和视频文件,造成需要管理同一个处理视频需要存储多个文件。



技术实现要素:

有鉴于此,本发明的目的在于提供一种视频文件播放方法及装置,以解决上述问题。

为了实现上述目的,本发明实施例采用的技术方案如下:

第一方面,本发明实施例提供了一种视频文件播放方法,所述视频文件播放方法包括:

向一服务器发起视频播放请求;

获取与所述视频播放请求对应的视频文件;

对所述视频文件进行解析,获得智能参数信息;

对所述视频文件进行解析,获得视频数据以及音频数据;

在整合所述智能参数信息、所述视频数据以及所述音频数据后,进行播放。

第二方面,本发明实施例还提供了一种视频文件播放装置,所述视频文件播放装置包括:

请求发送单元,用于向一服务器发起视频播放请求;

视频文件获取单元,用于获取与所述视频播放请求对应的视频文件;

解析单元,用于对所述视频文件进行解析,获得智能参数信息;

所述解析单元还用于对所述视频文件进行解析,获得视频数据以及音频数据;

播放单元,用于在整合所述智能参数信息、所述视频数据以及所述音频数据后,进行播放。

本发明实施例提供的视频文件播放方法及装置,通过对获取的视频文件进行解析,获得智能参数信息、视频数据以及音频数据,再在整合所述智能参数信息、所述视频数据以及所述音频数据后,进行播放;由于智能参数信息、视频数据以及音频数据全部合在一个视频文件中,从而使得每一帧的智能参数信息都与本帧的音频数据、视频数据关联保存,提高了网络传输以及播放的实时性;此外,由于视频数据和智能参数信息无需再单独存放,因而减少了存储空间的占用率,一定程度上释放了存储空间。

为使本发明的上述目的、特征和优点能更明显易懂,下文特举较佳实施例,并配合所附附图,作详细说明如下。

附图说明

为了更清楚地说明本发明实施例的技术方案,下面将对实施例中所需要使用的附图作简单地介绍,应当理解,以下附图仅示出了本发明的某些实施例,因此不应被看作是对范围的限定,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他相关的附图。

图1示出了本发明实施例提供的用户终端的功能框图。

图2示出了本发明实施例中视频文件的封装格式示意图。

图3示出了本发明实施例提供的视频文件播放方法的流程图。

图4示出了图3中步骤s203的具体流程图。

图5示出了图3中步骤s204的具体流程图。

图6示出了本发明实施例提供的视频文件播放装置的功能模块图。

图标:100-用户终端;101-存储器;102-存储控制器;103-处理器;104-外设接口;105-射频单元;106-显示屏;200-视频文件播放装置;210-请求发送单元;220-视频文件获取单元;230-解析单元;240-播放单元。

具体实施方式

下面将结合本发明实施例中附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。通常在此处附图中描述和示出的本发明实施例的组件可以以各种不同的配置来布置和设计。

因此,以下对在附图中提供的本发明的实施例的详细描述并非旨在限制要求保护的本发明的范围,而是仅仅表示本发明的选定实施例。基于本发明的实施例,本领域技术人员在没有做出创造性劳动的前提下所获得的所有其他实施例,都属于本发明保护的范围。

请参阅图1,图1示出了一种可应用于本发明实施例中的用户终端100的功能框图。如图1所示,用户终端100包括视频文件播放装置200、存储器101、存储控制器102,一个或多个(图中仅示出一个)处理器103、外设接口104、射频单元105、显示屏106等。这些组件通过一条或多条通讯总线/信号线相互通讯。所述视频文件播放装置200包括至少一个可以软件或固件(firmware)的形式存储于所述存储器101中或固化在所述用户终端100的操作系统(operatingsystem,os)中的软件功能单元。

存储器101可用于存储软件程序以及单元,如本发明实施例中的视频文件播放装置及方法所对应的程序指令/单元,处理器103通过运行存储在存储器101内的软件程序以及单元,从而执行各种功能应用以及数据处理,如本发明实施例提供的视频文件播放方法。存储器101可包括高速随机存储器101,还可包括非易失性存储器101,如一个或者多个磁性存储装置、闪存、或者其他非易失性固态存储器101。处理器103以及其他可能的组件对存储器101的访问可在存储控制器102的控制下进行。

外设接口104将各种输入/输出装置耦合至处理器103以及存储器101。在一些实施例中,外设接口104、处理器103以及存储控制器102可以在单个芯片中实现。在其他一些实例中,他们可以分别由独立的芯片实现。

射频单元105用于接收以及发送电磁波,实现电磁波与电信号的相互转换,从而与通讯网络或者其他设备进行通讯、进行数据传输。

显示屏106用于供用户观看视频。

可以理解,图1所示的结构仅为示意,用户终端100还可包括比图1中所示更多或者更少的组件,或者具有与图1所示不同的配置。图1中所示的各组件可以采用硬件、软件或其组合实现。

第一实施例

本发明实施例提供了一种视频文件播放方法,用于快速播放视频文件。需要说明的是,本发明实施例主要应用于按照mpeg格式进行封装的媒体文件的播放场景中。

请参阅图2,为发明实施例提供的视频文件播放方法的流程图。该视频文件播放方法包括:

步骤s201:向一服务器发起视频播放请求。

服务器中存储有预先制作、录制的视频文件,当用户需求进行视频播放时,通过用户终端100向服务器发起视频播放请求。

步骤s202:获取与视频播放请求对应的视频文件。

在本实施例中,视频文件采用mpeg2-ps进行封装。mpeg2-ps是一种多路复用数字音频、视频等的封装容器,且传输媒体采用节目流(programstream,ps)进行传输,ps流的包结构是可变长度的。

请参阅图3,为视频文件的封装格式示意图。视频文件包括头文件(psheader)以及有效载荷文件(pspayload)。其中,头文件主要介绍视频文件中存在的流媒体信息。一个视频文件中可以存在多个流媒体,该流媒体可以是但不仅限于音频数据、视频数据、字幕数据或是智能参数信息等等。通过查询头文件,可以得知视频文件存在的流媒体数量以及具体类型。

有效载荷文件则是用于存储的流媒体信息本身包含的数据,且有效载荷文件可以包括多种流媒体信息,其中,每个流媒体形成单独的一个pes包,相应地,pes包包括pesheader和pespayload。pesheader用于表示与之对应的pespayload是什么类型的数据流,pespayload则是数据流本身。具体地,不同的pespayload的pesheader具有不同的id,其中,streamid=0xe0表示该pespayload为视频流,streamid=0xc0表示该pespayload为音频流,streamid=0xf表示该pespayload为智能参数信息。

通常地,视频文件和智能参数信息分别为独立的文件,分别存储以及进行存储。在用户发起视频播放请求时,需要分别获取视频文件和智能参数信息,才能正在播放目标视频,这导致用户不能实时获取完整的视频信息。而本实施例获取的视频文件,将视频数据和智能参数信息通过不同的streamid整合在一个视频文件中,从而使得每一帧的智能参数信息都与本帧的音频数据、视频数据关联保存,提高了网络传输的实时性。此外,由于视频数据和智能参数信息无需再单独存放,因而减少了存储空间的占用率,一定程度上释放了存储空间。

步骤s203:对视频文件进行解析,获得智能参数信息。

请参阅图4,为步骤s203的具体流程图。步骤s203包括:

子步骤s2031:对视频文件进行解析,获得视频文件的有效载荷文件。

可以理解地,对视频文件进行解析获取有效载荷文件的过程,即为解封装过程。按照与封装格式所对应的解封装方法对视频文件进行解封装,可以获得视频文件的各种媒体流,即有效载荷文件(pspayload)部分。

子步骤s2032:对有效载荷文件进行解析,获得智能参数信息。

由于有效载荷文件包括多种流媒体以及智能参数信息,因而需要再次对有效载荷文件进行解析,才能获取智能参数信息。具体地,依据预存储的索引标识从有效载荷文件中获得智能参数信息。

由于视频数据、音频数据以及智能参数信息具有不同的streamid,分布对应为视频标识、音频标识以及索引标识,因而通过解析有效载荷文件中的索引标识,便能获得智能参数信息。

需要说明的是,智能参数信息包括但不仅限于视频文件的格式信息、目标动作、音/视频帧的位置、大小信息以及时间信息。

步骤s204:对视频文件进行解析,获得视频数据以及音频数据。

请参阅图5,为步骤s204的具体流程图。步骤s204包括:

子步骤s2041:对视频文件进行解析,获得视频文件的有效载荷文件。

子步骤s2042:依据预存储的视频标识从有效载荷文件中获取视频数据。

子步骤s2043:依据预存储的音频标识从有效载荷文件中获取音频数据。

步骤s205:在整合智能参数信息、视频数据以及音频数据后,进行播放。

需要说明的是,在通过整合智能参数信息、视频数据以及音频数据的过程中,首先需要对视频数据以及音频数据按照demux方法进行解码,再根据智能参数信息获得预期效果,最后将预期效果显示到解码后的视频数据上,实现了实时播放,减少了传统方式中,由于等待智能参数信息造成的时延性。

第二实施例

请参阅图6,图6为本发明较佳实施例提供的一种视频文件播放装置200。需要说明的是,本实施例所提供的视频文件播放装置200,其基本原理及产生的技术效果和上述实施例相同,为简要描述,本实施例部分未提及之处,可参考上述的实施例中相应内容。该视频文件播放装置200包括:请求发送单元210、视频文件获取单元220、解析单元230以及播放单元240。

其中,请求发送单元210用于向一服务器发起视频播放请求。

服务器中存储有预先制作、录制的视频文件,当用户需求进行视频播放时,通过用户终端100向服务器发起视频播放请求。

可以理解地,在一种优选的实施例中,请求发送单元210可用于执行步骤s201。

视频文件获取单元220用于获取与视频播放请求对应的视频文件。

视频文件包括头文件(psheader)以及有效载荷文件(pspayload)。其中,头文件主要介绍视频文件中存在的流媒体信息。一个视频文件中可以存在多个流媒体,该流媒体可以是但不仅限于音频数据、视频数据、字幕数据或是智能参数信息等等。通过查询头文件,可以得知视频文件存在的流媒体数量以及具体类型。

有效载荷文件则是用于存储的流媒体信息本身包含的数据,且有效载荷文件可以包括多种流媒体信息,其中,每个流媒体形成单独的一个pes包,相应地,pes包包括pesheader和pespayload。pesheader用于表示与之对应的pespayload是什么类型的数据流,pespayload则是数据流本身。具体地,不同的pespayload的pesheader具有不同的id,其中,streamid=0xe0表示该pespayload为视频流,streamid=0xc0表示该pespayload为音频流,streamid=0xf表示该pespayload为智能参数信息。

通常地,视频文件和智能参数信息分别为独立的文件,分别存储以及进行存储。在用户发起视频播放请求时,需要分别获取视频文件和智能参数信息,才能正在播放目标视频,这导致用户不能实时获取完整的视频信息。而本实施例获取的视频文件,将视频数据和智能参数信息通过不同的streamid整合在一个视频文件中,从而使得每一帧的智能参数信息都与本帧的音频数据、视频数据关联保存,提高了网络传输的实时性。此外,由于视频数据和智能参数信息无需再单独存放,因而减少了存储空间的占用率,一定程度上释放了存储空间。

可以理解地,在一种优选的实施例中,视频文件获取单元220可用于执行步骤s202。

解析单元230用于对视频文件进行解析获得智能参数信息。

具体地,解析单元230用于对视频文件进行解析,获取视频文件的有效载荷文件;并对有效载荷文件进行解析,获得智能参数信息。

可以理解地,对视频文件进行解析获取有效载荷文件的过程,即为解封装过程。按照与封装格式所对应的解封装方法对视频文件进行解封装,可以获得视频文件的各种媒体流,即有效载荷文件(pspayload)部分。

由于有效载荷文件包括多种流媒体以及智能参数信息,因而需要再次对有效载荷文件进行解析,才能获取智能参数信息。具体地,依据预存储的索引标识从有效载荷文件中获得智能参数信息。

由于视频数据、音频数据以及智能参数信息具有不同的streamid,分布对应为视频标识、音频标识以及索引标识,因而通过解析有效载荷文件中的索引标识,便能获得智能参数信息。

需要说明的是,智能参数信息包括但不仅限于视频文件的格式信息、目标动作、音/视频帧的位置、大小信息以及时间信息。

可以理解地,在一种优选的实施例中,解析单元230可用于执行步骤s203、子步骤s2031以及子步骤s2032。

解析单元230还用于对视频文件进行解析获得视频数据以及音频数据。

具体地,解析单元230用于对视频文件进行解析,获得视频文件的有效载荷文件;并依据预存储的视频标识从有效载荷文件中获取视频数据;并依据预存储的音频标识从有效载荷文件中获取音频数据。

可以理解地,在一种优选的实施例中,解析单元230可用于执行步骤s204、子步骤s2041以及子步骤s2042。

播放单元240用于在整合智能参数信息、视频数据以及音频数据后进行播放。

需要说明的是,在通过整合智能参数信息、视频数据以及音频数据的过程中,首先需要对视频数据以及音频数据按照demux方法进行解码,再根据智能参数信息获得预期效果,最后将预期效果显示到解码后的视频数据上,实现了实时播放,减少了传统方式中,由于等待智能参数信息造成的时延性。

可以理解地,在一种优选的实施例中,播放单元240可用于执行步骤s205。

综上所述,本发明实施例提供的视频文件播放方法及装置,通过对获取的视频文件进行解析,获得智能参数信息、视频数据以及音频数据,再在整合所述智能参数信息、所述视频数据以及所述音频数据后,进行播放;由于智能参数信息、视频数据以及音频数据全部合在一个视频文件中,从而使得每一帧的智能参数信息都与本帧的音频数据、视频数据关联保存,提高了网络传输以及播放的实时性;此外,由于视频数据和智能参数信息无需再单独存放,因而减少了存储空间的占用率,一定程度上释放了存储空间。

以上所描述的装置实施例仅仅是示意性的,例如,附图中的流程图和框图显示了根据本发明的多个实施例的装置、方法和计算机程序产品的可能实现的体系架构、功能和操作。在这点上,流程图或框图中的每个方框可以代表一个模块、程序段或代码的一部分,所述模块、程序段或代码的一部分包含一个或多个用于实现规定的逻辑功能的可执行指令。也应当注意,在有些作为替换的实现方式中,方框中所标注的功能也可以以不同于附图中所标注的顺序发生。例如,两个连续的方框实际上可以基本并行地执行,它们有时也可以按相反的顺序执行,这依所涉及的功能而定。也要注意的是,框图和/或流程图中的每个方框、以及框图和/或流程图中的方框的组合,可以用执行规定的功能或动作的专用的基于硬件的系统来实现,或者可以用专用硬件与计算机指令的组合来实现。

另外,在本发明各个实施例中的各功能模块可以集成在一起形成一个独立的部分,也可以是各个模块单独存在,也可以两个或两个以上模块集成形成一个独立的部分。

所述功能如果以软件功能模块的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本发明各个实施例所述方法的全部或部分步骤。而前述的存储介质包括:u盘、移动硬盘、只读存储器(rom,read-onl3memor3)、随机存取存储器(ram,randomaccessmemor3)、磁碟或者光盘等各种可以存储程序代码的介质。

需要说明的是,在本文中,诸如第一和第二等之类的关系术语仅仅用来将一个实体或者操作与另一个实体或操作区分开来,而不一定要求或者暗示这些实体或操作之间存在任何这种实际的关系或者顺序。而且,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括所述要素的过程、方法、物品或者设备中还存在另外的相同要素。

以上所述仅为本发明的优选实施例而已,并不用于限制本发明,对于本领域的技术人员来说,本发明可以有各种更改和变化。凡在本发明的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。应注意到:相似的标号和字母在下面的附图中表示类似项,因此,一旦某一项在一个附图中被定义,则在随后的附图中不需要对其进行进一步定义和解释。

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1