流媒体的业务切换方法、播放设备及服务器转让专利

申请号 : CN200810090367.1

文献号 : CN101547108B

文献日 :

基本信息:

PDF:

法律信息:

相似专利:

发明人 : 张毅冯江平尹月静许志勇

申请人 : 华为技术有限公司

摘要 :

本发明的实施例公开了一种直播流媒体的业务单播和多播切换方法、播放设备及服务器,涉及流媒体技术领域,解决了现有直播流媒体业务在多播和单播之间切换会出现节目滞后的问题。本发明实施例通过在接收单播业务时采用快进,保证在切换到多播业务后追赶上直播进度,从而解决了节目滞后的问题。本发明实施例主要用在直播流媒体业务的单播和多播之间的切换中。

权利要求 :

1.一种在直播流媒体节目中进行单播和多播切换方法,其特征在于包括:从接收多播服务器的直播节目内容,切换到接收单播服务器的时移节目内容;

请求单播服务器以快进速度播放时移节目内容;

接收单播服务器以快进速度播放的时移节目内容;

接收时移节目内容追赶上直播节目内容的指令;

请求单播服务器以正常速度播放直播节目内容;

接收单播服务器以正常速度播放的直播节目内容。

2.根据权利要求1所述的在直播流媒体节目中进行单播和多播切换方法,其特征在于,在请求单播服务器以快进速度播放时移节目内容之前,该方法还包括:根据时移节目内容进度与直播节目内容进度的时间差计算快进速度。

3.根据权利要求1所述的在直播流媒体节目中进行单播和多播切换方法,其特征在于,所述快进速度由单播服务器根据时移节目内容进度与直播节目内容进度的时间差计算得出。

4.根据权利要求1所述的在直播流媒体节目中进行单播和多播切换方法,其特征在于,所述以快进速度播放的方式包括:按刻度方式播放或者按速度方式播放。

5.一种流媒体播放设备,其特征在于包括:接收单元,用于接收多播服务器的直播节目内容;

控制单元,用于控制接收单元切换到接收单播服务器的时移节目内容;

发送单元,用于向单播服务器发送以快进速度播放时移节目内容的请求;

所述接收单元还用于接收单播服务器以快进速度播放的时移节目内容;

所述接收单元接收到时移节目内容追赶上直播节目内容的指令后,所述发送单元向单播服务器发送以正常速度播放直播节目内容的请求;所述接收单元还用于接收单播服务器以正常速度播放的直播节目内容。

6.根据权利要求5所述的流媒体播放设备,其特征在于还包括:计算单元,用于根据时移节目内容进度与直播节目内容进度的时间差计算快进速度。

7.一种在直播流媒体节目中进行单播和多播切换方法,其特征在于包括:从接收多播服务器的直播节目内容,切换到接收单播服务器的时移节目内容;

检测到多播服务器的业务质量恢复正常;

请求单播服务器以快进速度播放时移节目内容;

接收单播服务器以快进速度播放的时移节目内容;

接收到时移节目内容追赶上直播节目内容的指令;

从接收单播服务器直播节目内容切换到接收多播服务器的直播节目内容。

8.根据权利要求7所述的在直播流媒体节目中进行单播和多播切换方法,其特征在于,在请求单播服务器以快进速度播放时移节目内容之前,该方法还包括:根据时移节目内容进度与直播节目内容进度的时间差计算快进速度。

9.根据权利要求7所述的在直播流媒体节目中进行单播和多播切换方法,其特征在于,所述快进速度由单播服务器根据时移节目内容进度与直播节目内容进度的时间差计算得出。

10.根据权利要求7所述的在直播流媒体节目中进行单播和多播切换方法,其特征在于,所述以快进速度播放的方式包括:按刻度方式播放或者按速度方式播放。

11.一种流媒体播放设备,其特征在于包括:接收单元,用于接收多播服务器的直播节目内容;

控制单元,用于控制接收单元切换到接收单播服务器的时移节目内容;

检测单元,用于检测多播服务器的业务质量;

发送单元,用于在检测到多播服务器的业务质量恢复正常后,向单播服务器发送以快进速度播放时移节目内容的请求;

所述接收单元还用于接收单播服务器以快进速度播放的时移节目内容;

所述接收单元接收到时移节目内容追赶上直播节目内容的指令后,所述控制单元控制接收单元从接收单播服务器直播节目内容切换到接收多播服务器的直播节目内容。

12.根据权利要求11所述的流媒体播放设备,其特征在于还包括:计算单元,用于根据时移节目内容进度与直播节目内容进度的时间差计算快进速度。

13.一种单播服务器,其特征在于包括:接收单元,用于接收以快进速度播放时移节目内容的请求;

直播单元,用于根据所述请求以快进速度播放时移节目内容;

监控单元,用于监控时移节目内容是否追赶上直播节目内容;

发送单元,用于在时移节目内容追赶上直播节目内容时,发送时移节目内容追赶上直播节目内容的指令。

14.根据权利要求13所述的单播服务器,其特征在于还包括:计算单元,用于根据时移节目内容进度与直播节目内容进度的时间差计算快进速度。

说明书 :

流媒体的业务切换方法、播放设备及服务器

技术领域

