一种加密视频网络播放的方法和系统与流程

文档序号:11710236阅读:279来源:国知局
一种加密视频网络播放的方法和系统与流程

本发明涉及网络多媒体领域,具体地涉及一种加密视频网络播放的方法和系统。



背景技术:

随着网络技术的发展,大量的视频数据通过网络传播,人们已经习惯从网络上获取视频数据。而出于对视频版权的保护,版权视频一般需要进行加密处理,因此在客户端视频播放前需要经过请求密钥的网络通信过程和解密视频的缓冲逻辑。

因此发明人在应用上述方案时发现,现有的以内容加密为手段的版权保护系统会造成用户看到第一帧画面的时延加长,降低用户体验。



技术实现要素:

本发明所要解决的技术问题是:以内容加密为手段的版权保护系统加大了用户看到第一帧画面的时延加长,降低用户体验。

为了解决上述问题,本发明的解决思路基于视频的分段播放和异步请求播放许可的方案,方法为:将需要保护的视频数据a按照设定顺序切分为至少两个片段,分别为a1和a2,其中a1为一个片段,a2为至少一个片段;将a2做加密处理,a1使用预分发密钥加密或保持非加密状态;用户请求播放a时,先播放a1;播放a1时通过网络通信异步请求a2的密钥,当用户满足设定条件时,才能得到a2的密钥;解密a2,准备播放a2;a1播放结束时,直接播放a2。

本发明实施例公开了一种加密视频网络播放的方法,包括:

播放器发起对目标视频的播放请求;所述目标视频按照设定顺序被切分为前段视频和后段视频;所述前段视频为一个视频片段;所述后段视频为至少一个视频片段;所述后段视频被加密;

接收服务器针对所述播放请求返回的播放信息,并根据所述播放信息,播放所述目标视频的前段视频;

异步请求所述后段视频的密钥,并解密所述后段视频;

当所述前段视频播放结束时,直接播放解密后的后段视频。

优选地,所述接收服务器针对所述播放请求返回的播放信息,并根据所述播放信息,播放所述目标视频的前段视频的步骤包括:接收服务器针对所述播放请求返回的播放信息;所述播放信息包括目标视频的各视频片段的播放地址与加密状态、视频片段信息;所述视频片段信息包括目标视频的视频片段编号,各视频片段的片段大小、片段时长、编解码格式;如果所述前段视频加密状态为未加密,则访问所述前段视频播放地址,根据所述前段视频的片段大小、编解码格式,下载所述前段视频,配置缓冲区,解码并播放所述前段视频。

进一步地,所述异步请求所述后段视频的密钥,并解密所述后段视频的步骤包括:根据所述后段视频已加密状态,针对用户信息,异步请求所述后段视频的密钥;接收所述后段视频的密钥和所述密钥对应的加密算法;所述密钥和所述密钥对应的加密算法由服务器在所述用户信息具备权限时返回;访问所述后段视频播放地址,下载所述后段视频;根据所述密钥和所述密钥对应的加密算法,解密所述后段视频的前设定帧,存放于暂存区。

更进一步地,所述当所述前段视频播放结束时,直接播放解密后的后段视频的步骤包括:

当所述前段视频解码完成时,重新启动解码器,配置缓冲区,解码所述暂存区中的所述后段视频的前设定帧;根据所述前段视频的片段时长,当所述前段视频播放结束时,直接播放所述后段视频的前设定帧;解密所述后段视频除所述前设定帧的剩余的视频片段;根据所述剩余的视频片段的片段大小、片段时长、编解码格式,按照所述剩余的视频片段编号的顺序,在当前视频片段解码完成时,重新启动解码器,配置缓冲区,解码针对当前视频片段的下一视频片段;在所述当前视频片段播放结束时直接播放所述下一视频片段。

更进一步地,所述当所述前段视频播放结束时,直接播放解密后的后段视频的步骤包括:

当所述前段视频解码完成时,将所述暂存区中的所述后段视频的前设定帧追加给所述前段视频对应的解码器;当所述前段视频播放结束时,播放所述后段视频的前设定帧;解密所述后段视频除所述前设定帧的剩余的视频片段;根据所述剩余的视频片段的片段大小、片段时长、编解码格式,按照所述剩余的视频片段编号的顺序,在当前视频片段解码完成时,将针对当前视频片段的下一视频片段追加给所述当前视频片段对应的解码器;在所述当前视频片段播放结束时直接播放所述下一视频片段。

进一步地,所述接收服务器针对所述播放请求返回的播放信息,并根据所述播放信息,播放所述目标视频的前段视频的步骤还包括:如果所述前段视频加密状态为已加密,则访问所述前段视频播放地址,根据所述前段视频的片段大小、编解码格式,下载所述前段视频,根据预置的密钥和预置的加密算法解密所述前段视频,配置缓冲区,解码并播放所述前段视频。

本发明实施例还公开了一种加密视频网络播放的系统,包括:

播放请求模块,用于发起对目标视频的播放请求;所述目标视频按照设定顺序被切分为前段视频和后段视频;所述前段视频为一个视频片段;所述后段视频为至少一个视频片段;所述后段视频被加密;

