CN101753973B - 一种频道切换方法、装置和*** - Google Patents

一种频道切换方法、装置和*** Download PDF

Info

Publication number
CN101753973B
CN101753973B CN200910004013.5A CN200910004013A CN101753973B CN 101753973 B CN101753973 B CN 101753973B CN 200910004013 A CN200910004013 A CN 200910004013A CN 101753973 B CN101753973 B CN 101753973B
Authority
CN
China
Prior art keywords
channel
video flowing
client
buffer memory
network
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
Application number
CN200910004013.5A
Other languages
English (en)
Other versions
CN101753973A (zh
Inventor
杨佩林
李军
秦霞
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Huawei Technologies Co Ltd
Original Assignee
Huawei Technologies Co Ltd
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Priority to CN200910004013.5A priority Critical patent/CN101753973B/zh
Application filed by Huawei Technologies Co Ltd filed Critical Huawei Technologies Co Ltd
Priority to ES09831412.3T priority patent/ES2618337T3/es
Priority to EP11176168.0A priority patent/EP2385707B1/en
Priority to PCT/CN2009/073132 priority patent/WO2010066135A1/zh
Priority to EP09831412.3A priority patent/EP2369840B1/en
Publication of CN101753973A publication Critical patent/CN101753973A/zh
Priority to US13/158,217 priority patent/US20110239262A1/en
Priority to US13/158,068 priority patent/US8935736B2/en
Application granted granted Critical
Publication of CN101753973B publication Critical patent/CN101753973B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/20Servers specifically adapted for the distribution of content, e.g. VOD servers; Operations thereof
    • H04N21/25Management operations performed by the server for facilitating the content distribution or administrating data related to end-users or client devices, e.g. end-user or client device authentication, learning user preferences for recommending movies
    • H04N21/266Channel or content management, e.g. generation and management of keys and entitlement messages in a conditional access system, merging a VOD unicast channel into a multicast channel
    • H04N21/26616Channel or content management, e.g. generation and management of keys and entitlement messages in a conditional access system, merging a VOD unicast channel into a multicast channel for merging a unicast channel into a multicast channel, e.g. in a VOD application, when a client served by unicast channel catches up a multicast channel to save bandwidth
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/40Client devices specifically adapted for the reception of or interaction with content, e.g. set-top-box [STB]; Operations thereof
    • H04N21/43Processing 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/438Interfacing the downstream path of the transmission network originating from a server, e.g. retrieving encoded video stream packets from an IP network
    • H04N21/4383Accessing a communication channel
    • H04N21/4384Accessing a communication channel involving operations to reduce the access time, e.g. fast-tuning for reducing channel switching latency
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/60Network 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/63Control 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/64Addressing
    • H04N21/6405Multicasting
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/60Network 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/63Control 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/64Addressing
    • H04N21/6408Unicasting
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L65/00Network arrangements, protocols or services for supporting real-time applications in data packet communication
    • H04L65/60Network streaming of media packets
    • H04L65/61Network streaming of media packets for supporting one-way streaming services, e.g. Internet radio
    • H04L65/611Network streaming of media packets for supporting one-way streaming services, e.g. Internet radio for multicast or broadcast

Landscapes

  • Engineering & Computer Science (AREA)
  • Multimedia (AREA)
  • Signal Processing (AREA)
  • Databases & Information Systems (AREA)
  • Data Exchanges In Wide-Area Networks (AREA)
  • Two-Way Televisions, Distribution Of Moving Picture Or The Like (AREA)

Abstract

本发明实施例公开了一种频道切换方法、装置和***,该方法包括:通过网络缓存设备判断以单播方式加速推送缓存的视频流是否与网络节点以组播方式向客户端推送的频道视频流同步,通知客户端发送加入组播组请求,来实现快速频道切换,以及以单播方式动态调整所述推送视频流的速率,提高了客户端的并发连接数目和频道切换的效率,降低了IPTV***部署和运营的成本,使得频道切换方案的普适性和可扩展性,改善了用户的体验程度。

Description

一种频道切换方法、装置和***
技术领域
本发明涉及通信技术领域,特别是涉及一种频道切换方法、装置和***。
背景技术
IPTV(Internet Protocol Television,因特网协议电视)是一种利用宽带有线网,集互联网、多媒体、通讯等多种技术于一体,向家庭用户提供包括数字在内的多种交互式服务的崭新技术。随着普及程度的提高,IPTV得到了世界范围内的认可。然而,IPTV切换频道时存在着很大的时延,一直困扰着IPTV用户及运营商。
导致频道切换时延的因素包括:离开原频道组播组消耗的时间、加入新频道组播组消耗的时间、STB(Set Top Box,机顶盒)缓存填充数据消耗的时间和等待I帧消耗的时间。其中,等待I帧消耗的时间是最主要的因素。
IPTV一般使用视音频压缩编码算法,将画面编码为由I帧、P帧和B帧组成的图像序列。I帧是整个画面完整编码的帧,可以独立解码显示,并为相关的P帧和B帧的解码提供参考;P帧不能被独立解码显示,必须在接收到所参考的I帧或前一个P帧后才能被解码显示;B帧也不能被独立地解码显示,必须在接收到所参考的前一帧(I帧或P帧)和后一帧(P帧)后才能被解码显示。P帧和B帧主要描述帧间差异,因而比I帧具有更高的编码效率。
现有技术中,切换频道前,需要由缓存设备缓存IPTV频道对应的多媒体数据流。切换频道时,终端发起会话,从缓存设备请求I帧或GOP(Group ofPicture,画面组),同时加入目的频道对应的组播组,GOP中包含I帧;缓存设备将I帧或GOP通过单播推送给终端,终端缓存获得的I帧或GOP,并开始解码显示接收到的图像序列;当终端发现从缓存设备获取到的I帧或GOP与频道的组播流重复时,停止从缓存设备获取I帧或GOP。
在对现有技术的研究和实践过程中,发明人发现现有技术存在以下问题:
(1)由于现有技术中,终端发起加入组播组的请求,当终端加入组播组时间过早,会导致同一个时间段会发送二个流,一个是单播流,另外一个是组播流,这样会容易造成报文丢失,缓冲设备处理时间也比较长,影响效率;如果终端加入组播组时间太迟,造成网络缓存设备处理单个用户频道切换时间过长,影响同一时刻网络缓存设备处理快速频道切换的并发数,降低效率。
(2)在现有的方案接收单播流时,是通过终端与缓存设备协商传送速率大小,增加了缓存设备处理单个频道切换时间,降低了单播流的传输效率。
发明内容
本发明实施例提供一种频道切换方法、装置和***,用于减少频道切换时间。
本发明实施例提出的一种频道切换方法,包括:发送频道切换请求给网络缓存设备,请求从第一频道切换到第二频道;接收并检测所述网络缓存设备发送的所述第二频道的缓存视频流,将检测结果反馈给网络缓存设备,以使得所述网络缓存设备根据所述检测结果,动态调整向客户端发送所述缓存视频流的发送速率;发送加入所述第二频道的组播组请求给网络节点;接收所述网络节点发送的所述第二频道的视频流。
本发明实施例提出的另一种频道切换方法,包括:缓存频道的视频流;接收所述客户端发送的频道切换请求,请求从第一频道切换到第二频道;根据所述频道切换请求,向所述客户端推送所述第二频道的缓存视频流;判断所述推送的缓存视频流与所述第二频道的视频流是否同步,如果同步,则发送通知消息给所述客户端,通知所述客户端发送加入所述第二频道的组播组请求。
本发明实施例提出的一种频道切换装置,包括:
发送模块,用于发送频道切换请求给网络缓存设备,请求从第一频道切换到第二频道;或者,发送加入所述第二频道的组播组请求给网络节点;
接收模块,用于根据所述发送模块发送的频道切换请求,接收所述网络缓存设备缓存的所述第二频道的视频流;或者,根据发送模块发送的加入组播组请求,接收网络节点发送的所述第二频道的视频流;
检测模块,用于根据接收模块接收的所述网络缓存设备的缓存视频流后,检测所述缓存视频流,并将检测结果反馈给网络缓存设备,以使得所述网络缓存设备根据所述检测结果,动态调整向客户端发送所述缓存的视频流的发送速率。
本发明实施例提出的另一种频道切换装置,包括:
缓存模块,用于缓存频道的视频流;
接收模块,用于接收客户端发送的频道切换请求,请求从第一频道切换到第二频道;
推送模块,用于根据接收模块发送的频道切换请求,向所述客户端推送所述缓存视频流;
第一判断模块,用于判断所述推送模块推送的缓存视频流与所述频道的视频流是否同步;
第一通知模块,用于当所述判断模块判断所述推送的缓存视频流与所述频道的视频流同步,则发送通知消息给所述客户端,通知所述客户端发送加入组播组请求。
本发明实施例提供的一种频道切换***,包括:
网络缓存设备,用于缓存频道的视频流;接收所述客户端发送频道切换请求;根据所述频道切换请求,向所述客户端推送所述缓存视频流,同时,接收所述客户端反馈的检测结果,动态调整向客户端发送所述缓存的视频流的发送速率;
客户端,用于发送频道切换请求给网络缓存设备,请求从第一频道切换到第二频道;接收并检测所述网络缓存设备发送的所述第二频道的缓存视频流,将检测结果反馈给网络缓存设备;同时,发送加入所述第二频道的组播组请求给网络节点;接收所述网络节点发送的所述第二频道的视频流。
本发明实施例提供的另一种频道切换***,包括:
网络缓存设备,用于缓存频道的视频流;接收所述客户端发送的频道切换请求,请求从第一频道切换到第二频道;根据所述频道切换请求,向所述客户端推送所述缓存视频流;判断所述推送的缓存视频流与所述频道的视频流是否同步,如果同步,则发送通知消息给所述客户端,通知所述客户端发送加入组播组请求;
客户端,用于发送频道切换请求给所述网络缓存设备;接收所述网络缓存设备推送的缓存视频流;根据所述网络缓存设备的通知,发送加入组播组请求给网络节点,请求加入所述组播组;
网络节点,用于根据客户端发送的加入组播组请求,发送所述频道的视频流给客户端。
本发明实施例提供一种频道切换的方法,装置及***,通过网络缓存设备判断以单播方式加速推送缓存的视频流是否与网络节点以组播方式向客户端推送的频道视频流同步,来实现快速频道切换,以及以单播方式动态调整所述推送视频流的速率,提高了客户端的并发连接数目和频道切换的效率,降低了IPTV***部署和运营的成本,使得频道切换方案的普适性和可扩展性,改善了用户的体验程度。
附图说明
为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动性的前提下,还可以根据这些附图获得其他的附图。
图1a为本发明实施例中的一种频道切换方法流程图;
图1b为本发明实施例中的一种频道切换方法流程图;
图2为本发明实施例中频道切换的一种具体实现方式流程图;
图3为本发明实施例中频道切换的另一种具体实现方式流程图;
图4为本发明实施例中的一种频道切换装置结构图;
图5为本发明实施例中频道切换装置的一种具体结构图;
图6为本发明实施例中的一种频道切换***结构图。
具体实施方式
下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
如图1a所示,为本发明实施例中的一种频道切换方法流程图,包括以下步骤:
步骤102,缓存频道的视频流。
具体为缓存从头端设备通过网络节点发送给客户端的视频流。头端为频道媒体流发起的源头设备,其类型可以包括:组播源、媒体服务器、中心媒体服务器和边缘媒体服务器等。头端获取媒体流的方式包括从***录制,或者从其他有线网络转发。网络节点包括运营商部署的DSLAM(DigitalSubscriber Line Access Multiplexer,数字用户线路接入复用器)设备、OLT(Optical Line Terminal,光线路终端)设备、路由器设备、网络接入服务器和IP交换机等设备。头端与网络节点之间的网络连接可以是通过核心网、城域网、汇聚网,以及其他组网方式。
网络缓存设备缓存从头端发送到客户端的视频流,标明客户端可独立解码的所述缓存的视频流在缓存中的起始位置(即内帧位置,如I帧,IDR帧位置等)。
其中,当头端设备发送视频流到客户端时(可以理解为头端通过网络节点发送到客户端的视频流时),网络缓存设备获取所述视频流并进行缓存,或者当头端发送视频流到客户端时,网络缓存设备通过镜像的方式获得并缓存,其中,所述视频流为向用户提供的频道的码流。
步骤104,接收所述客户端发送的频道切换请求,请求从第一频道切换到第二频道。
用户希望切换频道时,由客户端向网络节点发送频道切换请求,请求切换到用户需要的频道。所述频道切换请求可以使用RTCP协议,也可以使用RTCP扩展协议,或者其它专用或私有协议或者信令等。
步骤106,根据所述频道切换请求,向所述客户端推送所述第二频道的缓存视频流。
网络缓存设备查询到最近的终端可独立解码报文后,以单播方式加速推送缓存的视频流到客户端,单播方式可以是UDP的方式。
所述网络缓存设备查询距离缓存的视频流最近的客户端可独立解码报文。由于视频编码技术的不同,频道内容可以是MPEG(Moving Pictures ExpertsGroup,动态图像专家组)2编码,也可以是MPEG4、H.264甚至SVC编码,频道内容的传输封装格式可以是MPEG2 TS封装,也可以是NAL(NetworkAbstraction Layer,网络提取层)封装等。本发明实施例中的最近的客户端可独立解码报文可以是针对不同编码技术及传输封装格式不同而区别定义,例如,对于MPEG2TS封装的视频,客户端可独立解码报文可以定义为GOP起始报文。
步骤108,判断所述推送的缓存视频流与所述第二频道的视频流是否同步。
步骤110,如果所述推送的缓存视频流与所述第二频道的视频流同步,则发送通知消息给所述客户端,通知所述客户端发送加入所述第二频道的组播组请求。
在发送通知消息给所述客户端前,降低向所述客户端推送所述第二频道的缓存视频流的发送速率;也可以在发送通知消息后降低向所述客户端推送所述第二频道的缓存视频流的发送速率。
在客户端收到所述频道的视频流后,发送终止推送所述视频流消息时,所述消息中携带有能够确认客户端在已接收的第二频道组播视频流和已接收的缓存的第二频道视频流之间未发送报文的信息,例如收到的所述第二频道的视频流(组播IP报文)的第一个报文的序列号,或者其它能够确定客户端从哪个报文开始接收所述第二频道的视频流(组播IP报文),以方便网络缓存设备能够获知客户端在已接收的组播视频流和已接收的缓存视频流之间还有多少未发送的报文,在网络缓存设备推送完这些报文后,停止推送缓存视频流。
所述缓存的视频流为由单播方式从网络缓存设备加速推动到客户端的视频流(或单播IP报文);所述频道的视频流为由组播方式从网络节点正常发送到客户端的媒体流(或组播IP报文)。
其中,所述通知消息包括:所述请求中携带所述第二频道的组播组地址信息、加入所述第二频道的时间信息,以及请求终止推送所述视频流的时间信息的任意一种或多种信息组合;所述客户端根据所述通知消息进行处理;也可以是网络缓存设备通知所述客户端发送加入所述第二频道的组播请求后,发送通知消息,通知所述客户端发送终止推送所述视频流请求。
本发明实施例提供一种频道切换的方法,通过网络缓存设备判断以单播方式加速推送缓存的视频流是否与网络节点以组播方式向客户端发送的频道的视频流同步,来实现快速频道切换,以及以单播方式动态调整所述推送视频流的速率,提高了客户端的并发连接数目和频道切换的效率,降低了IPTV***部署和运营的成本,使得频道切换方案的普适性和可扩展性,改善了用户的体验程度。
如图1b所示,为本发明实施例中的另一种频道切换方法流程图,包括以下步骤:
步骤102’,发送频道切换请求给网络缓存设备,请求从第一频道切换到第二频道。
步骤104’,接收并检测所述网络缓存设备发送的所述第二频道的缓存视频流,将检测结果反馈给网络缓存设备,以使得所述网络缓存设备根据所述检测结果,动态调整向客户端发送所述缓存视频流的发送速率。
所述检测结果包括:所述接收到的视频流丢失信息、客户端请求网络缓存设备的发送速率以及所述发送速率的增量的任意组合。具体解释如下:对客户端反馈的检测结果进行分析,从而确定是提高或者降低当前向客户端发送所述缓存的媒体流的发送速率,例如,通过所述检测结果中的报文没有丢包,报文有丢包以及丢失报文的信息或统计,丢失报文的序列号,获知发送过程中报文丢包率,若此时丢包率比较高,或者网络资源不足,或者客户端剩余缓冲区较少,则降低发送速率;若此时没有丢包,且有足够的带宽资源,且客户端剩余缓冲区较少,则提高所述发送速率,充分利用网络资源,缩短发送报文的时间,减少了网络缓存设备处理单个用户快速频道切换的时间,提高了网络缓存设备并发数和用户体验程度;或者,根据客户端反馈的建议发送速率进行动态调整;也可以通过客户端反馈的建议发送速率的增加量、降低量和不改变发送速率进行相应调整;也可以通过上述描述的各种情况任意组合动态调整速率。
步骤106’,发送加入所述第二频道的组播组请求给网络节点。
这里可以是客户端主动向网络节点发送加入组播组请求,也可以是网络缓存设备通知客户端发送加入组播组的消息后,客户端向网络节点发送加入组播组请求。
步骤108’,接收所述网络节点发送的所述第二频道的视频流。
网络节点接收到所述加入组播组请求后,网络节点通知网络缓存设备所述正准备向客户端发送的频道的视频流的报文的序列号,若网络缓存设备检测发现向客户端发送的缓存的视频流的报文和网络节点正准备发送的频道的视频流之间还存在没有发送的报文,网络缓存设备以低速率发送所述还没有发送的缓存的视频流的报文;
若网络节点不能通知网络缓存设备时,当客户端检测到正在接收的频道的视频流与以前接收的缓存的视频流之间有丢包情况时,请求网路缓存设备对没有发送的报文进行重发。
当客户端从第二频道切换到第三频道时,接收所述网络缓存设备以所述调整后的发送速率发送的所述第三频道的视频流,其中,所述调整后的发送速率通过在频道切换请求中携带的发送速率获得;或者,为所述网络缓存设备本地存储获得。
本发明实施例采用客户端检测接收报文的情况,向网络缓存设备反馈组播IP报文的接收情况,从而通过网络缓存设备动态调整发送速率,充分利用网络资源,缩短发送报文的时间,减少频道切换的延时,降低了IPTV***部署和运营的成本,提高了频道切换方案的普适性和可扩展性,改善了用户的体验程度。
如图2所示,为本发明实施例中频道切换的一种具体实现方式流程图,包括以下步骤:
步骤200,头端向客户端发送频道的视频流。
头端为频道媒体流发起的源头设备,其类型可以包括:组播源、媒体服务器、中心媒体服务器和边缘媒体服务器等。头端获取媒体流的方式包括从***录制,或者从其他有线网络转发。网络节点包括运营商部署的DSLAM(Digital Subscriber Line Access Multiplexer,数字用户线路接入复用器)设备、OLT(Optical Line Terminal,光线路终端)设备、路由器设备、网络接入服务器和IP交换机等设备。头端与网络节点之间的网络连接可以是通过核心网、城域网、汇聚网,以及其他组网方式。
步骤202,网络缓存设备缓存从头端发送到客户端的视频流,标明客户端可独立解码的视频帧在缓存中的起始位置(如I帧,IDR帧位置等)。
其中,当头端设备发送视频流到客户端时(可以理解为头端通过网络节点发送到客户端的视频流时),网络缓存设备获取所述视频流并进行缓存,或者当头端发送视频流到客户端时,网络缓存设备通过镜像的方式获得并缓存,其中,所述视频流为向用户提供的频道的码流。
步骤204,客户端向网络缓存设备发送频道切换请求。
用户希望切换频道时,由客户端向网络节点发送频道切换请求,请求从第一频道切换到第二频道。所述频道切换请求可以使用RTCP协议,也可以使用RTCP扩展协议,或者其它专用或私有协议或者信令等。
步骤205,网络缓存设备收到客户端频道切换请求后,判断下一个客户端可独立解码的视频帧是否到达;如果到达,则执行步骤206,由网络缓存设备直接通知客户端加入组播组;否则,按照下面的步骤207继续执行。
具体为判断下一个可用于客户端可独立解码的缓存的视频流是否即将到来。
步骤206,如果到达,则直接通知所述客户端加入组播组。
步骤207,网络缓存设备以单播方式向所述客户端加速推送所述缓存的视频流。
网络缓存设备查询到最近的终端可独立解码报文后,以单播方式加速推送缓存的视频流到客户端。
所述网络缓存设备查询距离缓存的视频流最近的客户端可独立解码报文。由于视频编码技术的不同,频道内容可以是MPEG(Moving Pictures ExpertsGroup,动态图像专家组)2编码,也可以是MPEG4、H.264甚至SVC编码,频道内容的传输封装格式可以是MPEG2TS封装,也可以是NAL(NetworkAbstraction Layer,网络提取层)封装等。本发明实施例中的最近的客户端可独立解码报文可以是针对不同编码技术及传输封装格式不同而区别定义,例如,对于MPEG2TS封装的视频,客户端可独立解码报文可以定义为GOP起始报文。
以单播方式加速推送缓存的视频流(这里缓存的视频流为所述第二频道的缓存视频流,下面简称为所述缓存视频流),还可以根据客户端的反馈,动态调整向所述客户端推送所述缓存的视频流的发送速率,即根据客户端反馈当前丢包率等信息,提高或者降低当前的推送速率,这在下面的实施例中会详细说明。
这里网络缓存设备以单播方式加速推送缓存的视频流到客户端,不仅仅适用于客户端与某一网络节点直接相连的应用场景,还可以适用于客户端与网络节点之间还有其他中间节点相连的应用场景,这样可以避免因为客户端与网络节点之间还有其他中间节点相连时,使用其他方式推送缓存的视频流到客户端,导致无法将缓存的视频流推送到客户端的情况。
步骤208,网络缓存设备判断所述推送的缓存视频流与所述第二频道的视频流是否同步。
具体为:网络缓存设备判断以单播方式加速推送的缓存的视频流与网络节点正向其他客户端发送的第二频道的视频流是否同步。
如果推送的缓存的视频流与网络节点正向其他客户端发送的所述频道的第二频道的视频流同步,则执行步骤210到步骤216;如果推送的缓存的视频流与网络节点正向其他客户端发送的所述第二频道的视频流不同步,则执行步骤206。
所述缓存的视频流为由单播方式从网络缓存设备加速推动到客户端的视频流(或单播IP报文);所述频道的视频流为由组播方式从网络节点正常发送到客户端的媒体流(或组播IP报文)。
其中,这里所述的判断以单播方式加速推送缓存的视频流与网络节点正向其他客户端发送的频道的视频流是否同步的步骤是非常关键的,主要是针对网络缓存设备发送给客户端的缓存的视频流与网络节点正向其他客户端发送的频道的视频流是有一定的延时的应用场景,所以单播方式加速推送缓存的视频流何时能够追赶上网络节点正向其他客户端发送的频道的视频流(即,与网络节点向其他客户端发送的频道的视频流同步)是非常关键的。通过网络缓存设备来判断是否已经追赶上网络节点向其他客户端发送的频道的时视频媒体流,从而可以准确确定客户端何时加入组播,减少从单播加速推动方式到用组播方式从网络节点向发送的频道的视频媒体流切换的时延。
对于由缓存的视频流到频道的视频流的切换过程中出现的少量丢包,可以通过客户端请求重传的方式弥补,也可以通过由网络缓存设备以较低速率继续以单播方式推送所述缓存的视频流一段时间弥补。在上述弥补丢包的过程中,客户端会接收到两个多媒体数据流,由于该过程时间较短,推送的所述缓存的媒体流占用空间较小、推送速率较低,不会影响客户端与网络节点之间的带宽,这里具体流程将会在图3中进行详细描述。
步骤210,网络缓存设备降低向所述客户端推送所述第二频道的缓存视频流的发送速率。
这个步骤也可以放在步骤211之后进行,即,在发送通知消息给所述客户端前,降低向所述客户端推送所述第二频道的缓存视频流的发送速率;也可以在发送通知消息后降低推送所述第二频道的缓存视频流的发送速率。
步骤211,网络缓存设备通知客户端,可以向网络节点发送加入组播组请求。
所述通知消息中携带所述第二频道的组播组地址信息、加入所述第二频道的时间信息,以及请求终止推送所述视频流的时间信息的任意一种或多种信息组合,例如包含一个时间参数,用来表明在该时间后,发起加入组播,若时间为0,表明客户端要立刻加入组播组。
其中通知消息还包括:通知所述客户端发送终止推送所述视频流请求。
步骤212,客户端向网络节点发送加入组播组请求。
步骤214,网络节点根据所述加入组播组请求,发送所述第二频道的视频流给客户端,使得客户端通过组播方式获取所述第二频道的视频流。
步骤216,客户端收到所述消息,通知网络缓存设备停止发送所述推送缓存的视频流的消息。
在客户端收到所述频道的视频流后,发送终止推送所述视频流请求时,所述请求中携带有能够确认客户端在已接收的第二频道组播视频流和已接收的缓存的第二频道视频流之间未发送报文的信息,例如:所述第二频道的视频流的第一个报文的序列号,或者其它能够确定报文位置的信息;当在所述推送的缓存视频流中达到所述第一个报文的序列号或者其它能够证明已经发送的组播IP报文位置时,停止推送缓存视频流。
步骤218,网络缓存设备根据所述请求中携带的能够确认客户端在已接收的第二频道组播视频流和已接收的缓存的第二频道视频流之间未发送报文的信息,推送完所述未发送报文后,停止推送缓存的所述第二频道的视频流。
需要强调的是,本发明实施例中的网络缓存设备并不构成对本发明技术方案的限定,具有实现频道切换功能的设备可以为网络缓存设备,但不限于网络缓存设备,还包括位于其他网络位置的设备或者内置于网络节点中,其实现该方法的流程与上述描述的流程相同。
本发明实施例提供一种频道切换的方法,通过网络缓存设备判断以单播方式加速推送缓存的视频流是否与网络节点以组播方式向客户端推送的频道的视频流同步,来实现快速频道切换,以及以单播方式动态调整所述推送视频流的速率,提高了客户端的并发连接数目和频道切换的效率,降低了IPTV***部署和运营的成本,使得频道切换方案的普适性和可扩展性,改善了用户的体验程度。
如图3所示,为本发明实施例中频道切换的另一种具体实现方式流程图,详细描述客户端对于从网络缓存设备缓存的视频流切换到从网络节点上获取的频道的视频流的过程中出现的少量丢包的应用场景,具体包括以下步骤:
步骤302到步骤306与本发明实施例图2中的步骤202到步骤207相同,详细步骤可以参考上面的描述,这里就不再具体说明。
步骤308,客户端接收网络缓存设备以单播方式加速推送所述缓存的视频流后,对所述视频流检测。
具体为:网络缓存设备根据客户端发送的从第一频道切换到第二频道的频道切换请求,将所述缓存的第二频道视频流发送给客户端,客户端通过检测所述接收的视频流的序列号,判断是否有报文丢失,获得所述接收的视频流中丢失报文的序列号,并将所述丢失报文的序列号、当前客户端剩余缓冲区大小、网络带宽的利用率等信息的任意组合的检测结果反馈给网络缓存设备。
这里的客户端接收到缓存的视频流后,可以主动将所述丢失报文的序列号、当前客户端剩余缓冲区大小、网络带宽的利用率等信息的任意组合反馈给网络缓存设备,也可以通过网络缓存设备发送消息给客户端,通知客户端返回所述频道的视频流的相关信息。
步骤309,客户端将所述检测结果反馈给网络缓存设备。
步骤310,网络缓存设备根据所述检测结果,动态调整向客户端发送所述缓存的视频流的发送速率。
具体为,对客户端反馈的检测结果进行分析,从而确定是提高或者降低当前向客户端发送所述缓存的媒体流的发送速率,例如,通过所述检测结果中的丢失报文的序列号,获知发送过程中报文丢包率,若此时丢包率比较高,或者网络资源不足,或者客户端剩余缓冲区较少,则降低发送速率;若此时没有丢包,且有足够的带宽资源,且客户端剩余缓冲区较少,则提高所述发送速率,充分利用网络资源,缩短发送报文的时间,减少了网络缓存设备处理单个用户快速频道切换的时间,提高了网络缓存设备并发数和用户体验程度。
步骤311,网络缓存设备以调整后的速率推送所述频道视频流给客户端。
步骤312,客户端向网络节点发送加入组播组请求。
这里可以是客户端主动向网络节点发送加入组播组请求,也可以是网络缓存设备通知客户端发送加入组播组的消息后,客户端向网络节点发送加入组播组请求;如果是网络缓存设备通知客户端发送加入组播组的消息,则具体流程可以参照本发明实时例图2中的步骤208和步骤210,这里结合图2和图3的方法是本发明的最优实施例。
步骤314,网络节点根据所述请求,发送所述第二频道的视频流给客户端。
具体步骤为:网络节点接收到所述加入组播组请求后,网络节点通知网络缓存设备所述正准备向客户端发送的频道的视频流的报文的序列号,若网络缓存设备检测发现向客户端发送的缓存的视频流的报文和网络节点正准备发送的频道的视频流之间还存在没有发送的报文,网络缓存设备以低速率发送所述还没有发送的缓存的视频流的报文;
若网络节点不能通知网络缓存设备时,当客户端检测到正在接收的频道的视频流与以前接收的缓存的视频流之间有丢包情况时,请求网路缓存设备对没有发送的报文进行重发。
步骤S316,当客户端从第二频道切换到第三频道时,接收所述网络缓存设备以所述调整后的发送速率发送的所述第三频道的视频流,其中,所述调整后的发送速率通过在频道切换请求中携带的发送速率获得;或者,为所述网络缓存设备本地存储获得。
需要强调的是,本发明实施例中的网络缓存设备并不构成对本发明技术方案的限定,具有实现频道切换功能的设备可以为网络缓存设备,但不限于网络缓存设备,还包括位于其他网络位置的设备或者内置于网络节点中,其实现该方法的流程与上述描述的流程相同。
本发明实施例采用客户端检测接收报文的情况,向网络缓存设备反馈组播IP报文的接收情况,从而通过网络缓存设备动态调整发送速率,充分利用网络资源,缩短发送报文的时间,减少频道切换的延时,降低了IPTV***部署和运营的成本,提高了频道切换方案的普适性和可扩展性,改善了用户的体验程度。
如图4所示,为本发明实施例中的一种频道切换装置结构图,包括:
缓存模块402,用于缓存频道的视频流。
具体来说,缓存模块402用于接收从头端设备发送给客户端的所有频道的视频流,对每个频道设置缓存空间,缓存频道的视频流。对每个频道的报文,可以只缓存一份数据。由于每个频道的缓存空间是独立的,因此,当为用户提供快速频道切换服务时,读取缓存的视频流的起始点不同不影响为其他用户提供快速频道切换服务时读取缓存的视频流。
接收模块404,用于接收客户端发送的频道切换请求,请求从第一频道切换到第二频道。
用户希望切换频道时,由客户端向网络节点发送频道切换请求,请求从第一频道切换到用户需要的第二频道。所述频道切换请求可以使用RTCP协议,也可以使用RTCP扩展协议,或者其它专用或私有协议或者信令等。
推送模块406,用于根据接收模块404发送的频道切换请求,向所述客户端推送所述缓存模块402缓存的所述第二频道的视频流。
具体来说,推送模块406用于接收客户端发送的频道切换请求,按照缓存的视频流的接收顺序,以单播方式向客户端推送缓存的请求切换到的频道的视频流。第一个被推送的视频流,是距离客户端请求切换到的频道的视频流最近的客户端可独立解码报文。如GOP起始报文,即I帧,或者PAT/PMT报文。
这里网络缓存设备以单播方式加速推送缓存的视频流到客户端,不仅仅适用于客户端与某一网络节点直接相连的应用场景,还可以适用于客户端与网络节点之间还有其他中间节点相连的应用场景,这样可以避免因为客户端与网络节点之间还有其他中间节点相连时,使用其他方式推送缓存的视频流到客户端,导致无法将缓存的视频流推送到客户端的情况。第一判断模块408,用于判断所述推送模块406推送的缓存视频流与所述第二频道的视频流是否同步。
所述缓存的视频流为由单播方式从网络缓存设备加速推动到客户端的视频流(或单播IP报文);所述频道的视频流为由组播方式从网络节点正常发送到客户端的媒体流(或组播IP报文)。
其中,这里所述的判断以单播方式加速推送缓存的视频流与网络节点正向其他客户端发送的频道的视频流是否同步的步骤是非常关键的,主要是针对网络缓存设备发送给客户端的缓存的视频流与网络节点正向其他客户端发送的频道的视频流是有一定的延时的应用场景,所以单播方式加速推送缓存的视频流何时能够追赶上网络节点正向其他客户端发送的频道的视频流(即,与网络节点向其他客户端发送的频道的视频流同步)是非常关键的。通过网络缓存设备来判断是否已经追赶上网络节点向其他客户端发送的频道的视频媒体流,从而可以准确确定客户端何时加入组播,减少从单播加速推动方式到用组播方式从网络节点向发送的频道的视频媒体流切换的时延。
第一通知模块409,用于当所述判断模块判断所述推送的缓存视频流与所述第二频道的视频流同步,则发送通知消息给所述客户端,通知所述客户端发送加入所述第二频道的组播组请求。
所述通知消息中携带所述第二频道的组播组地址信息、加入所述第二频道的时间信息,以及请求终止推送所述视频流的时间信息的任意一种或多种信息组合,例如至少包含一个时间参数,用来表明在该时间后,发起加入组播,若时间为0,表明客户端要立刻加入组播组。
所述装置进一步包括:标记模块412,与缓存模块402相连,用于对所述缓存模块缓存的视频流设置报文标记,标明终端可独立解码的视频流在缓存中的起始位置(如I帧,IDR帧位置等)。
所述装置还进一步包括:
第二通知模块410,用于通知所述客户端发送终止推送所述视频流请求。
和第一处理模块411,用于接收所述客户端发送的终止返回的缓存的视频流请求后,停止向所述客户端推送所述缓存视频流;其中所述客户端返回的终止发送缓存的视频流消息中携带有能够确认客户端在已接收的第二频道组播视频流和已接收的缓存的第二频道视频流之间未发送报文的信息;例如:网络节点通知网络缓存设备所述正准备向客户端发送的频道的视频流的报文的序列号,若网络缓存设备检测发现向客户端发送的缓存的视频流的报文和网络节点正准备发送的频道的视频流之间还存在没有发送的报文,网络缓存设备以低速率发送所述还没有发送的缓存的视频流的报文。
以及降低速率模块418,用于所述第二通知模块通知所述客户端发送终止推送所述视频流请求之前,降低向所述客户端推送所述第二频道的缓存视频流的发送速率。
当所述装置用于判断下一个用于客户端可独立解码的所述缓存的视频流是否即将到来时,所述装置还包括第二判断模块414。
所述第二判断模块414,用于判断下一个客户端可独立解码的视频帧是否到达,并将所述判断结果发送给第二处理模块415处理。
所述第二处理模块415,用于若所述第二判断模块414判断下一个客户端可独立解码的视频帧到达,则直接通知客户端加入组播组;否则将所述接收模块404发送的频道切换请求发送给所述推送模块406进一步处理。
所述频道切换装置还包括:速率调整模块416,与所述推送模块406相连接,用于根据客户端的反馈,动态调整以单播方式向所述客户端推送所述缓存的视频流的发送速率。
需要强调的是,本发明实施例中的频道切换装置并不构成对本发明技术方案的限定,具有实现频道切换装置可以为网络缓存设备,但不限于网络缓存设备,还包括位于其他网络位置的设备或者内置于网络节点中,其实现功能与上述描述的功能相同。
本发明实施例提供一种频道切换装置,采用以单播方式加速推送缓存的视频流的方法,通过网络缓存设备判断以单播方式加速推送缓存的视频流是否与网络节点以组播方式向客户端推送的频道的视频流同步,来实现快速频道切换,提高了客户端的并发连接数目和频道切换的效率,降低了IPTV***部署和运营的成本,使得频道切换方案的普适性和可扩展性,改善了用户的体验程度。
如图5所示,为本发明实施例中的另一种频道切换装置结构图,包括:
发送模块502,用于发送频道切换请求给网络缓存设备,请求从第一频道切换到第二频道;或者,发送加入所述第二频道的组播组请求给网络节点。
接收模块504,用于根据所述发送模块发送的频道切换请求,接收所述网络缓存设备缓存的所述第二频道的视频流;或者,根据发送模块发送的加入组播组请求,接收网络节点发送的所述第二频道的视频流。
检测模块506,用于根据接收模块504接收的所述网络缓存设备缓存的视频流后,检测所述接收的视频流,并将检测后的结果反馈给网络缓存设备,以使得所述网络缓存设备根据所述检测后的结果,动态调整向客户端发送所述缓存的视频流的发送速率。
具体为:当接收到所述缓存的视频流后,通过检测所述接收的检测结果包括:所述接收到的视频流丢失信息、客户端请求网络缓存设备的发送速率或所述发送速率的增量的任意组合的检测结果反馈给网络缓存设备。
这里接收到缓存的视频流后,可以主动将所述丢失报文的序列号、当前客户端剩余缓冲区大小、网络带宽的利用率等信息的任意组合反馈给网络缓存设备,也可以通过网络缓存设备发送消息给客户端,通知客户端返回所述频道的视频流的相关信息。
当网络缓存设备接收到所述反馈的检测结果后进行分析,从而确定是提高或者降低当前向客户端发送所述缓存的媒体流的发送速率,例如,通过所述检测结果中的丢失报文的序列号,获知发送过程中报文丢包率,若此时丢包率比较高,或者网络资源不足,或者客户端剩余缓冲区较少,则降低发送速率;若此时没有丢包,且有足够的带宽资源,且客户端剩余缓冲区较少,则提高所述发送速率,充分利用网络资源,缩短发送报文的时间,减少了网络缓存设备处理单个用户快速频道切换的时间,提高了网络缓存设备并发数和用户体验程度。
所述发送模块502还用于,根据所述网络缓存单元发送的加入组播组请求通知,发送加入组播组请求给网络节点。
这里可以是发送模块主动向网络节点发送加入组播组请求,也可以是网络缓存设备通知发送模块发送加入组播组的消息后,发送模块向网络节点发送加入组播组请求。
所述接收模块504还用于,当从第二频道切换到第三频道时,接收所述网络缓存设备以所述调整后的发送速率发送的所述第三频道的视频流,其中,所述调整后的发送速率通过在频道切换请求中携带的发送速率获得;或者,为所述网络缓存设备本地存储获得。
需要强调的是,所述频道切换装置应用于客户端,也可以应用于其他网络设备。
本发明实施例通过提供的频道切换装置检测接收报文的情况,向网络缓存设备反馈组播IP报文的接收情况,从而通过网络缓存设备动态调整发送速率,充分利用网络资源,缩短发送报文的时间,减少频道切换的延时,降低了IPTV***部署和运营的成本,提高了频道切换方案的普适性和可扩展性,改善了用户的体验程度。
如图6所示,为本发明实施例中的一种频道切换***结构图,包括:
网络缓存设备604,用于缓存频道的视频流;接收所述客户端发送的频道切换请求,请求从第一频道切换到第二频道;根据所述频道切换请求,向所述客户端推送所述第二频道的缓存视频流;判断所述推送的缓存视频流与所述第二频道的视频流是否同步,如果同步,则发送通知消息给所述客户端,通知所述客户端发送加入所述第二频道的组播组请求。
其中所述缓存频道的视频流为组播源向客户端发送的视频流。组播源为头端的一种设备,即为频道媒体流发起的源头设备。组播源获取视频流的方式包括从***录制,或者从其他有线网络转发。
网络节点606,用于根据客户端发送的加入组播组请求,发送所述第二频道的视频流给客户端。
客户端608,用于发送频道切换请求给所述网络缓存设备;接收所述网络缓存设备推送的缓存视频流;根据所述网络缓存设备的通知,发送加入所述第二频道的组播组请求给网络节点,请求加入所述组播组。
如图6所述的一种频道切换***结构图中,所述网络缓存设备604,还用于接收所述客户端反馈的检测结果,动态调整向客户端发送所述缓存的视频流的发送速率。
所述客户端606,还用于接收并检测所述网络缓存设备604发送的所述第二频道的缓存视频流,将检测结果反馈给网络缓存设备604;
当所述接收的缓存视频流与所述第二频道的视频流同步,则发送加入组播组请求给网络节点,并接收所述网络节点发送的所述频道的视频流。
本发明实施例提供一种频道切换***,通过网络缓存设备判断以单播方式加速推送缓存的视频流是否与网络节点以组播方式向客户端推送的频道的视频流同步,来实现快速频道切换,以及以单播方式动态调整所述推送视频流的速率,提高了客户端的并发连接数目和频道切换的效率,降低了IPTV***部署和运营的成本,使得频道切换方案的普适性和可扩展性,改善了用户的体验程度。
通过以上的实施方式的描述,本领域的技术人员可以清楚地了解到本发明可借助软件加必需的通用硬件平台的方式来或通过硬件来实现,基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使一台终端设备(可以是手机,个人计算机,服务器,或者网络设备等)执行本发明各个实施例所述的方法。
以上所述仅是本发明的优选实施方式,应当指出,对于本技术领域的普通技术人员来说,在不脱离本发明原理的前提下,还可以做出若干改进和润饰,这些改进和润饰也应视本发明的保护范围。

Claims (16)

1.一种频道切换方法,其特征在于,包括:
发送频道切换请求给网络缓存设备,请求从第一频道切换到第二频道;
接收并检测所述网络缓存设备发送的所述第二频道的缓存视频流,将检测结果反馈给网络缓存设备,以使得所述网络缓存设备根据所述检测结果,动态调整向客户端发送所述缓存视频流的发送速率;
发送加入所述第二频道的组播组请求给网络节点;
接收所述网络节点发送的所述第二频道的视频流。
2.根据权利要求1所述的方法,其特征在于,所述检测结果包括:所述接收到的视频流丢失信息、客户端请求网络缓存设备的发送速率或者所述发送速率的增量的任意组合。
3.根据权利要求1所述的方法,其特征在于,所述发送加入所述第二频道的组播组请求给网络节点的步骤还包括:
根据所述网络缓存单元发送的加入组播组请求通知,发送加入组播组请求给网络节点。
4.根据权利要求1所述的方法,其特征在于,所述方法进一步包括:
当从第二频道切换到第三频道时,接收所述网络缓存设备以所述调整后的发送速率发送的所述第三频道的视频流,其中,所述调整后的发送速率通过在频道切换请求中携带的发送速率获得;或者,为所述网络缓存设备本地存储获得。
5.一种频道切换方法,其特征在于,包括:
缓存频道的视频流;
接收所述客户端发送的频道切换请求,请求从第一频道切换到第二频道;
根据所述频道切换请求,向所述客户端推送所述第二频道的缓存视频流;
判断所述推送的缓存视频流与所述第二频道的视频流是否同步,如果同步,则发送通知消息给所述客户端,通知所述客户端发送加入所述第二频道的组播组请求;
所述方法还包括:根据客户端的反馈,动态调整向所述客户端推送所述缓存视频流的发送速率;
所述发送通知消息给所述客户端之前还包括:
降低向所述客户端推送所述第二频道的缓存视频流的发送速率。
6.一种频道切换方法,其特征在于,包括:
缓存频道的视频流;
接收所述客户端发送的频道切换请求,请求从第一频道切换到第二频道;
根据所述频道切换请求,向所述客户端推送所述第二频道的缓存视频流;
判断所述推送的缓存视频流与所述第二频道的视频流是否同步,如果同步,则发送通知消息给所述客户端,通知所述客户端发送加入所述第二频道的组播组请求;
所述方法还包括:根据客户端的反馈,动态调整向所述客户端推送所述缓存视频流的发送速率;
所述方法进一步包括:
通知所述客户端发送终止推送所述视频流请求;
接收所述客户端返回的终止发送缓存的视频流消息后,停止向所述客户端推送所述缓存的视频流;
所述客户端返回的终止发送缓存的视频流消息中携带有能够确认客户端在已接收的第二频道组播视频流和已接收的缓存的第二频道视频流之间未发送报文的信息。
7.一种频道切换方法,其特征在于,包括:
缓存频道的视频流;
接收所述客户端发送的频道切换请求,请求从第一频道切换到第二频道;
根据所述频道切换请求,向所述客户端推送所述第二频道的缓存视频流;
判断所述推送的缓存视频流与所述第二频道的视频流是否同步,如果同步,则发送通知消息给所述客户端,通知所述客户端发送加入所述第二频道的组播组请求;
所述方法还包括:根据客户端的反馈,动态调整向所述客户端推送所述缓存视频流的发送速率;
其中,所述向所述客户端推送所述第二频道的缓存视频流的步骤之前还包括:
判断下一个客户端可独立解码的视频帧是否到达;如果到达,则直接通知所述客户端加入组播组。
8.一种频道切换装置,其特征在于,包括:
发送模块,用于发送频道切换请求给网络缓存设备,请求从第一频道切换到第二频道;或者,发送加入所述第二频道的组播组请求给网络节点;
接收模块,用于根据所述发送模块发送的频道切换请求,接收所述网络缓存设备缓存的所述第二频道的视频流;或者,根据发送模块发送的加入组播组请求,接收网络节点发送的所述第二频道的视频流;
检测模块,用于根据接收模块接收的所述网络缓存设备的缓存视频流后,检测所述缓存视频流,并将检测结果反馈给网络缓存设备,以使得所述网络缓存设备根据所述检测结果,动态调整向客户端发送所述缓存的视频流的发送速率。
9.根据权利要求8所述的装置,其特征在于,所述检测结果包括:所述接收到的视频流丢失信息、客户端请求网络缓存设备的发送速率或所述发送速率的增量的任意组合。
10.根据权利要求9所述的装置,其特征在于,所述发送模块还用于,根据所述网络缓存单元发送的加入组播组请求通知,发送加入组播组请求给网络节点。
11.根据权利要求9所述的装置,其特征在于,所述接收模块还用于:
当从第二频道切换到第三频道时,接收所述网络缓存设备以所述调整后的发送速率发送的所述第三频道的视频流,其中,所述调整后的发送速率通过在频道切换请求中携带的发送速率获得;或者,为所述网络缓存设备本地存储获得。
12.一种频道切换装置,其特征在于,包括:
缓存模块,用于缓存频道的视频流;
接收模块,用于接收客户端发送的频道切换请求,请求从第一频道切换到第二频道;
推送模块,用于根据接收模块发送的频道切换请求,向所述客户端推送所述第二频道的缓存视频流;
第一判断模块,用于判断所述推送模块推送的缓存视频流与所述第二频道的视频流是否同步;
第一通知模块,用于当所述判断模块判断所述推送的缓存视频流与所述第二频道的视频流同步,则发送通知消息给所述客户端,通知所述客户端发送加入所述第二频道的组播组请求;
速率调整模块,用于根据客户端的反馈,动态调整向所述客户端推送所述缓存视频流的发送速率;;
所述装置进一步包括:
第二通知模块,用于通知所述客户端发送终止推送所述视频流请求;
第一处理模块,用于根据所述第二通知模块接收所述客户端返回的终止发送缓存的视频流请求后,停止向所述客户端推送所述缓存视频流;其中所述客户端返回的终止发送缓存的视频流消息中携带有能够确认客户端在已接收的第二频道组播视频流和已接收的缓存的第二频道视频流之间未发送报文的信息。
13.根据权利要求12所述的装置,其特征在于,所述装置进一步还包括:降低速率模块,用于通知所述客户端发送终止推送所述视频流请求之前,降低向所述客户端推送所述第二频道的缓存视频流的发送速率。
14.一种频道切换装置,其特征在于,包括:
缓存模块,用于缓存频道的视频流;
接收模块,用于接收客户端发送的频道切换请求,请求从第一频道切换到第二频道;
推送模块,用于根据接收模块发送的频道切换请求,向所述客户端推送所述第二频道的缓存视频流;
第一判断模块,用于判断所述推送模块推送的缓存视频流与所述第二频道的视频流是否同步;
第一通知模块,用于当所述判断模块判断所述推送的缓存视频流与所述第二频道的视频流同步,则发送通知消息给所述客户端,通知所述客户端发送加入所述第二频道的组播组请求;
速率调整模块,用于根据客户端的反馈,动态调整向所述客户端推送所述缓存视频流的发送速率;
其中,所述装置还包括:
第二判断模块,用于判断下一个客户端可独立解码的视频帧是否到达,并将所述判断结果发送给第二处理模块处理;
第二处理模块,用于根据所述第二判断模块判断下一个用于客户端可独立解码的所述缓存的视频流即将到来,则直接通知客户端加入组播组;否则将所述接收模块发送的频道切换请求发送给所述推送模块。
15.一种频道切换***,其特征在于,包括:
网络缓存设备,用于缓存频道的视频流;接收所述客户端发送频道切换请求;根据所述频道切换请求,向所述客户端推送所述述第二频道的缓存视频流,同时,接收所述客户端反馈的检测结果,动态调整向客户端发送所述缓存的视频流的发送速率;
客户端,用于发送频道切换请求给网络缓存设备,请求从第一频道切换到第二频道;接收并检测所述网络缓存设备发送的所述第二频道的缓存视频流,将检测结果反馈给网络缓存设备;同时,发送加入所述第二频道的组播组请求给网络节点;接收所述网络节点发送的所述第二频道的视频流。
16.根据权利要求15所述的***,其特征在于,所述客户端还用于,根据所述网络缓存单元发送的加入组播组请求通知,发送加入组播组请求给网络节点。
CN200910004013.5A 2008-12-12 2009-01-21 一种频道切换方法、装置和*** Active CN101753973B (zh)

Priority Applications (7)

Application Number Priority Date Filing Date Title
CN200910004013.5A CN101753973B (zh) 2008-12-12 2009-01-21 一种频道切换方法、装置和***
EP11176168.0A EP2385707B1 (en) 2008-12-12 2009-08-06 Channel switching method, device, and system
PCT/CN2009/073132 WO2010066135A1 (zh) 2008-12-12 2009-08-06 一种频道切换方法、装置和***
EP09831412.3A EP2369840B1 (en) 2008-12-12 2009-08-06 Channel switching method, device and system
ES09831412.3T ES2618337T3 (es) 2008-12-12 2009-08-06 Método, dispositivo y sistema de conmutación de canal
US13/158,217 US20110239262A1 (en) 2008-12-12 2011-06-10 Channel switching method, channel switching device, and channel switching system
US13/158,068 US8935736B2 (en) 2008-12-12 2011-06-10 Channel switching method, channel switching device, and channel switching system

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
CN200810218385.3 2008-12-12
CN200810218385 2008-12-12
CN200910004013.5A CN101753973B (zh) 2008-12-12 2009-01-21 一种频道切换方法、装置和***

Publications (2)

Publication Number Publication Date
CN101753973A CN101753973A (zh) 2010-06-23
CN101753973B true CN101753973B (zh) 2013-01-02

Family

ID=42242326

Family Applications (1)

Application Number Title Priority Date Filing Date
CN200910004013.5A Active CN101753973B (zh) 2008-12-12 2009-01-21 一种频道切换方法、装置和***

Country Status (5)

Country Link
US (2) US8935736B2 (zh)
EP (2) EP2369840B1 (zh)
CN (1) CN101753973B (zh)
ES (1) ES2618337T3 (zh)
WO (1) WO2010066135A1 (zh)

Families Citing this family (33)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US9106800B2 (en) * 2007-08-31 2015-08-11 At&T Intellectual Property I, L.P. System and method of monitoring video data packet delivery
CN101753973B (zh) 2008-12-12 2013-01-02 华为技术有限公司 一种频道切换方法、装置和***
US20110299442A1 (en) * 2010-06-04 2011-12-08 Sairamesh Nammi Methods and apparatus for controlling location for starting decoding of sub-packets of a communication packet
US20120023517A1 (en) * 2010-07-23 2012-01-26 Gemtek Technology Co., Ltd. Method and System for Measuring an Internet Protocol Television Channel Zapping Delay
CN102378042A (zh) * 2010-08-19 2012-03-14 正文科技股份有限公司 量测网络电视频道切换延迟的方法、***及封包分析单元
CN102547448B (zh) * 2010-12-20 2014-03-19 中兴通讯股份有限公司 频道切换方法、终端及***
CN102651823A (zh) * 2011-02-24 2012-08-29 中兴通讯股份有限公司 在快速频道切换时预先发送加入组播请求的方法和***
CN102231848A (zh) * 2011-06-22 2011-11-02 中兴通讯股份有限公司 Iptv频道切换的方法及装置
CN102710968A (zh) * 2012-05-22 2012-10-03 袁华安 云电视***中视频流同步方法
US9071853B2 (en) * 2012-08-31 2015-06-30 Google Technology Holdings LLC Broadcast content to HTTP client conversion
US9900629B2 (en) 2013-03-13 2018-02-20 Apple Inc. Codec techniques for fast switching with intermediate sequence
CN103281566B (zh) * 2013-06-13 2016-09-14 天脉聚源(北京)传媒科技有限公司 一种视频切换的方法及装置
US20150012660A1 (en) * 2013-07-05 2015-01-08 Nokia Corporation Method and apparatus for quick content channel discovery, streaming, and switching
CN104469541A (zh) * 2013-09-18 2015-03-25 中兴通讯股份有限公司 一种iptv的频道切换方法和装置、终端
US9462308B2 (en) * 2013-10-17 2016-10-04 Crestron Electronics Inc. Audiovisual distribution network
CN105263066A (zh) * 2014-06-13 2016-01-20 珠海全志科技股份有限公司 移动设备视频流传输控制方法及***
US10735823B2 (en) * 2015-03-13 2020-08-04 Telefonaktiebolaget Lm Ericsson (Publ) System and method for optimized delivery of live ABR media
US10432688B2 (en) 2015-03-13 2019-10-01 Telefonaktiebolaget Lm Ericsson (Publ) System and method for optimized delivery of live ABR media
CN105100888B (zh) * 2015-07-17 2017-12-19 上海斐讯数据通信技术有限公司 一种基于olt设备的iptv频道切换加速的方法
JP6819041B2 (ja) * 2015-09-10 2021-01-27 ソニー株式会社 サーバシステムおよびサーバ
US11336928B1 (en) * 2015-09-24 2022-05-17 Amazon Technologies, Inc. Predictive caching of identical starting sequences in content
CN105978847A (zh) * 2015-12-03 2016-09-28 乐视致新电子科技(天津)有限公司 一种数据同步方法和***
CN106937155B (zh) * 2015-12-29 2020-06-02 北京华为数字技术有限公司 接入设备、因特网协议电视iptv***和频道切换方法
US11233868B2 (en) * 2016-01-28 2022-01-25 Mediatek Inc. Method and system for streaming applications using rate pacing and MPD fragmenting
CN107566855B (zh) * 2016-06-30 2020-11-10 华为技术有限公司 频道快速切换的方法、服务器和机顶盒
CN106454394B (zh) * 2016-08-03 2020-04-03 华为技术有限公司 一种dvb频道的快速切换方法以及设备和***
CN110858925B (zh) 2018-08-22 2021-10-15 华为技术有限公司 一种实现视频流切换的方法、设备、***和存储介质
CN110891182B (zh) 2018-09-11 2022-04-12 华为技术有限公司 一种实现视频流切换的方法、装置和***
EP3932082A1 (en) * 2019-02-27 2022-01-05 British Telecommunications public limited company Multicast assisted delivery
CN110505500A (zh) * 2019-08-06 2019-11-26 咪咕视讯科技有限公司 一种缓存数据发送处理方法及装置
CN110677724B (zh) * 2019-10-10 2022-02-18 普联技术有限公司 双模式数据拼接方法、装置及终端设备
GB2598295B (en) 2020-08-19 2023-02-22 British Telecomm Content delivery
CN113852856B (zh) * 2021-10-26 2024-04-26 天翼数字生活科技有限公司 一种快速切换频道的方法

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1750643A (zh) * 2004-09-16 2006-03-22 美国阿尔卡特资源有限合伙公司 具有改进的等待时间的频道切换代理
CN1783831A (zh) * 2004-12-02 2006-06-07 华为技术有限公司 视频组播业务中频道切换的实现方法
WO2006091736A2 (en) * 2005-02-23 2006-08-31 Arroyo Video Solutions, Inc. Fast channel change with conditional return to multicasting
WO2007120245A1 (en) * 2006-04-18 2007-10-25 Thomson Licensing Method for reducing channel change times in a digital video apparatus
CN101267538A (zh) * 2007-03-15 2008-09-17 华为技术有限公司 一种切换网络电视频道的方法和***以及缓存实体

Family Cites Families (71)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5606359A (en) * 1994-06-30 1997-02-25 Hewlett-Packard Company Video on demand system with multiple data sources configured to provide vcr-like services
JP3472659B2 (ja) 1995-02-20 2003-12-02 株式会社日立製作所 映像供給方法および映像供給システム
US7010801B1 (en) * 1999-06-11 2006-03-07 Scientific-Atlanta, Inc. Video on demand system with parameter-controlled bandwidth deallocation
US7992163B1 (en) * 1999-06-11 2011-08-02 Jerding Dean F Video-on-demand navigational system
US6973081B1 (en) * 2000-10-12 2005-12-06 Realnetworks, Inc. System and method for seamlessly joining multicast session
JP2004515163A (ja) * 2000-11-29 2004-05-20 ブリティッシュ・テレコミュニケーションズ・パブリック・リミテッド・カンパニー リアルタイムデータの送信および受信
US7158534B2 (en) * 2000-11-30 2007-01-02 Imajet Communications, Inc. Unified distributed architecture for a multi-point video conference and interactive broadcast systems
EP1342375A1 (en) * 2000-12-13 2003-09-10 The Chinese University Of Hong Kong Method and system for delivering media selections through a network
US6973667B2 (en) * 2001-03-01 2005-12-06 Minerva Networks, Inc. Method and system for providing time-shifted delivery of live media programs
US20090282444A1 (en) 2001-12-04 2009-11-12 Vixs Systems, Inc. System and method for managing the presentation of video
US7656908B1 (en) * 2005-09-30 2010-02-02 At&T Corp. System and method for delivering content in a unicast/multicast manner
JP3900413B2 (ja) * 2002-02-14 2007-04-04 Kddi株式会社 映像情報伝送方式およびプログラム
US7603689B2 (en) * 2003-06-13 2009-10-13 Microsoft Corporation Fast start-up for digital video streams
US7562375B2 (en) * 2003-10-10 2009-07-14 Microsoft Corporation Fast channel change
US20060168632A1 (en) * 2004-02-20 2006-07-27 Yoshimasa Honda Video reception device, video transmission device, and video transmission system
US7430222B2 (en) * 2004-02-27 2008-09-30 Microsoft Corporation Media stream splicer
US20060020995A1 (en) * 2004-07-20 2006-01-26 Comcast Cable Communications, Llc Fast channel change in digital media systems
US7784076B2 (en) * 2004-10-30 2010-08-24 Sharp Laboratories Of America, Inc. Sender-side bandwidth estimation for video transmission with receiver packet buffer
US7574490B2 (en) * 2004-11-20 2009-08-11 Microsoft Corporation Strategies for configuring a server-based information-transmission infrastructure
US7477653B2 (en) * 2004-12-10 2009-01-13 Microsoft Corporation Accelerated channel change in rate-limited environments
US7668914B2 (en) 2005-03-28 2010-02-23 Alcatel Lucent Milestone synchronization in broadcast multimedia streams
US7804831B2 (en) 2005-04-01 2010-09-28 Alcatel Lucent Rapid media channel changing mechanism and access network node comprising same
US8054849B2 (en) 2005-05-27 2011-11-08 At&T Intellectual Property I, L.P. System and method of managing video content streams
US7525965B1 (en) 2005-06-30 2009-04-28 Sun Microsystems, Inc. Trick play for multicast streams
US7472197B2 (en) * 2005-10-31 2008-12-30 Ut Starcom, Inc. Method and apparatus for automatic switching of multicast/unicast live TV streaming in a TV-over-IP environment
US8135040B2 (en) * 2005-11-30 2012-03-13 Microsoft Corporation Accelerated channel change
US20070130601A1 (en) * 2005-12-05 2007-06-07 Weiping Li Internet protocol (IP) television
US7818775B2 (en) * 2005-12-21 2010-10-19 At&T Intellectual Property I, L.P. System and method for recording and time-shifting programming in a television distribution system with limited content retention
US7885286B2 (en) * 2005-12-23 2011-02-08 Netsocket, Inc. Method and arrangements in an IP network
CN1996813B (zh) * 2006-01-06 2012-05-16 撤克斯坦纳帷葛驯公司 用于区域/广域网络环境中连续媒体流的自适应媒体传输管理
US8713195B2 (en) 2006-02-10 2014-04-29 Cisco Technology, Inc. Method and system for streaming digital video content to a client in a digital video network
US7965771B2 (en) 2006-02-27 2011-06-21 Cisco Technology, Inc. Method and apparatus for immediate display of multicast IPTV over a bandwidth constrained network
US8037506B2 (en) * 2006-03-03 2011-10-11 Verimatrix, Inc. Movie studio-based network distribution system and method
CN100518311C (zh) * 2006-03-27 2009-07-22 中兴通讯股份有限公司 一种减少直播频道切换响应时间的方法
US8160065B2 (en) * 2006-04-12 2012-04-17 Alcatel Lucent Device and method for dynamically storing media data
EP1855478A1 (en) 2006-05-09 2007-11-14 Alcatel Lucent Method for fast zapping between tv channels
CN100429901C (zh) * 2006-05-10 2008-10-29 中国电信股份有限公司 音视频广播网络直播频道切换的方法及结构
US20070266403A1 (en) 2006-05-15 2007-11-15 Sbc Knowledge Ventures, L.P. System and method for personalized video program listing and targeted content advertisement
US8245264B2 (en) 2006-05-26 2012-08-14 John Toebes Methods and systems to reduce channel selection transition delay in a digital network
EP1868367B1 (en) * 2006-06-06 2015-12-09 Alcatel Lucent Fast video channel change
US8145778B2 (en) * 2006-07-28 2012-03-27 Cisco Technology, Inc. Method and system for transitioning streamed digital video content between stream servers in a digital video network
US8031701B2 (en) * 2006-09-11 2011-10-04 Cisco Technology, Inc. Retransmission-based stream repair and stream join
US8769591B2 (en) * 2007-02-12 2014-07-01 Cisco Technology, Inc. Fast channel change on a bandwidth constrained network
US20080201752A1 (en) 2007-02-16 2008-08-21 At&T Knowledge Ventures, L.P. Multicast data packet recovery system
US7761902B2 (en) * 2007-05-11 2010-07-20 At&T Intellectual Property I, L.P. System and method of providing video content
CN101060617B (zh) * 2007-05-22 2010-07-28 华为技术有限公司 一种视频点播控制方法、客户端设备和切换控制装置
US8396082B2 (en) * 2007-06-05 2013-03-12 Core Wireless Licensing S.A.R.L. Time-interleaved simulcast for tune-in reduction
US20090055540A1 (en) * 2007-08-20 2009-02-26 Telefonaktiebolaget Lm Ericsson (Publ) Methods and Systems for Multicast Control and Channel Switching for Streaming Media in an IMS Environment
US8554941B2 (en) 2007-08-30 2013-10-08 At&T Intellectual Property I, Lp Systems and methods for distributing video on demand
KR100880893B1 (ko) * 2007-09-14 2009-01-30 한국전자통신연구원 복수의 멀티캐스트를 이용한 iptv 고속 채널 전환을위한 장치 및 그 방법
CN101132521A (zh) * 2007-09-25 2008-02-27 华为技术有限公司 一种实现iptv频道切换的方法和装置
US9032433B2 (en) 2007-10-05 2015-05-12 Alcatel Lucent Personalized ad insertion during start over service
US8091011B2 (en) * 2007-10-09 2012-01-03 Broadcom Corporation Method and system for dynamically adjusting forward error correction (FEC) rate to adapt for time varying network impairments in video streaming applications over IP networks
EP2059044A3 (en) * 2007-11-07 2009-07-08 Huawei Technologies Co., Ltd. Method and system for IPTV time shift processing
US7986702B1 (en) 2007-11-29 2011-07-26 Bigband Networks Inc. Method and system for streaming multimedia transmissions
US8386629B2 (en) 2007-12-27 2013-02-26 At&T Intellectual Property I, L.P. Network optimized content delivery for high demand non-live contents
CN101471805B (zh) 2007-12-27 2012-12-12 华为技术有限公司 一种业务切换的方法、***和设备
US8185927B2 (en) * 2008-03-31 2012-05-22 Broadcom Corporation Video transmission system based on location data and methods for use therewith
US8014393B1 (en) * 2008-08-05 2011-09-06 Cisco Technology, Inc. Bandwidth optimized rapid channel change in IP-TV network
US8015310B2 (en) * 2008-08-08 2011-09-06 Cisco Technology, Inc. Systems and methods of adaptive playout of delayed media streams
US8752100B2 (en) 2008-08-29 2014-06-10 At&T Intellectual Property Ii, Lp Systems and methods for distributing video on demand
US7830908B2 (en) 2008-11-03 2010-11-09 Cisco Technologies, Inc. Systems and methods of reducing delay in decoding
CN101742269A (zh) 2008-11-17 2010-06-16 华为技术有限公司 一种频道切换方法、装置和***
US10063934B2 (en) * 2008-11-25 2018-08-28 Rovi Technologies Corporation Reducing unicast session duration with restart TV
CN101753973B (zh) * 2008-12-12 2013-01-02 华为技术有限公司 一种频道切换方法、装置和***
CN102334308B (zh) * 2009-02-27 2013-09-11 华为技术有限公司 一种频道切换的异常处理方法、终端设备及频道切换服务器
US20100254462A1 (en) * 2009-04-07 2010-10-07 Cisco Technology, Inc. Method for reducing memory usage with accelerated channel changes
US8161515B2 (en) * 2009-05-13 2012-04-17 Alcatel Lucent Fast channel change handling of late multicast join
US8848548B2 (en) * 2009-08-04 2014-09-30 Qualcomm Incorporated Internet radio broadcast using cellular
US9124513B2 (en) 2009-09-30 2015-09-01 At&T Intellectual Property I, L.P. Load balancing multicast network traffic using virtual channels
KR101303549B1 (ko) 2009-12-21 2013-09-03 한국전자통신연구원 사전 전송 방식을 이용한 주문형 비디오 서비스 시스템 및 그 방법

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1750643A (zh) * 2004-09-16 2006-03-22 美国阿尔卡特资源有限合伙公司 具有改进的等待时间的频道切换代理
CN1783831A (zh) * 2004-12-02 2006-06-07 华为技术有限公司 视频组播业务中频道切换的实现方法
WO2006091736A2 (en) * 2005-02-23 2006-08-31 Arroyo Video Solutions, Inc. Fast channel change with conditional return to multicasting
WO2007120245A1 (en) * 2006-04-18 2007-10-25 Thomson Licensing Method for reducing channel change times in a digital video apparatus
CN101267538A (zh) * 2007-03-15 2008-09-17 华为技术有限公司 一种切换网络电视频道的方法和***以及缓存实体

Also Published As

Publication number Publication date
US20110239262A1 (en) 2011-09-29
CN101753973A (zh) 2010-06-23
ES2618337T3 (es) 2017-06-21
US8935736B2 (en) 2015-01-13
EP2369840A4 (en) 2012-06-13
EP2385707A3 (en) 2012-02-29
US20110258674A1 (en) 2011-10-20
EP2369840B1 (en) 2016-12-14
EP2369840A1 (en) 2011-09-28
EP2385707B1 (en) 2017-04-12
EP2385707A2 (en) 2011-11-09
WO2010066135A1 (zh) 2010-06-17

Similar Documents

Publication Publication Date Title
CN101753973B (zh) 一种频道切换方法、装置和***
US11303682B2 (en) Adaptive bit rates in multicast communications
EP2158747B1 (en) Method and arrangement for improved media session management
EP1982260B1 (en) Method and system for streaming digital video content to a client in a digital video network
US8140699B2 (en) Switching a client from unicasting to multicasting by simultaneously providing unicast and multicast streams to the client
EP2191666B1 (en) Access network handover for a mobile television system
CN100550999C (zh) 一种数字频道快速切换方法和***以及辅助频道生成设备
CN101742269A (zh) 一种频道切换方法、装置和***
CN101938456B (zh) 一种减小媒体延迟的方法、设备及***
US20090055540A1 (en) Methods and Systems for Multicast Control and Channel Switching for Streaming Media in an IMS Environment
EP1867163A2 (en) Fast channel change with conditional return to multicasting
US20120233346A1 (en) Method, apparatus and system for rapid acquisition of multicast realtime transport protcol sessions
JP5610743B2 (ja) コンテンツ受信方法及び装置
WO2009007508A1 (en) Method and apparatus for improving mobile broadcast quality
CN101860471B (zh) 一种媒体流切换方法、装置和***
WO2011095118A1 (zh) 网络时移的处理方法、装置及***
KR101235093B1 (ko) 스트리밍 데이터 전달
KR100651736B1 (ko) 다채널 스트리밍 시스템 및 방법
JP2001148717A (ja) データサーバ装置

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
C14 Grant of patent or utility model
GR01 Patent grant