专利名称:一种减少直播频道切换响应时间的方法
技术领域:
本发明涉及网络电视领域,特别是涉及一种在直播时减少直播频道切换响应时间的方法。
背景技术:
网络电视业务(即IPTV业务)在国内外发展很快,已经逐渐成为固定网络运营商提高其每用户平均收入(ARPU-Average Revenue Per User)的杀手锏业务之一。通过IPTV平台,普通用户可以进行视频点播,收看实时电视节目,以及进行可视电话等。其中一项非常重要的业务,即直播业务,而目前这种业务在internet网络上,进行频道切换时,用户感受到的响应时间至少为3秒钟甚至更长时间。
直播频道切换时响应时间的构成如下1、机顶盒(以下简称STB,set top box)取直播频道SDP(SDP,SessionDescription Protocol,会话描述协议)时间,0.5秒;2、STB与媒体服务器之间RTSP(RSTP,real time streaming protocol,实时流协议)连接建立时间,0.5秒;3、取得视频关键帧I帧时间,以视频关键帧(I帧)间隔2秒计,平均1秒;4、STB缓存视频Buffer时间,2秒;对以上频道切换响应时间组成分析来看,如果不进行特殊方法处理,用户体验直播频道切换时间将达到4秒左右。
其中,视频关键帧(I帧),是能够完全记载图像数据的帧,也称为全帧,其后还包括P帧以及B帧。P帧是前向预测帧,是根据与前一帧图像的比较,去掉相同数据而构成的帧。B帧是双向预测帧,是根据与前后图像帧比较而得到的帧。P、B帧需要依靠I帧的相关信息发挥作用。I帧、P帧、B帧组成一个固定且循环的结构。因此,只有取得视频关键帧I帧才能保证播放的连贯顺畅。
同时,对于直播实现方式,目前有两种,一种在流媒体服务器与机顶盒之间建立控制通道,直接通过单播方式,将直播数据报文发送到机顶盒;另外一种方式流媒体服务器或者组播网关,将直播数据报文以组播方式发送机顶盒。本文后续记载的正是在单播方式下减少直播切换响应时间的方法。
发明内容
本发明所要解决的技术问题在于提供一种减少直播频道切换响应时间的方法,在直播时尽可能的减少频道切换的响应时间。
为实现上述目的,本发明提供了一种减少直播频道切换响应时间的方法,用于由直播头端、流媒体服务器、机顶盒组成的网络电视网中,媒体服务器与机顶盒之间建立有实时流协议控制通道,该方法包括以下步骤所述媒体服务器接收所述直播头端发送的直播流,对每一频道都缓存预定的视频数据在本地内存中;当发生频道切换时,所述媒体服务器通过所述控制通道将直播频道的会话描述协议文件发送给所述机顶盒;选定媒体服务器中缓存的该切换频道的一关键视频帧,发送该关键视频帧及其后的在媒体服务器中缓存的视频数据给机顶盒的视频缓冲区。
所述的发送为快速发送形式。
所述的方法,还包括媒体服务器向机顶盒发送控制消息,通知机顶盒其将快速发送数据帧的步骤。
所述的方法,还包括如果当前的直播位置距离媒体服务器中缓存的最近的关键视频帧,小于或等于3/4的关键视频帧间距,则发送最近的关键视频帧的前面一个关键视频帧;如果当前的直播位置距离媒体服务器中缓存的最近的关键视频帧,大于3/4的关键视频帧间距,则发送最近的关键视频帧。
所述的方法,还包括媒体服务器给机顶盒发送控制消息,通知机顶盒其将以正常方式发送数据的步骤。
所述的预定的视频数据为至少2.5个关键视频帧间距。
采用本文提供的方法,可将频道切换响应时间改进到2秒左右,这样用户体验效果将大大增强。
图1是本发明所涉及到的直播业务组网图;图2是本发明快速实现直播切换流程图;图3A是本发明的选择快速传送起始位置算法示意图;图3B是本发明的选择快速传送起始位置算法示意图。
具体实施例方式
为使本发明的目的、技术方案和优点更加清楚明白,下面结合实施例和附图,对本发明进一步详细说明。
图1所示为本发明所涉及到的直播业务组网图。该网络由直播头端、中心区域媒体服务器,边缘节点的流媒体服务器以及家庭中的机顶盒STB组成。其中,直播头端用于提供电视节目直播源信号。该直播头端与各地的中心区域媒体服务器连结,各中心区域媒体服务器又继续与边缘地带的流媒体服务器连接。这样,位于各处的用户就可以通过上述几级服务器的中继,接收到直播头端播放的直播节目。
如图中所示例,直播头端100提供直播源信号,中心区域媒体服务器MS0,将直播信号直接中继到边缘区域1和边缘区域2。而该边缘区域1的节点1’由媒体服务器MS1,MS2,MS3组成,MS1又与机顶盒STB1、STB2、STB3连接。下面以一用户使用STB1收看直播节目为例,说明该网络系统是如何实现减少频道切换的时间的。
请参阅图2,图2所示为本发明快速实现直播切换的流程图。系统启动各直播频道(步骤S200)以及流媒体服务器MS0、MS1,并控制将直播频道A、B、C的节目视频数据,通过中心节点的媒体服务器MS0中继到MS1,媒体服务器MS1接收频道A、B、C的数据流,同时为了在切换频道时节约时间,对每个频道的直播流数据,都缓存预定的数据(以下均设该预定数据为至少2.5个关键视频帧间隔,设该关键视频帧间隔为2秒)在本地内存中(步骤S201)。
此时,假定用户正在收看频道A,则STB1与MS1之间已经建立起了实时流协议(RTSP)控制通道。随后用户切换频道,进入频道B(步骤S202)。则MS1马上利用上述RTSP控制通道将频道B的会话描述协议(SDP)文件发送到STB1(步骤S203),做好了转换频道的参数准备。随后,MS1向STB1发送set parameter消息,即将属性x-SpeedupPlay设为YES的消息发送给STB1(步骤S204),以通知STB1,MS1即将快速发送数据帧给它。而该MS1所要快速发送的数据正是缓存在MS1内存中的数据。正是由于MS1中随时都缓存着每个频道的节目数据,使得切换频道时不必如现有技术一般,需等待重新取得新频道的视频关键帧(I帧),才能进行数据的缓冲与显示。
随后,媒体服务器MS1将快速发送频道B缓存的视频直播流(I帧及其后的2秒视频数据)到STB1(步骤S205),其中具体的确定欲发送的I帧的算法包括正在直播的当前位置之后的2.5个I帧间隔的数据都缓存在MS1中,则如果直播的当前位置与最近的下一个I帧,也就是与存在MS1中的最近的I帧的间隔小于或等于3/4比例的I帧间距(1.5秒)时,则从最近的I帧的前面一个I帧开始向STB1快速传送;当直播的当前位置与最近的I帧的间隔大于3/4比例的I帧间距(1.5秒)时,则从最近的I帧开始传送。传送的数据量为2秒视频数据。
以下借助图3A与图3B更加形象的表述该位置选择的过程。如图所示,当位于直播位置a发生切换时,由于a位置与最近的I帧(I1)的距离小于3/4的I帧间距,则从MS1中缓存的I2处起,快速传送I2以及其后2秒的视频数据至机顶盒STB1的视频缓冲区。当位于直播位置b发生切换时,由于b位置与最近的I帧(I1)的距离大于3/4的I帧间距,则从MS1中缓存的I1处起,快速传送I1以及其后2秒的视频数据至机顶盒STB1的视频缓冲区(步骤S206)。
随后,MS1再次向STB1发送set parameter消息,即将属性x-SpeedupPlay设为NO的消息发送给STB1,以通知STB1MS1将以正常速度发送数据帧至STB1的视频缓冲区(步骤S207)。当STB1的视频缓冲区被充满后,将自动播放切换后的频道(步骤S208),用户就可以开始观看频道B的内容了。
本发明所记述的方法,通过随时将每个频道的即将播放的部分节目数据进行缓存的方法,使得频道切换时省去了等待取得新频道的视频关键帧I帧的时间,同时以快速传送的方式将新频道的直播节目数据传送到机顶盒的视频缓冲区,也大大节约了充满视频缓冲区的时间,加快了切换的速度。
本发明的频道切换的响应时间主要由机顶盒与媒体服务器之间交换参数所耗时间以及填满缓冲区所耗时间构成,因此频道切换的响应时间可以改进到2秒左右。如果STB1的视频缓冲区可以进一步改进到只需缓冲后续1秒以内的数据就可以进行视频播放,则用户体验到的频道切换响应时间将接近1秒。
权利要求
1.一种减少直播频道切换响应时间的方法,用于由直播头端、流媒体服务器、机顶盒组成的网络电视网中,媒体服务器与机顶盒之间建立有实时流协议控制通道,其特征在于,该方法包括以下步骤(11)所述媒体服务器接收所述直播头端发送的直播流,对每一频道都缓存预定的视频数据在本地内存中;(12)当发生频道切换时,所述媒体服务器通过所述控制通道将直播频道的会话描述协议文件发送给所述机顶盒;(13)选定媒体服务器中缓存的该切换频道的一关键视频帧,发送该关键视频帧及其后的在媒体服务器中缓存的视频数据给机顶盒的视频缓冲区。
2.如权利要求1所述的方法,其特征在于,在步骤(13)中的发送为快速发送形式。
3.如权利要求2所述的方法,其特征在于,在步骤(12)、(13)之间还包括媒体服务器向机顶盒发送控制消息,通知机顶盒其将快速发送数据帧的步骤。
4.如权利要求1或2或3所述的方法,其特征在于,在步骤(13)中的该选定关键视频帧的步骤包括如果当前的直播位置距离媒体服务器中缓存的最近的关键视频帧,小于或等于3/4的关键视频帧间距,则发送最近的关键视频帧的前面一个关键视频帧;如果当前的直播位置距离媒体服务器中缓存的最近的关键视频帧,大于3/4的关键视频帧间距,则发送最近的关键视频帧。
5.如权利要求1或2或3所述的方法,其特征在于,在步骤(13)之后还包括媒体服务器给机顶盒发送控制消息,通知机顶盒其将以正常方式发送数据的步骤。
6.如权利要求4所述的方法,其特征在于,在步骤(13)之后还包括媒体服务器给机顶盒发送控制消息,通知机顶盒其将以正常方式发送数据的步骤。
7.如权利要求1所述的方法,其特征在于,在步骤(11)中该预定的视频数据为至少2.5个关键视频帧间距。
全文摘要
本发明涉及一种减少直播频道切换响应时间的方法,用于由直播头端、流媒体服务器、机顶盒组成的网络电视网中,媒体服务器与机顶盒之间建立有实时流协议控制通道,该方法包括以下步骤所述媒体服务器接收所述直播头端发送的直播流,对每一频道缓存预定的视频数据在本地内存中;当发生频道切换时,所述媒体服务器通过所述控制通道将直播频道的会话描述协议文件发送给所述机顶盒;选定媒体服务器中缓存的该切换频道的一关键视频帧,发送该关键视频帧及其后的在媒体服务器中缓存的视频数据给机顶盒的视频缓冲区。采用本方法,可将频道切换响应时间减少到2秒左右,使用户体验效果大大增强。
文档编号H04N5/00GK101047838SQ20061001156
公开日2007年10月3日 申请日期2006年3月27日 优先权日2006年3月27日
发明者秦遵明, 杨小锋 申请人:中兴通讯股份有限公司