播放模块,用于接收服务器针对所述播放请求返回的播放信息,并根据所述播放信息,播放所述目标视频的前段视频;

异步解密模块,用于异步请求所述后段视频的密钥,并解密所述后段视频;

播放控制模块,用于当所述前段视频播放结束时,直接播放解密后的后段视频。

优选地,所述播放模块包括:播放信息模块,用于接收服务器针对所述播放请求返回的播放信息;所述播放信息包括目标视频的各视频片段的播放地址与加密状态、视频片段信息;所述视频片段信息包括目标视频的视频片段编号,各视频片段的片段大小、片段时长、编解码格式;第一前段播放模块,用于如果所述前段视频加密状态为未加密,则访问所述前段视频播放地址,根据所述前段视频的片段大小、编解码格式,下载所述前段视频,配置缓冲区,解码并播放所述前段视频。

进一步地,所述异步解密模块包括:密钥请求模块,用于根据所述后段视频已加密状态,针对用户信息,异步请求所述后段视频的密钥;密钥接收模块,用于接收所述后段视频的密钥和所述密钥对应的加密算法;所述密钥和所述密钥对应的加密算法由服务器在所述用户信息具备权限时返回;后段下载模块,用于访问所述后段视频播放地址,下载所述后段视频;设定帧解密模块,用于根据所述密钥和所述密钥对应的加密算法,解密所述后段视频的前设定帧,存放于暂存区。

更进一步地,所述播放控制模块包括:第一设定帧解码模块,用于当所述前段视频解码完成时,重新启动解码器,配置缓冲区,解码所述暂存区中的所述后段视频的前设定帧;第一设定帧播放模块,用于根据所述前段视频的片段时长,当所述前段视频播放结束时,直接播放所述后段视频的前设定帧;第一后段解密模块,用于解密所述后段视频除所述前设定帧的剩余的视频片段;第一顺序播放模块,用于根据所述剩余的视频片段的片段大小、片段时长、编解码格式,按照所述剩余的视频片段编号的顺序,在当前视频片段解码完成时,重新启动解码器,配置缓冲区,解码针对当前视频片段的下一视频片段;在所述当前视频片段播放结束时直接播放所述下一视频片段。

更进一步地,所述播放控制模块包括:第二设定帧解码模块,用于当所述前段视频解码完成时,将所述暂存区中的所述后段视频的前设定帧追加给所述前段视频对应的解码器;第二设定帧播放模块,用于当所述前段视频播放结束时,播放所述后段视频的前设定帧;第二后段解密模块,用于解密所述后段视频除所述前设定帧的剩余的视频片段;第二顺序播放模块,用于根据所述剩余的视频片段的片段大小、片段时长、编解码格式,按照所述剩余的视频片段编号的顺序,在当前视频片段解码完成时,将针对当前视频片段的下一视频片段追加给所述当前视频片段对应的解码器;在所述当前视频片段播放结束时直接播放所述下一视频片段。

进一步地,所述播放模块还包括:第二前段播放模块,用于如果所述前段视频加密状态为已加密,则访问所述前段视频播放地址,根据所述前段视频的片段大小、编解码格式,下载所述前段视频,根据预置的密钥和预置的加密算法解密所述前段视频,配置缓冲区,解码并播放所述前段视频。

另外,本发明实施例还公开了一种视频播放系统,所述系统包括服务器和至少一个播放器,所述服务器包括:

压缩加密模块,用于将各视频按照设定顺序切分为前段视频和后段视频,并对所述后段视频加密;所述前段视频为一个视频片段;所述后段视频为至少一个视频片段;

播放请求响应模块,用于接收所述播放器发起的对所述目标视频的播放请求,针对所述播放请求,返回所述目标视频对应的播放信息;

密钥返回模块,用于接收所述播放器对所述后段视频的密钥请求,并在满足设定条件时,返回所述后段视频的密钥;

所述播放器包括:

播放请求模块,用于发起对目标视频的播放请求;所述目标视频按照设定顺序被切分为前段视频和后段视频;所述前段视频为一个视频片段;所述后段视频为至少一个视频片段;所述后段视频被加密;

播放模块,用于接收服务器针对所述播放请求返回的播放信息,并根据所述播放信息,播放所述目标视频的前段视频;

异步解密模块,用于异步请求所述后段视频的密钥,并解密所述后段视频;

播放控制模块,用于当所述前段视频播放结束时,直接播放解密后的后段视频。

与现有技术相比,本发明实施例包括以下优点:因为采用将视频分段播放和异步请求后段视频播放密钥的方式,使得请求密钥的网络通信过程和解密视频的缓冲逻辑在视频播放过程中异步进行,从而避免了加密视频网络播放时首帧时延增大的问题,提高了用户体验。

附图说明

图1a为本发明的结构示意图;

图1b为本发明的技术方案的简图;

图2为本发明实施例一提供的一种加密视频网络播放的方法的流程图;

图3为本发明实施例二提供的另一种加密视频网络播放的方法的流程图;

图4为本发明实施例三提供的另一种加密视频网络播放的方法的流程图;

图5为本发明实施例四提供的一种加密视频网络播放的系统框图;

