一种直播转点播方法、装置及终端与流程

文档序号:12279746阅读:246来源:国知局
一种直播转点播方法、装置及终端与流程

本发明涉及视频技术领域,尤其涉及一种直播转点播方法、装置及终端。



背景技术:

网络视频的播放方式分为直播和点播两种播放方式。视频直播是指随着事件的发生、发展进程,同步制作和播出视频,视频的制作和播出同时发生;而视频点播是指根据用户的需求播放已制作完成的视频,视频的制作和播出非同时发生。

为了满足用户对于直播转点播的需求,通常通过使用非线性视频编辑软件将直播内容转为点播视频供用户进行回看。但是,现有技术存在下述问题:

视频的直播转点播耗时较长,以90分钟的直播视频为例,通常转为点播文件需要耗时7-10分钟,则用户至少要在直播结束的7分钟之后才有可能能够看到所述直播视频对应的点播视频,点播视频生成和发布的延迟影响了用户体验。



技术实现要素:

为了解决上述技术问题,本发明提出了一种直播转点播方法、装置及终端。本发明具体是以如下技术方案实现的:

一种直播转点播方法,所述方法包括:

响应于直播转点播指令,得到N个(N>1)视频分段时间点;

实时获取直播数据流并记录直播时间;

若直播时间到达所述视频分段时间点,则根据与所述视频分段时间点对应的直播内容生成分段点播文件包;所述分段点播文件包包括记录有相同直播内容的一个或多个分段点播文件;

按照分段点播文件记录的直播内容的时间顺序拼接所述分段点播文件,得到记录有完整直播内容的完整点播文件。

进一步地,第N个视频分段时间点为直播结束时间点,所述根据与所述视频分段时间点对应的直播内容生成分段点播文件包包括:

若直播时间到达第一个视频分段时间点,则根据直播开始至所述第一个视频分段时间点之间的直播内容生成第一个分段点播文件包;

若直播时间到达第i(i>1)个视频分段时间点,则根据第i-1个视频分段时间点至第i个视频分段时间点之间的直播内容生成第i个分段点播文件包。

进一步地,所述分段点播文件包中,不同的分段点播文件的转码参数不同,相应的,不同的分段点播文件记录的直播内容的清晰度也不同。

进一步地,所述按照分段点播文件记录的直播内容的时间顺序拼接所述分段点播文件,得到记录有完整直播内容的完整点播文件包括:

得到记录不同时间段的直播内容的分段点播文件包;

从每个所述分段点播文件包选择一个分段点播文件作为待拼接文件;所述待拼接文件均具有相同的转码参数;

按照待拼接文件记录的直播内容的时间顺序对所述待拼接文件进行合并,得到对应于所述转码参数的记录有完整直播内容的完整点播文件;

判断是否还存在未参与拼接的分段点播文件;

若是,则重复上述步骤继续生成下一个完整点播文件。

进一步地,还包括:

对所述完整点播文件进行流化处理;

存储经过流化处理后的完整点播文件;

删除用于生成所述完整点播文件的分段点播文件。

进一步地,还包括:

当所述分段点播文件包中的分段点播文件均被删除后,删除所述分段点播文件包。

进一步地,每一个所述分段点播文件均包括一个或多个文件片段;

若所述分段点播文件包括多个文件片段,则所述文件片段在所述分段点播文件中的存储顺序与所述文件片段记录的直播内容在所述直播数据流中的先后顺序一致。

进一步地,所述按照分段点播文件记录的直播内容的时间顺序拼接所述分段点播文件,得到记录有完整直播内容的完整点播文件包括:

得到记录不同时间段的直播内容的分段点播文件包;

从每个所述分段点播文件包选择一个分段点播文件作为待拼接文件;所述待拼接文件均具有相同的转码参数;

按照待拼接文件记录的直播内容的时间顺序对所述待拼接文件排序;

以排在第一位的待拼接文件为指定文件,将后续的待拼接文件依次以追加的方式插入所述指定文件的尾部,得到对应于所述转码参数的记录有完整直播内容的完整点播文件;

判断是否还存在未参与拼接的分段点播文件;

若是,则重复上述步骤继续生成下一个完整点播文件。

进一步地,还包括:

对所述完整点播文件进行流化处理;

存储经过流化处理后的完整点播文件;

删除用于生成所述完整点播文件的分段点播文件。

进一步地,还包括:

当所述分段点播文件包中的分段点播文件均被删除后,删除所述分段点播文件包。

进一步地,在尚未得到记录有完整直播内容的完整点播文件的情况下,将第一个分段点播文件包中的分段点播文件向用户发布;

当得到记录有完整直播内容的完整点播文件后,删除之前发布的分段点播文件,并重新发布所述完整点播文件。

进一步地,得到记录有完整直播内容的完整点播文件后,直接发布所述完整点播文件。

一种直播转点播装置,还包括:

直播转点播指令响应模块,用于获取直播转点播指令并得到N个(N>1)视频分段时间点;

数据流获取模块,用于实时获取直播数据流;

直播时间记录模块,用于记录直播时间;

分段点播文件包生成模块,用于根据与视频分段时间点对应的直播内容生成分段点播文件包;所述分段点播文件包包括记录有相同直播内容的一个或多个分段点播文件;

拼接模块,用于按照分段点播文件记录的直播内容的时间顺序拼接所述分段点播文件,得到记录有完整直播内容的完整点播文件。

进一步地,所述拼接模块包括:

第一分段点播文件包得到单元,用于得到记录不同时间段的直播内容的分段点播文件包;

第一待拼接文件选取单元,用于从每个所述分段点播文件包选择一个分段点播文件作为待拼接文件;所述待拼接文件均具有相同的转码参数;

第一完整点播文件生成单元,用于按照待拼接文件记录的直播内容的时间顺序对所述待拼接文件进行合并,得到对应于所述转码参数的记录有完整直播内容的完整点播文件;

第一拼接控制单元,用于判断是否还存在未参与拼接的分段点播文件并根据判断结果控制生成下一个完整点播文件。

进一步地,所述拼接模块还包括:

第一流化处理单元,用于对所述完整点播文件进行流化处理;