[0001] 本发明涉及流媒体技术领域,特别涉及在流媒体单播业务与多播业务之间进行切换的方法,采用该切换方法的流媒体播放设备,提供该切换服务的服务器。 背景技术
[0002] 流媒体业务是指使用流式传输技术传输连续的多媒体文件,包括音频、视频和动画等。把连续的影像和声音等媒体文件经过压缩处理后存储在网络服务器上,客户端在播放前并不需要下载整个媒体文件,而是先下载一部分多媒体信息到缓存区,然后在播放缓存区中信息的同时,连续不断地将媒体文件的剩余部分从服务器下载到客户端。从而避免了用户在播放媒体文件的时候要花费一段时间把完整的媒体文件下载到客户端。 [0003] 为了在服务器和客户端之间传输流媒体,IETF制定了对流媒体进行实时控制的实时流媒体协议(RTSP)。该RTSP协议采用客户端/服务器模式,用于在客户端和服务器端建立和协商实时流会话,并提供了对流媒体的播放进行各种控制命令,如:播放、暂停、快进、快退等操作。目前主要有两种业务支持流媒体播放:组播和广播业务(MBMS)和分组交换流业务(PSS)。
[0004] MBMS业务是基于WCDMA/GSM分组网,通过增加一些新的功能实体,如广播组播业务中心(BM-SC),对已有的分组域功能实体增加MBMS功能,如SGSN、GGSN、RNC和UE等。并且MBMS通过共享一条传输链路,把多媒体数据广播或多播到移动终端。通过这种点到多点的传送多媒体的发送机制,其消耗的资源与用户数增长无关,节省了传输链路资源。 [0005] PSS业务通过单播方式提供直播内容,该业务基本沿用了以太网流媒体的技术。由于PSS是单播方式进行直播流媒体内容,如果服务器支持直播节目的时移,那么就可以通过缓冲区存储部分直播内容,这样就允许用户对接入以前的内容进行时移操作,用户可以收看比直播节目稍早些的节目内容。
[0006] 由于MBMS能够较好节约传输链路资源,所以一般情况下优选MBMS业务, 但由于MBMS业务目前的覆盖率较低,而PSS网络覆盖率相对较好,因此在MBMS覆盖不到或覆盖效果不好的区域,就可切换到PSS方式接收直播内容。
[0007] 在利用MBMS服务器提供直播业务时,如果该直拨业务能够通过PSS服务器同步提供,则会在向客户端发送的MBMS业务描述中包含一个或几个PSS接入地址。当客户端检测到MBMS业务的质量较差时,则会切换到PSS业务来为继续获取流媒体,但由于PSS业务采取单播方式提供直播内容,所以需要建立单播链路,这中间需要客户端和PSS服务器交互后,才能获取相应的单播链路,所以,从MBMS方式切换到PSS方式接收节目需要数秒时间。 [0008] 由于上述切换过程需要数秒时间,将导致错过数秒节目内容。为了能够确保节目的连续性,现有技术中,客户端选择PSS时移方式来继续获取直播内容,即:在切换后客户端将从切换前的节目点进行业务播放,以确保切换前后播放内容的连续性。 [0009] 在实施上述切换方式的过程中,发明人发现,现有技术至少存在如下问题: [0010] 1、在切换到PSS业务后,采用PSS时移方式播放直播节目,导致切换后播放的节目内容与MBMS直播的节目内容之间相差数秒,这数秒时间的滞后将使用户不能体验直播节目的效果。
[0011] 2、PSS时移方式播放的直播节目有数秒的滞后,当客户端检测到MBMS业务的质量较好时,需要再次切换回到MBMS业务,由于MBMS业务采用多播方式提供流媒体,虽然可以保证MBMS的接入较快,却不能采用时移的方式播放流媒体。所以,由PSS业务切换回MBMS业务时,节目内容由时移进度直接跳变到直播进度,使用户感到部分节目被删节。 发明内容
[0012] 本发明实施例提供一种直播流媒体的业务切换方法、播放设备及服务器,在由多播业务切换到单播业务后,再次切回到多播业务时,不会出现节目内容的跳变。 [0013] 为达到上述目的,本发明的实施例采用如下技术方案:
[0014] 一种在直播流媒体节目中进行单播和多播切换方法,包括:
[0015] 从接收多播服务器的直播节目内容,切换到接收单播服务器的时移节目内容; [0016] 请求单播服务器以快进速度播放时移节目内容;
[0017] 接收单播服务器以快进速度播放的时移节目内容;
[0018] 接收时移节目内容追赶上直播节目内容的指令;
[0019] 请求单播服务器以正常速度播放直播节目内容;
[0020] 接收单播服务器以正常速度播放的直播节目内容。。
[0021] 一种流媒体播放设备,包括:
[0022] 接收单元,用于接收多播服务器的直播节目内容;
[0023] 控制单元,用于控制接收单元切换到接收单播服务器的时移节目内容; [0024] 发送单元,用于向单播服务器发送以快进速度播放时移节目内容的请求; [0025] 所述接收单元还用于接收单播服务器以快进速度播放的时移节目内容; [0026] 所述接收单元接收到时移节目内容追赶上直播节目内容的指令后,所述发送单元向单播服务器发送以正常速度播放直播节目内容的请求;所述接收单元还用于接收单播服务器以正常速度播放的直播节目内容。
[0027] 一种在直播流媒体节目中进行单播和多播切换方法,包括:
[0028] 从接收多播服务器的直播节目内容,切换到接收单播服务器的时移节目内容; [0029] 检测到多播服务器的业务质量恢复正常;
[0030] 请求单播服务器以快进速度播放时移节目内容;
[0031] 接收单播服务器以快进速度播放的时移节目内容;
[0032] 接收到时移节目内容追赶上直播节目内容的指令;
[0033] 从接收单播服务器直播节目内容切换到接收多播服务器的直播节目内容。一种流媒体播放设备,包括:
[0034] 接收单元,用于接收多播服务器的直播节目内容;
[0035] 控制单元,用于控制接收单元切换到接收单播服务器的时移节目内容; [0036] 检测单元,用于检测多播服务器的业务质量;
[0037] 发送单元,用于在检测到多播服务器的业务质量恢复正常后,向单播服务器发送以快进速度播放时移节目内容的请求;
[0038] 所述接收单元还用于接收单播服务器以快进速度播放的时移节目内容; [0039] 所述接收单元接收到时移节目内容追赶上直播节目内容的指令后,所述控制单元控制接收单元从接收单播服务器直播节目内容切换到接收多播服务器的直播节目内容。 [0040] 一种单播服务器,包括:
[0041] 接收单元,用于接收以快进速度播放时移节目内容的请求;
[0042] 直播单元,用于根据所述请求以快进速度播放时移节目内容; [0043] 监控单元,用于监控时移节目内容是否追赶上直播节目内容; [0044] 发送单元,用于在时移节目内容追赶上直播节目内容时,发送时移节目内容追赶上直播节目内容的指令。
[0045] 由上述技术方案所描述的本发明的实施例,从接收多播服务器的内容切换到接收单播服务器的内容后,请求单播服务器以快进速度播放时移节目内容,或者检测到多播服务器的业务质量恢复正常后,即从接收单播服务器的内容切换到接收多播服务器的内容之前,请求单播服务器以快进速度播放时移节目内容。这使得流媒体播放设备播放的内容不会和直播内容有时间差,并且在由多播业务切换到单播业务后,再次切回到多播业务时,是在直播点开始切换的,不会出现节目内容的跳变。
[0046] 附图说明
[0047] 图1为本发明实施例1中一种切换方法的流程图;
[0048] 图2为图1切换方法对应的流媒体播放设备的原理图;
[0049] 图3为本发明实施例1中另一种切换方法的流程图;
[0050] 图4为图3切换方法对应的流媒体播放设备的原理图;
[0051] 图5为本发明实施例1中单播服务器的原理图;
[0052] 图6为本发明实施例1中的一种流媒体系统框图;
[0053] 图7为本发明实施例1中的另一种流媒体系统框图;
[0054] 图8为本发明实施例2中切换方法的流程图;
[0055] 图9为本发明实施例3中切换方法的流程图;
[0056] 图10为本发明实施例4中切换方法的流程图;
[0057] 图11为本发明实施例5中切换方法的流程图。