图6为本发明实施例五提供的另一种加密视频网络播放的系统框图;

图7为本发明实施例六提供的另一种加密视频网络播放的系统框图;

图8为本发明实施例七提供的一种视频播放系统的框图。

具体实施方式

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

参照图1a与图1b所示,本发明的技术方案应用于网络环境下,播放器通过网络通信的方式与服务器形成多对一或者多对多的连接;上述播放器可以是安装在各种终端内的客户端,也可以是网页端或者其它形式;通过服务器将各源视频,即各目标视频按照设定顺序至少拆分为前后两段,通过压缩加密模块对后段视频加密,对前段视频不加密或者采用预分发密钥加密;当播放器发起对目标视频的播放请求之后,播放器接收到服务器针对上述播放请求返回的目标视频的播放信息;上述播放信息可以是上述服务器通过索引服务查找到的;播放器根据播放信息,播放上述前段视频,并同时异步做好上述后段视频的播放准备;在上述前段视频播放结束后,直接播放上述解密后的后段视频。

实施例一:

参照图2所示,本发明实施例一提供了一种加密视频网络播放的方法,包括步骤101-104:

步骤101:播放器发起对目标视频的播放请求;所述目标视频按照设定顺序被切分为前段视频和后段视频;所述前段视频为一个视频片段;所述后段视频为至少一个视频片段;所述后段视频被加密。

播放器发起对目标视频的播放请求,可以是当播放器检测到用户对目标视频的播放需求时播放器通过网络通信向服务器发起针对目标视频的播放请求,也可以是其它情况。例如用户对播放器中某视频的图标执行了点击操作时,播放器检测到上述针对该视频的操作信息,则通过网络通信向服务器发起针对目标视频的播放请求。上述播放请求包括上述播放器对应的的本地网络地址,还包括目标视频的标签信息。

上述目标视频已经按照设定顺序被切分为前段视频和后段视频;上述前段视频为一个视频片段,上述后段视频为至少一个视频片段,上述后段视频被加密。上述设定顺序可以是时间前后顺序,可以是内容前后顺序,也可以按照其它顺序。例如,针对某目标视频,总时长为150分钟,则将该视频按照设定顺序拆分为前10分钟和后140分钟两个片段,或者前75分钟和后75分钟两个片段,或者前100分钟和后50分钟两个片段,或者前10分钟、中间30分钟、后110分钟。例如某动漫分为10话,可以将之按照内容前后分为前两话和后八话,共两段,或者第一话、中三话、后六话,共三段。总之,对视频按照设定顺序的切分方式不做限制,可以拆分为两段、三段,甚至更多段。上述被切分并分别加密后的视频片段可以储存在上述服务器中,也可以储存在其它网络环境中的存储器中,但是上述服务器需要储存有上述视频片段的播放信息,至少包括播放地址、加密状态、对应的密钥与加密算法、编解码格式等信息。

上述前段视频不加密或者采用预分发密钥加密;预分发秘钥已提前加载在播放器中,可以是在用户第一次使用上述播放器播放加密视频时通过网络通信从服务器中下载并加载于播放器中的,也可以是一直内置于播放器中,和播放器代码一起下发的,也可以是通过其它方式。上述后段视频已被加密,通过某密钥以某种加密算法加密。

步骤102:接收服务器针对所述播放请求返回的播放信息,并根据所述播放信息,播放所述目标视频的前段视频。

上述播放器接收上述服务器针对上述播放请求返回的播放信息,上述播放信息可以包括上述目标视频的各视频片段的编号、文件大小、时长、编解码格式、播放地址、加密状态;播放器根据上述播放信息,下载并播放上述目标视频的前段视频。

上述播放信息为上述服务器针对播放请求返回的播放信息,可以是上述服务器针对播放请求中目标视频的标签信息,通过索引服务查找到对应于上述目标视频的标签信息的目标视频的播放信息,而返回的。

步骤103:异步请求所述后段视频的密钥,并解密所述后段视频。

上述播放器在下载并播放上述目标视频的前段视频的过程中,同时异步通过网络通信向上述服务器发起对上述目标视频的后段视频的密钥请求;当满足设定条件时,上述播放器得到服务器返回的上述后段视频的密钥;上述播放器同时根据上述播放信息,异步下载上述后段视频,并根据得到的上述后段视频的密钥,解密上述后段视频。

上述后段视频的密钥为上述服务器针对上述密钥请求,当满足设定条件时返回的;上述密钥请求中包括用户信息;上述设定条件可以是上述用户信息具备播放权限。

上述播放器中已经加载或存在针对各种加密算法的解密程序,因此解密上述后段视频通过上述后段视频的密钥,可以是根据默认的加密算法对应的解密程序来解密,也可以是根据上述播放信息中的加密算法对应的解密程序来解密。

步骤104:当所述前段视频播放结束时,直接播放解密后的后段视频。

上述播放器在上述前段视频播放结束时,直接播放上述解密后的后段视频。上述播放器判断上述前段视频有没有播放结束可以通过上述播放信息中的上述前段视频的时长来判断,也可以通过其他方式。上述播放器在播放上述前段视频过程中,可以同时准备上述后段视频的播放,比如先解密后解码上述后段视频的前设定帧,例如前100帧,同时准备上述后段视频剩余部分的播放;在上述前段视频播放结束时,直接播放上述后段视频的前设定帧;而在上述后段视频的前设定帧播放结束前,已经准备好了下一片段的播放。

