CN109756745B - 一种直播流数据的发送方法、直播加速服务器及终端 - Google Patents
一种直播流数据的发送方法、直播加速服务器及终端 Download PDFInfo
- Publication number
- CN109756745B CN109756745B CN201811486513.2A CN201811486513A CN109756745B CN 109756745 B CN109756745 B CN 109756745B CN 201811486513 A CN201811486513 A CN 201811486513A CN 109756745 B CN109756745 B CN 109756745B
- Authority
- CN
- China
- Prior art keywords
- stream
- terminal
- live
- sending
- relay
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Active
Links
Images
Landscapes
- Two-Way Televisions, Distribution Of Moving Picture Or The Like (AREA)
- Data Exchanges In Wide-Area Networks (AREA)
Abstract
本发明实施例提供一种直播流数据的发送方法、直播加速服务器及终端,方法包括:延时发送中继直播流至终端,以使终端接收中继直播流的预设延时时长为t1;若接收到终端在接收到中继直播流后,发送的换台请求,获取正在发送的中继直播流的发送位置;根据发送位置,通过单播方式发送目标数据至所述终端;以使所述终端在接收到所述目标数据之后,关闭单播通道,并同时加入组播组,并根据所述目标数据和所述中继直播流,将待播放的组播流数据与已播放的单播流数据相衔接,经过预设延时时长t3播放所述组播流数据。直播加速服务器执行上述方法;终端执行另一方法。本发明实施例提供的方法、直播加速服务器及终端,减少了终端在换台过程中的带宽消耗量。
Description
技术领域
本发明实施例涉及流媒体技术领域,具体涉及一种直播流数据的发送方法、直播加速服务器及终端。
背景技术
在IPTV视频直播领域中,通常采用UDP组播方式实现用户直播视频。基于UDP组播视频流中压缩编码GOP(图像组)的特性,终端只有收到完整I帧后才能完成后续解码过程;等待视频I帧到达的时间通常在800毫秒以上(根据GOP大小不同,等待时间不同),是影响换台速度最大的因素。
目前的采用快速换台方案,在传统直播网络中增加直播加速服务器,终端在换台过程中,单播接收缓存I帧开始的GOP数据,同时接收组播流数据;单播流和组播流同时下发,直到组播流数据和单播流数据比对一致的情况下,停止单播流,只保留组播流。在实现本发明的过程中,发明人发现上述现有技术至少存在以下问题:在单播流和组播流同时下发的阶段,单播流和组播流同时消耗带宽,导致消耗带宽量较多。
因此,如何避免上述缺陷,减少终端在换台过程中的带宽消耗量,成为亟须解决的问题。
发明内容
针对现有技术存在的问题,本发明实施例提供一种直播流数据的发送方法、直播加速服务器及终端。
第一方面,本发明实施例提供一种直播流数据的发送方法,所述方法包括:
延时发送中继直播流至终端,以使所述终端接收所述中继直播流的预设延时时长为t1;其中,预设延时时长t1是所述中继直播流的接收时刻与源直播流的接收时刻之间的时间间隔;
若接收到所述终端在接收到所述中继直播流后,发送的换台请求,获取正在发送的中继直播流的发送位置;
根据所述发送位置,通过单播方式发送目标数据至所述终端;以使所述终端在接收到所述目标数据之后,关闭单播通道,并同时加入组播组,并根据所述目标数据和所述中继直播流,将待播放的组播流数据与已播放的单播流数据相衔接,经过预设延时时长t3播放所述组播流数据;其中,所述目标数据是在所述发送位置之前最近的一个GOP的I帧到所述发送位置之后的累计时长为t2的所有直播流数据、且t2大于t3、小于t1。
第二方面,本发明实施例还提供一种直播流数据的发送方法,所述方法包括:
接收直播加速服务器延时发送的中继直播流;延时发送的预设延时时长为t1;其中,所述预设延时时长t1是所述中继直播流的接收时刻与源直播流的接收时刻之间的时间间隔;
若接收到外界触发的换台指令,则发送换台请求至所述直播加速服务器;以使所述直播加速服务器获取正在发送的中继直播流的发送位置;并根据所述发送位置,通过单播方式发送目标数据;所述目标数据是在所述发送位置之前最近的一个GOP的I帧到所述发送位置之后的累计时长为t2的所有直播流数据、且t2大于t3、小于t1、其中,t3是终端在加入组播组至播放组播流数据之间的预设延时时长;
接收所述目标数据;关闭单播通道,并同时加入组播组,并根据所述目标数据和所述中继直播流,将待播放的组播流数据与已播放的单播流数据相衔接,经过预设延时时长t3播放所述组播流数据。
第三方面,本发明实施例还提供一种直播加速服务器,所述直播加速服务器,包括:
第一发送模块,用于延时发送中继直播流至终端,以使所述终端接收所述中继直播流的预设延时时长为t1;其中,预设延时时长t1是所述中继直播流的接收时刻与源直播流的接收时刻之间的时间间隔;
获取模块,用于若接收到所述终端在接收到所述中继直播流后,发送的换台请求,获取正在发送的中继直播流的发送位置;
第二发送模块,用于根据所述发送位置,通过单播方式发送目标数据至所述终端;以使所述终端在接收到所述目标数据之后,关闭单播通道,并同时加入组播组,并根据所述目标数据和所述中继直播流,将待播放的组播流数据与已播放的单播流数据相衔接,经过预设延时时长t3播放所述组播流数据;其中,所述目标数据是在所述发送位置之前最近的一个GOP的I帧到所述发送位置之后的累计时长为t2的所有直播流数据、且t2大于t3、小于t1。
第四方面,本发明实施例提供一种电子设备,包括:第一处理器、第一存储器和第一总线,其中,
所述第一处理器和所述第一存储器通过所述第一总线完成相互间的通信;
所述第一存储器存储有可被所述第一处理器执行的程序指令,所述第一处理器调用所述程序指令能够执行如下方法:
延时发送中继直播流至终端,以使所述终端接收所述中继直播流的预设延时时长为t1;其中,预设延时时长t1是所述中继直播流的接收时刻与源直播流的接收时刻之间的时间间隔;
若接收到所述终端在接收到所述中继直播流后,发送的换台请求,获取正在发送的中继直播流的发送位置;
根据所述发送位置,通过单播方式发送目标数据至所述终端;以使所述终端在接收到所述目标数据之后,关闭单播通道,并同时加入组播组,并根据所述目标数据和所述中继直播流,将待播放的组播流数据与已播放的单播流数据相衔接,经过预设延时时长t3播放所述组播流数据;其中,所述目标数据是在所述发送位置之前最近的一个GOP的I帧到所述发送位置之后的累计时长为t2的所有直播流数据、且t2大于t3、小于t1。
第五方面,本发明实施例提供一种非暂态计算机可读存储介质,包括:
所述非暂态计算机可读存储介质存储计算机指令,所述计算机指令使所述计算机执行如下方法:
延时发送中继直播流至终端,以使所述终端接收所述中继直播流的预设延时时长为t1;其中,预设延时时长t1是所述中继直播流的接收时刻与源直播流的接收时刻之间的时间间隔;
若接收到所述终端在接收到所述中继直播流后,发送的换台请求,获取正在发送的中继直播流的发送位置;
根据所述发送位置,通过单播方式发送目标数据至所述终端;以使所述终端在接收到所述目标数据之后,关闭单播通道,并同时加入组播组,并根据所述目标数据和所述中继直播流,将待播放的组播流数据与已播放的单播流数据相衔接,经过预设延时时长t3播放所述组播流数据;其中,所述目标数据是在所述发送位置之前最近的一个GOP的I帧到所述发送位置之后的累计时长为t2的所有直播流数据、且t2大于t3、小于t1。
第六方面,本发明实施例还提供一种终端,所述终端包括:
接收单元,用于接收直播加速服务器延时发送的中继直播流;延时发送的预设延时时长为t1;其中,所述预设延时时长t1是所述中继直播流的接收时刻与源直播流的接收时刻之间的时间间隔;
发送单元,用于若接收到外界触发的换台指令,则发送换台请求至所述直播加速服务器;以使所述直播加速服务器获取正在发送的中继直播流的发送位置;并根据所述发送位置,通过单播方式发送目标数据;所述目标数据是在所述发送位置之前最近的一个GOP的I帧到所述发送位置之后的累计时长为t2的所有直播流数据、且t2大于t3、小于t1、其中,t3是终端在加入组播组至播放组播流数据之间的预设延时时长;
衔接单元,用于接收所述目标数据;关闭单播通道,并同时加入组播组,并根据所述目标数据和所述中继直播流,将待播放的组播流数据与已播放的单播流数据相衔接,经过预设延时时长t3播放所述组播流数据。
第七方面,本发明实施例提供一种电子设备,包括:第二处理器、第二存储器和第二总线,其中,
所述第二处理器和所述第二存储器通过所述第二总线完成相互间的通信;
所述第二存储器存储有可被所述第二处理器执行的程序指令,所述第二处理器调用所述程序指令能够执行如下方法:
接收直播加速服务器延时发送的中继直播流;延时发送的预设延时时长为t1;其中,所述预设延时时长t1是所述中继直播流的接收时刻与源直播流的接收时刻之间的时间间隔;
若接收到外界触发的换台指令,则发送换台请求至所述直播加速服务器;以使所述直播加速服务器获取正在发送的中继直播流的发送位置;并根据所述发送位置,通过单播方式发送目标数据;所述目标数据是在所述发送位置之前最近的一个GOP的I帧到所述发送位置之后的累计时长为t2的所有直播流数据、且t2大于t3、小于t1、其中,t3是终端在加入组播组至播放组播流数据之间的预设延时时长;
接收所述目标数据;关闭单播通道,并同时加入组播组,并根据所述目标数据和所述中继直播流,将待播放的组播流数据与已播放的单播流数据相衔接,经过预设延时时长t3播放所述组播流数据。
第八方面,本发明实施例提供一种非暂态计算机可读存储介质,包括:
所述非暂态计算机可读存储介质存储计算机指令,所述计算机指令使所述计算机执行如下方法:
接收直播加速服务器延时发送的中继直播流;延时发送的预设延时时长为t1;其中,所述预设延时时长t1是所述中继直播流的接收时刻与源直播流的接收时刻之间的时间间隔;
若接收到外界触发的换台指令,则发送换台请求至所述直播加速服务器;以使所述直播加速服务器获取正在发送的中继直播流的发送位置;并根据所述发送位置,通过单播方式发送目标数据;所述目标数据是在所述发送位置之前最近的一个GOP的I帧到所述发送位置之后的累计时长为t2的所有直播流数据、且t2大于t3、小于t1、其中,t3是终端在加入组播组至播放组播流数据之间的预设延时时长;
接收所述目标数据;关闭单播通道,并同时加入组播组,并根据所述目标数据和所述中继直播流,将待播放的组播流数据与已播放的单播流数据相衔接,经过预设延时时长t3播放所述组播流数据。
本发明实施例提供的直播流数据的发送方法、直播加速服务器及终端,通过在终端关闭单播通道之前,先将目标数据和中继直播流发送到终端,然后终端关闭单播通道、同时加入组播组之后,也能够将待播放的组播流数据与已播放的单播流数据相衔接,一方面实现了直播流数据的连续播放,另一方面减少了终端在换台过程中的带宽消耗量。
附图说明
为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作一简单地介绍,显而易见地,下面描述中的附图是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1为本发明实施例直播流数据的发送方法流程示意图;
图2为本发明另一实施例直播流数据的发送方法流程示意图;
图3为本发明实施例直播加速服务器结构示意图;
图4为本发明实施例提供的电子设备实体结构示意图;
图5为本发明实施例终端结构示意图;
图6为本发明实施例提供的电子设备实体结构示意图。
具体实施方式
为使本发明实施例的目的、技术方案和优点更加清楚,下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
图1为本发明实施例直播流数据的发送方法流程示意图,如图1所示,本发明实施例提供的一种直播流数据的发送方法,包括以下步骤:
S101:延时发送中继直播流至终端,以使所述终端接收所述中继直播流的预设延时时长为t1;其中,预设延时时长t1是所述中继直播流的接收时刻与源直播流的接收时刻之间的时间间隔。
具体的,直播加速服务器延时发送中继直播流至终端,以使所述终端接收所述中继直播流的预设延时时长为t1;其中,预设延时时长t1是所述中继直播流的接收时刻与源直播流的接收时刻之间的时间间隔。即:直播加速服务器先向终端发送源直播流,经过t1再发送中继直播流,直播加速服务器持续向终端发送源直播流和中继直播流;终端持续接收源直播流和中继直播流。在该步骤之前,所述方法还包括:
预先将所述中继直播流和所述源直播流存储至缓存。可以从缓存中快速读取中继直播流和源直播流。
S102:若接收到所述终端在接收到所述中继直播流后,发送的换台请求,获取正在发送的中继直播流的发送位置。
具体的,直播加速服务器若接收到所述终端在接收到所述中继直播流后,发送的换台请求,获取正在发送的中继直播流的发送位置。所述发送位置可以是正在发送的中继直播流的字节数,例如:在时刻9:00:00、9:00:10、9:00:20,正在发送的中继直播流的字节数分别为100MB、150MB和180MB,当直播加速服务器接收到换台请求的时刻为9:00:10,则获取在发送的中继直播流的发送位置为150MB字节数对应的位置。
S103:根据所述发送位置,通过单播方式发送目标数据至所述终端;以使所述终端在接收到所述目标数据之后,关闭单播通道,并同时加入组播组,并根据所述目标数据和所述中继直播流,将待播放的组播流数据与已播放的单播流数据相衔接,经过预设延时时长t3播放所述组播流数据;其中,所述目标数据是在所述发送位置之前最近的一个GOP的I帧到所述发送位置之后的累计时长为t2的所有直播流数据、且t2大于t3、小于t1。
具体的,直播加速服务器根据所述发送位置,通过单播方式发送目标数据至所述终端;以使所述终端在接收到所述目标数据之后,关闭单播通道,并同时加入组播组,并根据所述目标数据和所述中继直播流,将待播放的组播流数据与已播放的单播流数据相衔接,经过预设延时时长t3播放所述组播流数据;其中,所述目标数据是在所述发送位置之前最近的一个GOP的I帧到所述发送位置之后的累计时长为t2的所有直播流数据、且t2大于t3、小于t1。参照上述举例,在9:00:10之前的最近的一个GOP的I帧为a、该帧a到9:00:11之间的时长为t2,即t2是帧a到9:00:10、以及9:00:10到9:00:11的累计时长,需要说明的是:t2是根据t1和t3来确定的,即t2大于t3、小于t1,而t1和t3可以根据实际情况自主设置。即t2的所有直播流数据即是即将要发送出的中继直播流。由于终端在接收到目标数据之后,才关闭单播通道(即不占用单播带宽),并同时加入组播组,终端加入组播组到播放组播流数据之间的t3小于t2、并且t1大于t2,使得终端中已获得的数据(包括该目标数据和持续接收的中继直播流数据)足够覆盖将待播放的组播流数据与已播放的单播流数据相衔接所需要的数据,因此能够确保播放数据的连续性,而且,由于在终端加入组播组之前,单播通道已经被关闭,因此,单播通道和组播通道并不重复占用带宽,即减少了终端在换台过程中的带宽消耗量。
本发明实施例提供的直播流数据的发送方法,通过在终端关闭单播通道之前,先将目标数据和中继直播流发送到终端,然后终端关闭单播通道、同时加入组播组之后,也能够将待播放的组播流数据与已播放的单播流数据相衔接,一方面实现了直播流数据的连续播放,另一方面减少了终端在换台过程中的带宽消耗量。
在上述实施例的基础上,所述延时发送中继直播流至终端的步骤之前,所述方法还包括:
预先将所述中继直播流和所述源直播流存储至缓存。
具体的,直播加速服务器预先将所述中继直播流和所述源直播流存储至缓存。可参照上述实施例,不再赘述。
本发明实施例提供的直播流数据的发送方法,通过预先将中继直播流和源直播流存储至缓存,便于从直播加速服务器中快速读取出中继直播流和源直播流。
在上述实施例的基础上,所述发送位置是正在发送的中继直播流的字节数。
具体的,直播加速服务器中的所述发送位置是正在发送的中继直播流的字节数。可参照上述实施例,不再赘述。
本发明实施例提供的直播流数据的发送方法,通过字节数确定发送位置,能够简便、高效地确定发送位置,保证该方法正常进行。
在上述实施例的基础上,所述目标数据还携带有指示标识,以使所述终端在接收到所述目标数据之后,根据所述指示标识关闭单播通道,并同时加入组播组,并根据所述目标数据和所述中继直播流,将待播放的组播流数据与已播放的单播流数据相衔接,经过预设延时时长t3播放所述组播流数据。
具体的,直播加速服务器中的所述目标数据还携带有指示标识,以使所述终端在接收到所述目标数据之后,根据所述指示标识关闭单播通道,并同时加入组播组,并根据所述目标数据和所述中继直播流,将待播放的组播流数据与已播放的单播流数据相衔接,经过预设延时时长t3播放所述组播流数据。指示标识用于指示终端这些数据是目标数据,不同于持续发送的源直播流数据和中继直播流数据,指示标识的表现形式不作具体限定。
本发明实施例提供的直播流数据的发送方法,通过使目标数据还携带有指示标识,能够使得终端便于识别出目标数据,有助于该方法的高效执行。
图2为本发明另一实施例直播流数据的发送方法流程示意图,如图2所示,本发明实施例提供的一种直播流数据的发送方法,包括以下步骤:
S201:接收直播加速服务器延时发送的中继直播流;延时发送的预设延时时长为t1;其中,所述预设延时时长t1是所述中继直播流的接收时刻与源直播流的接收时刻之间的时间间隔。
具体的,终端接收直播加速服务器延时发送的中继直播流;延时发送的预设延时时长为t1;其中,所述预设延时时长t1是所述中继直播流的接收时刻与源直播流的接收时刻之间的时间间隔。即:直播加速服务器先向终端发送源直播流,经过t1再发送中继直播流,直播加速服务器持续向终端发送源直播流和中继直播流;终端持续接收源直播流和中继直播流。
S202:若接收到外界触发的换台指令,则发送换台请求至所述直播加速服务器;以使所述直播加速服务器获取正在发送的中继直播流的发送位置;并根据所述发送位置,通过单播方式发送目标数据;所述目标数据是在所述发送位置之前最近的一个GOP的I帧到所述发送位置之后的累计时长为t2的所有直播流数据、且t2大于t3、小于t1、其中,t3是终端在加入组播组至播放组播流数据之间的预设延时时长。
具体的,终端若接收到外界触发的换台指令,则发送换台请求至所述直播加速服务器;以使所述直播加速服务器获取正在发送的中继直播流的发送位置;并根据所述发送位置,通过单播方式发送目标数据;所述目标数据是在所述发送位置之前最近的一个GOP的I帧到所述发送位置之后的累计时长为t2的所有直播流数据、且t2大于t3、小于t1、其中,t3是终端在加入组播组至播放组播流数据之间的预设延时时长。外界触发可以是用户通过按键进行触发,不作具体限定。具体说明可参照执行主体为直播加速服务器的方法中的说明,不再赘述。
S203:接收所述目标数据;关闭单播通道,并同时加入组播组,并根据所述目标数据和所述中继直播流,将待播放的组播流数据与已播放的单播流数据相衔接,经过预设延时时长t3播放所述组播流数据。
具体的,终端接收所述目标数据;关闭单播通道,并同时加入组播组,并根据所述目标数据和所述中继直播流,将待播放的组播流数据与已播放的单播流数据相衔接,经过预设延时时长t3播放所述组播流数据。将待播放的组播流数据与已播放的单播流数据相衔接的实现方式为本领域成熟技术,不再赘述。其他说明可参照执行主体为直播加速服务器的方法中的说明,不再赘述。
终端可以根据多次快速换台记录统计,自主学习,协同直播加速系统,及时调整单播数据量、下载速度,在保证数据衔接情况下,尽可能减少单播下发数据量(即目标数据的数据量)。
本发明实施例提供的直播流数据的发送方法,通过在终端关闭单播通道之前,先将目标数据和中继直播流发送到终端,然后终端关闭单播通道、同时加入组播组之后,也能够将待播放的组播流数据与已播放的单播流数据相衔接,一方面实现了直播流数据的连续播放,另一方面减少了终端在换台过程中的带宽消耗量。
图3为本发明实施例直播加速服务器结构示意图,如图3所示,本发明实施例提供了一种直播加速服务器,包括第一发送模块301、获取模块302和第二发送模块303,其中:
第一发送模块301用于延时发送中继直播流至终端,以使所述终端接收所述中继直播流的预设延时时长为t1;其中,预设延时时长t1是所述中继直播流的接收时刻与源直播流的接收时刻之间的时间间隔;获取模块302用于若接收到所述终端在接收到所述中继直播流后,发送的换台请求,获取正在发送的中继直播流的发送位置;
第二发送模块303用于根据所述发送位置,通过单播方式发送目标数据至所述终端;以使所述终端在接收到所述目标数据之后,关闭单播通道,并同时加入组播组,并根据所述目标数据和所述中继直播流,将待播放的组播流数据与已播放的单播流数据相衔接,经过预设延时时长t3播放所述组播流数据;其中,所述目标数据是在所述发送位置之前最近的一个GOP的I帧到所述发送位置之后的累计时长为t2的所有直播流数据、且t2大于t3、小于t1。
具体的,第一发送模块301用于延时发送中继直播流至终端,以使所述终端接收所述中继直播流的预设延时时长为t1;其中,预设延时时长t1是所述中继直播流的接收时刻与源直播流的接收时刻之间的时间间隔;获取模块302用于若接收到所述终端在接收到所述中继直播流后,发送的换台请求,获取正在发送的中继直播流的发送位置;第二发送模块303用于根据所述发送位置,通过单播方式发送目标数据至所述终端;以使所述终端在接收到所述目标数据之后,关闭单播通道,并同时加入组播组,并根据所述目标数据和所述中继直播流,将待播放的组播流数据与已播放的单播流数据相衔接,经过预设延时时长t3播放所述组播流数据;其中,所述目标数据是在所述发送位置之前最近的一个GOP的I帧到所述发送位置之后的累计时长为t2的所有直播流数据、且t2大于t3、小于t1。
本发明实施例提供的直播加速服务器,通过在终端关闭单播通道之前,先将目标数据和中继直播流发送到终端,然后终端关闭单播通道、同时加入组播组之后,也能够将待播放的组播流数据与已播放的单播流数据相衔接,一方面实现了直播流数据的连续播放,另一方面减少了终端在换台过程中的带宽消耗量。
本发明实施例提供的直播加速服务器具体可以用于执行上述各方法实施例的处理流程,其功能在此不再赘述,可以参照上述方法实施例的详细描述。
图4为本发明实施例提供的电子设备实体结构示意图,如图4所示,所述电子设备包括:第一处理器(processor)401、第一存储器(memory)402和第一总线403;
其中,所述第一处理器401、第一存储器402通过第一总线403完成相互间的通信;
所述第一处理器401用于调用所述第一存储器402中的程序指令,以执行上述各方法实施例所提供的方法,例如包括:延时发送中继直播流至终端,以使所述终端接收所述中继直播流的预设延时时长为t1;其中,预设延时时长t1是所述中继直播流的接收时刻与源直播流的接收时刻之间的时间间隔;若接收到所述终端在接收到所述中继直播流后,发送的换台请求,获取正在发送的中继直播流的发送位置;根据所述发送位置,通过单播方式发送目标数据至所述终端;以使所述终端在接收到所述目标数据之后,关闭单播通道,并同时加入组播组,并根据所述目标数据和所述中继直播流,将待播放的组播流数据与已播放的单播流数据相衔接,经过预设延时时长t3播放所述组播流数据;其中,所述目标数据是在所述发送位置之前最近的一个GOP的I帧到所述发送位置之后的累计时长为t2的所有直播流数据、且t2大于t3、小于t1。
本实施例公开一种计算机程序产品,所述计算机程序产品包括存储在非暂态计算机可读存储介质上的计算机程序,所述计算机程序包括程序指令,当所述程序指令被计算机执行时,计算机能够执行上述各方法实施例所提供的方法,例如包括:延时发送中继直播流至终端,以使所述终端接收所述中继直播流的预设延时时长为t1;其中,预设延时时长t1是所述中继直播流的接收时刻与源直播流的接收时刻之间的时间间隔;若接收到所述终端在接收到所述中继直播流后,发送的换台请求,获取正在发送的中继直播流的发送位置;根据所述发送位置,通过单播方式发送目标数据至所述终端;以使所述终端在接收到所述目标数据之后,关闭单播通道,并同时加入组播组,并根据所述目标数据和所述中继直播流,将待播放的组播流数据与已播放的单播流数据相衔接,经过预设延时时长t3播放所述组播流数据;其中,所述目标数据是在所述发送位置之前最近的一个GOP的I帧到所述发送位置之后的累计时长为t2的所有直播流数据、且t2大于t3、小于t1。
本实施例提供一种非暂态计算机可读存储介质,所述非暂态计算机可读存储介质存储计算机指令,所述计算机指令使所述计算机执行上述各方法实施例所提供的方法,例如包括:延时发送中继直播流至终端,以使所述终端接收所述中继直播流的预设延时时长为t1;其中,预设延时时长t1是所述中继直播流的接收时刻与源直播流的接收时刻之间的时间间隔;若接收到所述终端在接收到所述中继直播流后,发送的换台请求,获取正在发送的中继直播流的发送位置;根据所述发送位置,通过单播方式发送目标数据至所述终端;以使所述终端在接收到所述目标数据之后,关闭单播通道,并同时加入组播组,并根据所述目标数据和所述中继直播流,将待播放的组播流数据与已播放的单播流数据相衔接,经过预设延时时长t3播放所述组播流数据;其中,所述目标数据是在所述发送位置之前最近的一个GOP的I帧到所述发送位置之后的累计时长为t2的所有直播流数据、且t2大于t3、小于t1。
图5为本发明实施例终端结构示意图,如图所示,本发明实施例提供了一种终端,包括接收单元501、发送单元502和衔接单元503,其中:
接收单元501用于接收直播加速服务器延时发送的中继直播流;延时发送的预设延时时长为t1;其中,所述预设延时时长t1是所述中继直播流的接收时刻与源直播流的接收时刻之间的时间间隔;发送单元502用于若接收到外界触发的换台指令,则发送换台请求至所述直播加速服务器;以使所述直播加速服务器获取正在发送的中继直播流的发送位置;并根据所述发送位置,通过单播方式发送目标数据;所述目标数据是在所述发送位置之前最近的一个GOP的I帧到所述发送位置之后的累计时长为t2的所有直播流数据、且t2大于t3、小于t1、其中,t3是终端在加入组播组至播放组播流数据之间的预设延时时长;衔接单元503用于接收所述目标数据;关闭单播通道,并同时加入组播组,并根据所述目标数据和所述中继直播流,将待播放的组播流数据与已播放的单播流数据相衔接,经过预设延时时长t3播放所述组播流数据。
具体的,接收单元501用于接收直播加速服务器延时发送的中继直播流;延时发送的预设延时时长为t1;其中,所述预设延时时长t1是所述中继直播流的接收时刻与源直播流的接收时刻之间的时间间隔;发送单元502用于若接收到外界触发的换台指令,则发送换台请求至所述直播加速服务器;以使所述直播加速服务器获取正在发送的中继直播流的发送位置;并根据所述发送位置,通过单播方式发送目标数据;所述目标数据是在所述发送位置之前最近的一个GOP的I帧到所述发送位置之后的累计时长为t2的所有直播流数据、且t2大于t3、小于t1、其中,t3是终端在加入组播组至播放组播流数据之间的预设延时时长;衔接单元503用于接收所述目标数据;关闭单播通道,并同时加入组播组,并根据所述目标数据和所述中继直播流,将待播放的组播流数据与已播放的单播流数据相衔接,经过预设延时时长t3播放所述组播流数据。
本发明实施例提供的终端,通过在终端关闭单播通道之前,先将目标数据和中继直播流发送到终端,然后终端关闭单播通道、同时加入组播组之后,也能够将待播放的组播流数据与已播放的单播流数据相衔接,一方面实现了直播流数据的连续播放,另一方面减少了终端在换台过程中的带宽消耗量。
本发明实施例提供的终端具体可以用于执行上述各方法实施例的处理流程,其功能在此不再赘述,可以参照上述方法实施例的详细描述。
图6为本发明实施例提供的电子设备实体结构示意图,如图6所示,所述电子设备包括:第二处理器(processor)601、第二存储器(memory)602和第二总线603;
其中,所述第二处理器601、第二存储器602通过第二总线603完成相互间的通信;
所述第二处理器601用于调用所述第二存储器602中的程序指令,以执行上述各方法实施例所提供的方法,例如包括:接收直播加速服务器延时发送的中继直播流;延时发送的预设延时时长为t1;其中,所述预设延时时长t1是所述中继直播流的接收时刻与源直播流的接收时刻之间的时间间隔;若接收到外界触发的换台指令,则发送换台请求至所述直播加速服务器;以使所述直播加速服务器获取正在发送的中继直播流的发送位置;并根据所述发送位置,通过单播方式发送目标数据;所述目标数据是在所述发送位置之前最近的一个GOP的I帧到所述发送位置之后的累计时长为t2的所有直播流数据、且t2大于t3、小于t1、其中,t3是终端在加入组播组至播放组播流数据之间的预设延时时长;接收所述目标数据;关闭单播通道,并同时加入组播组,并根据所述目标数据和所述中继直播流,将待播放的组播流数据与已播放的单播流数据相衔接,经过预设延时时长t3播放所述组播流数据。
本实施例公开一种计算机程序产品,所述计算机程序产品包括存储在非暂态计算机可读存储介质上的计算机程序,所述计算机程序包括程序指令,当所述程序指令被计算机执行时,计算机能够执行上述各方法实施例所提供的方法,例如包括:接收直播加速服务器延时发送的中继直播流;延时发送的预设延时时长为t1;其中,所述预设延时时长t1是所述中继直播流的接收时刻与源直播流的接收时刻之间的时间间隔;若接收到外界触发的换台指令,则发送换台请求至所述直播加速服务器;以使所述直播加速服务器获取正在发送的中继直播流的发送位置;并根据所述发送位置,通过单播方式发送目标数据;所述目标数据是在所述发送位置之前最近的一个GOP的I帧到所述发送位置之后的累计时长为t2的所有直播流数据、且t2大于t3、小于t1、其中,t3是终端在加入组播组至播放组播流数据之间的预设延时时长;接收所述目标数据;关闭单播通道,并同时加入组播组,并根据所述目标数据和所述中继直播流,将待播放的组播流数据与已播放的单播流数据相衔接,经过预设延时时长t3播放所述组播流数据。
本实施例提供一种非暂态计算机可读存储介质,所述非暂态计算机可读存储介质存储计算机指令,所述计算机指令使所述计算机执行上述各方法实施例所提供的方法,例如包括:接收直播加速服务器延时发送的中继直播流;延时发送的预设延时时长为t1;其中,所述预设延时时长t1是所述中继直播流的接收时刻与源直播流的接收时刻之间的时间间隔;若接收到外界触发的换台指令,则发送换台请求至所述直播加速服务器;以使所述直播加速服务器获取正在发送的中继直播流的发送位置;并根据所述发送位置,通过单播方式发送目标数据;所述目标数据是在所述发送位置之前最近的一个GOP的I帧到所述发送位置之后的累计时长为t2的所有直播流数据、且t2大于t3、小于t1、其中,t3是终端在加入组播组至播放组播流数据之间的预设延时时长;接收所述目标数据;关闭单播通道,并同时加入组播组,并根据所述目标数据和所述中继直播流,将待播放的组播流数据与已播放的单播流数据相衔接,经过预设延时时长t3播放所述组播流数据。
本领域普通技术人员可以理解:实现上述方法实施例的全部或部分步骤可以通过程序指令相关的硬件来完成,前述的程序可以存储于一计算机可读取存储介质中,该程序在执行时,执行包括上述方法实施例的步骤;而前述的存储介质包括:ROM、RAM、磁碟或者光盘等各种可以存储程序代码的介质。
以上所描述的电子设备等实施例仅仅是示意性的,其中所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部模块来实现本实施例方案的目的。本领域普通技术人员在不付出创造性的劳动的情况下,即可以理解并实施。
通过以上的实施方式的描述,本领域的技术人员可以清楚地了解到各实施方式可借助软件加必需的通用硬件平台的方式来实现,当然也可以通过硬件。基于这样的理解,上述技术方案本质上或者说对现有技术做出贡献的部分可以以软件产品的形式体现出来,该计算机软件产品可以存储在计算机可读存储介质中,如ROM/RAM、磁碟、光盘等,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行各个实施例或者实施例的某些部分所述的方法。
最后应说明的是:以上各实施例仅用以说明本发明的实施例的技术方案,而非对其限制;尽管参照前述各实施例对本发明的实施例进行了详细的说明,本领域的普通技术人员应当理解:其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分或者全部技术特征进行等同替换;而这些修改或者替换,并不使相应技术方案的本质脱离本发明的各实施例技术方案的范围。
Claims (10)
1.一种直播流数据的发送方法,其特征在于,包括:
延时发送中继直播流至终端,以使所述终端接收所述中继直播流的预设延时时长为t1;其中,预设延时时长t1是所述中继直播流的接收时刻与源直播流的接收时刻之间的时间间隔;
若接收到所述终端发送的换台请求,获取正在发送的中继直播流的发送位置,其中,所述发送位置是正在发送的中继直播流的字节数对应的位置;
根据所述发送位置,通过单播方式发送目标数据至所述终端;以使所述终端在接收到所述目标数据之后,关闭单播通道,并同时加入组播组,并根据所述目标数据和所述中继直播流,将待播放的组播流数据与已播放的目标数据相衔接,经过预设延时时长t3播放所述组播流数据;
其中,所述目标数据是在所述发送位置之前最近的一个GOP的I帧到所述发送位置之后的累计时长为t2的所有直播流数据,且t2大于t3、小于t1。
2.根据权利要求1所述的方法,其特征在于,所述延时发送中继直播流至终端的步骤之前,所述方法还包括:
预先将所述中继直播流存储至缓存。
3.根据权利要求1所述的方法,其特征在于,所述目标数据还携带有指示标识,以使所述终端在接收到所述目标数据之后,根据所述指示标识关闭单播通道,并同时加入组播组,并根据所述目标数据和所述中继直播流,将待播放的组播流数据与已播放的目标数据相衔接,经过预设延时时长t3播放所述组播流数据。
4.一种直播流数据的发送方法,其特征在于,包括:
接收直播加速服务器延时发送的中继直播流;延时发送的预设延时时长为t1;其中,所述预设延时时长t1是所述中继直播流的接收时刻与源直播流的接收时刻之间的时间间隔;
若接收到外界触发的换台指令,则发送换台请求至所述直播加速服务器;以使所述直播加速服务器获取正在发送的中继直播流的发送位置;并根据所述发送位置,通过单播方式发送目标数据;其中,所述发送位置是正在发送的中继直播流的字节数对应的位置,所述目标数据是在所述发送位置之前最近的一个GOP的I帧到所述发送位置之后的累计时长为t2的所有直播流数据,且t2大于t3、小于t1,其中,t3是终端在加入组播组至播放组播流数据之间的预设延时时长;
接收所述目标数据;关闭单播通道,并同时加入组播组,并根据所述目标数据和所述中继直播流,将待播放的组播流数据与已播放的目标数据相衔接,经过预设延时时长t3播放所述组播流数据。
5.一种直播加速服务器,其特征在于,包括:
第一发送模块,用于延时发送中继直播流至终端,以使所述终端接收所述中继直播流的预设延时时长为t1;其中,预设延时时长t1是所述中继直播流的接收时刻与源直播流的接收时刻之间的时间间隔;
获取模块,用于若接收到所述终端在接收到所述中继直播流后,发送的换台请求,获取正在发送的中继直播流的发送位置;其中,所述发送位置是正在发送的中继直播流的字节数对应的位置;
第二发送模块,用于根据所述发送位置,通过单播方式发送目标数据至所述终端;以使所述终端在接收到所述目标数据之后,关闭单播通道,并同时加入组播组,并根据所述目标数据和所述中继直播流,将待播放的组播流数据与已播放的目标数据相衔接,经过预设延时时长t3播放所述组播流数据;其中,所述目标数据是在所述发送位置之前最近的一个GOP的I帧到所述发送位置之后的累计时长为t2的所有直播流数据,且t2大于t3、小于t1。
6.一种电子设备,其特征在于,包括:第一处理器、第一存储器和第一总线,其中:
所述第一处理器和所述第一存储器通过所述第一总线完成相互间的通信;
所述第一存储器存储有可被所述第一处理器执行的程序指令,所述第一处理器调用所述程序指令能够执行如权利要求1至3任一所述的方法。
7.一种非暂态计算机可读存储介质,其特征在于,所述非暂态计算机可读存储介质存储计算机指令,所述计算机指令使所述计算机执行如权利要求1至3任一所述的方法。
8.一种终端,其特征在于,包括:
接收单元,用于接收直播加速服务器延时发送的中继直播流;延时发送的预设延时时长为t1;其中,所述预设延时时长t1是所述中继直播流的接收时刻与源直播流的接收时刻之间的时间间隔;
发送单元,用于若接收到外界触发的换台指令,则发送换台请求至所述直播加速服务器;以使所述直播加速服务器获取正在发送的中继直播流的发送位置;并根据所述发送位置,通过单播方式发送目标数据;其中,所述发送位置是正在发送的中继直播流的字节数对应的位置,所述目标数据是在所述发送位置之前最近的一个GOP的I帧到所述发送位置之后的累计时长为t2的所有直播流数据,且t2大于t3、小于t1,其中,t3是终端在加入组播组至播放组播流数据之间的预设延时时长;
衔接单元,用于接收所述目标数据;关闭单播通道,并同时加入组播组,并根据所述目标数据和所述中继直播流,将待播放的组播流数据与已播放的目标数据相衔接,经过预设延时时长t3播放所述组播流数据。
9.一种电子设备,其特征在于,包括:第二处理器、第二存储器和第二总线,其中:
所述第二处理器和所述第二存储器通过所述第二总线完成相互间的通信;
所述第二存储器存储有可被所述第二处理器执行的程序指令,所述第二处理器调用所述程序指令能够执行如权利要求4所述的方法。
10.一种非暂态计算机可读存储介质,其特征在于,所述非暂态计算机可读存储介质存储计算机指令,所述计算机指令使所述计算机执行如权利要求4所述的方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201811486513.2A CN109756745B (zh) | 2018-12-06 | 2018-12-06 | 一种直播流数据的发送方法、直播加速服务器及终端 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201811486513.2A CN109756745B (zh) | 2018-12-06 | 2018-12-06 | 一种直播流数据的发送方法、直播加速服务器及终端 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN109756745A CN109756745A (zh) | 2019-05-14 |
CN109756745B true CN109756745B (zh) | 2021-06-15 |
Family
ID=66402652
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201811486513.2A Active CN109756745B (zh) | 2018-12-06 | 2018-12-06 | 一种直播流数据的发送方法、直播加速服务器及终端 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN109756745B (zh) |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2011017982A1 (zh) * | 2009-08-12 | 2011-02-17 | 中兴通讯股份有限公司 | 媒体业务处理系统、方法及终端 |
CN102137275A (zh) * | 2010-12-20 | 2011-07-27 | 华为技术有限公司 | 快速频道切换中快速推送单播流的方法和装置 |
WO2012113212A1 (zh) * | 2011-02-24 | 2012-08-30 | 中兴通讯股份有限公司 | 在快速频道切换时预先发送加入组播请求的方法和系统 |
WO2018166320A1 (zh) * | 2017-03-13 | 2018-09-20 | 华为技术有限公司 | 一种频道切换方法及其装置 |
Family Cites Families (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2010114450A1 (en) * | 2009-03-31 | 2010-10-07 | Telefonaktiebolaget L M Ericsson (Publ) | Methods and arrangements for channel change in an iptv network |
-
2018
- 2018-12-06 CN CN201811486513.2A patent/CN109756745B/zh active Active
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2011017982A1 (zh) * | 2009-08-12 | 2011-02-17 | 中兴通讯股份有限公司 | 媒体业务处理系统、方法及终端 |
CN102137275A (zh) * | 2010-12-20 | 2011-07-27 | 华为技术有限公司 | 快速频道切换中快速推送单播流的方法和装置 |
WO2012113212A1 (zh) * | 2011-02-24 | 2012-08-30 | 中兴通讯股份有限公司 | 在快速频道切换时预先发送加入组播请求的方法和系统 |
WO2018166320A1 (zh) * | 2017-03-13 | 2018-09-20 | 华为技术有限公司 | 一种频道切换方法及其装置 |
Also Published As
Publication number | Publication date |
---|---|
CN109756745A (zh) | 2019-05-14 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN111135569B (zh) | 云游戏处理方法、装置、存储介质与电子设备 | |
US11323136B2 (en) | Method and apparatus for processing a received sequence of data packets by removing unsuitable error correction packets from the sequence | |
CN107566918B (zh) | 一种视频分发场景下的低延时取流秒开方法 | |
US10645447B2 (en) | Fast channel change method and server, and IPTV system | |
CN102790925B (zh) | 一种在线流媒体播放的方法及点播终端 | |
CN111601136B (zh) | 一种视频数据处理方法、装置、计算机设备及存储介质 | |
CN108174280B (zh) | 一种音视频在线播放方法及系统 | |
CN106488273A (zh) | 一种传输直播视频的方法和装置 | |
CN108259998B (zh) | 播放器及播放控制方法、装置、电子设备及播放系统 | |
US11563992B2 (en) | Video playback quality detection method and apparatus | |
US11863841B2 (en) | Video playing control method and system | |
US20180192090A1 (en) | Method of implementing audio and video live broadcast and server | |
CN107612912B (zh) | 一种设置播放参数的方法和装置 | |
EP4192020B1 (en) | Channel change method and apparatus | |
CN112019905A (zh) | 直播回放方法、计算机设备及可读存储介质 | |
CN111436009B (zh) | 一种实时视频流传送、显示方法以及传送和播放系统 | |
CN111726641A (zh) | 直播视频的播放处理方法、装置及服务器 | |
CN105898625B (zh) | 一种播放处理方法及终端设备 | |
CN106534878A (zh) | 一种直播节目的回看方法、系统和服务器 | |
CN113766261B (zh) | 一种确定预拉取时长方法、装置、电子设备及存储介质 | |
CN113573003B (zh) | 一种基于弱网的音视频实时通信方法、装置以及设备 | |
WO2017071428A1 (zh) | 快进快退的处理方法及终端 | |
CN109756745B (zh) | 一种直播流数据的发送方法、直播加速服务器及终端 | |
CN114979793B (zh) | 一种直播数据传输方法、装置、系统、设备和介质 | |
CN106331847B (zh) | 音视频播放方法及设备 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |