一种回放视频文件的生成方法和装置与流程

文档序号:11139407阅读:961来源:国知局
一种回放视频文件的生成方法和装置与制造工艺

本发明涉及信息处理技术领域,具体涉及一种回放视频文件的生成方法,以及一种回放视频文件的生成装置。



背景技术:

流数据为可以采用流式传输的方式在网络上传输的数据,大型网站系统通常依赖于内容分发网络(Content Delivery Network,CDN)对流数据进行传输。

视频直播过程中,视频直播端将实时录制的视频流数据推送至内容分发网络中的节点服务器,节点服务器会对接收的视频流数据进行缓存处理,待视频直播结束后,将缓存的所有视频流数据缓存为指定格式的回放视频文件,例如mp4文件,供用户调用和回看。

但是,现有技术中的回放视频文件是在视频直播结束后生成的,用户只有等待视频直播结束后才能够从节点服务器调用到回放视频文件,因此直播视频存在回放延迟问题,用户体验较差。

另外,为使回放视频文件适用于多种播放平台,节点服务器会对回放视频文件进行格式转换,将其转换成多种播放平台均支持的格式。然而,由于回放视频文件的尺寸较大,格式转换操作需要耗费较长时间,因此针对回放视频文件的格式转换操作会进一步加深直播视频的回放延迟问题,进一步降低用户体验。



技术实现要素:

鉴于上述问题,提出了本发明以便提供一种克服上述问题或者至少部分地解决上述问题的回放视频文件的生成方法和相应的回放视频文件的生成装置。

依据本发明的一个方面,提供了一种回放视频文件的生成方法,包括:

抓取视频流数据并根据抓取的视频流数据生成视频流片段;

对当前生成的视频流片段进行设定处理;

保存处理后的视频流片段以供回放时调用。

可选地,在所述抓取视频流数据并根据抓取的视频流数据生成视频流片段之后,所述方法还包括:

针对所述视频流片段添加第一关联标识;

根据所述第一关联标识关联多个连续的视频流片段,并将关联的视频流片段组成回放视频文件。

可选地,所述视频流片段由至少一个视频画面组组成。

可选地,所述抓取视频流数据并根据抓取的视频流数据生成视频流片段包括:

依据预设条件抓取视频流数据并将抓取的视频流数据以视频画面组为单位进行解析;

将至少一个连续的视频画面组存储为视频流片段。

可选地,所述对当前生成的视频流片段进行设定处理包括:

将各个视频流片段转换为移动客户端可播放的设定格式。

可选地,在所述抓取视频流数据并根据抓取的视频流数据生成视频流片段之后,所述方法还包括:

查找所述视频流片段的视频画面组中时间偏移的问题视频帧;

对所述问题视频帧进行修复。

可选地,所述查找所述视频流片段的视频画面组中时间偏移的问题视频帧包括:

查找与上一视频帧的时间差超出设定阈值的视频帧。

可选地,在所述对所述问题视频帧进行修复之前,所述方法还包括:

判定所述问题视频帧为I帧或P帧。

可选地,所述对所述问题视频帧进行修复包括:

若所述问题视频帧为P帧,则删除所述P帧以及后面与其连续的P帧。

可选地,所述对所述问题视频帧进行修复还包括:

在所述问题视频帧的前一视频帧后面进行切片处理,将所述前一视频帧作为第一目标视频流片段的最后一个视频数据帧;

针对所述第一目标视频流片段添加与下一目标视频片段的第二关联标识。

可选地,所述对所述问题视频帧进行修复包括:

若所述问题视频帧为I帧,则在所述I帧之前进行切片处理,将所述I帧作为第二目标视频流片段的第一个视频数据帧;

针对所述第二目标视频流片段添加与上一目标视频片段的第二关联标识。

可选地,所述第二关联标识为顺序编号、时间信息、关联的前一视频片段和关联的后一视频片段之中至少一种。

根据本发明的另一个方面,提供了一种回放视频文件的生成装置,包括:

视频流片段生成模块,用于抓取视频流数据并根据抓取的视频流数据生成视频流片段;

设定处理进行模块,用于对当前生成的视频流片段进行设定处理;

视频流片段保存模块,用于保存处理后的视频流片段以供回放时调用。

可选地,所述装置还包括:

第一关联标识添加模块,用于在所述抓取视频流数据并根据抓取的视频流数据生成视频流片段之后,针对所述视频流片段添加第一关联标识;

视频流片段关联模块,用于根据所述第一关联标识关联多个连续的视频流片段,并将关联的视频流片段组成回放视频文件。

可选地,所述视频流片段由至少一个视频画面组组成。

可选地,所述视频流片段生成模块包括:

视频流数据抓取子模块,用于依据预设条件抓取视频流数据;

视频流数据解析子模块,用于将抓取的视频流数据以视频画面组为单位进行解析;

视频流片段存储子模块,用于将至少一个连续的视频画面组存储为视频流片段。

可选地,所述设定处理进行模块,具体用于将各个视频流片段转换为移动客户端可播放的设定格式。