本发明实施例包括以下优点:因为采用将视频分段播放和异步请求后段视频播放密钥的方式,使得请求密钥的网络通信过程和解密视频的缓冲逻辑在视频播放过程中异步进行,从而避免了加密视频网络播放时首帧时延增大的问题,提高了用户体验。

对于方法实施例,为了简单描述,故将其都表述为一系列的动作组合,但是本领域技术人员应该知悉,本发明实施例并不受所描述的动作顺序的限制,因为依据本发明实施例,某些步骤可以采用其他顺序或者同时进行。其次,本领域技术人员也应该知悉,说明书中所描述的实施例均属于优选实施例,所涉及的动作并不一定是本发明实施例所必须的。

实施例二:

参照图3所示,本发明实施例二提供了一种加密视频网络播放的方法,包括步骤:201-212:

步骤201:播放器发起对目标视频的播放请求;所述目标视频按照设定顺序被切分为前段视频和后段视频;所述前段视频为一个视频片段;所述后段视频为至少一个视频片段;所述后段视频被加密。

上述播放器通过网络通信向服务器发起对目标视频的播放请求;上述目标视频已经按照设定顺序被切分为前段视频和后段视频;上述前段视频为一个视频片段;上述后段视频为至少一个视频片段;上述后段视频被加密。特别的是,上述后段视频的时长可以长于上述前段视频的时长,在不影响用户体验的基础上尽可能的保护加密视频的内容。

步骤202:接收服务器针对所述播放请求返回的播放信息;所述播放信息包括目标视频的各视频片段的播放地址与加密状态、视频片段信息;所述视频片段信息包括目标视频的视频片段编号,各视频片段的片段大小、片段时长、编解码格式。

上述播放器接收服务器针对上述播放请求返回的播放信息;上述播放信息包括目标视频的各视频片段的播放地址与加密状态、视频片段信息;上述视频片段信息包括目标视频的视频片段编号,各视频片段的片段大小、片段时长、编解码格式。

上述播放信息为上述服务器针对播放请求返回的播放信息,可以是上述服务器针对播放请求中目标视频的标签信息,通过索引服务查找到对应于上述目标视频的标签信息的目标视频的播放信息,而返回的。

步骤203:如果所述前段视频加密状态为未加密,则访问所述前段视频播放地址,根据所述前段视频的片段大小、编解码格式,下载所述前段视频,配置缓冲区,解码并播放所述前段视频。

根据上述播放信息中的各视频片段的加密状态,如果上述前段视频加密状态为未加密,则访问上述播放信息中的上述前段视频播放地址,上述播放地址可以是url(uniformresourelocator,统一资源定位符)地址;根据上述前段视频的播放地址,下载上述前段视频,通过上述前段视频的文件大小来判断上述前段视频是否下载完成;配置缓冲区,根据上述前段视频的编解码格式初始化解码器,解码并播放上述前段视频,然后执行步骤205。

上述配置缓冲区可以是通过上述前段视频的文件大小结合具体情况,如i/o速度与cpu处理速度,来配置,也可以根据预设的条件配置缓冲区。

步骤204:如果所述前段视频加密状态为已加密,则访问所述前段视频播放地址,根据所述前段视频的片段大小、编解码格式,下载所述前段视频,根据预置的密钥和预置的加密算法解密所述前段视频,配置缓冲区,解码并播放所述前段视频。

根据上述播放信息中的各视频片段的加密状态,如果上述前段视频加密状态为已加密,则访问所述前段视频播放地址,上述播放地址可以是url地址;根据上述前段视频的播放地址,下载上述前段视频,通过上述前段视频的文件大小来判断上述前段视频是否下载完成;根据预置的密钥和预置的加密算法解密上述前段视频,配置缓冲区,根据上述前段视频的编解码格式初始化解码器,解码并播放所述前段视频,然后执行步骤205。

上述预置密钥与预置的加密算法已提前加载在播放器中,可以是在用户第一次使用上述播放器播放加密视频时通过网络通信从服务器中下载并加载于播放器中的,也可以是一直内置于播放器中,和播放器代码一起下发的,也可以是通过其它方式。

步骤205:根据所述后段视频已加密状态,针对用户信息,异步请求所述后段视频的密钥。

根据上述播放信息中的后段视频的已加密状态,或者默认的上述后段视频的已加密状态,针对用户信息,可以是用户注册的播放器账号,也可以是用户的身份信息,在上述播放器下载并播放上述前段视频的同时,异步通过网络通信向上述服务器发送对上述后段视频的密钥的请求;上述请求中可以包括用户信息、上述后段视频的标识、上述播放器的本地地址。

步骤206:接收所述后段视频的密钥和所述密钥对应的加密算法;所述密钥和所述密钥对应的加密算法由服务器在所述用户信息具备权限时返回。

