一种直播流传输方法、装置及相关设备与流程

文档序号:16065526发布日期:2018-11-24 12:37阅读:158来源:国知局

本发明涉及数据处理技术领域,具体涉及一种直播流传输方法、装置及相关设备。

背景技术

直播是一种通过流媒体技术,将语音、视频等直播内容以流形式通过网络传达给用户的技术;涉及视频直播、语音广播等使用直播流的场景。

在直播流传输的过程中,除向用户传输直播流外,还往往存在将直播相关的业务数据下发给用户的需求;例如,在视频直播场景下,除向用户传输直播的视频内容,还存在向用户下发当前观看直播的人数等业务数据的需求。

目前,直播流和业务数据是分别单独的传达给用户,如直播流通过一个通信通道传达给用户,业务数据通过另一个通信通道传达给用户,从而在用户的终端播放直播流和展示业务数据;这种方式面临的问题是,当较多用户请求业务数据时,将面临较大的业务数据并发量,服务器负载较高。



技术实现要素:

有鉴于此,本发明实施例提供一种直播流传输方法、装置及相关设备,以降低业务数据的并发量,减小服务器的负载。

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

一种直播流传输方法,应用于流处理服务器,所述方法包括:

获取直播流;

获取业务数据,所述业务数据对应有展示时间;

处理所述直播流,以获取目标直播流;所述目标直播流携带有所述业务数据,且所述目标直播流中与所述展示时间对应的直播内容,与所述业务数据相关联;

输出目标直播流,以使终端播放获取的目标直播流时,根据所述展示时间控制展示所述业务数据。

本发明实施例还提供一种直播流传输方法,应用于终端,所述方法包括:

获取携带有业务数据的直播流;

解析所述携带有业务数据的直播流,确定直播内容、所述业务数据、及所述业务数据的展示时间;

播放所述直播内容;

在播放所述直播内容的过程中,根据所述展示时间,控制展示所述业务数据。

本发明实施例还提供一种直播流传输装置,应用于流处理服务器,所述装置包括:

直播流第一获取模块,用于获取直播流;

业务数据获取模块,用于获取业务数据,所述业务数据对应有展示时间;

目标直播流获取模块,用于处理所述直播流,以获取目标直播流;所述目标直播流携带有所述业务数据,且所述目标直播流中与所述展示时间对应的直播内容,与所述业务数据相关联;

输出模块,用于输出目标直播流,以使终端播放获取的目标直播流时,根据所述展示时间控制展示所述业务数据。

本发明实施例还提供一种直播流传输装置,应用于终端,所述装置包括:

直播流第二获取模块,用于获取携带有业务数据的直播流;

解析模块,用于解析所述携带有业务数据的直播流,确定直播内容、所述业务数据、及所述业务数据的展示时间;

播放模块,用于播放所述直播内容;

展示控制模块,用于在播放所述直播内容的过程中,根据所述展示时间,控制展示所述业务数据。

本发明实施例还提供一种流处理服务器,包括:至少一个存储器及至少一个处理芯片,所述存储器存储有程序,所述处理芯片调用所述程序,以实现上述所述的流处理服务器执行的直播流传输方法的步骤。

本发明实施例还提供一种终端,包括:至少一个存储器及至少一个处理芯片,所述存储器存储有程序,所述处理芯片调用所述程序,以实现上述所述的终端执行的直播流传输方法的步骤。

本发明实施例还提供一种存储介质,所述存储介质存储有适于处理芯片执行的程序,以实现上述所述的流处理服务器执行的直播流传输方法的步骤,或,实现上述所述终端执行的直播流传输方法的步骤。

基于上述技术方案,本发明实施例提供的直播流传输方法中,流处理服务器可在获取视频源提供的直播流后,处理该直播流,以获取目标直播流,从而在目标直播流中携带业务数据,并将目标直播流中与所述展示时间对应的直播内容,与所述业务数据相关联;从而流处理服务器输出目标直播流后,可使得终端在播放目标直播流时,能够根据所述展示时间控制展示所述业务数据。本发明实施例可实现直播流和业务数据同步的下发给终端,可极大的减小直播流和业务数据单独下发情况下业务数据的并发量,减小服务器的负载;进一步可实现业务数据和关联的直播内容的同步展示,提升业务数据的展示准确性。

附图说明

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

图1为直播问答场景下,本发明实施例提供的直播流传输方法的处理示意图;

图2为直播问答的终端界面展示示意;

图3为本发明实施例提供的直播流传输方法的信令流程图;

图4为本发明实施例将直播流转换为私有flv直播流的处理示意图;

图5为本发明实施例将私有flv直播流块转换为私有hls直播流分片的处理示意图;

图6为本发明实施例提供的直播流传输方法的应用示例图;

图7为本发明实施例提供的直播流传输方法的另一种可选信令流程图;

图8为本发明实施例提供的直播流传输方法的流程图;

图9为本发明实施例提供的直播流传输装置的结构框图;

图10为本发明实施例提供的流处理服务器的结构框图;

图11为本发明实施例提供的直播流传输装置的另一结构框图。

具体实施方式

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

以直播问答场景为例,本发明实施例实现直播流传输的系统架构如图1所示,包括:视频源10,流处理服务器20,业务数据服务器30,直播流下发服务器40和终端50。

其中,视频源10可以是采集直播信号,并生成直播信号对应的直播流的电子设备;视频源10可以至少具有视频采集能力和数据处理能力,如视频源10可以至少具有采集视频的摄像头及进行视频编码的编码器(编码器可以是软件形式也可以是硬件形式);作为一种示例,在视频直播场景下,视频源10可以是主播所使用的带有摄像头的手机(如适于个人直播场景),也可以是摄像机等;

如图1所示可选示意,在进行直播问答时,视频源10可以采集主持人直播时的直播信号(如采集主持人直播场景对应的直播图像等),并编码生成直播流。

流处理服务器20是本发明实施例设置的用于处理直播流的服务设备,涉及直播流的协议转换等;在本发明实施例中,流处理服务器20可以将业务数据插入直播流,从而实现业务数据随同直播流同步下发到终端50;进一步,兼具直播流传输系统架构的协议要求,流处理服务器20还可以具有直播流转码服务能力等;

流处理服务器20可以由单一服务设备实现,也可以由多台服务器组成的服务器群组实现;

如图1所示可选示意,在进行直播问答时,流处理服务器20可以对视频源10提供的直播流进行处理(如协议转换等处理),得到携带有问答信息的直播流。

业务数据服务器30可以是获取业务数据的服务设备,业务数据服务器30可以将业务数据发送至流处理服务器20;

如图1所示可选示意,在进行直播问答时,业务数据服务器30可受后台工作人员的指示,获取问答信息(可以是后台工作人员输入,也可以是从业务数据服务器30存储的问答信息中调取),并发送至流处理服务器20。

直播流下发服务器40是将携带有业务数据的直播流(如图1所示,在直播问答场景下可以是,携带有问答信息的直播流)下发给终端50的服务设备,如直播流下发服务器40可选用cdn(contentdeliverynetwork,内容分发网络)服务器实现。直播流下发服务器40所下发的携带有业务数据的直播流可以是流处理服务器20输出的直播流,也可以是对流处理服务器20输出的直播流进一步进行协议转换后得到的直播流;

终端50可以是用户使用的用户设备,包括但不限于:手机、平板电脑、笔记本电脑等;

终端50在获取携带有业务数据的直播流后,可以从携带有业务数据的直播流中解析出业务数据和直播内容,在播放直播内容时,按业务数据的展示时间展示业务数据,或者,实时展示业务数据;

如图1所示可选示意,在进行直播问答时,终端50可解析携带有业务数据的直播流,得到问答信息和直播内容;在播放直播内容时,按照问答信息的展示时间控制问答信息的展示(即可根据问答信息的展示时间,决定是否展示问答信息)。

需要说明的是,直播问答是一种基于视频直播的问题回答互动,在直播问答场景下,图1终端50的一种可选展示示意可如图2所示,参照图2,在视频直播的过程中,用户的终端将播放视频直播的直播流;主持人在直播过程中提问问题时,问答信息(问答信息如问题信息、答案信息等;问答信息可以认为是业务数据的一种可选形式)将下发给用户,并展现在用户的终端;用户必须在规定的时间内提交答案;问题回答正确的用户,或者使用了复活卡的用户可以在主持人提问下一问题时,继续回答;没有参与互动、答错问题的用户,或者不能使用复活卡的用户不能继续参与答题;用户在连续答对一定题目后,可以获取一定的奖励;复活卡是一种虚拟道具,在用户答错或者漏答问题的情况下,使用该道具,可以继续答题。

可以看出,本发明实施例提供的直播流传输方案,可将业务数据插入直播流,实现直播流和业务数据同步的下发给终端,可极大的减小直播流和业务数据单独下发情况下业务数据的并发量,减小服务器的负载。

作为一种可选实现,直播服务提供商(如视频直播服务的提供商)可以具有自身的私有流协议(私有的直播流协议),因此流处理服务器可能根据自身的私有流协议,对视频源提供的直播流进行处理;而在流处理服务器对接直播流下发服务器时,直播流下发服务器可能具有标准流协议要求(如cdn服务器是按照特别的标准流协议,将该标准流协议的直播流下发给终端;标准流协议可以认为是标准的直播流协议);此时,直播流下发服务器就涉及到将私有流协议的直播流转换成,标准流协议的过程;

基于此情况,以流处理服务器的私有流协议为第一私有协议,直播流下发服务器的标准流协议为第二标准协议,流处理服务器与直播流下发服务器对接的协议为第二私有协议为例(第二私有协议可以是,流处理服务器对接第二标准协议所对应的私有流协议);可选的,图3示出了本发明实施例提供的直播流传输方法的可选信令流程,图3所示视频源可以是图1所示视频源10,图3所示流处理服务器可以是图1所示流处理服务器20,图3所示业务数据服务器可以是图1所示业务数据服务器30,图3所示直播流下发服务器可以是图1所示直播流下发服务器40,图3所示终端可以是图1所示终端50;其中,图3所示流处理服务器可以包括接流中转服务和流转码服务;

参照图3,直播流传输方法的一种可选过程可以包括:

步骤s10、视频源将直播流传输给接流中转服务。

需要注意的是,图3所示接流中转服务和流转码服务是流处理服务器提供的两种服务,可以是由不同的服务器实现,也可以是由同一服务器的两种服务程序实现。

可选的,步骤s10的执行可以是一个持续的过程,如视频源可将采集直播信号所生成的直播流,持续不断的传输给接流中转服务,直至直播终止。

对应的,流处理服务器可获取直播流。

步骤s11、业务数据服务器将业务数据传输给接流中转服务,所述业务数据对应有展示时间。

可选的,业务数据可受后台工作人员的控制,也可根据预先设定好的时间,将业务数据传输给接流中转服务。

可选的,业务数据可以对应有展示时间,该展示时间可以在业务服务器传输业务数据给接流中转服务时进行指示;也可以是业务数据服务器通过持续的将业务数据传输给接流中转服务来实现,业务数据服务器持续传输业务数据的持续时间可与所述展示时间的时长相对应。

步骤s12、接流中转服务将所述直播流转换为第一私有直播流,所述第一私有直播流包括:多个第一私有直播流块,该多个第一私有直播流块中与所述展示时间对应的第一私有直播流块携带有业务数据。

可选的,第一私有直播流可以是第一私有协议对应的直播流;第一私有协议可以是将直播内容以数据块形式体现的私有协议(如私有flv协议);

可选的,在接流中转服务获取视频源提供的直播流后,接流中转服务可以按照预定数据大小,对直播流进行分块,从而将直播流分块成多个第一私有直播流块(第一私有直播流块可以认为是,第一私有协议情况下,直播内容的数据块体现);从而可基于业务数据的展示时间,在与所述展示时间对应的第一私有直播流块中插入业务数据,并为插入业务数据的第一私有直播流块打上时间戳,从而得到第一私有直播流。

可选的,本发明实施例可在第一私有直播流块中构造私有字段,在私有字段中进行业务数据的插入;对应的,本发明实施例可从所述开始获取时间对应的第一私有直播流块开始,在与业务数据的持续时间对应的各第一私有直播流块中,分别构造私有字段;在各第一私有直播流块中构造的私有字段,插入业务数据。

为便于理解,以第一私有协议为私有flv(flashvideo,流媒体格式)协议为例,在一种可选实现中,如图4所示示例,图3所示接流中转服务获取直播流后,可按照私有flv协议要求的私有flv直播流块的预定数据大小,将直播流分为多个私有flv直播流块;在获取业务数据时,可基于业务数据的开始获取时间,确定分块时间与该开始获取时间对应的私有flv直播流块;从与该开始获取时间对应的私有flv直播流块开始,在业务数据的持续时间对应的私有flv直播流块中构造私有字段,并在私有字段插入业务数据,为插入业务数据的私有flv直播流块打上时间戳,从而可得到私有flv直播流(第一私有直播流的一种可选形式)。

步骤s13、接流中转服务将第一私有直播流,传输给流转码服务。

步骤s14、流转码服务将第一私有直播流转换为第二私有直播流,其中,第二私有直播流包括:多个第二私有直播流分片及第一索引文件,所述第一索引文件中携带有业务数据,并指示所述业务数据在对应的第二私有直播流分片的展示时间。

可选的,第二私有直播流可以是第二私有协议对应的直播流;第二私有协议可以是将直播内容以数据分片形式体现的私有协议(如私有hls协议);

可选的,流转码服务在获取第一私有直播流后,针对第一私有直播流中的多个第一私有直播流块,流转码服务可按照预定时间,将第一私有直播流块进行组合,得到多个第二私有直播流分片;一个第二私有直播流分片可以是与一段预定时间对应的第一私有直播流块的组合;

在组合得到第二私有直播流分片的过程中,可对第一私有直播流块中插入的业务数据进行提取,并插入到第二私有直播流的第一索引文件中;同时,可基于携带有业务数据的第一私有直播流块的时间戳,确定业务数据在对应的第二私有直播流分片的展示时间(如携带有业务数据的第一私有直播流块,在组合得到的第二私有直播流分片的播放时间)。

可选的,本发明实施例可在第一索引文件的私有标签中存储业务数据(私有标签可以是第一索引文件构造的扩展字段),并在该私有标签中指示业务数据在对应的第二私有直播流分片的展示时间。

为便于理解,以第一私有协议为私有flv协议,第二私有协议为私有hls(httplivestreaming,apple的动态码率自适应技术)协议为例,在一种可选实现中,如图5所示示例,图3所示流转码服务器获取到私有flv直播流(第一私有直播流的一种可选形式)后,可按照预定时间,将处于一段预定时间的私有flv直播流块进行组合,得到一个私有hls直播流分片。