第一存储单元,用于存储经过流化处理后的完整点播文件;

第一删除单元,用于删除用于生成所述完整点播文件的分段点播文件。

进一步地,所述拼接模块包括:

第二分段点播文件包得到单元,用于得到记录不同时间段的直播内容的分段点播文件包;

第二待拼接文件选取单元,用于从每个所述分段点播文件包选择一个分段点播文件作为待拼接文件;所述待拼接文件均具有相同的转码参数;

排序单元,用于按照待拼接文件记录的直播内容的时间顺序对所述待拼接文件排序;

第二完整点播文件生成单元,用于以排在第一位的待拼接文件为指定文件,将后续的待拼接文件依次以追加的方式插入所述指定文件的尾部,得到对应于所述转码参数的记录有完整直播内容的完整点播文件;

第二拼接控制单元,用于判断是否还存在未参与拼接的分段点播文件并根据判断结果控制生成下一个完整点播文件。

进一步地,所述拼接模块还包括:

第二流化处理单元,用于对所述完整点播文件进行流化处理;

第二存储单元,用于存储经过流化处理后的完整点播文件;

第二删除单元,用于删除用于生成所述完整点播文件的分段点播文件。

进一步地,还包括:

第一发布模块,用于在尚未得到记录有完整直播内容的完整点播文件的情况下,将第一个分段点播文件包中的分段点播文件向用户发布;

第二发布模块,用于当得到记录有完整直播内容的完整点播文件后,删除之前发布的分段点播文件,并重新发布所述完整点播文件。

进一步地,还包括:

第三发布模块,用于得到记录有完整直播内容的完整点播文件后,直接发布所述完整点播文件。

一种直播转点播终端,所述终端包括上述的直播转点播装置。

本发明提供了一种直播转点播方法、系统及终端,具有如下有益效果:

(1)通过分段生成点播文件,并再进行后续合成的方式,使得在完整点播文件未生成时,能够以发布分段点播文件的形式率先发布部分的直播转点播结果,从而提升视频直播转点播结果的发布速度;

(2)在用户观看部分直播内容的同时,后台继续进行分段视频文件的拼接,并完成完整的完整点播文件的发布;由此,用户既可以率先观看部分点播视频又能轻易切换观看完整视频,从而显著提升用户体验。

(3)若完整点播文件生成过程出现错误,可以通过发布分段点播文件弥补损失,提高容错性。

附图说明

为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其它附图。

图1是本发明实施例提供的直播转点播方法流程图;

图2是本发明实施例提供的分段点播文件拼接方法的流程图;

图3是本发明实施例提供的分段点播文件拼接方法的流程图;

图4是本发明实施例提供的直播转点播装置的框图;

图5是本发明实施例提供的拼接模块的框图;

图6是本发明实施例提供的另一种拼接模块的框图;

图7是本发明实施例提供的终端的结构框图。

图8是本发明实施例提供的服务器的结构框图。

具体实施方式

下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有作出创造性劳动的前提下所获得的所有其他实施例,都属于本发明保护的范围。

本发明实施例提供一种直播转点播方法,所述方法如图1所示,包括:

S101.响应于直播转点播指令,得到N个(N>1)视频分段时间点。

具体地,本实施例中第N个视频分段时间点为直播结束时间点,所述视频分段时间点可以根据预设的规则得到,也可以通过触发的方式得到,此外,也可以根据实际情况进行有针对性的设置。

(1)根据预设的规则得到

可以根据预设的规则和直播的播出时间得到视频分段时间点。若所述预设的规则为按照直播的播出时间以5:1的方式设置视频分段时间,则对于60分钟的直播,所述视频分段点为第50分钟和第60分钟。

(2)通过触发的方式得到

也可以实时接收其它进程或者设备发送的触发信号,以接收到所述触发信号的时刻为视频分段时间点,视频结束信号也作为触发信号,因此,视频结束时间点也是视频分段时间点。

(3)进行有针对性的设置

当然也可以根据实际情况进行针对性的设置。若希望得到较为完整的点播文件,则以90分钟的直播为例,可以将视频分段时间点设置在第85分钟和第90分钟。

S102.实时获取直播数据流并记录直播时间。

S103.若直播时间到达所述视频分段时间点,则根据与所述视频分段时间点对应的直播内容生成分段点播文件包;所述分段点播文件包包括记录有相同直播内容的一个或多个分段点播文件。

在S104之前,还可以对S103中的分段点播文件按照具体需求进行非线性编辑操作,所述非线性编辑操作包括但不限于:

(1)剪切

根据实际情况对分段点播文件中的部分视频内容进行剪切,通常可以应用于剪切掉直播过程中插入的广告或者无回看价值的部分视频内容,提升用户体验。

(2)插入

根据实际情况对分段点播文件中记录的视频内容中插入一段或多段其它内容,通常插入的内容为视频或音频,可以用于进行广告推广或者对用户起到提示作用。

(3)添加图片

根据实际情况在分段点播文件中记录的视频内容中插入一张或多张图片,可以用于进行广告推广或者对用户起到提示作用;

(4)模糊

根据实际情况对分段点播文件记录的视频内容中的某些像素进行模糊化处理,可以用于避免版权纠纷或保护隐私。

S104.按照分段点播文件记录的直播内容的时间顺序拼接所述分段点播文件,得到记录有完整直播内容的完整点播文件。

本实施例提供了一种直播转点播方法,不仅能够分段将直播内容转化为点播,还能够对转化后的点播内容进行多种非线性编辑。

本发明实施例还提供了另一种直播转点播方法,包括:

S201.响应于直播转点播指令,得到N个(N>1)视频分段时间点。

具体地,第N个视频分段时间点为直播结束时间点。

S202.实时获取直播数据流并记录直播时间。

S203.若直播时间到达所述视频分段时间点,则根据与所述视频分段时间点对应的直播内容生成分段点播文件包;所述分段点播文件包包括记录有相同直播内容的一个或多个分段点播文件。

S204.按照分段点播文件记录的直播内容的时间顺序拼接所述分段点播文件,得到记录有完整直播内容的完整点播文件。