在上述播放器下载并播放上述前段视频的同时,上述播放器接收上述后段视频的密钥和上述密钥对应的加密算法;上述密钥和上述密钥对应的加密算法由服务器在上述用户信息具备权限时返回。

上述服务器储存着具备播放许可的用户信息,上述服务器判断用户信息是否具备权限,可以通过判断用户是否具备播放许可,是否账户余额不足等情况;例如如果用户具备播放许可,且账户余额充足,则上述服务器判断用户信息具备权限。

步骤207:访问所述后段视频播放地址,下载所述后段视频。

在上述播放器下载并播放上述前段视频的同时,上述播放器访问上述播放信息中上述后段视频播放地址,下载上述后段视频。

步骤208:根据所述密钥和所述密钥对应的加密算法,解密所述后段视频的前设定帧,存放于暂存区。

在上述播放器下载并播放上述前段视频的同时,上述播放器根据上述密钥和上述密钥对应的加密算法,解密上述后段视频的前设定帧,并将上述后段视频的前设定帧存放于暂存区;上述暂存区可以是上述播放器本地对应的内存中,也可以是上述播放器本地对应的硬盘中。对应于上述密钥对应的加密算法的解密程序已储存在上述播放器中。上述先解密上述后段视频的前设定帧的步骤是为了尽可能快的在上述前段视频播放结束前,准备好下一段视频的播放,在上述前段视频播放结束时,衔接下一段视频的播放,因此采用了先解密上述后段视频的前设定帧的方式,例如先解密上述后段视频的前200帧;但是在上述后段视频的前设定帧的播放结束前,同样需要准备好再下一段视频的播放。

步骤209:当所述前段视频解码完成时,重新启动解码器,配置缓冲区,解码所述暂存区中的所述后段视频的前设定帧。

当上述前段视频解码完成时,重新启动解码器,配置缓冲区,根据上述播放信息中上述后段视频的第一个片段的编解码格式初始化解码器,解码上述暂存区中的上述后段视频的前设定帧。

步骤210:根据所述前段视频的片段时长,当所述前段视频播放结束时,直接播放所述后段视频的前设定帧。

根据上述前段视频的片段时长,判断上述前段视频是否播放结束;当上述前段视频播放结束时,直接播放上述后段视频的前设定帧,与上述前端视频的播放刚好衔接。

步骤211:解密所述后段视频除所述前设定帧的剩余的视频片段。

解密上述后段视频除上述前设定帧的剩余的视频片段;上述解密过程可以在上述后段视频的前设定帧解密完成后就开始,只要能够在上述后段视频的前设定帧播放结束前,准备好上述后段视频除前设定帧的剩余部分的第一个视频片段的播放即可。

步骤212:根据所述剩余的视频片段的片段大小、片段时长、编解码格式,按照所述剩余的视频片段编号的顺序,在当前视频片段解码完成时,重新启动解码器,配置缓冲区,解码针对当前视频片段的下一视频片段;在所述当前视频片段播放结束时直接播放所述下一视频片段。

针对上述后段视频除前设定帧的剩余部分的第一个视频片段,当上述后段视频的前设定帧解码完成时,重新启动解码器,配置缓冲区,根据上述播放信息中上述后段视频的第一个视频片段的编解码格式初始化解码器,解码上述后段视频除前设定帧的剩余部分的第一个视频片段;当上述后段视频的前设定帧播放结束时,直接播放上述后段视频除前设定帧的剩余部分的第一个视频片段,与上述后段视频的前设定帧的播放刚好衔接。按照上述步骤,根据编码顺序,按顺序的针对上述后段视频的其它视频片段,在当前视频片段解码完成时,重新启动解码器,配置缓冲区,解码针对当前视频片段的下一视频片段;在上述当前视频片段播放结束时,直接播放上述下一视频片段。

本发明实施例包括以下优点:因为提前将前段视频不加密或者采用预置密钥加密,后段视频加密,采用视频分段播放和异步请求后段视频播放密钥的方式,并且采用了在当前视频片段解码结束后,重新启动解码器,解码针对当前视频片段的下一视频片段的方式,使得在当前视频片段播放结束前,提前准备好了对上述下一视频片段的播放,使得请求密钥的网络通信过程和解密视频的缓冲逻辑在视频播放过程中异步进行,并且各视频片段的播放流畅衔接,从而避免了加密视频网络播放时首帧时延增大的问题,提高了用户体验。

对于方法实施例,为了简单描述,故将其都表述为一系列的动作组合,但是本领域技术人员应该知悉,本发明实施例并不受所描述的动作顺序的限制,因为依据本发明实施例,某些步骤可以采用其他顺序或者同时进行。其次,本领域技术人员也应该知悉,说明书中所描述的实施例均属于优选实施例,所涉及的动作并不一定是本发明实施例所必须的。

实施例三:

参照图4所示,本发明实施例三提供了一种加密视频网络播放的方法,包括步骤:301-312:

步骤301:播放器发起对目标视频的播放请求;所述目标视频按照设定顺序被切分为前段视频和后段视频;所述前段视频为一个视频片段;所述后段视频为至少一个视频片段;所述后段视频被加密。