同时,在私有hls直播流的第一m3u8文件(第一索引文件的一种可选形式)中插入私有flv直播流块中的业务数据(可在第一m3u8文件的扩展字段中插入业务数据);并在第一m3u8文件中指示,插入业务数据的私有flv直播流块,在组合得到的私有hls直播流分片对应的播放时间,得到业务数据在对应的私有hls直播流分片的展示时间(如可确定业务数据在哪个私有hls直播流分片的第几秒开始展示,在哪个私有hls直播流分片的第几秒结束展示),从而在所述第一m3u8文件中指示所述展示时间。

步骤s15、流转码服务将第二私有直播流发送给直播流下发服务器。

步骤s16、直播流下发服务器将第二私有直播流转换为第二标准直播流;所述第二标准直播流包括:多个第二标准直播流分片及第二索引文件;所述第二索引文件中携带有所述业务数据,并且所述第二索引文件指示所述业务数据在对应的第二标准直播流分片的展示时间。

可选的,第二标准直播流可以是第二标准协议对应的直播流;第二标准协议可以是将直播内容以数据分片形式体现的标准协议(如标准hls协议);

可选的,第二私有直播流转换为第二标准直播流的方式,可以根据实际情况而定,本发明实施例并不限制。基于第二私有协议是与第二标准协议对接的私有协议,第二私有协议和第二标准协议的直播流的内容形式可以基本一致,如都是ts分片形式,区别在于协议的具体使用上。

步骤s17、直播流下发服务器将第二标准直播流发送给终端。

可选的,直播流下发服务器可以选用cdn服务器实现。

进一步,图3所示终端可播放第二标准直播流分片,根据第二索引文件指示的所述业务数据在对应的第二标准直播流分片的展示时间,控制展示所述业务数据。

可选的,终端获取第二标准直播流后,所获取的内容可以分为第二标准直播流分片及第二索引文件(第二索引文件的私有标签中可存储业务数据,并指示业务数据在对应的第二标准直播流分片的展示时间),从而终端可播放第二标准直播流分片,并在播放第二标准直播流分片的过程中,如果第二标准直播流分片的播放时间与第二索引文件指示的展示时间对应,则终端可展示所述业务数据,直至第二标准直播流分片的播放时间与所述展示时间不对应。

可选的,以第一私有协议为私有flv协议,第二私有协议为私有hls协议,第二标准协议为标准hls协议为例,图6示出了本发明实施例提供的直播流传输方法的一种应用示例;需要说明的是,私有flv协议仅是本发明实施例所指的第一私有协议的一种可选形式,本发明实施例也可支持其他形式的第一私有协议,私有hls协议仅是本发明实施例所指的第二私有协议的一种可选形式,本发明实施例也可支持其他形式的第二私有协议,标准hls协议仅是本发明实施例所指的第二标准协议的一种可选形式,本发明实施例也可支持其他形式的第二标准协议;

在图6中,图6所示视频源可以是图1所示视频源10,图6所示流处理服务器可以是图1所示流处理服务器20,且图6所示流处理服务器可以包括图3所示的接流中转服务和流转码服务,图6所示业务数据服务器可以是图1所示业务数据服务器30,图6所示cdn服务器可以是图1所示直播流下发服务器40的一种可选形式,图6所示终端可以是图1所示终端50;

参照图6,在直播问答场景下,本发明实施例提供的直播流传输方法的处理示意可以包括:

视频源采集主持人在直播时对应的直播信号后,可编码生成直播流并传输到接流中转服务;

工作人员在需要下发问答信息时,可通过业务数据服务器向接流中转服务传输问答信息,并指示传输问答信息的持续时间;例如,在主持人口播开始答题时,工作人员可以通过业务数据服务器向接流中转服务传输问题信息,并指示传输问题信息的持续时间;又如,在主持人口播公布答案时,工作人员可通过业务数据服务器向接流中转服务传输答案信息,并指示传输答案信息的持续时间;

接流中转服务获取直播流后,可依照图4示例说明,处理得到携带有问答信息的私有flv直播流,并传输给流转码服务;

流转码服务获取携带有问答信息的私有flv直播流后,可依照图5示例说明,处理得到私有hls直播流(包含问答信息),并传输给cdn服务器;

cdn服务器将私有hls直播流转换为标准hls直播流,并下发到终端;

终端接收标准hls直播流后,可对标准hls直播流中的标准hls直播流分片进行播放,并识别标准hls直播流中的第二m3u8文件指示的展示时间;在播放的标准hls直播流分片的时间与该展示时间对应时,展示第二m3u8文件插入的问答信息;进一步,在展示问答信息后,若播放的标准hls直播流分片的时间与所述展示时间不对应,则可取消展示问答信息。

作为一种可选实现,图7示出了本发明实施例提供的直播流传输方法的另一种可选信令流程,图7所示视频源、流处理服务器、业务数据服务器、直播流下发服务器和终端,可与图3所示相一致;

参照图7,该流程可以包括:

步骤s20、视频源将直播流传输给接流中转服务。

