降低点播实况媒体流时i帧重叠的方法及视频管理服务器的制作方法

文档序号:7678033阅读:134来源:国知局
专利名称:降低点播实况媒体流时i帧重叠的方法及视频管理服务器的制作方法
技术领域
本发明涉及视频监控技术领域,具体涉及降低点播实况媒体流时I帧重叠的方法及视频管理服务器(VM,Video Management)。
背景技术
为方便理解,首先给出如下词语解释VM:位于监控系统中,可以集中管理控制监控系统中的所有设备,调度各种视频监控业务,以及管理分配监控用户权限。编码器(EC,Encoder)位于监控系统前端,可以将模拟视频信号按照指定格式、 指定码率进行编码,并可以将编码后的视频数据单播或组播给其它客户端点播。视频客户端(VC,Video Client)位于监控系统中,作为监控客户端可以进行实况视频监控,也可以通过指定时间段来对EC上的历史视频进行回放,也可以对EC制定存储计划。动态图像专家组(MPEG,MovingPictures Experts Group) _2、MPEG-4、H. 264 压缩编码标准,分别于1995、1999、2003年正式发布。画面组(G0P,Group of Pictures)一个GOP就是一组连续的画面。真双流前端EC编码后得到2股媒体流,一股是实况媒体流,另一股媒体流用于存储。随着数字视频技术和网络技术的发展,网络视频监控系统突破原有模拟监控系统和数字监控系统的局限,借助无处不在的网络,将模拟视频经过编码压缩后在网络上承载, 并在远端解码呈现,这已经成为网络监控技术的发展趋势。但是由于视频信息的信息量太大,要使视频得到有效的应用,必须首先解决视频压缩编码的问题。在这种迫切需求的背景下,多种编码标准应运而生,如主流的MPEG-2、 MPEG-4以及被称为新一代视频编码标准的H. 264,以它们出色的性能受到了广泛的重视和欢迎。当前主流的几种视频编码标准通常对采集的视频数据进行I、P帧编码。其中I帧为原始帧图像序列的第一帧数据,包含庞大的数据信息,需要大量数据包承载;相对于I帧而言,P帧是一个参考帧,是对前I帧或前一个P帧的数据进行预测编码,P帧的码流偏低, 只需少量的数据包。图1给出了采用现有的视频编码标准对视频数据进行编码后,I帧与P 帧的对比图,从图1可以看出1帧的数据信息量相对较大,P帧的数据信息量相对较小。图2给出了现有的典型视频监控系统组网图,如图2所示,在真双流的监控系统中,实况媒体流通常是经网络设备的多个下行端口接入,再由一个上行出端口转发。随着媒体流路数的增加,大量I帧数据容易重合、甚至叠加,网络设备就很容易出现拥塞现象,引发实况媒体流的丢包问题,这势必会影响到用户区视频画面的呈现效果。解码端出现丢包情况,可能是多条媒体I帧数据包的重合乃至叠加,引发网络拥塞,而造成的媒体流丢包。如图2中,某台EC与其它多个EC同时发送媒体流数据,如果多条媒体流的I帧数据发生重叠,就容易造成网络设备的上游接口出现拥塞现象,会造成点播这几路媒体流的多个VC都会出现丢包、画面卡顿的问题。