可选地,所述装置还包括:

问题视频帧查找模块,用于在所述抓取视频流数据并根据抓取的视频流数据生成视频流片段之后,查找所述视频流片段的视频画面组中时间偏移的问题视频帧;

问题视频帧修复模块,用于对所述问题视频帧进行修复。

可选地,所述问题视频帧查找模块,具体用于查找与上一视频帧的时间差超出设定阈值的视频帧。

可选地,所述装置还包括:

帧种类判断模块,用于在所述对所述问题视频帧进行修复之前,判定所述问题视频帧为I帧或P帧。

可选地,所述问题视频帧修复模块包括:

P帧删除子模块,用于若所述问题视频帧为P帧,则删除所述P帧以及后面与其连续的P帧。

可选地,所述问题视频帧修复模块还包括:

第一切片处理进行子模块,用于在所述问题视频帧的前一视频帧后面进行切片处理,将所述前一视频帧作为第一目标视频流片段的最后一个视频数据帧;

第二关联标识添加子模块,用于针对所述第一目标视频流片段添加与下一目标视频片段的第二关联标识。

可选地,所述问题视频帧修复模块包括:

第二切片处理进行子模块,用于若所述问题视频帧为I帧,则在所述I帧之前进行切片处理,将所述I帧作为第二目标视频流片段的第一个视频数据帧;

第二关联标识增添子模块,用于针对所述第二目标视频流片段添加与上一目标视频片段的第二关联标识。

可选地,所述第二关联标识为顺序编号、时间信息、关联的前一视频片段和关联的后一视频片段之中至少一种。

依据本发明实施例,对上传的视频流数据进行抓取操作,并根据抓取的视频流数据生成视频流片段,视频流片段的尺寸小于抓取的视频流数据所属的完整视频流数据的尺寸,相比于现有技术待视频直播结束后才生成回放视频文件,本发明在直播过程中即可生成可供用户调用和回放的视频流片段,有效解决了直播视频的回放延迟问题,缩短了用户等待回看直播视频的时间,保证了用户体验。

并且,本发明还对视频流片段进行设定处理,由于视频流片段的尺寸较小,因此仅需耗费较短时间即可完成对尺寸较小的视频流片段的设定处理,相比于现有技术中待直播结束后对缓存的整个视频流数据进行设定处理,本发明在视频直播结束时基本完成对整个视频流数据的设定处理,进一步解决了直播视频的回放延迟问题。

同时,本发明还针对各个视频流片段添加第一关联标识,并根据第一关联标识关联多个连续的视频流片段,在识别到某一视频流片段携带相关的第一关联标识后,无条件播放该视频流片段,从而保证多个视频流片段的连续播放。

另外,本发明中视频流片段可以由至少一个视频画面组组成,在对视频流片段进行关联前,本发明还可以对视频流片段的视频画面组中出现时间偏移的问题视频帧进行查找和修复,对问题视频帧的修复操作保证了视频流片段中至少一个视频画面组的连续播放。

上述说明仅是本发明技术方案的概述,为了能够更清楚了解本发明的技术手段,而可依照说明书的内容予以实施,并且为了让本发明的上述和其它目的、特征和优点能够更明显易懂,以下特举本发明的具体实施方式。

附图说明

通过阅读下文优选实施方式的详细描述,各种其他的优点和益处对于本领域普通技术人员将变得清楚明了。附图仅用于示出优选实施方式的目的,而并不认为是对本发明的限制。而且在整个附图中,用相同的参考符号表示相同的部件。在附图中:

图1示出了根据本发明实施例一的一种回放视频文件的生成方法的步骤流程示意图;

图2示出了根据本发明实施例二的一种回放视频文件的生成方法的步骤流程示意图;

图3示出了根据本发明实施例三的一种回放视频文件的生成装置的结构框图;

图4示出了根据本发明实施例四的一种回放视频文件的生成装置的结构框图。

具体实施方式

下面将参照附图更详细地描述本公开的示例性实施例。虽然附图中显示了本公开的示例性实施例,然而应当理解,可以以各种形式实现本公开而不应被这里阐述的实施例所限制。相反,提供这些实施例是为了能够更透彻地理解本公开,并且能够将本公开的范围完整的传达给本领域的技术人员。

参照图1,示出了根据本发明实施例一的一种回放视频文件的生成方法的步骤流程示意图,所述方法具体可以包括如下步骤:

步骤101,抓取视频流数据并根据抓取的视频流数据生成视频流片段。

本发明实施例所述的方法应用于存在以流式传输方式传输的视频数据的场景,例如应用在视频直播场景、视频转播场景、视频转播过程等。视频流上传端将视频流数据上传至网络服务器,视频请求端从网络服务器获取视频数据并对其进行播放。

现有方案中回放视频文件是在所有视频流数据接收结束后生成的,回放视频文件存在生成延迟问题、直播视频存在回放延迟问题。

