CN102651823A - 在快速频道切换时预先发送加入组播请求的方法和系统 - Google Patents
在快速频道切换时预先发送加入组播请求的方法和系统 Download PDFInfo
- Publication number
- CN102651823A CN102651823A CN201110045498XA CN201110045498A CN102651823A CN 102651823 A CN102651823 A CN 102651823A CN 201110045498X A CN201110045498X A CN 201110045498XA CN 201110045498 A CN201110045498 A CN 201110045498A CN 102651823 A CN102651823 A CN 102651823A
- Authority
- CN
- China
- Prior art keywords
- multicast
- time
- client
- server
- request
- 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.)
- Pending
Links
- 238000000034 method Methods 0.000 title claims abstract description 69
- 230000001360 synchronised effect Effects 0.000 claims description 23
- 230000006854 communication Effects 0.000 claims description 17
- 238000004891 communication Methods 0.000 claims description 17
- 230000005540 biological transmission Effects 0.000 claims description 14
- 238000004364 calculation method Methods 0.000 claims description 12
- 238000004458 analytical method Methods 0.000 claims description 6
- 230000001934 delay Effects 0.000 claims description 5
- 238000002474 experimental method Methods 0.000 claims description 5
- 238000007619 statistical method Methods 0.000 claims description 5
- 230000003111 delayed effect Effects 0.000 claims description 4
- 230000001960 triggered effect Effects 0.000 claims description 4
- 238000005516 engineering process Methods 0.000 abstract description 5
- 238000010586 diagram Methods 0.000 description 3
- 230000007547 defect Effects 0.000 description 2
- 239000007787 solid Substances 0.000 description 2
- 230000007175 bidirectional communication Effects 0.000 description 1
- 230000006835 compression Effects 0.000 description 1
- 238000007906 compression Methods 0.000 description 1
- 238000005538 encapsulation Methods 0.000 description 1
- 239000000284 extract Substances 0.000 description 1
- 238000004904 shortening Methods 0.000 description 1
Images
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N21/00—Selective content distribution, e.g. interactive television or video on demand [VOD]
- H04N21/60—Network structure or processes for video distribution between server and client or between remote clients; Control signalling between clients, server and network components; Transmission of management data between server and client, e.g. sending from server to client commands for recording incoming content stream; Communication details between server and client
- H04N21/63—Control signaling related to video distribution between client, server and network components; Network processes for video distribution between server and clients or between remote clients, e.g. transmitting basic layer and enhancement layers over different transmission paths, setting up a peer-to-peer communication via Internet between remote STB's; Communication protocols; Addressing
- H04N21/64—Addressing
- H04N21/6405—Multicasting
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N21/00—Selective content distribution, e.g. interactive television or video on demand [VOD]
- H04N21/40—Client devices specifically adapted for the reception of or interaction with content, e.g. set-top-box [STB]; Operations thereof
- H04N21/43—Processing of content or additional data, e.g. demultiplexing additional data from a digital video stream; Elementary client operations, e.g. monitoring of home network or synchronising decoder's clock; Client middleware
- H04N21/438—Interfacing the downstream path of the transmission network originating from a server, e.g. retrieving encoded video stream packets from an IP network
- H04N21/4383—Accessing a communication channel
- H04N21/4384—Accessing a communication channel involving operations to reduce the access time, e.g. fast-tuning for reducing channel switching latency
Landscapes
- Engineering & Computer Science (AREA)
- Multimedia (AREA)
- Signal Processing (AREA)
- Data Exchanges In Wide-Area Networks (AREA)
Abstract
本发明公开了一种在快速频道切换时预先发送加入组播请求的方法和系统,为了克服现有快速频道切换技术中单播与组播切换机制未考虑数据设备处理加入组播请求的处理时间开销,导致快速频道切换服务器浪费处理能力的缺点,考虑在频道快速切换过程中预先发送加入组播请求的时间,从而缩短服务器发送单播码流的时间,节约处理能力,降低部署成本。
Description
技术领域
本发明涉及通信领域,具体涉及一种在快速频道切换时预先发送加入组播请求的方法和系统。
背景技术
数字视频编码技术普遍采用帧间编码来提高压缩率,这就导致解码端必须接收到I帧(Intra Frame,帧内编码帧)才能开始正确显示视频画面。在IPTV中倾向于采用组播技术传输直播码流,所有终端都共同接收同样的一路码流。当终端进行频道切换时,其开始接收直播码流的时刻是随机的,通常需要等待一段时间才能接收到I帧并显示视频画面,这严重影响了IPTV的频道切换速度。
已经有多种快速频道切换(Fast Channel Change,FCC)方案用于提升IPTV的频道切换速度,目前的主流方案是采用快速频道切换服务器(Fast ChannelChange Server,FCC Server或FCC服务器)对频道码流进行缓存,在频道切换时采用单播方式向终端快速发送以I帧开头的码流,终端接收后迅速解码显示视频画面,随后FCC Server停止发送单播码流,终端开始使用组播码流进行解码。
在上述方案中,FCC Server停止发送单播码流和终端开始使用组播码流解码的切换(后续简称为“单播与组播切换”)时机非常关键,过早切换可能接收不到足够的单播数据,无法与组播数据衔接,导致终端播放的视频画面受损影响用户体验;而过晚切换虽然不必担心单播与组播数据的衔接,但FCC Server要发送较长时间的单播码流,无形中浪费了FCC Server的处理能力,增加了部署成本。
本文随后部分将支持快速频道切换的终端称为快速频道切换客户端(FastChannel Change Client,FCC Client或FCC客户端),在不致引起混淆的情况下直接简称为“客户端”,与此对应,快速频道切换服务器可被简称为“服务器”。
目前,可以由服务器以较高速度发送单播码流,在单播码流与组播码流同步(即实现衔接)时通知客户端请求加入组播组,客户端在接收到组播码流之后通知服务器停止发送单播码流。在实际的IPTV承载网中,数据设备处理加入组播组的请求需要消耗一定的时间,这就意味着客户端从发送加入组播请求到接收到组播码流之间存在延时间隔,这个时间短则300ms,长则700ms甚至更长,而上述切换机制并未考虑这个时间开销,则在单播与组播码流同步之后服务器还要继续发送数百毫秒的单播码流直到客户端真正收到组播码流,这显然浪费了服务能力。
在IETF(Internet Engineering Task Force互联网工程任务组)草案draft-ietf-avt-rapid-acquisition-for-rtp-17中,服务器可以计算出客户端请求加入组播组的最早时间并传递给客户端,客户端可以参考这个数据自行确定请求加入组播组的时间,至于如何得到“请求加入组播组的最早时间”的数据以及客户端如何使用这个数据,该文档并未给出实质性的说明。
发明内容
有鉴于此,本发明的主要目的在于提供一种在快速频道切换时预先发送加入组播请求的方法和系统,以缩短服务器发送单播码流的时间,节约处理能力。
为达到上述目的,本发明的技术方案是这样实现的:
在快速频道切换时预先发送加入组播请求的方法,该方法包括:
搜集数据设备处理加入组播请求的处理时间开销,计算单播与组播码流同步的时间,计算客户端预先发出加入组播请求的时刻。
所述搜集方法为以下至少之一;并且在获得多个不同的数值时,采用包括取最小值或平均值在内的统计学方法得到单一的数值,作为组播请求处理延时:
实时统计;客户端在正常工作时,计算其自身每次从发送加入组播请求到接收到组播码流之间的时间间隔;
实验分析;使用支持组播功能的网络主机进行实验,测量其从发送加入组播请求到接收到组播码流之间的时间间隔;
经验估算;综合包括历史数据、实验结果、设备型号、网络架构在内的因素,进行合理估计;
所述计算单播与组播码流同步的时间的方法为:
TSync=PDif/(RUc-RMc) 公式1
上式中,TSync为估算的单播与组播码流同步的时间,PDif为某一时刻服务器已发送的单播媒体包和其已接收的组播媒体包之间相隔的数据量,RUc为服务器发送单播码流的平均码率,RMc为组播码流的平均码率;
将公式1左边的除数和被除数同时除以RMc,得到如下等价公式:
TSync=TDif/(αUc-1) 公式2
上式中,TSync为估算的单播与组播码流同步的时间,TDif为某媒体包从被接收到被发送之间的时间间隔,αUc为单播码率相对于组播码率的比例;
所述计算客户端预先发出加入组播请求的时刻的方法为:
TReqMc=TSync-TMcDly 公式3
上式中,TReqMc为客户端预先发出加入组播请求的相对时间,TSync为单播与组播码流同步时间,TMcDly为组播请求处理延时。
在快速频道切换时预先发送加入组播请求的方法,该方法包括:
将组播请求处理延时通知到服务器,服务器计算客户端预先发送加入组播请求的时间,服务器控制客户端预先发出加入组播请求。
所述通知的方法为:由客户端保存组播请求处理延时数值,通过通讯链路发送给服务器;将组播请求处理延时作为服务器的配置参数;
所述计算客户端预先发送加入组播请求的时间的方法为:
TReqMc=TSync-TMcDly 公式3
上式中,TReqMc为客户端预先发出加入组播请求的相对时间,TSync为单播与组播码流同步时间,TMcDly为组播请求处理延时;
所述服务器控制客户端预先发出加入组播请求的方法为:
服务器将计算得到的预先加入组播组的时刻通过通讯链路通知给客户端,客户端在预定的时刻发出加入组播请求;或者,
服务器在预先加入组播组的时刻到达时通知客户端,客户端收到通知后立即发出加入组播请求。
在快速频道切换时预先发送加入组播请求的方法,该方法包括:
将组播请求处理延时通知到客户端,服务器计算单播与组播码流同步的时间,客户端预先发送加入组播请求。
所述将组播请求处理延时通知到客户端的过程中,客户端直接保存结果;或者,将组播请求处理延时作为客户端的配置参数;
所述服务器计算单播与组播码流同步的时间的方法为:
TSync=PDif/(RUc-RMc) 公式1
上式中,TSync为估算的单播与组播码流同步的时间,PDif为一时刻服务器已发送的单播媒体包和其已接收的组播媒体包之间相隔的数据量,RUc为服务器发送单播码流的平均码率,RMc为组播码流的平均码率;
将公式1左边的除数和被除数同时除以RMc,得到如下等价公式:
TSync=TDif/(αUc-1) 公式2
上式中,TSync为估算的单播与组播码流同步的时间,TDif为媒体包从被接收到被发送之间的时间间隔,αUc为单播码率相对于组播码率的比例;
所述客户端预先发送加入组播请求的方法为:
服务器将单播与组播码流同步时间的计算结果通过通讯链路发送给客户端;客户端计算预先发出加入组播请求的时间,并在预先发出加入组播请求的时刻到达时发出加入组播请求。
在快速频道切换时预先发送加入组播请求的系统,该系统包括搜集单元、计算单元;其中,
所述搜集单元,用于搜集数据设备处理加入组播请求的处理时间开销;
所述计算单元,用于计算单播与组播码流同步的时间,计算客户端预先发出加入组播请求的时刻。
所述搜集单元在进行所述搜集时,采用的搜集方法为以下至少之一;并且在获得多个不同的数值时,采用包括取最小值或平均值在内的统计学方法得到单一的数值,作为组播请求处理延时:
实时统计;在客户端正常工作时,计算客户端每次从发送加入组播请求到接收到组播码流之间的时间间隔;
实验分析;使用支持组播功能的网络主机进行实验,测量其从发送加入组播请求到接收到组播码流之间的时间间隔;
经验估算;综合包括历史数据、实验结果、设备型号、网络架构在内的因素,进行合理估计;
所述计算单元在计算单播与组播码流同步的时间时,用于:
TSync=PDif/(RUc-RMc) 公式1
上式中,TSync为估算的单播与组播码流同步的时间,PDif为一时刻服务器已发送的单播媒体包和其已接收的组播媒体包之间相隔的数据量,RUc为服务器发送单播码流的平均码率,RMc为组播码流的平均码率;
将公式1左边的除数和被除数同时除以RMc,得到如下等价公式:
TSync=TDif/(αUc-1) 公式2
上式中,TSync为估算的单播与组播码流同步的时间,TDif为媒体包从被接收到被发送之间的时间间隔,αUc为单播码率相对于组播码率的比例;
所述计算单元在计算客户端预先发出加入组播请求的时刻时,用于:
TReqMc=TSync-TMcDly 公式3
上式中,TReqMc为客户端预先发出加入组播请求的相对时间,TSync为单播与组播码流同步时间,TMcDly为组播请求处理延时。
在快速频道切换时预先发送加入组播请求的系统,该系统包括通知单元、服务器、客户端;其中,
所述通知单元,用于将组播请求处理延时通知到服务器;
所述服务器,用于计算客户端预先发送加入组播请求的时间,并且控制客户端预先发出加入组播请求。
所述通知单元进行所述通知时,用于:触发客户端保存组播请求处理延时数值,通过通讯链路发送给服务器;将组播请求处理延时作为服务器的配置参数;
所述服务器计算客户端预先发送加入组播请求的时间时,用于:
TReqMc=TSync-TMcDly 公式3
上式中,TReqMc为客户端预先发出加入组播请求的相对时间,TSync为单播与组播码流同步时间,TMcDly为组播请求处理延时;
所述服务器控制客户端预先发出加入组播请求时,用于:
将计算得到的预先加入组播组的时刻通过通讯链路通知给客户端,触发客户端在预定的时刻发出加入组播请求;或者,
在预先加入组播组的时刻到达时通知客户端,触发客户端在收到通知后立即发出加入组播请求。
在快速频道切换时预先发送加入组播请求的系统,该系统包括通知单元、服务器、客户端;其中,
所述通知单元,用于将组播请求处理延时通知到客户端;
所述服务器,用于计算单播与组播码流同步的时间;
所述客户端,用于预先发送加入组播请求。
所述通知单元将组播请求处理延时通知到客户端的过程中,客户端用于直接保存结果;或者,将组播请求处理延时作为客户端的配置参数;
所述服务器计算单播与组播码流同步的时间时,用于:
TSync=PDif/(RUc-RMc) 公式1
上式中,TSync为估算的单播与组播码流同步的时间,PDif为一时刻服务器已发送的单播媒体包和其已接收的组播媒体包之间相隔的数据量,RUc为服务器发送单播码流的平均码率,RMc为组播码流的平均码率;
将公式1左边的除数和被除数同时除以RMc,得到如下等价公式:
TSync=TDif/(αUc-1) 公式2
上式中,TSync为估算的单播与组播码流同步的时间,TDif为媒体包从被接收到被发送之间的时间间隔,αUc为单播码率相对于组播码率的比例;
所述客户端预先发送加入组播请求时,用于:
在服务器将单播与组播码流同步时间的计算结果通过通讯链路发送给客户端后,计算预先发出加入组播请求的时间,并在预先发出加入组播请求的时刻到达时发出加入组播请求。
可见,本发明方法和系统,克服了现有快速频道切换技术中单播与组播切换机制未考虑数据设备处理加入组播请求的处理时间开销,导致快速频道切换服务器浪费处理能力的缺点,考虑在频道快速切换过程中预先发送加入组播请求的时间,从而缩短服务器发送单播码流的时间,节约处理能力,降低部署成本。
附图说明
图1为本发明预先发送加入组播请求的时间的计算方法示意图;
图2为本发明计算在频道快速切换过程中预先发送加入组播请求的时间的流程简图;
图3为本发明一实施例的在快速频道切换过程中预先发送加入组播请求的流程简图;
图4为本发明另一实施例的在快速频道切换过程中预先发送加入组播请求的流程简图;
图5为本发明提供的两个实施例的部署模型示意图;
图6为本发明实施例一快速频道切换过程的流程图;
图7为本发明实施例二快速频道切换过程的流程图。
具体实施方式
为了克服现有快速频道切换技术中单播与组播切换机制未考虑数据设备处理加入组播请求的处理时间开销,导致快速频道切换服务器浪费处理能力的缺点,可以考虑在频道快速切换过程中预先发送加入组播请求的时间,从而缩短服务器发送单播码流的时间,节约处理能力,降低部署成本。
本发明所述计算在频道快速切换过程中预先发送加入组播请求的时间的方法如下:
第一步、搜集数据设备处理加入组播请求的处理时间开销(以后简称为“组播请求处理延时”),存在多种搜集方式,包括但不限于:
实时统计;客户端在正常工作时,计算其自身每次从发送加入组播请求到接收到组播码流之间的时间间隔;
实验分析;使用支持组播功能的网络主机进行实验,测量其从发送加入组播请求到接收到组播码流之间的时间间隔;
经验估算;综合历史数据、实验结果、设备型号、网络架构等各种因素,进行合理的估计。
上述方式可单独使用也可组合使用,如果获得多个不同的数值,则采用取最小值或平均值等统计学方法得到一个单一的数值,作为组播请求处理延时。
第二步、计算单播与组播码流同步的时间;
服务器持续接收组播码流并进行缓存,当客户端向服务器请求快速频道切换服务时,服务器将从缓冲区中取出以I帧开头的媒体包采用单播方式发送给客户端。
采用如下公式计算出单播与组播码流同步的时间:
TSync=PDif/(RUc-RMc) 公式1
上式中,TSync为估算的单播与组播码流同步的时间,PDif为某个时刻服务器已发送的单播媒体包和其已接收的组播媒体包之间相隔的数据量,RUc为服务器发送单播码流的平均码率,RMc为组播码流的平均码率。
将公式1左边的除数和被除数同时除以RMc,可得到如下等价公式:
TSync=TDif/(αUc-1) 公式2
上式中,TSync为估算的单播与组播码流同步的时间,TDif为某个媒体包从被接收到被发送之间的时间间隔,αUc为单播码率相对于组播码率的比例,即:
αUc=RUc/RMc
本步骤得到的结果是一个相对时间:对于公式1,其计时起点是进行计算的时刻;对于公式2,其计时起点是被选择用于计算的媒体包被发送的时刻。
第三步、计算客户端预先发出加入组播请求的时刻;
采用下式进行计算:
TReqMc=TSync-TMcDly 公式3
上式中,TReqMc为客户端预先发出加入组播请求的相对时间,TSync为单播与组播码流同步时间,TMcDly为组播请求处理延时。
可由服务器、客户端或其它设备完成上述步骤二和步骤三的计算,只要将计算所需参数传递给相应的设备即可。公式1、公式2和公式3还可表示为绝对时间形式,并可能还有其它的等价形式。
本发明所述在快速频道切换过程中预先发送加入组播请求的第一种方法如下:
第一步、将组播请求处理延时通知到服务器,有多种方式可供选择,包括但不限于:
由客户端保存组播请求处理延时数值,通过通讯链路发送给服务器;
将组播请求处理延时作为服务器的一个配置参数。
第二步、服务器计算客户端预先发送加入组播请求的时间,具体方法已在本文前面相应部分给出。
第三步、服务器控制客户端预先发出加入组播请求,有几种不同的方式,包括但不限于:
服务器将计算得到的预先加入组播组的时刻通过通讯链路通知给客户端,客户端在预定的时刻发出加入组播请求;或者,
服务器在预先加入组播组的时刻到达时通知客户端,客户端收到通知后立即发出加入组播请求。
本发明所述在快速频道切换过程中预先发送加入组播请求的第二种方法如下:
第一步、将组播请求处理延时通知到客户端,有多种方式可供选择,包括但不限于:
客户端直接保存结果,这适合于采用实时统计方式获取组播请求处理延时的情况;
将组播请求处理延时作为客户端的一个配置参数,这适合于采用实验分析或经验估算方式获取组播请求处理延时的情况。
第二步、服务器计算单播与组播码流同步的时间,具体过程参见本文前面给出的计算客户端预先发送加入组播请求的时间的方法的第二步。
第三步、客户端预先发送加入组播请求,这一步可分为三个子步骤:
服务器将单播与组播码流同步时间的计算结果通过通讯链路发送给客户端;
客户端计算预先发出加入组播请求的时间,具体过程参见本文前面给出的计算客户端预先发送加入组播请求的时间的方法的第三步;
客户端在预先发出加入组播请求的时刻到达时,发出加入组播请求。
下面结合附图对技术方案的实施作进一步的详细描述:
图1为本发明所述预先发送加入组播请求的时间的计算方法示意图:
其中,横轴t表示时间,纵轴p表示媒体包的发送进度。
直线101为组播码流的媒体包发送进度,相当于服务器对组播媒体包的接收缓存进度,其斜率对应公式1中的组播码流平均码率RMc。
直线102为服务器发出的单播码流的媒体包发送进度,其斜率对应公式1中的单播码流平均码率RUc。
在T1时刻,101和102对应的纵坐标差值就是该时刻服务器已发送的单播媒体包和其已接收的组播媒体包之间相隔的数据量,即图1中的PDif。
101和102在T3时刻相交,意味着单播与组播码流在T3时刻实现同步,而T3和T1的差值就对应于公式1中的TSync,对于101和102两条斜率已知的直线来说,可通过T1时刻两者的纵坐标差值计算出TSync,即公式1。
现在换个角度,假设服务器在T1时刻发送出某个单播媒体包,其发包进度对应于直线102在T1时刻的纵坐标,而直线101上与其纵坐标相同的点的横坐标T0就是该媒体包在组播码流中被发送的时刻,也就是服务器接收该媒体包的时刻,显然,T0和T1的差值就是公式2中的媒体包从被接收到被发送之间的时间间隔TDif。
分别位于101和102两条直线上且纵坐标相同的两个点的横坐标差值已知(即TDif),而直线101和直线102的斜率又已知,则通过数学运算可计算出两条直线交点的横坐标与T1的时间间隔TSync,即公式2。
假设组播请求处理延时为TMcDly,为了保证客户端在单播与组播码流同步时刚好接收到组播码流,则需要相对于TSync提前一段时间(在图1中的T2时刻)发出加入组播请求,而这个提前的时间长度就是TMcDly。
在图1中,通过公式1或公式2可计算出T1到T3之间的时间间隔TSync,又已知T2和T1之间的时间间隔TMcDly,则可通过公式3计算出T1到T3之间的时间间隔TReqMc。
单播与组播码流同步时间通常以秒计,组播请求处理延时则为数百毫秒,而媒体包的传输时间基本都在10毫秒的数量级,和前两者比较起来可以忽略不计,故本发明提出的计算方法忽略了媒体包在网络上的传输时间。
前述的在频道快速切换过程中预先发送加入组播请求的时间的操作思路,可以表示如图2所示的流程,该流程包括以下步骤:
步骤210:搜集数据设备处理加入组播请求的处理时间开销,该操作可以通过设置搜集单元实现。
步骤220:计算单播与组播码流同步的时间。
步骤230:计算客户端预先发出加入组播请求的时刻。
步骤220和步骤230中的操作可以通过设置计算单元实现。
前述的在快速频道切换过程中预先发送加入组播请求的操作思路,可以表示如图3或图4等所示的流程.
其中,图3所示流程包括以下步骤:
步骤310:将组播请求处理延时通知到服务器。
步骤320:服务器计算客户端预先发送加入组播请求的时间。
步骤330:服务器控制客户端预先发出加入组播请求。
图4所示流程则包括以下步骤:
步骤410:将组播请求处理延时通知到客户端。
步骤420:服务器计算单播与组播码流同步的时间。
步骤430:客户端预先发送加入组播请求。
图3和图4中的所述通知操作可以通知设置通知单元实现。
参见图5,图5为本发明提供的两个实施例的部署模型,其中所涉及到的实体主要有数据设备501、服务器502和客户端503,采用互联网组管理协议(Internet Group Managemet Protocol,IGMP)来支持组播。
服务器502可通过信道509向数据设备501发出IGMP报文以加入频道所在的组播组,而数据设备501则通过信道504向服务器502发送组播码流。
客户端503可通过信道505向数据设备501发出IGMP报文以加入频道所在的组播组,数据设备501则通过信道506向客户端503发送组播码流。
服务器502和客户端503之间通过RTCP建立双向通讯信道507用于与快速频道切换相关的消息通讯,服务器502通过信道508向客户端503发送缓存的单播码流。
信道504和信道506支持组播,其上码流均采用RTP封装,服务器502缓存后通过信道508发给客户端503的单播码流依然保持RTP封装,且不修改RTP序号字段。一旦客户端接收到的单播码流的RTP序号能和组播码流的RTP序号无缝衔接,则认为实现了单播与组播码流同步。
服务器502启动后即通过信道509向数据设备501发出IGMP报文,加入直播频道所在的组播组,并通过信道504持续接收媒体包进行缓存。
客户端503持续统计每次从发送加入组播请求到接收到组播码流之间的时间间隔,将其最小值或平均值作为组播请求处理延时。
参见图6,图6为实施例一快速频道切换过程的流程图,图中以虚线分隔的左右两侧分别为服务器和客户端的处理流程,纵向的实线箭头表示服务器或客户端各自的处理步骤的先后顺序,而横向的虚线箭头则给出了分别作为箭头起点和终点的服务器和客户端相应处理步骤的先后顺序。图6所示流程包括以下步骤:
步骤601、客户端向服务器请求快速频道切换服务,在请求消息中携带有组播请求处理延时数据;
步骤602、服务器接收客户端的快速频道切换请求,提取组播请求处理延时数据加以保存;
步骤603、服务器从I帧开始向客户端发送缓存的组播码流;
步骤604、机顶盒接收服务器发送的单播码流并加以显示;
步骤605、服务器计算预先发送加入组播请求的时间,并在相应时刻到达时通知客户端立即加入组播组;
步骤606、客户端向数据设备发出IGMP消息,请求加入组播组;
步骤607、客户端接收到组播码流,当单播与组播码流同步时切换到使用组播码流进行解码,并通知服务器停止发送单播码流;
步骤608、服务器停止发送单播码流。
参见图7,图7为实施例二快速频道切换过程的流程图,与图6一样以虚线分隔成左右两列,实线箭头和虚线箭头的含义也与图6一致。图7所示流程包括以下步骤:
步骤701、客户端向服务器请求快速频道切换服务;
步骤702、服务器接收客户端的快速频道切换请求,从I帧开始向客户端发送缓存的组播码流;
步骤703、客户端接收服务器发送的单播码流并加以显示;
步骤704、服务器计算单播与组播码流同步的时间,并将结果通知到客户端;
步骤705、客户端根据服务器提供的单播与组播码流同步时间,结合自身保存的组播请求处理延时,计算出预先发送加入组播请求的时间;
步骤706、客户端根据上一步骤的计算结果在相应时刻向数据设备发出IGMP报文,请求加入组播组;
步骤707、客户端接收到组播码流,当单播与组播码流同步时切换到使用组播码流进行解码,并通知服务器停止发送单播码流;
步骤708服务器停止发送单播码流。
综上所述可见,无论是方法还是系统,本发明实质上是根据组播请求处理延时控制客户端预先发送加入组播请求,这样当单播与组播同步时,客户端正好接收到组播码流,既保证了单播与组播码流在客户端的衔接,也减少了服务器发送单播码流的时间,从而降低了快速频道切换的部署成本。
以上所述,仅为本发明的较佳实施例而已,并非用于限定本发明的保护范围。
Claims (12)
1.在快速频道切换时预先发送加入组播请求的方法,其特征在于,该方法包括:
搜集数据设备处理加入组播请求的处理时间开销,计算单播与组播码流同步的时间,计算客户端预先发出加入组播请求的时刻。
2.根据权利要求1所述的方法,其特征在于,
所述搜集方法为以下至少之一;并且在获得多个不同的数值时,采用包括取最小值或平均值在内的统计学方法得到单一的数值,作为组播请求处理延时:
实时统计;客户端在正常工作时,计算其自身每次从发送加入组播请求到接收到组播码流之间的时间间隔;
实验分析;使用支持组播功能的网络主机进行实验,测量其从发送加入组播请求到接收到组播码流之间的时间间隔;
经验估算;综合包括历史数据、实验结果、设备型号、网络架构在内的因素,进行合理估计;
所述计算单播与组播码流同步的时间的方法为:
TSync=PDif/(RUc-RMc) 公式1
上式中,TSync为估算的单播与组播码流同步的时间,PDif为某一时刻服务器已发送的单播媒体包和其已接收的组播媒体包之间相隔的数据量,RUc为服务器发送单播码流的平均码率,RMc为组播码流的平均码率;
将公式1左边的除数和被除数同时除以RMc,得到如下等价公式:
TSync=TDif/(αUc-1) 公式2
上式中,TSync为估算的单播与组播码流同步的时间,TDif为某媒体包从被接收到被发送之间的时间间隔,αUc为单播码率相对于组播码率的比例;
所述计算客户端预先发出加入组播请求的时刻的方法为:
TReqMc=TSync-TMcDly 公式3
上式中,TReqMc为客户端预先发出加入组播请求的相对时间,TSync为单播与组播码流同步时间,TMcDly为组播请求处理延时。
3.在快速频道切换时预先发送加入组播请求的方法,其特征在于,该方法包括:
将组播请求处理延时通知到服务器,服务器计算客户端预先发送加入组播请求的时间,服务器控制客户端预先发出加入组播请求。
4.根据权利要求3所述的方法,其特征在于,
所述通知的方法为:由客户端保存组播请求处理延时数值,通过通讯链路发送给服务器;将组播请求处理延时作为服务器的配置参数;
所述计算客户端预先发送加入组播请求的时间的方法为:
TReqMc=TSync-TMcDly 公式3
上式中,TReqMc为客户端预先发出加入组播请求的相对时间,TSync为单播与组播码流同步时间,TMcDly为组播请求处理延时;
所述服务器控制客户端预先发出加入组播请求的方法为:
服务器将计算得到的预先加入组播组的时刻通过通讯链路通知给客户端,客户端在预定的时刻发出加入组播请求;或者,
服务器在预先加入组播组的时刻到达时通知客户端,客户端收到通知后立即发出加入组播请求。
5.在快速频道切换时预先发送加入组播请求的方法,其特征在于,该方法包括:
将组播请求处理延时通知到客户端,服务器计算单播与组播码流同步的时间,客户端预先发送加入组播请求。
6.根据权利要求5所述的方法,其特征在于,
所述将组播请求处理延时通知到客户端的过程中,客户端直接保存结果;或者,将组播请求处理延时作为客户端的配置参数;
所述服务器计算单播与组播码流同步的时间的方法为:
TSync=PDif/(RUc-RMc) 公式1
上式中,TSync为估算的单播与组播码流同步的时间,PDif为一时刻服务器已发送的单播媒体包和其已接收的组播媒体包之间相隔的数据量,RUc为服务器发送单播码流的平均码率,RMc为组播码流的平均码率;
将公式1左边的除数和被除数同时除以RMc,得到如下等价公式:
TSync=TDif/(αUc-1) 公式2
上式中,TSync为估算的单播与组播码流同步的时间,TDif为媒体包从被接收到被发送之间的时间间隔,αUc为单播码率相对于组播码率的比例;
所述客户端预先发送加入组播请求的方法为:
服务器将单播与组播码流同步时间的计算结果通过通讯链路发送给客户端;客户端计算预先发出加入组播请求的时间,并在预先发出加入组播请求的时刻到达时发出加入组播请求。
7.在快速频道切换时预先发送加入组播请求的系统,其特征在于,该系统包括搜集单元、计算单元;其中,
所述搜集单元,用于搜集数据设备处理加入组播请求的处理时间开销;
所述计算单元,用于计算单播与组播码流同步的时间,计算客户端预先发出加入组播请求的时刻。
8.根据权利要求7所述的系统,其特征在于,
所述搜集单元在进行所述搜集时,采用的搜集方法为以下至少之一;并且在获得多个不同的数值时,采用包括取最小值或平均值在内的统计学方法得到单一的数值,作为组播请求处理延时:
实时统计;在客户端正常工作时,计算客户端每次从发送加入组播请求到接收到组播码流之间的时间间隔;
实验分析;使用支持组播功能的网络主机进行实验,测量其从发送加入组播请求到接收到组播码流之间的时间间隔;
经验估算;综合包括历史数据、实验结果、设备型号、网络架构在内的因素,进行合理估计;
所述计算单元在计算单播与组播码流同步的时间时,用于:
TSync=PDif/(RUc-RMc) 公式1
上式中,TSync为估算的单播与组播码流同步的时间,PDif为一时刻服务器已发送的单播媒体包和其已接收的组播媒体包之间相隔的数据量,RUc为服务器发送单播码流的平均码率,RMc为组播码流的平均码率;
将公式1左边的除数和被除数同时除以RMc,得到如下等价公式:
TSync=TDif/(αUc-1) 公式2
上式中,TSync为估算的单播与组播码流同步的时间,TDif为媒体包从被接收到被发送之间的时间间隔,αUc为单播码率相对于组播码率的比例;
所述计算单元在计算客户端预先发出加入组播请求的时刻时,用于:
TReqMc=TSync-TMcDly 公式3
上式中,TReqMc为客户端预先发出加入组播请求的相对时间,TSync为单播与组播码流同步时间,TMcDly为组播请求处理延时。
9.在快速频道切换时预先发送加入组播请求的系统,其特征在于,该系统包括通知单元、服务器、客户端;其中,
所述通知单元,用于将组播请求处理延时通知到服务器;
所述服务器,用于计算客户端预先发送加入组播请求的时间,并且控制客户端预先发出加入组播请求。
10.根据权利要求9所述的系统,其特征在于,
所述通知单元进行所述通知时,用于:触发客户端保存组播请求处理延时数值,通过通讯链路发送给服务器;将组播请求处理延时作为服务器的配置参数;
所述服务器计算客户端预先发送加入组播请求的时间时,用于:
TReqMc=TSync-TMcDly 公式3
上式中,TReqMc为客户端预先发出加入组播请求的相对时间,TSync为单播与组播码流同步时间,TMcDly为组播请求处理延时;
所述服务器控制客户端预先发出加入组播请求时,用于:
将计算得到的预先加入组播组的时刻通过通讯链路通知给客户端,触发客户端在预定的时刻发出加入组播请求;或者,
在预先加入组播组的时刻到达时通知客户端,触发客户端在收到通知后立即发出加入组播请求。
11.在快速频道切换时预先发送加入组播请求的系统,其特征在于,该系统包括通知单元、服务器、客户端;其中,
所述通知单元,用于将组播请求处理延时通知到客户端;
所述服务器,用于计算单播与组播码流同步的时间;
所述客户端,用于预先发送加入组播请求。
12.根据权利要求11所述的系统,其特征在于,
所述通知单元将组播请求处理延时通知到客户端的过程中,客户端用于直接保存结果;或者,将组播请求处理延时作为客户端的配置参数;
所述服务器计算单播与组播码流同步的时间时,用于:
TSync=PDif/(RUc-RMc)公式1
上式中,TSync为估算的单播与组播码流同步的时间,PDif为一时刻服务器已发送的单播媒体包和其已接收的组播媒体包之间相隔的数据量,RUc为服务器发送单播码流的平均码率,RMc为组播码流的平均码率;
将公式1左边的除数和被除数同时除以RMc,得到如下等价公式:
TSync=TDif/(αUc-1) 公式2
上式中,TSync为估算的单播与组播码流同步的时间,TDif为媒体包从被接收到被发送之间的时间间隔,αUc为单播码率相对于组播码率的比例;
所述客户端预先发送加入组播请求时,用于:
在服务器将单播与组播码流同步时间的计算结果通过通讯链路发送给客户端后,计算预先发出加入组播请求的时间,并在预先发出加入组播请求的时刻到达时发出加入组播请求。
Priority Applications (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201110045498XA CN102651823A (zh) | 2011-02-24 | 2011-02-24 | 在快速频道切换时预先发送加入组播请求的方法和系统 |
PCT/CN2011/078939 WO2012113212A1 (zh) | 2011-02-24 | 2011-08-25 | 在快速频道切换时预先发送加入组播请求的方法和系统 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201110045498XA CN102651823A (zh) | 2011-02-24 | 2011-02-24 | 在快速频道切换时预先发送加入组播请求的方法和系统 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN102651823A true CN102651823A (zh) | 2012-08-29 |
Family
ID=46693705
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201110045498XA Pending CN102651823A (zh) | 2011-02-24 | 2011-02-24 | 在快速频道切换时预先发送加入组播请求的方法和系统 |
Country Status (2)
Country | Link |
---|---|
CN (1) | CN102651823A (zh) |
WO (1) | WO2012113212A1 (zh) |
Cited By (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN104811790A (zh) * | 2015-05-14 | 2015-07-29 | 国网黑龙江省电力有限公司信息通信公司 | 一种结合单播和组播以加快数字电视机顶盒换台速度的方法 |
CN105100890A (zh) * | 2015-08-31 | 2015-11-25 | 深圳市茁壮网络股份有限公司 | 一种多媒体节目播放方法、装置及机顶盒 |
CN106937155A (zh) * | 2015-12-29 | 2017-07-07 | 北京华为数字技术有限公司 | 接入设备、因特网协议电视iptv系统和频道切换方法 |
CN109151497A (zh) * | 2018-08-06 | 2019-01-04 | 广州虎牙信息科技有限公司 | 一种连麦直播方法、装置、电子设备及存储介质 |
Families Citing this family (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN109756745B (zh) * | 2018-12-06 | 2021-06-15 | 北京东方广视科技股份有限公司 | 一种直播流数据的发送方法、直播加速服务器及终端 |
CN110505500A (zh) * | 2019-08-06 | 2019-11-26 | 咪咕视讯科技有限公司 | 一种缓存数据发送处理方法及装置 |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101267538A (zh) * | 2007-03-15 | 2008-09-17 | 华为技术有限公司 | 一种切换网络电视频道的方法和系统以及缓存实体 |
US20100115566A1 (en) * | 2008-10-30 | 2010-05-06 | Raziel Haimi-Cohen | Fast Channel Change Request Processing |
CN101753973A (zh) * | 2008-12-12 | 2010-06-23 | 华为技术有限公司 | 一种频道切换方法、装置和系统 |
CN101924910A (zh) * | 2009-06-12 | 2010-12-22 | 华为技术有限公司 | 频道切换过程中数据发送方法及接收方法和装置 |
-
2011
- 2011-02-24 CN CN201110045498XA patent/CN102651823A/zh active Pending
- 2011-08-25 WO PCT/CN2011/078939 patent/WO2012113212A1/zh active Application Filing
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101267538A (zh) * | 2007-03-15 | 2008-09-17 | 华为技术有限公司 | 一种切换网络电视频道的方法和系统以及缓存实体 |
US20100115566A1 (en) * | 2008-10-30 | 2010-05-06 | Raziel Haimi-Cohen | Fast Channel Change Request Processing |
CN101753973A (zh) * | 2008-12-12 | 2010-06-23 | 华为技术有限公司 | 一种频道切换方法、装置和系统 |
CN101924910A (zh) * | 2009-06-12 | 2010-12-22 | 华为技术有限公司 | 频道切换过程中数据发送方法及接收方法和装置 |
Non-Patent Citations (1)
Title |
---|
Y.K.WANG,J.DAI,J.FENG,Z.X.ZOU: "Improved Rapid Acquisition of Multicast Sessions", 《INTERNET ENGINEERING TASK FORCE,IETF》 * |
Cited By (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN104811790A (zh) * | 2015-05-14 | 2015-07-29 | 国网黑龙江省电力有限公司信息通信公司 | 一种结合单播和组播以加快数字电视机顶盒换台速度的方法 |
CN105100890A (zh) * | 2015-08-31 | 2015-11-25 | 深圳市茁壮网络股份有限公司 | 一种多媒体节目播放方法、装置及机顶盒 |
CN105100890B (zh) * | 2015-08-31 | 2018-06-26 | 深圳市茁壮网络股份有限公司 | 一种多媒体节目播放方法、装置及机顶盒 |
CN106937155A (zh) * | 2015-12-29 | 2017-07-07 | 北京华为数字技术有限公司 | 接入设备、因特网协议电视iptv系统和频道切换方法 |
CN109151497A (zh) * | 2018-08-06 | 2019-01-04 | 广州虎牙信息科技有限公司 | 一种连麦直播方法、装置、电子设备及存储介质 |
CN109151497B (zh) * | 2018-08-06 | 2021-09-21 | 广州虎牙信息科技有限公司 | 一种连麦直播方法、装置、电子设备及存储介质 |
Also Published As
Publication number | Publication date |
---|---|
WO2012113212A1 (zh) | 2012-08-30 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN102651823A (zh) | 在快速频道切换时预先发送加入组播请求的方法和系统 | |
WO2018177165A1 (zh) | 一种网络推流质量的优化方法及优化系统 | |
CN108696772B (zh) | 一种实时视频的传输方法及装置 | |
WO2018133478A1 (zh) | 一种流媒体传输优化方法及装置 | |
US10554707B2 (en) | Method and system for self-detection and efficient transmission of real-time popular recorded over-the-top streams over communication networks | |
CN108696773B (zh) | 一种实时视频的传输方法及装置 | |
US10645447B2 (en) | Fast channel change method and server, and IPTV system | |
KR101405793B1 (ko) | 다수의 단말기의 유니캐스트 송신으로부터의 점진적인 천이를 제공하는 제어기 | |
JP2005124193A5 (zh) | ||
US9374410B2 (en) | System and method for seamless switchover between unicast and multicast sources of over-the-top streams | |
EP2301194B1 (en) | Control of content delivery in broadcast/multicast networks | |
CN101588494B (zh) | 一种媒体流处理方法及通讯系统以及相关设备 | |
CN107566918B (zh) | 一种视频分发场景下的低延时取流秒开方法 | |
CN102970585B (zh) | 一种流媒体快速频道切换的方法 | |
WO2014183674A1 (zh) | 一种媒体播放方法及装置、机顶盒 | |
US9009765B2 (en) | Method and server for fast channel change in unicast-multicast IPTV networks | |
EP2451157A1 (en) | Method, apparatus and system for reducing media delay | |
CN104144359A (zh) | Iptv组播频道快速切换的方法及系统 | |
WO2014154102A1 (zh) | 越顶ott直播的方法、装置及系统 | |
CN103347207B (zh) | 一种iptv组播频道快速切换的方法 | |
US20140040495A1 (en) | System and method for low delay fast update for video streaming | |
CN116156109A (zh) | 一种视频监控播放方法和系统 | |
CN105791987A (zh) | 媒体数据播放的方法及终端 | |
JP2021535658A (ja) | ビデオ・ストリーム切り換えを実装するための方法、装置およびシステム | |
CN108476333A (zh) | 媒体流的邻接流送 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
WD01 | Invention patent application deemed withdrawn after publication | ||
WD01 | Invention patent application deemed withdrawn after publication |
Application publication date: 20120829 |