发明内容
本发明提供降低点播实况媒体流时I帧重叠的方法及VM、监控客户端、前端设备, 以降低点播实况媒体流时I帧重叠现象的发生。本发明的技术方案是这样实现的一种降低点播实况媒体流时I帧重叠的方法,该方法包括视频管理服务器VM周期性统计上报丢包的监控客户端,并确定上报丢包的各监控客户端对应的前端设备;其中,所述监控客户端周期性检测来自前端设备的实况媒体流是否丢包,当检测到丢包时,向所述VM发送丢包通知消息;当VM完成一次统计后,向上报丢包的监控客户端对应的前端设备发送I帧调整通知消息,以使得接收到I帧调整通知消息的各前端设备调整自身的实况媒体流的I帧编码时间或发送时间。所述VM向上报丢包的监控客户端对应的前端设备发送I帧调整通知消息包括VM对上报丢包的监控客户端对应的前端设备,按照点播频率的从高到低进行排序,从排序结果中挑选出部分前端设备,向挑选出的各前端设备发送I帧调整通知消息。所述前端设备调整自身的实况媒体流的I帧编码时间包括前端设备在当前画面组GOP中,随机增编一定数量的P帧后,再对下一个GOP进行编码。所述数量为1 (G0P-1)中的任意数值。所述前端设备调整自身的实况媒体流的I帧发送时间包括前端设备将缓存中的下一个待发送的实况媒体流的I帧数据包,随机延迟一定时长后再发送给监控客户端。所述时长为(1 (G0P-1)/2) *1000/G0P ms中的任意数值,且相邻两个取值的间隔为 1000/G0P ms。所述监控客户端周期性检测来自前端设备的实况媒体流是否丢包进一步包括当监控客户端在一个检测周期内未检测到丢包时,将当前检测周期延长;当监控客户端在一个检测周期内检测到丢包时,将当前检测周期恢复为初始检测周期。VM预设I帧调整次数到达上限的前端设备列表,该列表初始时为空;所述VM完成一次统计后进一步包括VM查看I帧调整次数到达上限的前端设备列表,对于本次统计到的上报丢包的监控客户端对应的前端设备,若有前端设备位于所述列表中,则确定该前端设备不参与本次I 帧调整;且,所述VM向上报丢包的监控客户端对应的前端设备发送I帧调整通知消息进一步包括VM更新各前端设备的I帧调整次数,且若一个前端设备的I帧调整次数到达预设最大调整次数,则将该前端设备标识放入所述列表中。一种VM,位于监控系统中,包括
丢包统计模块周期性统计上报丢包的监控客户端,并确定上报丢包的各监控客户端对应的前端设备,将各前端设备标识发送给I帧调整通知模块;I帧调整通知模块当接收到丢包统计模块发来的各前端设备标识时,向各前端设备发送I帧调整通知消息,以使得接收到I帧调整通知消息的各前端设备调整自身的实况媒体流的I帧编码时间或发送时间。所述I帧调整通知模块进一步用于,当接收到丢包统计模块发来的各前端设备标识时,按照点播频率的从高到低对所有前端设备进行排序,从排序结果中挑选出部分前端设备,向挑选出的各前端设备发送I帧调整通知消息。所述VM进一步包括调整次数监控模块用于存储I帧调整次数到达上限的前端设备列表,该列表初始时为空;且,所述丢包统计模块进一步用于,在确定上报丢包的各监控客户端对应的前端设备后,查看调整次数监控模块中的列表,对于所确定的任一前端设备,若该前端设备位于所述列表中,则不将该前端设备标识发送给I帧调整通知模块;所述I帧调整通知模块进一步用于,当向各前端设备发送I帧调整通知消息后,更新各前端设备的I帧调整次数,且若一个前端设备的I帧调整次数到达预设最大调整次数, 则将该前端设备标识放入所述列表中。一种监控客户端,位于监控系统中,包括丢包检测模块周期性检测来自前端设备的实况媒体流是否丢包,当检测到丢包时,向VM发送丢包通知消息。所述丢包检测模块进一步用于,当在一个检测周期内未检测到丢包时,将当前检测周期延长;当在一个检测周期内检测到丢包时,将当前检测周期恢复为初始检测周期。一种前端设备,位于监控系统中,包括I帧调整模块当接收到VM发来的I帧调整通知消息时,调整本设备的实况媒体流的I帧编码时间或发送时间。一种前端设备,位于监控系统中,包括I帧调整模块当接收到VM发来的I帧调整通知消息时,在当前GOP中,随机增编一定数量的P帧后,再对下一个GOP进行编码。一种前端设备,位于监控系统中,包括I帧调整模块当接收到VM发来的I帧调整通知消息时,将缓存中的下一个待发送的实况媒体流的I帧数据包,随机延迟一定时长后再发送给监控客户端。与现有技术相比,本发明可降低点播实况媒体流时I帧重叠现象的发生,降低拥塞发生的概率,提升网络可承载的实况媒体流数量,提高带宽的利用率,并优先保证了被较多用户点播的媒体流的传输质量。