步骤302:接收服务器针对所述播放请求返回的播放信息;所述播放信息包括目标视频的各视频片段的播放地址与加密状态、视频片段信息;所述视频片段信息包括目标视频的视频片段编号,各视频片段的片段大小、片段时长、编解码格式。

步骤303:如果所述前段视频加密状态为未加密,则访问所述前段视频播放地址,根据所述前段视频的片段大小、编解码格式,下载所述前段视频,配置缓冲区,解码并播放所述前段视频,然后执行步骤305。

步骤304:如果所述前段视频加密状态为已加密,则访问所述前段视频播放地址,根据所述前段视频的片段大小、编解码格式,下载所述前段视频,根据预置的密钥和预置的加密算法解密所述前段视频,配置缓冲区,解码并播放所述前段视频,然后执行步骤305。

步骤305:根据所述后段视频已加密状态,针对用户信息,异步请求所述后段视频的密钥。

步骤306:接收所述后段视频的密钥和所述密钥对应的加密算法;所述密钥和所述密钥对应的加密算法由服务器在所述用户信息具备权限时返回。

步骤307:访问所述后段视频播放地址,下载所述后段视频。

步骤308:根据所述密钥和所述密钥对应的加密算法,解密所述后段视频的前设定帧,存放于暂存区。

步骤309:当所述前段视频解码完成时,将所述暂存区中的所述后段视频的前设定帧追加给所述前段视频对应的解码器。

当上述前段视频解码完成时,将上述暂存区中的上述后段视频的前设定帧追加给上述前段视频对应的解码器,解码上述暂存区中的上述后段视频的前设定帧;一般地,属于同一视频的各视频片段编解码格式相同,因此此处不需要再次初始化解码器。在实际应用中,播放器通过填充解码器缓冲区的接口,即可完成将上述暂存区中的上述后段视频的前设定帧追加给上述前段视频对应的解码器的步骤,例如可以采用调用append接口的方式。

步骤310:当所述前段视频播放结束时播放所述后段视频的前设定帧。

根据上述前段视频的片段时长,判断上述前段视频是否播放结束;当上述前段视频播放结束时,上述播放器直接播放上述后段视频的前设定帧,与上述前端视频的播放刚好衔接。

步骤311:解密所述后段视频除所述前设定帧的剩余的视频片段。

解密上述后段视频除上述前设定帧的剩余的视频片段;上述解密过程可以在上述后段视频的前设定帧解密完成后就开始,只要能够在上述后段视频的前设定帧播放结束前,准备好上述后段视频除前设定帧的剩余部分的第一个视频片段的播放即可。

步骤312:根据所述剩余的视频片段的片段大小、片段时长、编解码格式,按照所述剩余的视频片段编号的顺序,在当前视频片段解码完成时,将针对当前视频片段的下一视频片段追加给所述当前视频片段对应的解码器;在所述当前视频片段播放结束时直接播放所述下一视频片段。

针对上述后段视频除前设定帧的剩余部分的第一个视频片段,当上述后段视频的前设定帧解码完成时,将上述后段视频除前设定帧的剩余部分的第一个视频片段追加给上述后段视频的前设定帧对应的解码器,解码上述后段视频除前设定帧的剩余部分的第一个视频片段;当上述后段视频的前设定帧播放结束时,上述播放器直接播放上述后段视频除前设定帧的剩余部分的第一个视频片段,与上述后段视频的前设定帧的播放刚好衔接。按照上述步骤,根据编码顺序,按顺序的针对上述后段视频的其它视频片段,在当前视频片段解码完成时,将针对当前视频片段的下一视频片段追加给上述当前视频片段对应的解码器;在上述当前视频片段播放结束时,上述播放器直接播放上述下一视频片段;一般地,属于同一视频的各视频片段编解码格式相同,因此此处不需要再次初始化解码器。

本发明实施例包括以下优点:因为提前将前段视频不加密或者采用预置密钥加密,后段视频加密,采用视频分段播放和异步请求后段视频播放密钥的方式,并且采用了在当前视频片段解码完成时,将针对当前视频片段下一视频片段的压缩数据追加给上述当前视频片段对应的解码器的方式,使得请求密钥的网络通信过程和解密视频的缓冲逻辑在视频播放过程中异步进行,并且各视频片段的播放流畅衔接,从而避免了加密视频网络播放时首帧时延增大的问题,提高了用户体验。

对于方法实施例,为了简单描述,故将其都表述为一系列的动作组合,但是本领域技术人员应该知悉,本发明实施例并不受所描述的动作顺序的限制,因为依据本发明实施例,某些步骤可以采用其他顺序或者同时进行。其次,本领域技术人员也应该知悉,说明书中所描述的实施例均属于优选实施例,所涉及的动作并不一定是本发明实施例所必须的。

实施例四:

参照图5所示,本发明实施例四提供了一种加密视频网络播放的系统,包括:

播放请求模块60,用于发起对目标视频的播放请求;所述目标视频按照设定顺序被切分为前段视频和后段视频;所述前段视频为一个视频片段;所述后段视频为至少一个视频片段;所述后段视频被加密;

播放模块70,用于接收服务器针对所述播放请求返回的播放信息,并根据所述播放信息,播放所述目标视频的前段视频;