为解决回放视频文件的生成延迟问题,缩短用户等待回看已播放的视频的时间,本实施例对接收的视频流数据进行抓取,并根据抓取的视频流数据生成视频流片段,视频流片段的尺寸小于完整视频的尺寸,生成的视频流片段具有可调用和可回放功能,视频请求端可以在视频流片段生成后从网络服务器调用视频流片段并对其进行播放。

由于视频流片段是在视频直播过程中生成的,视频请求端可以在视频直播过程中对已生成的视频流片段进行调用,用户可以在视频直播过程中回看已播放的视频流数据,因此本方法有效缩短了用户等待观看回放视频文件的时间,有效解决了直播视频的回放延迟问题。

在视频流数据的抓取过程中,可以按照预设规则抓取视频流数据,例如按照预设抓取时长对视频流数据进行抓取、按照预设数据尺寸对视频流数据进行抓取,生成视频流片段。

步骤102,对当前生成的视频流片段进行设定处理。

现有方法待所有视频流数据传输结束后,对接收并缓存的所有视频流数据进行设定处理,例如对所有视频流数据进行格式转换处理。由于所有视频流数据的尺寸较大,对所有流数据的设定处理需要耗费较长时间,因此该操作会延长回放视频文件的生成时间、加深直播视频的回放延迟问题。

而本申请在对接收的视频流数据进行抓取并生成视频流片段后,对视频流片段进行设定处理,处理后的视频流片段可在多种播放平台上播放。例如,对视频流片段进行格式处理,将视频流数据的mp4(MPEG-4Part 14)文件格式转码成HLS(HTTP Live Streaming)文件格式,使处理后的视频流数据适用于多种播放平台。

由于视频流片段的尺寸较小,因此针对视频流片段的设定处理仅需耗费较短时间。在视频流数据的接收过程中,视频流片段不断生成,当生成一新的视频流片段后即对该片段进行设定处理,当所有视频流数据接收结束后,仅需耗费较短时间对最后一个视频流片段进行设定处理,即可完成对所有视频流片段即所有视频流数据的设定处理,因此相对于现有方案,本实施例可以有效解决直播视频的回放延迟问题,提高用户体验。

步骤103,保存处理后的视频流片段以供回放时调用。

对生成的视频流片段进行设定处理,得到多种平台支持的视频流片段,以在网络服务器实现本申请的方案为例,网络服务器对处理后的视频流片段进行保存,并生成对应的播放地址。网络服务器可以根据播放端发送的调用请求将视频流片段的播放地址发送给播放端,播放端可以通过访问播放地址播放对应的视频流片段,供用户回看已播放的直播视频内容。

具体可以将处理后的单个视频流片段组成回放视频文件,针对每个视频流片段生成一播放地址,供视频请求端调用;也可以将处理后的几个视频流片段组成回放视频文件,针对几个视频流片段生成一播放地址;还可以在设定处理结束后,将处理后的所有视频流片段组成完整的回放视频文件,针对完整的回放视频文件生成一播放地址,以供根据播放地址调出该回放视频文件。

依据本发明实施例,对上传的视频流数据进行抓取操作,并根据抓取的视频流数据生成视频流片段,视频流片段的尺寸小于抓取的视频流数据所属的完整视频流数据的尺寸,相比于现有技术待视频直播结束后才生成回放视频文件,本发明在直播过程中即可生成可供用户调用和回放的视频流片段,有效解决了直播视频的回放延迟问题,缩短了用户等待回看直播视频的时间,保证了用户体验。

并且,本发明还对视频流片段进行设定处理,由于视频流片段的尺寸较小,因此仅需耗费较短时间即可完成对尺寸较小的视频流片段的设定处理,相比于现有技术中待直播结束后对缓存的整个视频流数据进行设定处理,本方法在视频直播结束时基本完成对整个视频流数据的设定处理,进一步解决了直播视频的回放延迟问题。

参照图2,示出了根据本发明实施例二的一种回放视频文件的生成方法的步骤流程示意图,所述方法具体可以包括如下步骤:

步骤201,依据预设条件抓取视频流数据并将抓取的视频流数据以视频画面组为单位进行解析。

本发明实施例所述的方法应用于存在以流式传输方式传输的视频数据的场景,例如应用在视频直播过程、视频转播过程、视频转播过程。视频流数据上传端可以以帧为单位对视频流数据进行传输,相应地网络服务器接收按帧传输的视频流数据。

本发明实施例可以预先设置抓取视频流数据的条件,预设条件可以限定所抓取的视频流数据的尺寸、视频流数据的时长。针对网络服务器性能较好的情况,可以限定较小的视频流数据尺寸或时长,如此可以尽快对实时抓取的视频流数据进行传输,从而使视频流数据的传输具有更好的实时性。

视频画面组(Group of Pictures,GOP),一个GOP就是一组连续的画面。在MPEG(Moving Picture Experts Group)编码标准中,将画面分为I帧(intra picture,内部画面)、P帧(predictive-frame,前向预测编码帧)和B帧(bi-directional interpolated prediction frame,双向预测内插编码帧),将属于一个画面的多个连续的帧的组合称为视频画面组,例如IBBPBBPBBPB BPBBP。