步骤s21、业务数据服务器将业务数据传输给接流中转服务,所述业务数据指示有传输的持续时间。

步骤s22、接流中转服务按照预设数据大小,将直播流分块成多个第一私有直播流块。

可选的,一个第一私有直播流块的数据大小与预定数据大小对应。

步骤s23、接流中转服务根据业务数据的开始获取时间,确定分块时间与该开始获取时间对应的第一私有直播流块。

步骤s24、接流中转服务从开始获取时间对应的第一私有直播流块开始,在业务数据的持续时间对应的各第一私有直播流块中,分别构造私有字段;在各第一私有直播流块构造的私有字段插入业务数据,并为插入业务数据的第一私有直播流块打上时间戳,得到第一私有直播流。

可选的,所述时间戳可与第一私有直播流块的开始获取时间对应。

可选的,步骤s22至步骤s24可以认为是,将所述直播流转换为第一私有直播流的可选方式,其中,所述第一私有直播流包括:多个第一私有直播流块,该多个第一私有直播流块中与所述展示时间对应的第一私有直播流块,携带有业务数据。

步骤s25、接流中转服务将第一私有直播流传输给,流转码服务。

可选的,第一私有直播流可以包括多个第一私有直播流块,该多个第一私有直播流块中包含携带有业务数据的第一私有直播流,且携带有业务数据的第一私有直播流对应有时间戳。

步骤s26、流转码服务按照预定时间,组合第一私有直播流块,得到多个第二私有直播流分片;一个第二私有直播流分片是一段预定时间对应的第一私有直播流块的组合。

步骤s27、流转码服务在组合第一私有直播流块的过程中,将第一私有直播流块中的业务数据插入第一索引文件,并在第一索引文件指示业务数据在对应的第二私有直播流分片的展示时间,得到第二私有直播流。

可选的,步骤s26至步骤s27可以认为是,将第一私有直播流转换为第二私有直播流的一种可选方式,其中,第二私有直播流包括:多个第二私有直播流分片及第一索引文件,所述第一索引文件中携带有业务数据,并指示所述业务数据在对应的第二私有直播流分片的展示时间。

步骤s28、流转码服务将第二私有直播流发送给直播流下发服务器。

步骤s29、直播流下发服务器将第二私有直播流转换为第二标准直播流,并下发给终端。

可选的,所述第二标准直播流包括:多个第二标准直播流分片及第二索引文件,所述第二索引文件中携带有业务数据,并指示所述业务数据在对应的第二标准直播流分片的展示时间。

可选的,终端可解析第二标准直播流,得到第二标准直播流分片,及第二索引文件;

进一步,终端可播放第二标准直播流分片,在当前播放的第二标准直播流分片的播放时间,与所述第二索引文件指示的展示时间对应时,展示所述业务数据。

可选的,第二索引文件可以指示业务数据开始展示对应的开始第二标准直播流分片及开始时间,结束展示对应的结束第二标准直播流分片及结束时间;

从而终端播放到开始第二标准直播流分片,并在该开始时间,可展示业务数据;终端播放到结束第二标准直播流分片,并在该结束时间,可结束展示业务数据。

需要说明的是,本发明实施例除可如上述所述将第二标准直播流下发给终端,由终端进行直播流播放和业务数据展示外,在终端支持私有协议的情况下,本发明实施例也可支持将上述的第一私有直播流下发给终端,也可支持将第二私有直播流下发给终端。上述给出的接流中转服务将视频源提供的直播流转换为第一私有直播流,然后由流转码服务将第一私有直播流转换为第二私有直播流,再由直播流下发服务器将第二私有直播流转换为第二标准直播流,将第二标准直播流下发给终端的方式,仅是可选的。

站在在流处理服务器的角度,流处理服务器可以输出携带有业务数据的目标直播流,该目标直播流可以是上述所指的第一私有直播流,也可以是上述所指的第二私有直播流;可选的,图8示出了本发明实施例提供的直播流传输方法的流程图,该流程可应用于图1所示流处理服务器20,参照图8,该流程可以包括:

步骤s100、获取直播流。

流处理服务器可以获取视频源发送的直播流。

步骤s110、获取业务数据,所述业务数据对应有展示时间。

业务数据可由业务数据服务器发送给流处理服务器。

步骤s120、处理所述直播流,以获取目标直播流;所述目标直播流携带有所述业务数据,且所述目标直播流中与所述展示时间对应的直播内容,与所述业务数据相关联。

可选的,在一种处理情况下,目标直播流可以是第二私有直播流;即可先将直播流转换为第一私有直播流,再将第一私有直播流转换为第二私有直播流;这个过程中,目标直播流的直播内容可以是第二私有直播流分片,可通过目标直播流中的第一索引文件插入业务数据,并指示所述业务数据在对应的第二私有直播流分片的展示时间;

在另一种处理情况下,目标直播流也可以是第一私有直播流;如终端支持第一私有协议,则可将第一私有直播流作为目标直播流,并通过直播流下发服务器下发到终端进行处理。