异步解密模块80,用于异步请求所述后段视频的密钥,并解密所述后段视频;

播放控制模块90,用于当所述前段视频播放结束时,直接播放解密后的后段视频。

本发明实施例包括以下优点:因为采用将视频分段播放和异步请求后段视频播放密钥的方式,使得请求密钥的网络通信过程和解密视频的缓冲逻辑在视频播放过程中异步进行,从而避免了加密视频网络播放时首帧时延增大的问题,提高了用户体验。

对于装置实施例而言,由于其与方法实施例基本相似,所以描述的比较简单,相关之处参见方法实施例的部分说明即可。

实施例五:

参照图6所示,本发明实施例五提供了一种加密视频网络播放的系统,包括:

播放请求模块60,用于发起对目标视频的播放请求;所述目标视频按照设定顺序被切分为前段视频和后段视频;所述前段视频为一个视频片段;所述后段视频为至少一个视频片段;所述后段视频被加密;

播放信息模块701,用于接收服务器针对所述播放请求返回的播放信息;所述播放信息包括目标视频的各视频片段的播放地址与加密状态、视频片段信息;所述视频片段信息包括目标视频的视频片段编号,各视频片段的片段大小、片段时长、编解码格式;

第一前段播放模块702,用于如果所述前段视频加密状态为未加密,则访问所述前段视频播放地址,根据所述前段视频的片段大小、编解码格式,下载所述前段视频,配置缓冲区,解码并播放所述前段视频;

第二前段播放模块703,用于如果所述前段视频加密状态为已加密,则访问所述前段视频播放地址,根据所述前段视频的片段大小、编解码格式,下载所述前段视频,根据预置的密钥和预置的加密算法解密所述前段视频,配置缓冲区,解码并播放所述前段视频。

密钥请求模块801,用于根据所述后段视频已加密状态,针对用户信息,异步请求所述后段视频的密钥;

密钥接收模块802,用于接收所述后段视频的密钥和所述密钥对应的加密算法;所述密钥和所述密钥对应的加密算法由服务器在所述用户信息具备权限时返回;

后段下载模块803,用于访问所述后段视频播放地址,下载所述后段视频;

设定帧解密模块804,用于根据所述密钥和所述密钥对应的加密算法,解密所述后段视频的前设定帧,存放于暂存区;

第一设定帧解码模块901,用于当所述前段视频解码完成时,重新启动解码器,配置缓冲区,解码所述暂存区中的所述后段视频的前设定帧;

第一设定帧播放模块902,用于根据所述前段视频的片段时长,当所述前段视频播放结束时,直接播放所述后段视频的前设定帧;

第一后段解密模块903,用于解密所述后段视频除所述前设定帧的剩余的视频片段;

第一顺序播放模块904,用于根据所述剩余的视频片段的片段大小、片段时长、编解码格式,按照所述剩余的视频片段编号的顺序,在当前视频片段解码完成时,重新启动解码器,配置缓冲区,解码针对当前视频片段的下一视频片段;在所述当前视频片段播放结束时直接播放所述下一视频片段。

本发明实施例包括以下优点:因为提前将前段视频不加密或者采用预置密钥加密,后段视频加密,采用视频分段播放和异步请求后段视频播放密钥的方式,并且采用了在当前视频片段解码结束后,重新启动解码器,解码针对当前视频片段的下一视频片段的方式,使得在当前视频片段播放结束前,提前准备好了对上述下一视频片段的播放,使得请求密钥的网络通信过程和解密视频的缓冲逻辑在视频播放过程中异步进行,并且各视频片段的播放流畅衔接,从而避免了加密视频网络播放时首帧时延增大的问题,提高了用户体验。

对于装置实施例而言,由于其与方法实施例基本相似,所以描述的比较简单,相关之处参见方法实施例的部分说明即可。

实施例六:

参照图7所示,本发明实施例六提供了一种加密视频网络播放的系统,包括:

播放请求模块60,用于发起对目标视频的播放请求;所述目标视频按照设定顺序被切分为前段视频和后段视频;所述前段视频为一个视频片段;所述后段视频为至少一个视频片段;所述后段视频被加密;

播放信息模块701,用于接收服务器针对所述播放请求返回的播放信息;所述播放信息包括目标视频的各视频片段的播放地址与加密状态、视频片段信息;所述视频片段信息包括目标视频的视频片段编号,各视频片段的片段大小、片段时长、编解码格式;

第一前段播放模块702,用于如果所述前段视频加密状态为未加密,则访问所述前段视频播放地址,根据所述前段视频的片段大小、编解码格式,下载所述前段视频,配置缓冲区,解码并播放所述前段视频;

第二前段播放模块703,用于如果所述前段视频加密状态为已加密,则访问所述前段视频播放地址,根据所述前段视频的片段大小、编解码格式,下载所述前段视频,根据预置的密钥和预置的加密算法解密所述前段视频,配置缓冲区,解码并播放所述前段视频。

密钥请求模块801,用于根据所述后段视频已加密状态,针对用户信息,异步请求所述后段视频的密钥;