具体地,S203包括:

若直播时间到达第一个视频分段时间点,则根据直播开始至所述第一个视频分段时间点之间的直播内容生成第一个分段点播文件包。

若直播时间到达第i(i>1)个视频分段时间点,则根据第i-1个视频分段时间点至第i个视频分段时间点之间的直播内容生成第i个分段点播文件包。

本实施例中,以播出时间为90分钟的直播为例,若视频分段时间点为30分钟、60分钟和90分钟,则:

当直播进行到第30分钟时,则根据0分0秒至第30分0秒之间的直播内容生成第一个分段点播文件包;

当直播进行到第60分钟时,则根据30分0秒至第60分0秒之间的直播内容生成第二个分段点播文件包;

当直播结束时,则根据60分0秒至第90分0秒之间的直播内容生成第三个分段点播文件包。

具体地,所述分段点播文件包中,不同的分段点播文件的转码参数不同,相应的,不同的分段点播文件记录的直播内容的清晰度也不同,从而能够用于生成不同清晰度的完整点播文件以满足用户的不同需求。

本实施例中,以提供流畅、标清、高清和超清四种清晰度的点播文件为例,每个分段点播文件包中均包含四个分段点播文件,所述四个分段点播文件均记录相同的内容,但是是由不同的转码参数得到;相应的,步骤S204中对相同转码参数的分段点播文件进行拼接,最终生成四个完整点播文件,所述四个完整点播文件分别对应流畅、标清、高清和超清四中清晰度。

每一个分段点播文件均由文件头和文件体构成,文件头用于记录文件信息,文件体用于记录直播内容。

具体地,文件头记录有转码参数、视频的开始时间、结束时间以及时长,所述视频即指文件体中记录的直播内容。在步骤S204中,可以根据文件头中的信息对分段点播文件进行拼接,得到记录有完整直播内容的完整点播文件。

本发明实施例还提供了一种直播转点播方法,包括:

S301.响应于直播转点播指令,得到N个(N>1)视频分段时间点。

具体地,第N个视频分段时间点为直播结束时间点。

S302.实时获取直播数据流并记录直播时间。

S303.若直播时间到达所述视频分段时间点,则根据与所述视频分段时间点对应的直播内容生成分段点播文件包;所述分段点播文件包包括记录有相同直播内容的一个或多个分段点播文件。

S304.按照分段点播文件记录的直播内容的时间顺序拼接所述分段点播文件,得到记录有完整直播内容的完整点播文件。

具体地,S303包括:

若直播时间到达第一个视频分段时间点,则根据直播开始至所述第一个视频分段时间点之间的直播内容生成第一个分段点播文件包。

若直播时间到达第i(i>1)个视频分段时间点,则根据第i-1个视频分段时间点至第i个视频分段时间点之间的直播内容生成第i个分段点播文件包。

本实施例中,以播出时间为90分钟的直播为例,若视频分段时间点为85分钟和第90分钟,则:

当直播进行到第85分钟时,则根据0分0秒至第85分0秒之间的直播内容生成第一个分段点播文件包,命名为vid1;

当直播结束时,则根据85分0秒至第90分0秒之间的直播内容生成第二个分段点播文件包,命名为vid2。

本实施例中,以提供流畅、标清、高清和超清四种清晰度的点播文件为例,每个分段点播文件包中均包含四个分段点播文件,所述四个分段点播文件均记录相同的内容,但是是由不同的转码参数得到;相应的,步骤S304中对相同转码参数的分段点播文件进行拼接,最终生成四个完整点播文件,所述四个完整点播文件分别对应流畅、标清、高清和超清四中清晰度。

具体地,S304如图2所示,包括:

S3041.得到记录不同时间段的直播内容的分段点播文件包。

本实施例中,可以通过不同的方式得到记录不同时间段的直播内容的分段点播文件包,比如拷贝或者下载。本实施例中得到第一个分段点播文件包vid1和第二个分段点播文件包vid2。每个分段点播文件包均有四个文件。

S3042.从每个所述分段点播文件包选择一个分段点播文件作为待拼接文件;所述待拼接文件均具有相同的转码参数。

以流畅为例,选择vid1和vid2中转码参数对应的清晰度为流畅的分段点播文件作为待拼接文件。

S3043.按照待拼接文件记录的直播内容的时间顺序对所述待拼接文件进行合并,得到对应于所述转码参数的记录有完整直播内容的完整点播文件。

以流畅为例,将在vid1中得到的待拼接文件和在vid2中得到的待拼接文件使用编辑工具进行合并。

进一步地,还对合并后得到的完整点播文件进行流化处理,并存储经过流化处理后的完整点播文件;

此外,在得到经过流化处理后的完整点播文件后,删除用于生成所述完整点播文件的分段点播文件包中的分段点播文件。

本实施例中,生成清晰度为流畅的经过流化处理后的完整点播文件后,删除了清晰度为流畅的两个分段点播文件,vid1中和vid2中均只剩余三个分段点播文件。

S3044.判断是否还存在未参与拼接的分段点播文件。

S3045.若是,则重复上述步骤继续生成下一个完整点播文件。

本实施例中需要重复将S3041-S3043的步骤三次以生成清晰度为标清、高清和超清的完整点播文件;相应的,清晰度为标清、高清和超清的分段点播文件被删除。只有当待vid1和vid2中均为空时,删除分段点播文件包vid1和vid2,S304结束。

具体地,本实施例中在步骤S303中可以率先发布分段点播文件,在vid1生成后,即可将vid1向用户发布。

虽然vid1中记录的不是完整的直播内容,但是已经记载了大部分的直播内容,为满足用户的尽快回看直播内容的需要,可以提前发布vid1。在vid1发布后,用户即可观看记录有直播内容的点播视频,在用户观看的过程中,S304进行同步地进行分段点播文件的拼接。

删除之前发布的第一个分段点播文件包中的分段点播文件,并重新发布所述完整点播文件。本实施例中实现重新发布的方法为:

当删除分段点播文件包vid1和vid2后,清晰度分别为流畅、标清、高清和超清的四个完整点播文件已经生成完毕。重新生成名称为vid1的文件包,所述文件包包括上述四个完整点播文件,并将vid1向用户发布。

本实施例中两次发布的文件包均为vid1,名称一致的原因在于,若用户正在使用率先发布的包含分段点播文件的vid1文件包观看视频,在发布包含完整点播文件的vid1文件包后,用户只需进行刷新操作,服务器即可使用包含完整点播文件的vid1文件包为用户提供完整的视频服务,不影响用户的播放体验,vid1的两次发布对于前台用户是无感知的。

本实施例提供了直播转点播方法,并提供了点播文件的发布方法,本实施例使得用户既可以率先观看部分点播视频又能轻易切换观看完整视频,从而显著提升用户体验。

本发明实施例还提供了一种直播转点播方法,包括:

S401.响应于直播转点播指令,得到N个(N>1)视频分段时间点。

具体地,第N个视频分段时间点为直播结束时间点。

S402.实时获取直播数据流并记录直播时间。

S403.若直播时间到达所述视频分段时间点,则根据与所述视频分段时间点对应的直播内容生成分段点播文件包;所述分段点播文件包包括记录有相同直播内容的一个或多个分段点播文件。

本实施例中,以播出时间为90分钟的直播为例,若视频分段时间点为第80分钟和第90分钟,则:

当直播进行到第80分钟时,则根据0分0秒至第80分0秒之间的直播内容生成第一个分段点播文件包,命名为vid1。

当直播结束时,则根据80分0秒至第90分0秒之间的直播内容生成第二个分段点播文件包,命名为vid2。由于分段点播文件包生成所需时间与视频时长正相关,因此vid2的生成耗时远远小于vid1。

本实施例中,以提供流畅、标清、高清和超清四种清晰度的点播文件为例,每个分段点播文件包中均包含四个分段点播文件,所述四个分段点播文件均记录相同的内容,但是是由不同的转码参数得到。

每一个所述分段点播文件均包括一个或多个文件片段;若所述分段点播文件包括多个文件片段,则所述文件片段在所述分段点播文件中的存储顺序与所述文件片段记录的直播内容在所述直播数据流中的先后顺序一致。

本实施例中,若每个文件片段包含5分钟的视频内容,则vid1中的每个分段点播文件均包含16个文件片段,vid2中的每个分段点播文件均包含2个文件片段。

进一步地,若分段点播文件中的视频时长不能被文件片段的视频时长整除,则余出的视频长度被包含在组成分段点播文件的最后一个文件片段中,假设分段点播文件中的视频时长为92分钟,则所述分段点播文件由15个包含5分钟的视频内容的文件片段和最后一个包含7分钟的视频内容的文件片段构成。

S404.按照分段点播文件记录的直播内容的时间顺序拼接所述分段点播文件,得到记录有完整直播内容的完整点播文件。

本实施例中,步骤S404中对相同转码参数的分段点播文件进行拼接,最终生成四个完整点播文件,所述四个完整点播文件分别对应流畅、标清、高清和超清四中清晰度。

具体地,S404如图3所示,包括:

S4041.得到记录不同时间段的直播内容的分段点播文件包。

本实施例中得到第一个分段点播文件包vid1和第二个分段点播文件包vid2。每个分段点播文件包均有四个文件。

S4042.从每个所述分段点播文件包选择一个分段点播文件作为待拼接文件;所述待拼接文件均具有相同的转码参数。

以流畅为例,选择vid1和vid2中转码参数对应的清晰度为流畅的分段点播文件作为待拼接文件。

S4043.按照待拼接文件记录的直播内容的时间顺序对所述待拼接文件排序。

本实施例中vid1中的待拼接文件在前,vid2中的待拼接文件在后。

S4044.以排在第一位的待拼接文件为指定文件,将后续的待拼接文件依次以追加的方式插入所述指定文件的尾部,得到对应于所述转码参数的记录有完整直播内容的完整点播文件。

以流畅为例,以vid1中得到的待拼接文件为指定文件,vid2中得到的待拼接文件以追加的方式插入所述指定文件的尾部,得到包含18个文件片段的完整的点播文件。

进一步地,还对得到的完整点播文件进行流化处理,并存储经过流化处理后的完整点播文件;

此外,在得到经过流化处理后的完整点播文件后,删除用于生成所述完整点播文件的分段点播文件包中的分段点播文件。

本实施例中,生成清晰度为流畅的经过流化处理后的完整点播文件后,删除了清晰度为流畅的两个分段点播文件,vid1中和vid2中均只剩余三个分段点播文件。

S4045.判断是否还存在未参与拼接的分段点播文件。

S4046.若是,则重复上述步骤继续生成下一个完整点播文件。

本实施例中需要重复将S4041-S4044的步骤三次以生成清晰度为标清、高清和超清的完整点播文件;相应的,清晰度为标清、高清和超清的分段点播文件被删除。只有当待vid1和vid2中均为空时,删除分段点播文件包vid1和vid2,S404结束。

具体地,本实施例中在步骤S403中可以率先发布分段点播文件,在vid1生成后,即可将vid1向用户发布。

虽然vid1中记录的不是完整的直播内容,但是已经记载了大部分的直播内容,为满足用户的尽快回看直播内容的需要,可以提前发布vid1。在vid1发布后,用户即可观看记录有直播内容的点播视频,在用户观看的过程中,S404进行同步的分段点播文件的拼接。

删除之前发布的第一个分段点播文件包中的分段点播文件,并重新发布所述完整点播文件。本实施例中实现重新发布的方法为:

当删除分段点播文件包vid1和vid2后,清晰度分别为流畅、标清、高清和超清的四个完整点播文件已经生成完毕。重新生成名称为vid1的文件包,所述文件包包括上述四个完整点播文件,并将vid1向用户发布。

当然,也可以使用其它的点播文件发布方法,比如在得到记录有完整直播内容的完整点播文件后,直接发布所述完整点播文件。

本实施例提供了另一种直播转点播方法,本实施例使得用户既可以率先观看部分点播视频又能轻易切换观看完整视频,从而显著提升用户体验,此外,若完整点播文件生成过程出现错误,还可以通过发布分段点播文件弥补损失,提高容错性。

本发明实施例提供一种直播转点播装置,如图4所示,包括:

直播转点播指令响应模块501,用于获取直播转点播指令并得到N个(N>1)视频分段时间点;

数据流获取模块502,用于实时获取直播数据流;

直播时间记录模块503,用于记录直播时间;

分段点播文件包生成模块504,用于根据与视频分段时间点对应的直播内容生成分段点播文件包;所述分段点播文件包包括记录有相同直播内容的一个或多个分段点播文件;

拼接模块505,用于按照分段点播文件记录的直播内容的时间顺序拼接所述分段点播文件,得到记录有完整直播内容的完整点播文件。

所述拼接模块505如图5所示,包括:

第一分段点播文件包得到单元5051,用于得到记录不同时间段的直播内容的分段点播文件包。

第一待拼接文件选取单元5052,用于从每个所述分段点播文件包选择一个分段点播文件作为待拼接文件;所述待拼接文件均具有相同的转码参数。

第一完整点播文件生成单元5053,用于按照待拼接文件记录的直播内容的时间顺序对所述待拼接文件进行合并,得到对应于所述转码参数的记录有完整直播内容的完整点播文件;

第一流化处理单元5054,用于对所述完整点播文件进行流化处理;

第一存储单元5055,用于存储经过流化处理后的完整点播文件;

第一删除单元5056,用于删除用于生成所述完整点播文件的分段点播文件。

在第一完整点播文件生成单元5053生成完整点播文件后,第一流化处理单元5054对所述完整点播文件进行流化处理,并将流化处理后的完整点播文件交由第一存储单元5056存储。在第一存储单元5056对完整点播文件存储之后,第一删除单元5056删除用于生成所述完整点播文件的分段点播文件。

第一拼接控制单元5057,用于判断是否还存在未参与拼接的分段点播文件并根据判断结果控制生成下一个完整点播文件。生成下一个完整点播文件的过程中仍然需要用到第一分段点播文件包得到单元5051、第一待拼接文件选取单元5052、第一完整点播文件生成单元5053、第一流化处理单元5054、第一存储单元5055和第一删除单元5056。

进一步地,本实施例中,所述装置还包括:

第一发布模块506,用于在尚未得到记录有完整直播内容的完整点播文件的情况下,将第一个分段点播文件包中的分段点播文件向用户发布;

第二发布模块507,用于当得到记录有完整直播内容的完整点播文件后,删除之前发布的第一个分段点播文件包中的分段点播文件,并重新发布所述完整点播文件。

进一步地,在其它实施例中,还可以包括:

第三发布模块508,用于得到记录有完整直播内容的完整点播文件后,直接发布所述完整点播文件。

本发明实施例提供一种直播转点播装置,包括:

直播转点播指令响应模块601,用于获取直播转点播指令并得到N个(N>1)视频分段时间点;

数据流获取模块602,用于实时获取直播数据流;

直播时间记录模块603,用于记录直播时间;

分段点播文件包生成模块604,用于根据与视频分段时间点对应的直播内容生成分段点播文件包;所述分段点播文件包包括记录有相同直播内容的一个或多个分段点播文件;

拼接模块605,用于按照分段点播文件记录的直播内容的时间顺序拼接所述分段点播文件,得到记录有完整直播内容的完整点播文件。

所述拼接模块605如图6所示,包括:

第二分段点播文件包得到单元6051,用于得到记录不同时间段的直播内容的分段点播文件包。

第二待拼接文件选取单元6052,用于从每个所述分段点播文件包选择一个分段点播文件作为待拼接文件;所述待拼接文件均具有相同的转码参数。

排序单元6053,用于按照待拼接文件记录的直播内容的时间顺序对所述待拼接文件排序。

第二完整点播文件生成单元6054,用于以排在第一位的待拼接文件为指定文件,将后续的待拼接文件依次以追加的方式插入所述指定文件的尾部,得到对应于所述转码参数的记录有完整直播内容的完整点播文件;

第二流化处理单元6055,用于对所述完整点播文件进行流化处理;

第二存储单元6056,用于存储经过流化处理后的完整点播文件;

第二删除单元6057,用于删除用于生成所述完整点播文件的分段点播文件。

在第二完整点播文件生成单元6054生成完整点播文件后,第二流化处理单元6055对所述完整点播文件进行流化处理,并将流化处理后的完整点播文件交由第二存储单元6056存储。在第二存储单元6056对完整点播文件存储之后,第二删除单元6057删除用于生成所述完整点播文件的分段点播文件包中的分段点播文件。

第二拼接控制单元6058,用于判断是否还存在未参与拼接的分段点播文件并根据判断结果控制生成下一个完整点播文件。生成下一个完整点播文件的过程中仍然需要用到第二分段点播文件包得到单元6051、第二待拼接文件选取单元6052、排序单元6053、第二完整点播文件生成单元6054、第二流化处理单元6055、第二存储单元6056和第二删除单元6057。

进一步地,本实施例中,所述装置还包括:

第一发布模块606,用于在尚未得到记录有完整直播内容的完整点播文件的情况下,将第一个分段点播文件包中的分段点播文件向用户发布;

第二发布模块607,用于当得到记录有完整直播内容的完整点播文件后,删除之前发布的第一个分段点播文件包中的分段点播文件,并重新发布所述完整点播文件。

进一步地,在其它实施例中,还可以包括:

第三发布模块608,用于得到记录有完整直播内容的完整点播文件后,直接发布所述完整点播文件。

本发明的装置实施例与方法实施例均基于同样地发明构思,提供了一种直播转点播方装置,本实施例能够用于实现上述实施例中提供的直播转点播方法。

本发明的实施例还提供了一种存储介质。可选地,在本实施例中,上述存储介质可以用于保存上述实施例用于实现直播转点播方法所执行的程序代码。

可选地,在本实施例中,上述存储介质可以位于计算机网络的多个网络设备中的至少一个网络设备。

可选地,在本实施例中,存储介质被设置为存储用于执行以下步骤的程序代码:

第一步,响应于直播转点播指令,得到N个(N>1)视频分段时间点;

第二步,实时获取直播数据流并记录直播时间;

第三步,若直播时间到达所述视频分段时间点,则根据与所述视频分段时间点对应的直播内容生成分段点播文件包;所述分段点播文件包包括记录有相同直播内容的一个或多个分段点播文件。

第四步,按照分段点播文件记录的直播内容的时间顺序拼接所述分段点播文件,得到记录有完整直播内容的完整点播文件。

可选地,存储介质还被设置为存储用于执行以下步骤的程序代码:

第N个视频分段时间点为直播结束时间点,所述根据与所述视频分段时间点对应的直播内容生成分段点播文件包包括:

若直播时间到达第一个视频分段时间点,则根据直播开始至所述第一个视频分段时间点之间的直播内容生成第一个分段点播文件包;

若直播时间到达第i(i>1)个视频分段时间点,则根据第i-1个视频分段时间点至第i个视频分段时间点之间的直播内容生成第i个分段点播文件包。

可选地,存储介质还被设置为存储用于执行以下步骤的程序代码:

所述分段点播文件包中,不同的分段点播文件的转码参数不同,相应的,不同的分段点播文件记录的直播内容的清晰度也不同。

可选地,存储介质还被设置为存储用于执行以下步骤的程序代码:

所述按照分段点播文件记录的直播内容的时间顺序拼接所述分段点播文件,得到记录有完整直播内容的完整点播文件包括:

第一步,得到记录不同时间段的直播内容的分段点播文件包;

第二步,从每个所述分段点播文件包选择一个分段点播文件作为待拼接文件;所述待拼接文件均具有相同的转码参数;

第三步,按照待拼接文件记录的直播内容的时间顺序对所述待拼接文件进行合并,得到对应于所述转码参数的记录有完整直播内容的完整点播文件;

第四步,判断是否还存在未参与拼接的分段点播文件;

第五步,若是,则重复上述步骤继续生成下一个完整点播文件。

可选地,存储介质还被设置为存储用于执行以下步骤的程序代码:

第一步,对所述完整点播文件件进行流化处理;

第二步,存储经过流化处理后的完整点播文件;

第三步,删除用于生成所述完整点播文件的分段点播文件。

可选地,存储介质还被设置为存储用于执行以下步骤的程序代码:

当所述分段点播文件包中的分段点播文件均被删除后,删除所述分段点播文件包。

可选地,存储介质还被设置为存储用于执行以下步骤的程序代码:

每一个所述分段点播文件均包括一个或多个文件片段;

若所述分段点播文件包括多个文件片段,则所述文件片段在所述分段点播文件中的存储顺序与所述文件片段记录的直播内容在所述直播数据流中的先后顺序一致。

可选地,存储介质还被设置为存储用于执行以下步骤的程序代码:

所述按照分段点播文件记录的直播内容的时间顺序拼接所述分段点播文件,得到记录有完整直播内容的完整点播文件包括:

第一步,得到记录不同时间段的直播内容的分段点播文件包;

第二步,从每个所述分段点播文件包选择一个分段点播文件作为待拼接文件;所述待拼接文件均具有相同的转码参数;

第三步,按照待拼接文件记录的直播内容的时间顺序对所述待拼接文件排序;

第四步,以排在第一位的待拼接文件为指定文件,将后续的待拼接文件依次以追加的方式插入所述指定文件的尾部,得到对应于所述转码参数的记录有完整直播内容的完整点播文件;

第五步,判断是否还存在未参与拼接的分段点播文件;

第六步,若是,则重复上述步骤继续生成下一个完整点播文件。

可选地,存储介质还被设置为存储用于执行以下步骤的程序代码:

第一步,对所述完整点播文件进行流化处理;

第二步,存储经过流化处理后的完整点播文件;

第三步,删除用于生成所述完整点播文件的分段点播文件。

可选地,存储介质还被设置为存储用于执行以下步骤的程序代码:

当所述分段点播文件包中的分段点播文件均被删除后,删除所述分段点播文件包。

可选地,存储介质还被设置为存储用于执行以下步骤的程序代码:

在尚未得到记录有完整直播内容的完整点播文件的情况下,将第一个分段点播文件包中的分段点播文件向用户发布;

当得到记录有完整直播内容的完整点播文件后,删除之前发布的第一个分段点播文件包中的分段点播文件,并重新发布所述完整点播文件。

可选地,存储介质还被设置为存储用于执行以下步骤的程序代码:

得到记录有完整直播内容的完整点播文件后,直接发布所述完整点播文件。

可选地,在本实施例中,上述存储介质可以包括但不限于:U盘、只读存储器(ROM,Read-Only Memory)、随机存取存储器(RAM,Random Access Memory)、移动硬盘、磁碟或者光盘等各种可以存储程序代码的介质。

参见图7,本发明实施例提供了一种终端,该终端可以用于实施上述实施例中提供的用于实现直播转点播的方法。具体来讲:

所述终端可以包括RF(Radio Frequency,射频)电路110、包括有一个或一个以上计算机可读存储介质的存储器120、输入单元130、显示单元140、传感器150、音频电路160、WiFi(wireless fidelity,无线保真)模块170、包括有一个或者一个以上处理核心的处理器180、以及电源190等部件。本领域技术人员可以理解,图7中示出的终端结构并不构成对终端的限定,可以包括比图示更多或更少的部件,或者组合某些部件,或者不同的部件布置。其中:

RF电路110可用于收发信息或通话过程中,信号的接收和发送,特别地,将基站的下行信息接收后,交由一个或者一个以上处理器180处理;另外,将涉及上行的数据发送给基站。通常,RF电路110包括但不限于天线、至少一个放大器、调谐器、一个或多个振荡器、用户身份模块(SIM)卡、收发信机、耦合器、LNA(LowNoiseAmplifier,低噪声放大器)、双工器等。此外,RF电路110还可以通过无线通信与网络和其他设备通信。所述无线通信可以使用任一通信标准或协议,包括但不限于GSM(Global System ofMobile communication,全球移动通讯系统)、GPRS(General Packet Radio Service,通用分组无线服务)、CDMA(Code Division MultipleAccess,码分多址)、WCDMA(Wideband Code Division MultipleAccess,宽带码分多址)、LTE(Long Term Evolution,长期演进)、电子邮件、SMS(Short Messaging Service,短消息服务)等。