图1为现有的采用现有的视频编码标准对视频数据进行编码后,I帧与P帧的对比图;图2为现有的典型视频监控系统组网图;图3为本发明实施例提供的降低监控系统中点播实况媒体流时I帧重叠的方法流程图;图4为本发明实施例提供的VM的组成示意图。
具体实施例方式下面结合附图及具体实施例对本发明再作进一步详细的说明。图3为本发明实施例提供的降低监控系统中点播实况媒体流时I帧重叠的方法流程图,如图3所示,其具体步骤如下步骤301 :VC在每个丢包检测周期内检测来自EC的实况媒体流是否丢包,当检测到丢包时,向VM发送丢包通知消息。初始时,可将丢包检测周期设为10s,即,每隔IOs检测一次实况媒体流是否丢包; 当在某个周期内未检测到丢包时,可将丢包检测周期延长,如延长一倍;为了避免丢包检测周期被无限制地延长,可设置一个最大丢包检测周期,如100s,当丢包检测周期达到最大丢包检测周期时,停止延长;当检测到丢包、且当前丢包检测周期大于初始丢包检测周期时,可将当前丢包检测周期恢复为初始丢包检测周期,如10s。本步骤中的丢包通知消息可通过拓展会话发起协议(SIP,Session Initiation Protocol)的Notify消息得到,在Notify消息体中增加“VC Information”字段。"VC ^formation”字段用于携带VC的IP地址以及发生丢包的信息。“VC ^formation”字段由“IP Address”字段+Discard”字段组成,其中,“IP Address”字段值为VC的IP地址, "Discard"字段值为“ 1 ”时,表示VC检测到丢包。步骤302 :VM在每个丢包统计周期内,统计上报丢包的VC,并将上报丢包的VC的 IP地址记录到hfo表中;同时,VM根据上报丢包的VC的IP地址,获取到对应的前端EC的 IP地址,将该前端EC的IP地址记录到该VC的IP地址所在的表项中。VM每作一次统计前,会清空hfo表。为了得到更准确的统计结果,VM的丢包统计周期最好大于VC的初始丢包检测周期,例如VM的丢包统计周期可以设为VC的初始丢包检测周期的2倍。表1给出了 hfo表的一个示例,如表1所示,hfo表中共包含η条表项,每个表项中包含上报丢包的VC的IP地址、该VC对应的前端EC的IP地址。
权利要求
1.一种降低点播实况媒体流时I帧重叠的方法,其特征在于,该方法包括视频管理服务器VM周期性统计上报丢包的监控客户端,并确定上报丢包的各监控客户端对应的前端设备;其中,所述监控客户端周期性检测来自前端设备的实况媒体流是否丢包,当检测到丢包时,向所述VM发送丢包通知消息;当VM完成一次统计后,向上报丢包的监控客户端对应的前端设备发送I帧调整通知消息,以使得接收到I帧调整通知消息的各前端设备调整自身的实况媒体流的I帧编码时间或发送时间。
2.根据权利要求1所述的方法,其特征在于,所述VM向上报丢包的监控客户端对应的前端设备发送I帧调整通知消息包括VM对上报丢包的监控客户端对应的前端设备,按照点播频率的从高到低进行排序,从排序结果中挑选出部分前端设备,向挑选出的各前端设备发送I帧调整通知消息。
3.根据权利要求1或2所述的方法,其特征在于,所述前端设备调整自身的实况媒体流的I帧编码时间包括前端设备在当前画面组GOP中,随机增编一定数量的P帧后,再对下一个GOP进行编码。
4.根据权利要求3所述的方法,其特征在于,所述数量为1 (G0P-1)中的任意数值。
5.根据权利要求1或2所述的方法,其特征在于,所述前端设备调整自身的实况媒体流的I帧发送时间包括前端设备将缓存中的下一个待发送的实况媒体流的I帧数据包,随机延迟一定时长后再发送给监控客户端。
6.根据权利要求5所述的方法,其特征在于,所述时长为(1 (G0P-1)/2)*1000/G0P ms中的任意数值,且相邻两个取值的间隔为1000/G0P ms。
7.根据权利要求1或2所述的方法,其特征在于,所述监控客户端周期性检测来自前端设备的实况媒体流是否丢包进一步包括当监控客户端在一个检测周期内未检测到丢包时,将当前检测周期延长;当监控客户端在一个检测周期内检测到丢包时,将当前检测周期恢复为初始检测周期。
8.根据权利要求1或2所述的方法,其特征在于,VM预设I帧调整次数到达上限的前端设备列表,该列表初始时为空;所述VM完成一次统计后进一步包括VM查看I帧调整次数到达上限的前端设备列表,对于本次统计到的上报丢包的监控客户端对应的前端设备,若有前端设备位于所述列表中,则确定该前端设备不参与本次I帧调整;且,所述VM向上报丢包的监控客户端对应的前端设备发送I帧调整通知消息进一步包括VM更新各前端设备的I帧调整次数,且若一个前端设备的I帧调整次数到达预设最大调整次数,则将该前端设备标识放入所述列表中。
9.一种VM,位于监控系统中,其特征在于,包括丢包统计模块周期性统计上报丢包的监控客户端,并确定上报丢包的各监控客户端对应的前端设备,将各前端设备标识发送给I帧调整通知模块;I帧调整通知模块当接收到丢包统计模块发来的各前端设备标识时,向各前端设备发送I帧调整通知消息,以使得接收到I帧调整通知消息的各前端设备调整自身的实况媒体流的I帧编码时间或发送时间。
10.根据权利要求9所述的VM,其特征在于,所述I帧调整通知模块进一步用于,当接收到丢包统计模块发来的各前端设备标识时,按照点播频率的从高到低对所有前端设备进行排序,从排序结果中挑选出部分前端设备,向挑选出的各前端设备发送I帧调整通知消肩、O
11.根据权利要求9或10所述的VM,其特征在于,所述VM进一步包括调整次数监控模块用于存储I帧调整次数到达上限的前端设备列表,该列表初始时为空;且,所述丢包统计模块进一步用于,在确定上报丢包的各监控客户端对应的前端设备后,查看调整次数监控模块中的列表,对于所确定的任一前端设备,若该前端设备位于所述列表中,则不将该前端设备标识发送给I帧调整通知模块;所述I帧调整通知模块进一步用于,当向各前端设备发送I帧调整通知消息后,更新各前端设备的I帧调整次数,且若一个前端设备的I帧调整次数到达预设最大调整次数,则将该前端设备标识放入所述列表中。
12.—种监控客户端,位于监控系统中,其特征在于,包括丢包检测模块周期性检测来自前端设备的实况媒体流是否丢包,当检测到丢包时,向 VM发送丢包通知消息。
13.根据权利要求12所述的监控客户端,其特征在于,所述丢包检测模块进一步用于, 当在一个检测周期内未检测到丢包时,将当前检测周期延长;当在一个检测周期内检测到丢包时,将当前检测周期恢复为初始检测周期。
14.一种前端设备,位于监控系统中,其特征在于,包括I帧调整模块当接收到VM发来的I帧调整通知消息时,调整本设备的实况媒体流的I 帧编码时间或发送时间。
15.一种前端设备,位于监控系统中,其特征在于,包括I帧调整模块当接收到VM发来的I帧调整通知消息时,在当前GOP中,随机增编一定数量的P帧后,再对下一个GOP进行编码。
16.一种前端设备,位于监控系统中,其特征在于,包括I帧调整模块当接收到VM发来的I帧调整通知消息时,将缓存中的下一个待发送的实况媒体流的I帧数据包,随机延迟一定时长后再发送给监控客户端。
全文摘要
本发明公开了降低点播实况媒体流时I帧重叠的方法及视频管理服务器。方法包括VM周期性统计上报丢包的监控客户端,并确定上报丢包的各监控客户端对应的前端设备;其中,所述监控客户端周期性检测来自前端设备的实况媒体流是否丢包,当检测到丢包时,向所述VM发送丢包通知消息;当VM完成一次统计后,向上报丢包的监控客户端对应的前端设备发送I帧调整通知消息,以使得接收到I帧调整通知消息的各前端设备调整自身的实况媒体流的I帧编码时间或发送时间。本发明降低了点播实况媒体流时I帧重叠现象的发生。
文档编号H04N7/26GK102209237SQ20111013942
公开日2011年10月5日 申请日期2011年5月26日 优先权日2011年5月26日
发明者周绪龙, 周迪, 林鹏程, 顾雷雷 申请人:杭州华三通信技术有限公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1