本发明实施例在按照预设条件抓取视频流数据后,可以以视频画面组为单位对抓取的视频流数据进行解析,得到视频画面组个数、视频画面组之间的关联关系等信息。

以视频画面组为单位,本发明实施例中抓取视频流数据的预设条件还可以限定抓取的视频画面组的数目。

步骤202,将至少一个连续的视频画面组存储为视频流片段。

视频流片段可以由至少一个视频画面组组成。按照视频画面组抓取的视频流片段包括整数个视频画面组,而按照其他预设条件抓取的视频流数据可能包括整数个视频画面组,还可能包括部分视频画面组。当完成对视频流数据的解析后,如果确定当前视频流数据中存在不完整的部分视频画面组,则可以将部分视频画面组划分给下一次抓取的视频流数据,仅根据当前视频流数据中的完整的视频画面组生成视频流片段。

对按帧传输的视频流数据进行接收,基于跳帧、网络延迟等原因使得接收的视频帧之间可能存在时间戳偏移,时间戳偏移会导致多个视频帧无法连续播放,导致视频流片段无法连续播放,从而降低了用户体验。为解决上述问题,保证服务器中存储的多个视频流片段和多个视频帧能够连续播放,本发明实施例还可以对不同视频流片段以及对视频流片段中的问题视频帧进行处理。

具体地,对不同视频流片段之间进行处理可以包括以下步骤:在抓取视频流数据并根据抓取的视频流数据生成视频流片段之后,针对视频流片段添加第一关联标识;根据第一关联标识关联多个连续的视频流片段,并将关联的视频流片段组成回放视频文件。其中回放视频文件可以包括包括一个或多个视频流片段。视频请求端在识别到第一关联标识后,对第一关联标识对应的视频流片段进行无条件播放,从而保证了多个视频流片段的连续播放,保证了回放视频文件的连续播放。

对视频流片段中的问题视频帧进行处理可以包括以下步骤:在抓取视频流数据并根据抓取的视频流数据生成视频流片段之后,查找视频流片段的视频画面组中时间偏移的问题视频帧;对问题视频帧进行修复。完成对问题视频帧的修复后,视频流片段可以正常播放。

视频流数据上传端按帧上传视频流数据,相邻两个视频帧之间的时间间隔非常短,例如相邻两个视频帧之间的时间差小于1s,如果在上传时以及上传过程中视频帧正常不存在时间偏移等问题,则网络服务器接收的相邻两个视频帧之间的时间差不变;如果在上传时以及上传过程中发生严重问题,导致发生较大的时间偏移,则网络服务器接收的相邻两个视频帧之间的时间差变得非常大;如果在上传时以及上传过程中发生轻微问题,导致发生较小的时间偏移,则网络服务器接收的相邻两个视频帧之间的时间差会变大,但是变大幅度较小。

本发明实施例可以预先设定相邻两个视频帧之间的时间差阈值。当相邻两个视频帧之间的时间差小于时间差阈值时,可以说明相邻两个视频帧之间未发生时间偏移,或者说明相邻两个视频帧之间发生时间偏移,但是发生的时间偏移是在可接受范围内,不会对视频帧播放造成严重影响;当相邻两个视频帧之间的时间差超出时间差阈值时,可以说明后接收的视频帧存在与上一视频帧发生时间偏移,后接收的视频帧是问题视频帧。因此,查找视频流片段的视频画面组中时间偏移的问题视频帧的步骤可以通过查找与上一视频帧的时间差超出设定阈值的视频帧的方法实现。

视频流片段中包括至少一个视频画面组,视频画面组中的的图像帧包括I帧和P帧,一个视频画面组中的I帧与上一个视频画面组中的P帧相邻,一个视频画面组中的最后一个P帧与下一个视频画面组中的I帧相邻,基于I帧和P帧的不同功能和所处位置,本发明实施例对I帧和P帧采用了不同修复方法。因此,在对问题视频帧进行修复之前,还需要判断问题视频帧的种类,是I帧还是P帧。

针对一个视频画面组,如果判定问题视频帧为P帧,由于P帧是前向预测帧,虽然去除P帧画面会出现卡主情况,但是画面还存在,未出现黑屏,用户还是可以继续观看,那么对于P帧的修复方法可以为删除P帧以及后面与其连续的P帧。例如,一个视频画面组为(I P P P P P P P P),如果第五个P帧是问题视频帧,则删除第五个P帧及其后面的连续的多个P帧,修复后的视频画面组为(I P P P P)。

一个视频流片段中包括多个视频画面组,在一个视频流片段中,如果问题视频帧所在的视频画面组后面还存在其他视频画面组,则在根据上述方法删除问P帧以及后面与其连续P帧后,修复后的视频画面组中的最后一个P帧与下一个视频画面组中的I帧存在时间偏移,从而使得两个视频画面组无法正常播放。