存储器120可用于存储软件程序以及模块,处理器180通过运行存储在存储器120的软件程序以及模块,从而执行各种功能应用以及数据处理。存储器120可主要包括存储程序区和存储数据区,其中,存储程序区可存储操作系统、功能所需的应用程序等;存储数据区可存储根据所述终端的使用所创建的数据等。此外,存储器120可以包括高速随机存取存储器,还可以包括非易失性存储器,例如至少一个磁盘存储器件、闪存器件、或其他易失性固态存储器件。相应地,存储器120还可以包括存储器控制器,以提供处理器180和输入单元130对存储器120的访问。

输入单元130可用于接收输入的数字或字符信息,以及产生与用户设置以及功能控制有关的键盘、鼠标、操作杆、光学或者轨迹球信号输入。具体地,输入单元130可包括触敏表面131以及其他输入设备132。触敏表面131,也称为触摸显示屏或者触控板,可收集用户在其上或附近的触摸操作(比如用户使用手指、触笔等任何适合的物体或附件在触敏表面131上或在触敏表面131附近的操作),并根据预先设定的程式驱动相应的连接装置。可选的,触敏表面131可包括触摸检测装置和触摸控制器两个部分。其中,触摸检测装置检测用户的触摸方位,并检测触摸操作带来的信号,将信号传送给触摸控制器;触摸控制器从触摸检测装置上接收触摸信息,并将它转换成触点坐标,再送给处理器180,并能接收处理器180发来的命令并加以执行。此外,可以采用电阻式、电容式、红外线以及表面声波等多种类型实现触敏表面131。除了触敏表面131,输入单元130还可以包括其他输入设备132。具体地,其他输入设备132可以包括但不限于物理键盘、功能键(比如音量控制按键、开关按键等)、轨迹球、鼠标、操作杆等中的一种或多种。

显示单元140可用于显示由用户输入的信息或提供给用户的信息以及所述终端的各种图形用户接口,这些图形用户接口可以由图形、文本、图标、视频和其任意组合来构成。显示单元140可包括显示面板141,可选的,可以采用LCD(Liquid Crystal Display,液晶显示器)、OLED(Organic Light-Emitting Diode,有机发光二极管)等形式来配置显示面板141。进一步的,触敏表面131可覆盖显示面板141,当触敏表面131检测到在其上或附近的触摸操作后,传送给处理器180以确定触摸事件的类型,随后处理器180根据触摸事件的类型在显示面板141上提供相应的视觉输出。虽然在图5中,触敏表面131与显示面板141是作为两个独立的部件来实现输入和输入功能,但是在某些实施例中,可以将触敏表面131与显示面板141集成而实现输入和输出功能。

所述终端还可包括至少一种传感器150,比如光传感器、运动传感器以及其他传感器。具体地,光传感器可包括环境光传感器及接近传感器,其中,环境光传感器可根据环境光线的明暗来调节显示面板141的亮度,接近传感器可在所述终端移动到耳边时,关闭显示面板141和/或背光。作为运动传感器的一种,重力加速度传感器可检测各个方向上(一般为三轴)加速度的大小,静止时可检测出重力的大小及方向,可用于识别终端姿态的应用(比如横竖屏切换、相关游戏、磁力计姿态校准)、振动识别相关功能(比如计步器、敲击)等;至于所述终端还可配置的陀螺仪、气压计、湿度计、温度计、红外线传感器等其他传感器,在此不再赘述。

音频电路160、扬声器161,传声器162可提供用户与所述终端之间的音频接口。音频电路160可将接收到的音频数据转换后的电信号,传输到扬声器161,由扬声器161转换为声音信号输出;另一方面,传声器162将收集的声音信号转换为电信号,由音频电路160接收后转换为音频数据,再将音频数据输出处理器180处理后,经RF电路110以发送给比如另一终端,或者将音频数据输出至存储器120以便进一步处理。音频电路160还可能包括耳塞插孔,以提供外设耳机与所述终端的通信。

WiFi属于短距离无线传输技术,所述终端通过WiFi模块170可以帮助用户收发电子邮件、浏览网页和访问流式媒体等,它为用户提供了无线的宽带互联网访问。虽然图7示出了WiFi模块170,但是可以理解的是,其并不属于所述终端的必须构成,完全可以根据需要在不改变发明的本质的范围内而省略。

处理器180是所述终端的控制中心,利用各种接口和线路连接整个终端的各个部分,通过运行或执行存储在存储器120内的软件程序和/或模块,以及调用存储在存储器120内的数据,执行所述终端的各种功能和处理数据,从而对终端进行整体监控。可选的,处理器180可包括一个或多个处理核心;优选的,处理器180可集成应用处理器和调制解调处理器,其中,应用处理器主要处理操作系统、用户界面和应用程序等,调制解调处理器主要处理无线通信。可以理解的是,上述调制解调处理器也可以不集成到处理器180中。

所述终端还包括给各个部件供电的电源190(比如电池),优选的,电源可以通过电源管理系统与处理器180逻辑相连,从而通过电源管理系统实现管理充电、放电、以及功耗管理等功能。电源190还可以包括一个或一个以上的直流或交流电源、再充电系统、电源故障检测电路、电源转换器或者逆变器、电源状态指示器等任意组件。

尽管未示出,所述终端还可以包括摄像头、蓝牙模块等,在此不再赘述。具体在本实施例中,终端的显示单元是触摸屏显示器,终端还包括有存储器,以及一个或者一个以上的程序,其中一个或者一个以上程序存储于存储器中,且经配置以由一个或者一个以上处理器执行述一个或者一个以上程序包含用于进行以下操作的指令:

第一步,响应于直播转点播指令,得到N个(N>1)视频分段时间点;

第二步,实时获取直播数据流并记录直播时间;