具体实施方式

[0058] 本发明实施例在切换到接收单播服务器的时移节目内容后,采用快进速度播放时移节目内容,或者在切回到多播服务器之前采用快进速度播放时移节目内容,以追赶上直播点,保证切回到接收多播服务器的直播节目内容时,不会出现节目跳变。下面结合附图对本发明流媒体的业务切换方法、播放设备及服务器的实施例进行详细描述。 [0059] 本发明实施例中切换到接收单播服务器的时移节目内容具体指:客户端一开始是由多播服务器提供业务,在多播服务器的业务质量较差时,转由单播服 务器来提供业务,并采用时移播放。切换到接收多播服务器的直播节目内容具体指:多播服务器的业务质量恢复之后,再次转到由多播服务器来提供业务,并采用直播播放。
[0060] 客户端切换到接收单播服务器的时移节目内容后,有可能在以正常速度播放了一段时移节目内容后,用户通过客户端主动向单播服务器发送以快进速度播放的请求,这时单播服务器按照快进速度播放时移节目内容,等到时移节目内容赶上直播节目内容后,再采用正常速度播放直播节目内容,此后,若检测到多播服务器的业务质量恢复,可以直接切回到接收多播服务器的直播节目内容。
[0061] 实施例1:
[0062] 如图1所示,本实施例中直播流媒体的单播业务和多播业务切换方法,主要包括如下步骤:
[0063] 101、当客户端的直播流媒体播放设备检测到多播方式提供的业务质量较差,或者不能提供正常业务质量时,切换到接收单播服务器的内容。
[0064] 102、由于切换到单播服务器需要建立单独的信道,这需要耗费一小段时间,为了保证节目的连续性,在切换到接收单播服务器的内容后,接收单播服务器按照时移播放的方式播放节目内容,即:从切换前的直播点开始播放。
[0065] 103、为了让用户在切换后能够感受到直播体验,消除切换过程产生的节目滞后,流媒体播放设备请求单播服务器以快进速度播放时移节目内容。
[0066] 104、接收单播服务器以快进速度播放时移节目内容。
[0067] 105、当收到时移节目内容追赶上直播节目内容的指令后,流媒体播放设备请求单播服务器以正常速度播放直播节目内容。由于时移播放的内容追赶上了直播内容,所以,当需要再次切回到多播服务器时,是从直播点开始切换的,而且多播服务器的连接时间很短,不会出现节目的时移和跳变。
[0068] 对应于图1中的切换方法,本实施例还提供一种流媒体播放设备,如图2所示,该播放设备包括:接收单元21、发送单元22和控制单元23。
[0069] 其中,接收单元21可以接收单播服务器或多播服务器的流媒体内容;正常情况下,接收单元21是接收多播服务器的流媒体内容的,当多播服务器提供的业务质量较差时,控制单元23控制接收单元切换到接收单播服务器的内容。
[0070] 由于切换到单播服务器需要建立单独的信道,这需要耗费一小段时间,为了保证节目的连续性,在切换到接收单播服务器的内容后,按照时移播放的方式播放从单播服务器接收到的内容,即:从切换前的直播点开始播放。为了消除切换过程产生的上述节目滞后,发送单元22请求单播服务器采用快进速度播放时移节目内容;直到时移节目内容追赶上直播节目内容后,发送单元22再请求单播服务器以采用正常速度播放直播节目内容,并通过接收单元21接收单播服务器的直播节目内容。
[0071] 如图3所示,本实施例还提供另一种直播流媒体业务的单播和多播切换方法,具体包括如下步骤:
[0072] 301、在多播服务器提供的业务质量正常时接收多播服务器的内容,当多播服务器提供的业务质量较差时,切换到接收单播服务器的内容。
[0073] 302、由于切换到单播服务器需要建立单独的信道,这需要耗费一小段时间,为了保证节目的连续性,在切换到接收单播服务器的内容后,接收单播服务器按照时移播放的方式播放的节目内容,即:从切换前的直播点开始播放。
[0074] 303、检测到多播服务器提供的业务质量恢复正常,表示能够提供正常的流媒体服务。
[0075] 304、为了保证切回到接收多播服务器的内容时,不会出现节目的跳变。先请求单播服务器采用快进速度播放时移节目内容。
[0076] 305、在时移节目内容追赶上直播节目内容后,再切回到接收多播服务器的内容。由于再次切回到多播服务器时,是从直播点开始切换的,而且多播服务器的连接时间很短,所以不会出现节目的跳变。
[0077] 对应于图3中的切换方法,本实施例还提供一种流媒体播放设备,如图4所示,该播放设备包括:接收单元41、发送单元42、控制单元43和检测单元44。 [0078] 接收单元41可以接收单播服务器或多播服务器的流媒体内容;正常情况下,接收单元41是接收多播服务器的流媒体内容的,当多播服务器提供的业务质量较差时,控制单元43控制接收单元41切换到接收单播服务器的内容,并通过接收单元41接收单播服务器采用时移方式播放的节目内容。
[0079] 当检测单元44检测多播服务器的业务质量恢复正常时,所述发送单元42 请求单播服务器采用快进速度播放时移节目内容;并在时移节目内容追赶上直播节目内容的后,所述控制单元43控制接收单元41切换到接收多播服务器的内容。
[0080] 为了给上述图2和图4中的流媒体播放设备提供相应的服务,本实施例还提供一种单播服务器,除了需要提供相应的流媒体服务以外,如图5所示,该单播服务器至少还包括:监控单元51、发送单元52、接收单元53以及直播单元54。
[0081] 其中接收单元53可以接收播放请求,若接收到以快进速度播放的请求,则所述直播单元54需要根据该请求以快进速度播放节目内容。监控单元51可以监控时移播放的内容是否追赶上直播内容,当时移播放的内容追赶上直播内容时,发送单元52就向流媒体播放设备发送时移播放的内容追赶上直播内容的指令,以便流媒体播放设备根据该指令做相应的操作,如:向单播服务器请求采用正常速度播放直播节目内容或者切换到多播服务器。 [0082] 上述图2所示流媒体播放设备和图5中的单播服务器,再加上现有的多播服务器,通过网络互联,即可构成流媒体的业务切换系统,详见如图6所示。其中的网络可以是WCDMA(宽带码分多址)或者GSM(全球移动通信)网络。
[0083] 单播服务器中的监控单元51监控流媒体播放设备时移播放的内容是否追赶上直播内容,如果时移播放的内容追赶上直播内容,则发送单元52向流媒体播放设备发送时移播放的内容追赶上直播内容的指令;这样流媒体播放设备中的发送单元22就可以请求单播服务器采用正常速度播放时移节目内容。
[0084] 图4所示流媒体播放设备和图5中的单播服务器,再加上现有的多播服务器,通过网络互联,也可构成流媒体的业务切换系统,详见如图7所示。其中的网络可以是WCDMA(宽带码分多址)或者GSM(全球移动通信)网络。
[0085] 单播服务器中的监控单元51监控流媒体播放设备时移播放的内容是否追赶上直播内容,如果时移播放的内容追赶上直播内容,则发送单元52向流媒体播放设备发送时移播放的内容追赶上直播内容的指令;这样流媒体播放设备中控制单元43将会控制接收单元41,切换到接收多播服务器的内容。
[0086] 实施例2:
[0087] 本实施例是实施例1中图1对应切换方法的改进,由多播服务器、单播服 务器和流媒体播放设备组成一个流媒体播放系统。本实施例中的多播服务器为MBMS服务器,单播服务器为PSS服务器,而流媒体播放设备为一个具有流媒体播放功能的客户端(如手机等),如图8所示,该系统在切换过程中的采用的切换方法具体包括如下步骤: [0088] 801、在MBMS服务器提供的信号能够覆盖到的区域,客户端从MBMS服务器接收流媒体内容。当MBMS服务器通知客户端MBMS直播内容的地址时,同时会将PSS直播内容的地址发送给客户端。
[0089] 802、客户端检测到MBMS服务器提供的业务质量较差,或无法提供所请求的流媒体业务。
[0090] 803、客户端选择具有时移能力的PSS服务器,并通过接收单元从该PSS服务器接收流媒体内容,其中的PSS服务器地址就是步骤801中获得的PSS地址。并请求接入的PSS服务器播放节目内容。
[0091] 804、PSS服务器向客户端返回一个应答,允许客户端接入并获取相应的流媒体内容。
[0092] 805、由于接入PSS服务器需要建立单独的传输通道,需要花费一段时间,为了保证客户端播放流媒体的连续性,PSS服务器按照时移播放的方式播放节目内容,客户端通过相关的显示器等设备显示接收到的节目内容。
[0093] 806、为了使得用户能体验直播,需要将由于切换造成的播放滞后时间消除,所以采用快进速度播放从PSS服务器接收到的流媒体内容,这个快进速度由客户端提供。具体实现时可以通过客户端中的计算单元根据时移播放时间与直播时间的时间差计算得出。 [0094] 为了减小快进播放对节目播放效果的影响,可以把快进平滑地均摊到一个时间段上来完成;如当时移播放时间与直播时间的时间差为5秒时,考虑到观看效果,播放速度为将为正常速度的1.2倍,这样的速度,可以在25秒后追赶上直播的播放进度。 [0095] 807、客户端向PSS服务器请求以计算出的快进速度播放,一般通过实时流媒体协议(RTSP)中的PLAY命令向PSS服务器请求。
[0096] 快进播放包括按刻度(Scale)播放和按速度(Speed)两种实现方式,其中按刻度方式的命令格式如下:
[0097] C->S:PLAY rtsp://example.com/twister.3gp/RTSP/2.0
[0098] CSeq:4
[0099] …
[0100] Range:clock=20080108T142300Z-
[0101] Scale:1.2
[0102] Session:12345678
[0103] …
[0104] 按速度方式的命令格式如下:
[0105] C->S:PLAY rtsp://example.com/twister.3gp/RTSP/2.0
[0106] CSeq:4
[0107] …
[0108] Range:clock=20080108T142300Z-
[0109] Speed:1.2
[0110] Session:12345678
[0111] …
[0112] 其中Speed或Scale的取值为1.2,表示请求以1.2倍的速度进行播放。 [0113] 当采用按照速度播放的方式进行快进时,需要增加每秒传输的数据量,从而需要增加带宽占用,但是能够保证播放的流畅度。
[0114] 当采用按照刻度播放的方式快进时,虽然由于缺少数据帧导致播放不够流畅,但可以保证每秒的数据量不变,不需要增加带宽占用。
[0115] 808、PSS服务器根据上述的PLAY命令返回一个应答,并采用该快进速度播放时移节目内容。
[0116] 809、客户端的接收单元接收PSS服务器采用快进速度播放的时移节目内容。 [0117] 810、PSS服务器监控时移播放的内容是否追赶上直播内容;并在时移播放的内容追赶上直播内容时,向客户端发送一个指令,该指令为:时移播放的节目内容追赶上直播节目内容的指令。RTSP协议中的指令格式如下:
[0118] S->C:ANNOUNCE rtsp://example.com/twister.3gp RTSP/2.0
[0119] CSeq:99
[0120] Session:12345678
[0121] Notice:XXXX reach to live time
[0122] RTP-Info:…
[0123] 其中Notice报文为XXXX reach to live time,表示采用直播播放,即采用正常速度播放。
[0124] 在具体实现时,可以在PSS服务器中增加一个监控单元,用来监控时移播放的内容是否追赶上直播内容,并通过发送单元将上述指令发送到客户端。
[0125] 811、在接收到PSS服务器发送的时移播放的节目内容追赶上直播节目内容的指令后,客户端请求PSS服务器采用正常速度播放直播节目内容。
[0126] 812、PSS服务器返回一个确认应答,允许采用正常速度播放直播节目内容。 [0127] 813、接收PSS服务器采用正常速度播放的直播节目内容。
[0128] 由于在切换到PSS服务器后,通过快进赶上了直播速度,PSS服务器的直播点和MBMS服务器的直播点相同,当需要再次切回到MBMS服务器时,由于接入MBMS服务器时间短,不会出现节目的跳变。
[0129] 实施例3:
[0130] 本实施例与实施例2一样,由多播服务器、单播服务器和流媒体播放设备组成一个流媒体播放系统。并且多播服务器为MBMS服务器,单播服务器为PSS服务器,而流媒体播放设备为一个具有流媒体播放功能的客户端,如图9所示,该系统在切换过程中的采用的切换方法具体包括如下步骤:
[0131] 901、在MBMS服务器提供的信号能够覆盖到的区域,客户端从MBMS服务器接收流媒体内容。当MBMS服务器通知客户端MBMS直播内容的地址时,同时会将PSS直播内容的地址发送给客户端。
[0132] 902、客户端检测到MBMS服务器提供的业务质量较差,或无法提供所请求的流媒体业务。
[0133] 903、客户端选择具有时移能力的PSS服务器,并通过接收单元从该PSS服务器接收流媒体内容,其中的PSS服务器地址就是步骤901中获得的PSS地址。并请求接入的PSS服务器播放节目内容。
[0134] 904、PSS服务器向客户端返回一个应答,允许客户端接入并获取相应的流媒体内容。
[0135] 905、由于接入PSS服务器需要建立单独的传输通道,需要花费一段时间, 为了保证客户端播放流媒体的连续性,客户端的接收单元接收按照时移播放的方式播放的节目内容,并通过相关的显示器等设备显示接收到的节目内容。
[0136] 906、为了使得用户能体验直播,需要将由于切换造成的播放滞后时间消除,所以客户端将采用快进速度播放从PSS服务器接收到的流媒体内容。这个快进速度需要从PSS服务器得到。在得到这个快进速度之前,客户端接收单播服务器采用正常速度播放的时移节目内容。
[0137] 907、客户端通过发送单元向PSS服务器请求采用快进速度播放时移节目内容,并向PSS服务器提供时移播放时间。其中请求的RTSP格式如下:
[0138] C->S:ANNOUNCE rtsp://example.com/twister.3gp RTSP/2.0
[0139] CSeq:99
[0140] Session:12345678
[0141] Notice:YYYY MBMS switch to PSS
[0142] RTP-Info:…
[0143] 其中Notice的报文为:YYYY MBMS switch to PSS,标识已经切换到PSS服务器,需要一个快进速度。
[0144] 908、PSS服务器中的接收单元接收提供快进速度的请求,以及时移播放时间后,计算出一个快进速度。其具体可以通过PSS服务器中的计算单元实现,该计算单元根据时移播放时间与直播时间的时间差计算快进速度。
[0145] 909、PSS服务器向客户端返回一个应答,允许采用计算出来的快进速度播放时移节目内容。
[0146] 910、客户端接收PSS服务器采用快进速度播放的时移节目内容。并且PSS服务器向客户端发送快进速度。其中快进播放包括按刻度(Scale)方式播放或者按速度(Speed)方式播放。
[0147] 按速度快进播放的发送方式可以通过RTSP协议的格式报文,具体如下: [0148] S->C:RTSP/2.0 200 OK
[0149] CSeq:99
[0150] Session:12345678
[0151] Speed:value
[0152] 按刻度方式快进播放的发送方式可以通过RTSP协议的格式报文,具体如下: [0153] S->C:RTSP/2.0 200 OK
[0154] CSeq:99
[0155] Session:12345678
[0156] Scale:value
[0157] 其中Scale和Speed中的value值就是计算出的快进速度,为了减小快进播放对节目播放效果的影响,可以把快进平滑地均摊到一个时间段上来完成;如当时移播放时间与直播时间的时间差为5秒时,考虑到观看效果,播放速度将为正常速度的1.2倍,即value=1.2,这样的播放速度,可以在25秒后追赶上直播的播放进度。
[0158] 当按照速度方式进行快进时,需要增加每秒传输的数据量,从而需要增加带宽占用,但是能够保证播放的流畅度。
[0159] 当采用刻度方式快进时,虽然由于缺少数据帧导致播放不够流畅,但可以保证每秒的数据量不变,不需要增加带宽占用。
[0160] 911、PSS服务器监控时移播放的内容是否追赶上直播节目内容;并在时移播放的内容追赶上直播节目内容时,向客户端发送一个指令,该指令为:时移播放的内容追赶上直播内容的指令。RTSP协议中的指令格式如下:
[0161] S->C:ANNOUNCE rtsp://example.com/twister.3gp RTSP/2.0
[0162] CSeq:99
[0163] Session:12345678
[0164] Notice:XXXX reach to live time
[0165] RTP-Info:…
[0166] 其中Notice报文为XXXX reach to live time,表示采用直播播放,即采用正常速度播放。
[0167] 在具体实现时,可以在PSS服务器中增加一个监控单元,用来监控时移播放的内容是否追赶上直播内容,并通过发送单元将上述指令发送到客户端。
[0168] 912、在接收到PSS服务器发送的时移播放的内容追赶上直播节目内容的指令后,客户端请求单播服务器采用正常速度播放直播节目内容。
[0169] 913、PSS服务器返回一个确认应答,允许采用正常速度播放直播节目内容。 [0170] 914、接收PSS服务器以正常速度播放的直播节目内容。
[0171] 由于在切换到PSS服务器后,通过快进赶上了直播速度,其直播点和MBMS服务器的直播点相同,当需要再次切回到MBMS服务器时,由于接入MBMS服务器时间短,不会出现节目的跳变。
[0172] 上述实施例2中通过客户端来计算快进速度,这样可以不用服务器计算快进速度,减轻了服务器的运算量,节约服务器资源。实施例3中通过服务器来计算快进速度,由于服务器可以得到准确的时移节目内容进度和直播节目内容进度的时间差,这样计算出来的快进速度比较精确。
[0173] 实施例4:
[0174] 本实施例中流媒体系统由MBMS服务器、PSS服务器和流媒体播放设备的客户端组成。如图10所示,该系统在切换过程中的采用的切换方法具体包括如下步骤: [0175] 1001、在MBMS服务器提供的信号能够覆盖到的区域,客户端从MBMS服务器接收流媒体内容。当MBMS服务器通知客户端MBMS直播内容的地址时,同时会将PSS直播内容的地址发送给客户端。
[0176] 1002、客户端检测到MBMS服务器提供的业务质量较差,或无法提供所请求的流媒体业务。
[0177] 1003、客户端选择具有时移能力的PSS服务器,并通过接收单元从该PSS服务器接收流媒体内容,其中的PSS服务器地址就是步骤1001中获得的PSS地址。并请求接入的PSS服务器播放节目内容。
[0178] 1004、PSS服务器返回一个应答,允许客户端接入并获取相关的流媒体内容。 [0179] 1005、由于接入PSS服务器需要建立单独的传输通道,需要花费一段时间,为了保证客户端播放流媒体的连续性,客户端的接收单元接收按照时移播放的方式播放的节目内容,并通过相关的显示器等设备显示接收到的节目内容。
[0180] 1006、客户端随时检测MBMS服务器提供的业务质量是否恢复正常。由于目前PSS服务器与MBMS服务器的覆盖情况,MBMS覆盖区一般都在PSS单播覆盖区内。所以,一般恢复正常时可能的情况如下:客户端检测到重新回到MBMS服务器覆盖区域,或MBMS服务器的广播多播信道业务质量变好。
[0181] 要实现上述检测功能,需要在客户端增加一个检测单元,用来随时检测MBMS服务器提供的业务质量是否恢复正常。
[0182] 1007、由于MBMS服务器提供的业务质量恢复了,客户端要重新接收MBMS服务器的媒体流内容,为了在切回到MBMS服务器时不会出现节目的跳变,需要将PSS服务器播放滞后时间消除,所以客户端将采用快进速度播放从PSS服务器接收到的流媒体内容。这个快进速度由客户端提供,一般是通过客户端的计算单元根据时移播放时间与直播时间的时间差计算得出。
[0183] 为了减小快进播放对节目播放效果的影响,可以把快进平滑地均摊到一个时间段上来完成;如当时移播放时间与直播时间的时间差为5秒时,考虑到观看效果,播放速度为将为正常速度的1.2倍,这样的速度,可以在25秒后追赶上直播的播放进度。 [0184] 1008、客户端向PSS服务器请求以计算出的快进速度播放,一般通过实时流媒体协议(RTSP)中的PLAY命令向PSS服务器请求。
[0185] 快进播放包括按刻度(Scale)方式或者按速度(Speed)方式播放,其中按速度方式快进播放采用的命令格式如下:
[0186] C->S:PLAY rtsp://example.com/twister.3gp/RTSP/2.0
[0187] CSeq:4
[0188] …
[0189] Range:clock=20080108T142300Z-
[0190] Speed:1.2
[0191] Session:12345678
[0192] …
[0193] 选取按刻度方式快进采用的命令格式如下:
[0194] C->S:PLAY rtsp://example.com/twist er.3gp/RTSP/2.0
[0195] CSeq:4
[0196] …
[0197] Range:clock=20080108T142300Z-
[0198] Scale:1.2
[0199] Session:12345678
[0200] …
[0201] 其中Scale和Speed的取值为1.2,表示请求以1.2倍的速度进行播放。 [0202] 当采用按速度方式进行快进时,需要增加每秒传输的数据量,从而需要增加带宽占用,但是能够保证播放的流畅度。
[0203] 当采用按刻度方式快进时,虽然由于缺少数据帧导致播放不够流畅,但可以保证每秒的数据量不变,不需要增加带宽占用。
[0204] 1009、PSS服务器根据上述的PLAY命令返回一个应答,允许客户端采用该速度播放。
[0205] 1010、客户端的播放单元采用计算单元计算出来的快进速度播放从PSS服务器接收的内容。
[0206] 1011、PSS服务器监控时移播放的内容是否追赶上直播节目内容。在时移播放的内容追赶上直播节目内容时,向客户端发送一个指令,该指令为:时移播放的内容追赶上直播节目内容的指令。RTSP协议中的指令格式如下:
[0207] S->C:ANNOUNCE rtsp://example.com/twister.3gp RTSP/2.0
[0208] CSeq:99
[0209] Session:12345678
[0210] Notice:XXXX reach to live time
[0211] RTP-Info:…
[0212] 其中Notice报文为XXXX reach to live time,表示采用直播播放,即采用正常速度播放。
[0213] 在具体实现时,可以在PSS服务器中增加一个监控单元,用来监控时移播放的内容是否追赶上直播内容,并通过发送单元将上述指令发送到客户端。
[0214] 1012、在接收到PSS服务器发送的时移播放的内容追赶上直播内容的指令后,客户端切换到接收MBMS服务器的流媒体内容。
[0215] 1013、客户端开始从MBMS服务器接收直播节目的流媒体内容。 [0216] 由于在切换到接收MBMS服务器的流媒体内容之前,已经追赶上了直播内容,其直播点和MBMS的直播点是相同的,而且接入MBMS服务器的时间很短,所以切换后不会出现节目的跳变。
[0217] 实施例5:
[0218] 本实施例中流媒体系统由MBMS服务器、PSS服务器和流媒体播放设备的客户端组成。如图11所示,该系统在切换过程中的采用的切换方法具体包括如下 步骤: [0219] 1101、在MBMS服务器提供的信号能够覆盖到的区域,客户端的接收单元从MBMS服务器接收流媒体内容。当MBMS服务器通知客户端MBMS直播内容的地址时,同时会将PSS直播内容的地址发送给客户端。
[0220] 1102、客户端检测到MBMS服务器提供的业务质量较差,或无法提供所请求的流媒体业务。
[0221] 1103、客户端选择具有时移能力的PSS服务器,并通过接收单元从该PSS服务器接收流媒体内容,其中的PSS服务器地址就是步骤1001中获得的PSS地址。并请求接入的PSS服务器播放节目内容。
[0222] 1104、PSS服务器向客户端返回一个应答,允许客户端接入并获取相关的流媒体内容。
[0223] 1105、由于接入PSS服务器需要建立单独的传输通道,需要花费一段时间,为了保证客户端播放流媒体的连续性,客户端的接收单元接收PSS服务器按照时移播放的方式播放的节目内容。
[0224] 1106、客户端随时检测MBMS服务器提供的信号是否恢复正常。由于目前PSS服务器与MBMS服务器的覆盖情况,MBMS覆盖区一般都在PSS单播覆盖区内。所以,一般恢复正常时可能的情况如下:客户端检测到重新回到MBMS服务器覆盖区域,或MBMS服务器的广播多播信道信号变好。
[0225] 由于MBMS服务器提供的信号恢复了,客户端要重新接收MBMS服务器的媒体流内容,为了在切回到MBMS服务器时不会出现节目的跳变,需要将PSS服务器播放滞后时间消除,所以客户端将采用快进速度播放从PSS服务器接收到的流媒体内容。 [0226] 要实现上述检测功能,需要在客户端增加一个检测单元,用来随时检测MBMS服务器提供的业务质量是否恢复正常。
[0227] 1107、客户端通过发送单元向PSS服务器请求以快进速度播放时移节目内容,并向PSS服务器提供时移播放时间。其中请求的RTSP格式如下:
[0228] C->S:ANNOUNCE rtsp://example.com/twister.3gp RTSP/2.0
[0229] CSeq:99
[0230] Session:12345678
[0231] Notice:YYYY MBMS switch to PSS
[0232] RTP-Info:…
[0233] 其中Notice的报文为:YYYY MBMS switch to PSS,标识已经切换到PSS服务器,需要一个快进速度。
[0234] 1108、PSS服务器中的接收单元接收到步骤1107中的请求,以及时移播放时间后,PSS服务器可以计算出一个快进速度。一般情况下需要通过PSS服务器的计算单元根据时移播放时间与直播时间的时间差计算快进速度。
[0235] 1109、PSS服务器向客户端返回一个应答,允许采用计算出来快进速度播放时移节目内容。
[0236] 1110、PSS服务器以快进速度播放时移节目内容,而客户端接收单元这接收快进速度播放的节目内容。并PSS服务器将计算出的快进速度通过PSS服务器的发送单元发送给客户端。
[0237] 其发送方式可以通过RTSP协议的格式报文,具体如下:
[0238] S->C:RTSP/2.0 200 OK
[0239] CSeq:99
[0240] Session:12345678
[0241] Speed:value
[0242] 其中Speed中的value值就是计算出的快进速度,为了减小快进播放对节目播放效果的影响,可以把快进平滑地均摊到一个时间段上来完成;如当时移播放时间与直播时间的时间差为5秒时,考虑到观看效果,播放速度将为正常速度的1.2倍,即value=1.2,这样的播放速度,可以在25秒后追赶上直播的播放进度。
[0243] 本实施例也可以采用上述实施例2至实施例4中,所述按刻度方式进行快进播放。 [0244] 1111、PSS服务器监控时移播放的内容是否追赶上直播内容;并在时移播放的内容追赶上直播内容时,向客户端发送一个指令,该指令为:时移播放的内容追赶上直播内容的指令。RTSP协议中的指令格式如下:
[0245] S->C:ANNOUNCE rtsp://example.com/twister.3gp RTSP/2.0
[0246] CSeq:99
[0247] Session:12345678
[0248] Notice:XXXX reach to live time
[0249] RTP-Info:…
[0250] 其中Notice报文为XXXX reach to live time,表示采用直播播放,即采用正常速度播放。
[0251] 在具体实现时,可以在PSS服务器中增加一个监控单元,用来监控时移播放的内容是否追赶上直播内容,并通过发送单元将上述指令发送到客户端。
[0252] 1112、在接收到PSS服务器发送的时移播放的内容追赶上直播内容的指令后,客户端切换到接收MBMS服务器的流媒体内容。
[0253] 1113、客户端开始接收MBMS服务器播放的直播节目流媒体内容。 [0254] 由于在切换到接收MBMS服务器的流媒体内容之前,已经追赶上了直播内容,其直播点和MBMS的直播点是相同的,而且接入MBMS服务器的时间很短,所以切换后不会出现节目的跳变。
[0255] 上述实施例2中通过客户端来计算快进速度,这样可以不用服务器计算快进速度,减轻了服务器的运算量,节约服务器资源。实施例3中通过服务器来计算快进速度,由于服务器可以得到准确的时移节目内容进度和直播节目内容进度的时间差,这样计算出来的快进速度比较精确。
[0256] 本发明实施例主要用在直播流媒体业务在单播和多播之间的切换。特别是现在多播业务覆盖的成本较高时,需要在部分用户较少区域采用单播来覆盖,以降低流媒体业务的覆盖成本,为了保证客户端直播流媒体业务的连续性而在单播和多播业务之间切换。 [0257] 以上所述,仅为本发明的具体实施方式,但本发明的保护范围并不局限于此,任何熟悉本技术领域的技术人员在本发明揭露的技术范围内,可轻易想到变化或替换,都应涵盖在本发明的保护范围之内。因此,本发明的保护范围应该以权利要求的保护范围为准。