密钥接收模块802,用于接收所述后段视频的密钥和所述密钥对应的加密算法;所述密钥和所述密钥对应的加密算法由服务器在所述用户信息具备权限时返回;

后段下载模块803,用于访问所述后段视频播放地址,下载所述后段视频;

设定帧解密模块804,用于根据所述密钥和所述密钥对应的加密算法,解密所述后段视频的前设定帧,存放于暂存区;

第二设定帧解码模块905,用于当所述前段视频解码完成时,将所述暂存区中的所述后段视频的前设定帧追加给所述前段视频对应的解码器;

第二设定帧播放模块906,用于当所述前段视频播放结束时播放所述后段视频的前设定帧;

第二后段解密模块907,用于解密所述后段视频除所述前设定帧的剩余的视频片段;

第二顺序播放模块908,用于根据所述剩余的视频片段的片段大小、片段时长、编解码格式,按照所述剩余的视频片段编号的顺序,在当前视频片段解码完成时,将针对当前视频片段的下一视频片段追加给所述当前视频片段对应的解码器;在所述当前视频片段播放结束时直接播放所述下一视频片段。

本发明实施例包括以下优点:因为提前将前段视频不加密或者采用预置密钥加密,后段视频加密,采用视频分段播放和异步请求后段视频播放密钥的方式,并且采用了在当前视频片段解码完成时,将针对当前视频片段下一视频片段的压缩数据追加给上述当前视频片段对应的解码器的方式,使得请求密钥的网络通信过程和解密视频的缓冲逻辑在视频播放过程中异步进行,并且各视频片段的播放流畅衔接,从而避免了加密视频网络播放时首帧时延增大的问题,提高了用户体验。

对于装置实施例而言,由于其与方法实施例基本相似,所以描述的比较简单,相关之处参见方法实施例的部分说明即可。

实施例七:

参照图8所示,本发明实施例七提供了一种视频播放系统,包括服务器100和至少一个播放器50,

所述服务器100包括:

压缩加密模块110,用于将各视频按照设定顺序切分为前段视频和后段视频,并对所述后段视频加密;所述前段视频为一个视频片段;所述后段视频为至少一个视频片段;

上述服务器通过上述压缩加密模块将各视频分别按照设定顺序切分为前段视频和后段视频,并对上述后段视频加密;上述前段视频为一个视频片段;上述后段视频为至少一个视频片段;本发明实施例对上述视频片段的切分数量与如何按照设定顺序切分不做限制;上述被切分并分别加密后的视频片段可以储存在上述服务器中,也可以储存在其它网络环境中的存储器中,但是上述服务器需要储存有上述视频片段的相关播放信息,至少包括播放地址、加密状态、对应的密钥与加密算法、编解码格式等信息;

播放请求响应模块120,用于接收所述播放器发起的对所述目标视频的播放请求,针对所述播放请求,返回所述目标视频对应的播放信息;

上述服务器通过上述播放请求响应模块,针对上述播放请求向上述播放器返回播放信息,可以是上述服务器针对播放请求中目标视频的标签信息,通过索引服务查找到对应于上述目标视频的标签信息的目标视频的播放信息,而返回的;

上述播放信息可以包括上述目标视频的各视频片段的编号、文件大小、时长、编解码格式、播放地址、加密状态;上述各视频片段的编号用于区别各视频片段并用于区分播放顺序;上述文件大小用于分别判断各视频片段是否下载完成,也可以用来调整并配置缓冲区;上述编解码格式用于分别初始化解码器,确认解码格式;上述时长用于分别确认各视频片段播放过程中是否播放结束;上述播放地址用于播放器下载上述各视频片段;上述解密状态用于确认各视频片段的加密状态,以及是否需要解密;

密钥返回模块130,用于接收所述播放器对所述后段视频的密钥请求,并在满足设定条件时,返回所述后段视频的密钥;

上述服务器通过上述密钥返回模块,接收上述播放器对上述后段视频的密钥请求,并在满足设定条件时,返回上述后段视频的密钥;上述设定条件可以是上述用户信息具备播放权限,上述服务器储存着具备播放许可的用户信息,上述服务器判断用户信息是否具备权限,可以通过判断用户是否具备播放许可,是否账户余额不足等情况;例如如果用户具备播放许可,且账户余额充足,则上述服务器判断用户信息具备权限;

所述播放器50包括:

播放请求模块60,用于发起对目标视频的播放请求;所述目标视频按照设定顺序被切分为前段视频和后段视频;所述前段视频为一个视频片段;所述后段视频为至少一个视频片段;所述后段视频被加密;

播放模块70,用于接收服务器针对所述播放请求返回的播放信息,并根据所述播放信息,播放所述目标视频的前段视频;

异步解密模块80,用于异步请求所述后段视频的密钥,并解密所述后段视频;

播放控制模块90,用于当所述前段视频播放结束时,直接播放解密后的后段视频。

本发明实施例包括以下优点:因为采用将视频分段播放和异步请求后段视频播放密钥的方式,使得请求密钥的网络通信过程和解密视频的缓冲逻辑在视频播放过程中异步进行,从而避免了加密视频网络播放时首帧时延增大的问题,提高了用户体验。

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

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

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

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

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

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