为解决上述问题,保证修复后的视频画面组和相邻的下一个视频画面组正常播放,本发明实施例可以对修复后的视频画面组和相邻的下一个视频画面组进行切片处理,得到两个视频流片段;之后对视频流片段添加第二关联标识,播放器在识别到第二关联标识后,对两个视频流片段进行连续播放。

第二关联标识可以添加在包含修复后的视频画面组的视频流片段中。视频请求端如果识别到当前播放的视频流片段携带第二关联标识,则待当前播放的视频流片段播放结束后,不考虑下一个视频流片段是否存在时间偏移,直接对下一个视频流片段进行播放,从而实现多个视频画面组的连续播放。

第二关联标识还可以添加在包含下一个视频画面组的视频流片段中。待当前播放的视频流片段播放结束后,如果视频请求端识别到下一个视频流片段携带第二关联标识,则不考虑下一个视频流片段是否存在时间偏移,直接对下一个视频流片段进行播放。

第二关联标识可以为多种形式,例如顺序编号、时间信息、关联的前一视频片段和关联的后一视频片段之中至少一种。本发明实施例中,第一关联标识与第二关联标识可以为相同标识,也可以为不相同标识。

通过上述分析可知,在删除P帧以及后面与其连续的P帧后,对问题视频帧进行修复还可以包括:在问题视频帧的前一视频帧后面进行切片处理,将前一视频帧作为第一目标视频流片段的最后一个视频数据帧;针对第一目标视频流片段添加与下一目标视频片段的第二关联标识。

例如,视频流片段中包括两个相邻的视频画面组(I P P P P P P P P I P P P P P P P P),如果第一个视频画面组中的第六个P帧出现问题,则首先,删除第一个视频画面组中的第六个P帧、第七个P帧和第八个P帧;其次,在第一个视频画面组中的第五个P帧后面进行切片处理,得到两个视频流片段,即(I P P P P P)和(I P P P P P P P P);最后,对视频流片段(I P P P P P)添加第二关联标识。

当一个视频流片段包括多个视频画面组时,如果判定处于中间位置的视频画面组中的I帧出现问题,即问题视频帧为I帧,则对问题视频帧进行修复的步骤可以包括:首先,在I帧之前进行切片处理,将I帧作为第二目标视频流片段的第一个视频数据帧;其次,针对第二目标视频流片段添加与上一目标视频片段的第二关联标识。视频请求端在识别到当前播放的上一目标视频片段或第二目标视频流片段携带第二关联标识后,无条件对第二目标视频流片段进行播放,从而保证了两个视频画面组的连续播放。

步骤203,将各个视频流片段转换为移动客户端可播放的设定格式。

为使生成的视频流片段可以在移动客户端上播放,本实施例会将生成的视频流片段转换成移动客户端可播放的格式,例如可以将视频流数据的mp4(MPEG-4Part 14)文件格式转码成HLS(HTTP Live Streaming)文件格式。

在视频流数据的接收过程中,视频流片段不断生成,当生成一新的视频流片段后对尺寸较小的视频流片段进行格式转换,当所有视频流数据接收结束后,仅需耗费较短时间对最后一个视频流片段进行格式处理即可完成对所有视频流数据的格式转换,因此相对于现有方法待视频流数据传输结束后对缓存的所有视频流数据进行格式转换,本实施例可以进一步缩短用户等待回看直播视频的时间,提高用户体验。

步骤204,保存处理后的视频流片段以供回放时调用。

依据本发明实施例,对上传的视频流数据进行抓取操作,并根据抓取的视频流数据生成视频流片段,视频流片段的尺寸小于抓取的视频流数据所属的完整视频流数据的尺寸,相比于现有技术待视频直播结束后才生成回放视频文件,本发明在直播过程中即可生成可供用户调用和回放的视频流片段,有效解决了直播视频的回放延迟问题,缩短了用户等待回看直播视频的时间,保证了用户体验。

并且,本发明还对视频流片段进行设定处理,由于视频流片段的尺寸较小,因此仅需耗费较短时间即可完成对尺寸较小的视频流片段的设定处理,相比于现有技术中待直播结束后对缓存的整个视频流数据进行设定处理,本方法在视频直播结束时基本完成对整个视频流数据的设定处理,进一步解决了直播视频的回放延迟问题。

同时,本发明还针对各个视频流片段添加第一关联标识,并根据第一关联标识关联多个连续的视频流片段,专属播放器识别到某一视频流片段的第一关联标识后,无条件播放该视频流片段,从而保证多个视频流片段的连续播放。

另外,本发明中视频流片段可以由至少一个视频画面组组成,在对视频流片段进行关联前,本发明还可以对视频流片段的视频画面组中出现时间偏移的问题视频帧进行查找和修复,对问题视频帧的修复操作保证了视频流片段中至少一个视频画面组的连续播放。

图3示出了根据本发明实施例三的一种回放视频文件的生成装置的结构框图。图3中的回放视频文件的生成装置包括:

视频流片段生成模块301,用于抓取视频流数据并根据抓取的视频流数据生成视频流片段。

设定处理进行模块302,用于对当前生成的视频流片段进行设定处理。

视频流片段保存模块303,用于保存处理后的视频流片段以供回放时调用。

依据本发明实施例,对上传的视频流数据进行抓取操作,并根据抓取的视频流数据生成视频流片段,视频流片段的尺寸小于抓取的视频流数据所属的完整视频流数据的尺寸,相比于现有技术待视频直播结束后才生成回放视频文件,本发明在直播过程中即可生成可供用户调用和回放的视频流片段,有效解决了直播视频的回放延迟问题,缩短了用户等待回看直播视频的时间,保证了用户体验。

并且,本发明还对视频流片段进行设定处理,由于视频流片段的尺寸较小,因此仅需耗费较短时间即可完成对尺寸较小的视频流片段的设定处理,相比于现有技术中待直播结束后对缓存的整个视频流数据进行设定处理,本方法在视频直播结束时基本完成对整个视频流数据的设定处理,进一步解决了直播视频的回放延迟问题。

图4示出了根据本发明实施例四的一种回放视频文件的生成装置的结构框图。图4中的回放视频文件的生成装置包括:

视频流片段生成模块401,用于抓取视频流数据并根据抓取的视频流数据生成视频流片段。

设定处理进行模块402,用于对当前生成的视频流片段进行设定处理。

视频流片段保存模块403,用于保存处理后的视频流片段以供回放时调用。

所述视频流片段生成模块401包括:

视频流数据抓取子模块4011,用于依据预设条件抓取视频流数据;

视频流数据解析子模块4012,用于将抓取的视频流数据以视频画面组为单位进行解析;

视频流片段存储子模块4013,用于将至少一个连续的视频画面组存储为视频流片段。

本发明实施例中,优选地,所述设定处理进行模块402,具体用于将各个视频流片段转换为移动客户端可播放的设定格式。

本发明实施例中,优选地,所述装置还包括:

第一关联标识添加模块,用于在所述抓取视频流数据并根据抓取的视频流数据生成视频流片段之后,针对所述视频流片段添加第一关联标识;

视频流片段关联模块,用于根据所述第一关联标识关联多个连续的视频流片段,并将关联的视频流片段组成回放视频文件。

本发明实施例中,优选地,所述视频流片段由至少一个视频画面组组成。

本发明实施例中,优选地,所述回放视频文件的生成装置还包括:

问题视频帧查找模块,用于在所述抓取视频流数据并根据抓取的视频流数据生成视频流片段之后,查找所述视频流片段的视频画面组中时间偏移的问题视频帧;

问题视频帧修复模块,用于对所述问题视频帧进行修复。

本发明实施例中,优选地,所述问题视频帧查找模块,具体用于查找与上一视频帧的时间差超出设定阈值的视频帧。

本发明实施例中,优选地,所述回放视频文件的生成装置还包括:

帧种类判断模块,用于在所述对所述问题视频帧进行修复之前,判定所述问题视频帧为I帧或P帧。

本发明实施例中,优选地,所述问题视频帧修复模块包括:

P帧删除子模块,用于若所述问题视频帧为P帧,则删除所述P帧以及后面与其连续的P帧。

本发明实施例中,优选地,所述问题视频帧修复模块还包括:

第一切片处理进行子模块,用于在所述问题视频帧的前一视频帧后面进行切片处理,将所述前一视频帧作为第一目标视频流片段的最后一个视频数据帧;

第二关联标识添加子模块,用于针对所述第一目标视频流片段添加与下一目标视频片段的第二关联标识。

本发明实施例中,优选地,所述问题视频帧修复模块包括:

第二切片处理进行子模块,用于若所述问题视频帧为I帧,则在所述I帧之前进行切片处理,将所述I帧作为第二目标视频流片段的第一个视频数据帧;

第二关联标识增添子模块,用于针对所述第二目标视频流片段添加与上一目标视频片段的第二关联标识。

本发明实施例中,优选地,所述第二关联标识为顺序编号、时间信息、关联的前一视频片段和关联的后一视频片段之中至少一种。

依据本发明实施例,对上传的视频流数据进行抓取操作,并根据抓取的视频流数据生成视频流片段,视频流片段的尺寸小于抓取的视频流数据所属的完整视频流数据的尺寸,相比于现有技术待视频直播结束后才生成回放视频文件,本发明在直播过程中即可生成可供用户调用和回放的视频流片段,有效解决了直播视频的回放延迟问题,缩短了用户等待回看直播视频的时间,保证了用户体验。

并且,本发明还对视频流片段进行设定处理,由于视频流片段的尺寸较小,因此仅需耗费较短时间即可完成对尺寸较小的视频流片段的设定处理,相比于现有技术中待直播结束后对缓存的整个视频流数据进行设定处理,本方法在视频直播结束时基本完成对整个视频流数据的设定处理,进一步解决了直播视频的回放延迟问题。