步骤s130、输出目标直播流,以使终端播放获取的目标直播流时,根据所述展示时间控制展示所述业务数据。

可选的,流处理服务器可向直播流下发服务器发送目标直播流,由直播流下发服务器将目标直播流发送至终端,使得终端播放目标直播流时,可根据所述展示时间控制展示所述业务数据。

在一种处理情况下,终端获取的目标直播流可以是第二标准直播流;该第二标准直播流可以是,直播流下发服务器将流处理服务器输出的第二私有直播流转换为第二标准直播流得到;

在另一种处理情况下,如果终端支持第二私有协议,终端获取的目标直播流可以是第二私有直播流,相应的,流处理服务器可输出第二私有直播流,并由直播流下发服务器将第二私有直播流发送至终端;

在再一种处理情况下,如果终端支持第一私有协议,终端获取的目标直播流可以是第一私有直播流,相应的,流处理服务器可输出第一私有直播流,并由直播流下发服务器将第一私有直播流发送至终端。

本发明实施例提供的直播流传输方法可对视频源提供的直播流进行处理,从而将携带有业务数据的直播流下发到终端,实现直播流和业务数据同步的下发给终端,可极大的减小直播流和业务数据单独下发情况下业务数据的并发量,减小服务器的负载;并且可实现业务数据展示与直播流播放的同步,使得终端展示业务数据的时间更为准确。

进一步,业务数据也可以是直播在线人数等,可通过定期的将直播在线人物插入到直播流中,插入处理方式与前文方式一致,用户在终端播放时,播放器可实时解析直播流,并在展示时间进行在线人数等业务数据的展示,减少了用户向业务服务的请求。

下面对本发明实施例提供的直播流传输装置进行介绍,下文描述的直播流传输装置可以认为是,图1所示流处理服务器20为实现本发明实施例提供的直播流传输方法所需设置的程序模块;下文描述的直播流传输装置的内容,可与上文描述的直播流传输方法的内容相互对应参照。

图9为本发明实施例提供的直播流传输装置的结构框图,该直播流传输装置可以应用于图1所示流处理服务器20,参照图9,该装置可以包括:

直播流第一获取模块100,用于获取直播流;

业务数据获取模块110,用于获取业务数据,所述业务数据对应有展示时间;

目标直播流获取模块120,用于处理所述直播流,以获取目标直播流;所述目标直播流携带有所述业务数据,且所述目标直播流中与所述展示时间对应的直播内容,与所述业务数据相关联;

输出模块130,用于输出目标直播流,以使终端播放获取的目标直播流时,根据所述展示时间控制展示所述业务数据。

可选的,目标直播流获取模块120,用于处理所述直播流,以获取目标直播流,具体包括:

对所述直播流进行协议转换,在协议转换过程中插入所述业务数据,并将与所述展示时间对应的直播内容与所述业务数据相关联,以获取到目标直播流。

可选的,目标直播流获取模块120,用于对所述直播流进行协议转换,在协议转换过程中插入所述业务数据,并将与所述展示时间对应的直播内容与所述业务数据相关联,以获取到目标直播流,具体包括:

将所述直播流转换为第一私有直播流;所述第一私有直播流包括:多个第一私有直播流块,该多个第一私有直播流块中与所述展示时间对应的第一私有直播流块携带有业务数据;

根据所述第一私有直播流,获取目标直播流。

可选的,目标直播流获取模块120,用于将所述直播流转换为第一私有直播流,具体包括:

按照预设数据大小,将直播流分块成多个第一私有直播流块;

根据业务数据的开始获取时间,确定与所述开始获取时间对应的第一私有直播流块;

从所述开始获取时间对应的第一私有直播流块开始,在与业务数据的持续时间对应的第一私有直播流块中插入业务数据,并为插入业务数据的第一私有直播流块打上时间戳,获取到第一私有直播流。

可选的,目标直播流获取模块120,用于从所述开始获取时间对应的第一私有直播流块开始,在与业务数据的持续时间对应的第一私有直播流块中插入业务数据,具体包括:

从所述开始获取时间对应的第一私有直播流块开始,在与业务数据的持续时间对应的各第一私有直播流块中,分别构造私有字段;

在各第一私有直播流块中构造的私有字段,插入业务数据。

可选的,目标直播流获取模块120,用于根据所述第一私有直播流,获取目标直播流,具体包括:

将所述第一私有直播流转换为第二私有直播流,获取到目标直播流;其中,所述第二私有直播流包括:多个第二私有直播流分片及第一索引文件,所述第一索引文件中携带有业务数据,并指示所述业务数据在对应的第二私有直播流分片的展示时间。

可选的,目标直播流获取模块120,用于将所述第一私有直播流转换为第二私有直播流,具体包括:

按照预定时间,组合第一私有直播流块,得到多个第二私有直播流分片;一个第二私有直播流分片是与一段预定时间对应的第一私有直播流块的组合;

从携带业务数据的第一私有直播流块中提取业务数据,将提取的业务数据插入第一索引文件,并在第一索引文件指示业务数据在对应的第二私有直播流分片的展示时间,获取到第二私有直播流。