第三步,若直播时间到达所述视频分段时间点,则根据与所述视频分段时间点对应的直播内容生成分段点播文件包;所述分段点播文件包包括记录有相同直播内容的一个或多个分段点播文件。

第四步,按照分段点播文件记录的直播内容的时间顺序拼接所述分段点播文件,得到记录有完整直播内容的完整点播文件。

进一步地,终端的存储器中,还包含用于执行以下操作的指令:

第N个视频分段时间点为直播结束时间点,所述根据与所述视频分段时间点对应的直播内容生成分段点播文件包包括:

若直播时间到达第一个视频分段时间点,则根据直播开始至所述第一个视频分段时间点之间的直播内容生成第一个分段点播文件包;

若直播时间到达第i(i>1)个视频分段时间点,则根据第i-1个视频分段时间点至第i个视频分段时间点之间的直播内容生成第i个分段点播文件包。

进一步地,终端的存储器中,还包含用于执行以下操作的指令:

所述分段点播文件包中,不同的分段点播文件的转码参数不同,相应的,不同的分段点播文件记录的直播内容的清晰度也不同。

进一步地,终端的存储器中,还包含用于执行以下操作的指令:

所述按照分段点播文件记录的直播内容的时间顺序拼接所述分段点播文件,得到记录有完整直播内容的完整点播文件包括:

第一步,得到记录不同时间段的直播内容的分段点播文件包;

第二步,从每个所述分段点播文件包选择一个分段点播文件作为待拼接文件;所述待拼接文件均具有相同的转码参数;

第三步,按照待拼接文件记录的直播内容的时间顺序对所述待拼接文件进行合并,得到对应于所述转码参数的记录有完整直播内容的完整点播文件;

第四步,判断是否还存在未参与拼接的分段点播文件;

第五步,若是,则重复上述步骤继续生成下一个完整点播文件。

进一步地,终端的存储器中,还包含用于执行以下操作的指令:

第一步,对所述完整点播文件件进行流化处理;

第二步,存储经过流化处理后的完整点播文件;

第三步,删除用于生成所述完整点播文件的分段点播文件。

进一步地,终端的存储器中,还包含用于执行以下操作的指令:

当所述分段点播文件包中的分段点播文件均被删除后,删除所述分段点播文件包。

进一步地,终端的存储器中,还包含用于执行以下操作的指令:

每一个所述分段点播文件均包括一个或多个文件片段;

若所述分段点播文件包括多个文件片段,则所述文件片段在所述分段点播文件中的存储顺序与所述文件片段记录的直播内容在所述直播数据流中的先后顺序一致。

进一步地,终端的存储器中,还包含用于执行以下操作的指令:

所述按照分段点播文件记录的直播内容的时间顺序拼接所述分段点播文件,得到记录有完整直播内容的完整点播文件包括:

第一步,得到记录不同时间段的直播内容的分段点播文件包;

第二步,从每个所述分段点播文件包选择一个分段点播文件作为待拼接文件;所述待拼接文件均具有相同的转码参数;

第三步,按照待拼接文件记录的直播内容的时间顺序对所述待拼接文件排序;

第四步,以排在第一位的待拼接文件为指定文件,将后续的待拼接文件依次以追加的方式插入所述指定文件的尾部,得到对应于所述转码参数的记录有完整直播内容的完整点播文件;

第五步,判断是否还存在未参与拼接的分段点播文件;

第六步,若是,则重复上述步骤继续生成下一个完整点播文件。

进一步地,终端的存储器中,还包含用于执行以下操作的指令:

第一步,对所述完整点播文件进行流化处理;

第二步,存储经过流化处理后的完整点播文件;

第三步,删除用于生成所述完整点播文件的分段点播文件。

进一步地,终端的存储器中,还包含用于执行以下操作的指令:

当所述分段点播文件包中的分段点播文件均被删除后,删除所述分段点播文件包。

进一步地,终端的存储器中,还包含用于执行以下操作的指令:

在尚未得到记录有完整直播内容的完整点播文件的情况下,将第一个分段点播文件包中的分段点播文件向用户发布;

当得到记录有完整直播内容的完整点播文件后,删除之前发布的第一个分段点播文件包中的分段点播文件,并重新发布所述完整点播文件。

进一步地,终端的存储器中,还包含用于执行以下操作的指令:

得到记录有完整直播内容的完整点播文件后,直接发布所述完整点播文件。

综上,本发明实施例提供的终端,不仅能够使得用户既可以率先观看部分点播视频又能轻易切换观看完整视频,从而显著提升用户体验,此外,若完整点播文件生成过程出现错误,还可以通过发布分段点播文件弥补损失,提高容错性。

参见图8,图8是本发明实施例提供的一种服务器结构示意图。该服务器800可因配置或性能不同而产生比较大的差异,可以包括一个或一个以上中央处理器(central processing units,CPU)822(例如,一个或一个以上处理器)和存储器832,一个或一个以上存储应用程序842或数据844的存储介质830(例如一个或一个以上海量存储设备)。其中,存储器832和存储介质830可以是短暂存储或持久存储。存储在存储介质830的程序可以包括一个或一个以上模块(图示未示出),每个模块可以包括对服务器中的一系列指令操作。更进一步地,中央处理器822可以设置为与存储介质830通信,在服务器800上执行存储介质830中的一系列指令操作。服务器800还可以包括一个或一个以上电源826,一个或一个以上有线或无线网络接口850,一个或一个以上输入输出接口858,和/或,一个或一个以上操作系统841,例如Windows ServerTM,Mac OS XTM,UnixTM,LinuxTM,FreeBSDTM等等。上述方法实施例所执行的步骤可以基于该图8所示的服务器结构。

需要说明的是:上述本发明实施例序号仅仅为了描述,不代表实施例的优劣。

本领域普通技术人员可以理解实现上述实施例的全部或部分步骤可以通过硬件来完成,也可以通过程序来指令相关的硬件完成,所述的程序可以存储于一种计算机可读存储介质中,上述提到的存储介质可以是只读存储器,磁盘或光盘等。

以上所述仅为本发明的较佳实施例,并不用以限制本发明,凡在本发明的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。

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