同时,本发明还针对各个视频流片段添加第一关联标识,并根据第一关联标识关联多个连续的视频流片段,专属播放器识别到某一视频流片段的第一关联标识后,无条件播放该视频流片段,从而保证多个视频流片段的连续播放。

另外,本发明中视频流片段可以由至少一个视频画面组组成,在对视频流片段进行关联前,本发明还可以对视频流片段的视频画面组中出现时间偏移的问题视频帧进行查找和修复,对问题视频帧的修复操作保证了视频流片段中至少一个视频画面组的连续播放。

在此提供的算法和显示不与任何特定计算机、虚拟系统或者其它设备固有相关。各种通用系统也可以与基于在此的示教一起使用。根据上面的描述,构造这类系统所要求的结构是显而易见的。此外,本发明也不针对任何特定编程语言。应当明白,可以利用各种编程语言实现在此描述的本发明的内容,并且上面对特定语言所做的描述是为了披露本发明的最佳实施方式。

在此处所提供的说明书中,说明了大量具体细节。然而,能够理解,本发明的实施例可以在没有这些具体细节的情况下实践。在一些实例中,并未详细示出公知的方法、结构和技术,以便不模糊对本说明书的理解。

类似地,应当理解,为了精简本公开并帮助理解各个发明方面中的一个或多个,在上面对本发明的示例性实施例的描述中,本发明的各个特征有时被一起分组到单个实施例、图、或者对其的描述中。然而,并不应将该公开的方法解释成反映如下意图:即所要求保护的本发明要求比在每个权利要求中所明确记载的特征更多的特征。更确切地说,如下面的权利要求书所反映的那样,发明方面在于少于前面公开的单个实施例的所有特征。因此,遵循具体实施方式的权利要求书由此明确地并入该具体实施方式,其中每个权利要求本身都作为本发明的单独实施例。

本领域那些技术人员可以理解,可以对实施例中的设备中的模块进行自适应性地改变并且把它们设置在与该实施例不同的一个或多个设备中。可以把实施例中的模块或单元或组件组合成一个模块或单元或组件,以及此外可以把它们分成多个子模块或子单元或子组件。除了这样的特征和/或过程或者单元中的至少一些是相互排斥之外,可以采用任何组合对本说明书(包括伴随的权利要求、摘要和附图)中公开的所有特征以及如此公开的任何方法或者设备的所有过程或单元进行组合。除非另外明确陈述,本说明书(包括伴随的权利要求、摘要和附图)中公开的每个特征可以由提供相同、等同或相似目的的替代特征来代替。

此外,本领域的技术人员能够理解,尽管在此所述的一些实施例包括其它实施例中所包括的某些特征而不是其它特征,但是不同实施例的特征的组合意味着处于本发明的范围之内并且形成不同的实施例。例如,在下面的权利要求书中,所要求保护的实施例的任意之一都可以以任意的组合方式来使用。

本发明的各个部件实施例可以以硬件实现,或者以在一个或者多个处理器上运行的软件模块实现,或者以它们的组合实现。本领域的技术人员应当理解,可以在实践中使用微处理器或者数字信号处理器(DSP)来实现根据本发明实施例的回放视频文件的生成设备中的一些或者全部部件的一些或者全部功能。本发明还可以实现为用于执行这里所描述的方法的一部分或者全部的设备或者装置程序(例如,计算机程序和计算机程序产品)。这样的实现本发明的程序可以存储在计算机可读介质上,或者可以具有一个或者多个信号的形式。这样的信号可以从因特网网站上下载得到,或者在载体信号上提供,或者以任何其他形式提供。

应该注意的是上述实施例对本发明进行说明而不是对本发明进行限制,并且本领域技术人员在不脱离所附权利要求的范围的情况下可设计出替换实施例。在权利要求中,不应将位于括号之间的任何参考符号构造成对权利要求的限制。单词“包含”不排除存在未列在权利要求中的元件或步骤。位于元件之前的单词“一”或“一个”不排除存在多个这样的元件。本发明可以借助于包括有若干不同元件的硬件以及借助于适当编程的计算机来实现。在列举了若干装置的单元权利要求中,这些装置中的若干个可以是通过同一个硬件项来具体体现。单词第一、第二、以及第三等的使用不表示任何顺序。可将这些单词解释为名称。

本发明公开了A1、一种回放视频文件的生成方法,包括:

抓取视频流数据并根据抓取的视频流数据生成视频流片段;

对当前生成的视频流片段进行设定处理;

保存处理后的视频流片段以供回放时调用。

A2、根据A1所述的方法,其中,在所述抓取视频流数据并根据抓取的视频流数据生成视频流片段之后,所述方法还包括:

针对所述视频流片段添加第一关联标识;

根据所述第一关联标识关联多个连续的视频流片段,并将关联的视频流片段组成回放视频文件。

A3、根据A1所述的方法,其中,所述视频流片段由至少一个视频画面组组成。

A4、根据A3所述的方法,其中,所述抓取视频流数据并根据抓取的视频流数据生成视频流片段包括:

依据预设条件抓取视频流数据并将抓取的视频流数据以视频画面组为单位进行解析;

将至少一个连续的视频画面组存储为视频流片段。

A5、根据A1所述的方法,其中,所述对当前生成的视频流片段进行设定处理包括:

将各个视频流片段转换为移动客户端可播放的设定格式。

A6、根据A3所述的方法,其中,在所述抓取视频流数据并根据抓取的视频流数据生成视频流片段之后,所述方法还包括:

查找所述视频流片段的视频画面组中时间偏移的问题视频帧;

对所述问题视频帧进行修复。

A7、根据A6所述的方法,其中,所述查找所述视频流片段的视频画面组中时间偏移的问题视频帧包括:

查找与上一视频帧的时间差超出设定阈值的视频帧。

A8、根据A6所述的方法,其中,在所述对所述问题视频帧进行修复之前,所述方法还包括:

判定所述问题视频帧为I帧或P帧。

A9、根据A8所述的方法,其中,所述对所述问题视频帧进行修复包括:

若所述问题视频帧为P帧,则删除所述P帧以及后面与其连续的P帧。

A10、根据A9所述的方法,其中,所述对所述问题视频帧进行修复还包括:

在所述问题视频帧的前一视频帧后面进行切片处理,将所述前一视频帧作为第一目标视频流片段的最后一个视频数据帧;

针对所述第一目标视频流片段添加与下一目标视频片段的第二关联标识。

A11、根据A8所述的方法,其中,所述对所述问题视频帧进行修复包括:

若所述问题视频帧为I帧,则在所述I帧之前进行切片处理,将所述I帧作为第二目标视频流片段的第一个视频数据帧;

针对所述第二目标视频流片段添加与上一目标视频片段的第二关联标识。

A12、根据A10所述的方法,其中,所述第二关联标识为顺序编号、时间信息、关联的前一视频片段和关联的后一视频片段之中至少一种。

本发明还公开了B13、一种回放视频文件的生成装置,包括:

视频流片段生成模块,用于抓取视频流数据并根据抓取的视频流数据生成视频流片段;

设定处理进行模块,用于对当前生成的视频流片段进行设定处理;

视频流片段保存模块,用于保存处理后的视频流片段以供回放时调用。

B14、根据B13所述的装置,其中,所述装置还包括:

第一关联标识添加模块,用于在所述抓取视频流数据并根据抓取的视频流数据生成视频流片段之后,针对所述视频流片段添加第一关联标识;

视频流片段关联模块,用于根据所述第一关联标识关联多个连续的视频流片段,并将关联的视频流片段组成回放视频文件。

B15、根据B13所述的装置,其中,所述视频流片段由至少一个视频画面组组成。

B16、根据B15所述的装置,其中,所述视频流片段生成模块包括:

视频流数据抓取子模块,用于依据预设条件抓取视频流数据;

视频流数据解析子模块,用于将抓取的视频流数据以视频画面组为单位进行解析;

视频流片段存储子模块,用于将至少一个连续的视频画面组存储为视频流片段。

B17、根据B13所述的装置,其中:

所述设定处理进行模块,具体用于将各个视频流片段转换为移动客户端可播放的设定格式。

B18、根据B15所述的装置,其中,所述装置还包括:

问题视频帧查找模块,用于在所述抓取视频流数据并根据抓取的视频流数据生成视频流片段之后,查找所述视频流片段的视频画面组中时间偏移的问题视频帧;

问题视频帧修复模块,用于对所述问题视频帧进行修复。

B19、根据B18所述的装置,其中:

所述问题视频帧查找模块,具体用于查找与上一视频帧的时间差超出设定阈值的视频帧。

B20、根据B18所述的装置,其中,所述装置还包括:

帧种类判断模块,用于在所述对所述问题视频帧进行修复之前,判定所述问题视频帧为I帧或P帧。

B21、根据B20所述的装置,其中,所述问题视频帧修复模块包括:

P帧删除子模块,用于若所述问题视频帧为P帧,则删除所述P帧以及后面与其连续的P帧。

B22、根据B21所述的装置,其中,所述问题视频帧修复模块还包括:

第一切片处理进行子模块,用于在所述问题视频帧的前一视频帧后面进行切片处理,将所述前一视频帧作为第一目标视频流片段的最后一个视频数据帧;

第二关联标识添加子模块,用于针对所述第一目标视频流片段添加与下一目标视频片段的第二关联标识。

B23、根据B20所述的装置,其中,所述问题视频帧修复模块包括:

第二切片处理进行子模块,用于若所述问题视频帧为I帧,则在所述I帧之前进行切片处理,将所述I帧作为第二目标视频流片段的第一个视频数据帧;

第二关联标识增添子模块,用于针对所述第二目标视频流片段添加与上一目标视频片段的第二关联标识。

B24、根据B22所述的装置,其中,所述第二关联标识为顺序编号、时间信息、关联的前一视频片段和关联的后一视频片段之中至少一种。

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