可选的,目标直播流获取模块120,用于将提取的业务数据插入第一索引文件,具体包括:

在第一索引文件中的私有标签中存储业务数据;

所述在第一索引文件指示业务数据在对应的第二私有直播流分片的展示时间包括:

在所述私有标签中指示业务数据在对应的第二私有直播流分片的展示时间。

可选的,目标直播流获取模块120,用于在第一索引文件指示业务数据在对应的第二私有直播流分片的展示时间,获取到第二私有直播流,具体包括:

确定携带业务数据的第一私有直播流块,在组合得到的对应第二私有直播流分片的播放时间,以确定出业务数据在对应的第二私有直播流分片的展示时间;

在所述第一索引文件中指示业务数据在对应的第二私有直播流分片的展示时间。

可选的,输出模块130,用于输出目标直播流,具体包括:

向直播流下发服务器传输第二私有直播流,以使所述直播流下发服务器将所述第二私有直播流转换为第二标准直播流后,将所述第二标准直播流传输给终端;

其中,所述第二标准直播流包括:多个第二标准直播流分片及第二索引文件,所述第二索引文件中携带有业务数据,并指示所述业务数据在对应的第二标准直播流分片的展示时间。

本发明实施例还提供一种流处理服务器,该流处理服务器可通过程序形式装载上述的应用于流程处理服务器的直播流传输装置。可选的,图1所示流处理服务器20的一种可选硬件结构可如图10所示,参照图10,该流处理服务器可以包括:至少一个处理芯片1,至少一个通信接口2,至少一个存储器3和至少一个通信总线4;

在本发明实施例中,处理芯片1、通信接口2、存储器3、通信总线4的数量为至少一个,且处理芯片1、通信接口2、存储器3通过通信总线4完成相互间的通信;

处理芯片1可能是一个中央处理器cpu,或者是特定集成电路asic(applicationspecificintegratedcircuit),或者是被配置成实施本发明实施例的一个或多个集成电路。

存储器3可能包含高速ram存储器,也可能还包括非易失性存储器(non-volatilememory),例如至少一个磁盘存储器。

其中,存储器3存储有程序,处理芯片1调用存储器3所存储的程序,以实现上述流处理服务器执行的直播流传输方法的步骤。

本发明实施例还提供一种存储介质,该存储介质存储有适于处理芯片执行的程序,以实现上述流处理服务器执行的直播流传输方法的步骤。

可选的,上述程序主要用于:

获取直播流;

获取业务数据,所述业务数据对应有展示时间;

处理所述直播流,以获取目标直播流;所述目标直播流携带有所述业务数据,且所述目标直播流中与所述展示时间对应的直播内容,与所述业务数据相关联;

输出目标直播流,以使终端播放获取的目标直播流时,根据所述展示时间控制展示所述业务数据。

上述程序的细化功能和扩展功能可参照前文对应部分的描述,此处不再赘述。

下面站在图1所示终端50的角度,对本发明实施例提供的直播流传输装置进行介绍,下文描述的直播流传输装置可以认为是,终端为实现本发明实施例提供的直播流传输方法所需设置的程序模块;下文描述的直播流传输装置的内容,可与上文描述的直播流传输方法的内容相互对应参照。

图11为本发明实施例提供的直播流传输装置的另一结构框图,该直播流传输装置可应用于图1所示终端50,参照图11,该装置可以包括:

直播流第二获取模块200,用于获取携带业务数据的直播流;

解析模块210,用于解析所述携带业务数据的直播流,确定直播内容、所述业务数据、及所述业务数据的展示时间;

播放模块220,用于播放所述直播内容;

展示控制模块230,用于在播放所述直播内容的过程中,根据所述展示时间,控制展示所述业务数据。

可选的,终端获取的携带业务数据的直播流可以是上述的第二标准直播流;对应的,解析模块210,用于解析所述携带业务数据的直播流,确定直播内容、所述业务数据、及所述业务数据的展示时间,具体包括:

解析所述第二标准直播流,得到多个第二标准直播流分片及第二索引文件,所述第二索引文件中携带有业务数据,并指示所述业务数据在对应的第二标准直播流分片的展示时间;

展示控制模块230,用于在播放所述直播内容的过程中,根据所述展示时间,控制展示所述业务数据,具体包括:

在播放的第二标准直播流分片的播放时间与所述展示时间对应时,展示所述业务数据;

及,在播放的第二标准直播流分片的播放时间与所述展示时间不对应时,取消展示所述业务数据。

可选的,终端获取的携带业务数据的直播流可以是上述的第一私有直播流;对应的,解析模块210,用于解析所述携带业务数据的直播流,确定直播内容、所述业务数据、及所述业务数据的展示时间,具体包括:

解析所述第一私有直播流,得到多个第一私有直播流块,该多个第一私有直播流块中与所述展示时间对应的第一私有直播流块携带有业务数据;

展示控制模块230,用于在播放所述直播内容的过程中,根据所述展示时间,控制展示所述业务数据,具体包括:

在播放第一私有直播流块的过程中,如果播放到携带有业务数据的第一私有直播流块,展示所述业务数据;

及,如果播放的第一私有直播流块未携带有业务数据,则取消展示所述业务数据。

可选的,终端获取的携带业务数据的直播流可以是上述的第二私有直播流;对应的,解析模块210,用于解析所述携带业务数据的直播流,确定直播内容、所述业务数据、及所述业务数据的展示时间,具体包括:

解析所述第二私有直播流,得到多个第二私有直播流分片及第一索引文件,所述第一索引文件中携带有业务数据,并指示所述业务数据在对应的第二私有直播流分片的展示时间;

展示控制模块230,用于在播放所述直播内容的过程中,根据所述展示时间,控制展示所述业务数据,具体包括:

在播放的第二私有直播流分片的播放时间与所述展示时间对应时,展示所述业务数据;

及,在播放的第二私有直播流分片的播放时间与所述展示时间不对应时,取消展示所述业务数据。

本发明实施例还提供一种终端,该终端可通过程序形式装载上述的应用于终端的直播流传输装置。可选的,图1所示终端50的一种可选硬件结构可如图10所示,包括至少一个存储器及至少一个处理芯片,所述存储器存储有程序,所述处理芯片调用所述程序,以实现上述终端执行的直播流传输方法的步骤。

本发明实施例还提供一种存储介质,该存储介质存储有适于处理芯片执行的程序,以实现上述终端执行的直播流传输方法的步骤。

可选的,上述程序主要用于:

获取携带业务数据的直播流;

解析所述携带业务数据的直播流,确定直播内容、所述业务数据、及所述业务数据的展示时间;

播放所述直播内容;

在播放所述直播内容的过程中,根据所述展示时间,控制展示所述业务数据。

上述程序的细化功能和扩展功能可参照前文对应部分的描述,此处不再赘述。

本发明实施例还提供一种直播流传输系统,该系统的结构可如图1所示,包括:视频源10,流处理服务器20,业务数据服务器30,直播流下发服务器40,终端50;

其中,视频源10,用于采集直播信号,输出相应的直播流;

流处理服务器20,用于获取直播流;获取业务数据,所述业务数据对应有展示时间;处理所述直播流,以获取目标直播流,所述目标直播流携带有所述业务数据,且所述目标直播流中与所述展示时间对应的直播内容,与所述业务数据相关联;输出目标直播流;

业务数据服务器30,用于向流处理服务器20发送业务数据;

直播流下发服务器40,用于接收流处理服务器20输出的目标直播流,根据所述目标直播流,将携带有业务数据的直播流下发给终端50;

终端50,用于获取携带有业务数据的直播流;解析所述携带有业务数据的直播流,确定直播内容、所述业务数据、及所述业务数据的展示时间;播放所述直播内容;在播放所述直播内容的过程中,根据所述展示时间,控制展示所述业务数据。

本发明实施例可在直播流中插入业务数据,并指示所述业务数据的展示时间,从而实现直播流和业务数据同步的下发给终端,从而终端在播放直播流时,能够根据所述展示时间控制展示所述业务数据。本发明实施例可极大的减小直播流和业务数据单独下发情况下业务数据的并发量,减小服务器的负载;进一步可实现业务数据和关联的直播内容的同步展示,提升业务数据的展示准确性,如在直播问答场景下,可实现终端播放主持人的问答视频时,实现终端同步的展示问答信息。

本说明书中各个实施例采用递进的方式描述,每个实施例重点说明的都是与其他实施例的不同之处,各个实施例之间相同相似部分互相参见即可。对于实施例公开的装置而言,由于其与实施例公开的方法相对应,所以描述的比较简单,相关之处参见方法部分说明即可。专业人员还可以进一步意识到,结合本文中所公开的实施例描述的各示例的单元及算法步骤,能够以电子硬件、计算机软件或者二者的结合来实现,为了清楚地说明硬件和软件的可互换性,在上述说明中已经按照功能一般性地描述了各示例的组成及步骤。这些功能究竟以硬件还是软件方式来执行,取决于技术方案的特定应用和设计约束条件。专业技术人员可以对每个特定的应用来使用不同方法来实现所描述的功能,但是这种实现不应认为超出本发明的范围。结合本文中所公开的实施例描述的方法或算法的步骤可以直接用硬件、处理芯片执行的软件模块,或者二者的结合来实施。软件模块可以置于随机存储器(ram)、内存、只读存储器(rom)、电可编程rom、电可擦除可编程rom、寄存器、硬盘、可移动磁盘、cd-rom、或技术领域内所公知的任意其它形式的存储介质中。对所公开的实施例的上述说明,使本领域专业技术人员能够实现或使用本发明。对这些实施例的多种修改对本领域的专业技术人员来说将是显而易见的,本文中所定义的一般原理可以在不脱离本发明的核心思想或范围的情况下,在其它实施例中实现。因此,本发明将不会被限制于本文所示的这些实施例,而是要符合与本文所公开的原理和新颖特点相一致的最宽的范围。

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