通过网络传输媒体的方法及系统技术方案

技术编号:4251008 阅读:297 留言:0更新日期:2012-04-11 18:40
一种通过网络传输媒体的方法,该方法包括:把源媒体编码成若干数据包,监测一当前组数据包的实时传输状态,绘制可以反映出不同传输速率下传输质量的实效曲线。根据所述一当前组数据包的实时传输状态和所述实效曲线计算下一组数据包的目标传输速率,并为所述下一组数据包确定一个控制策略,以实现该目标传输速率。

【技术实现步骤摘要】

本专利技术涉及媒体传输系统及方法。
技术介绍
媒体流用来通过网络在发送端和接收端之间传输媒体,其中网络可包括国际互联网、企业内部网或局域网等等,媒体包括视频、音频或其他多媒体。例如,视频流通过网络来传输视频。因为视频的尺寸通常比较大,尤其是实时视频,通常在网络传输的过程中需占据较大的网络带宽。当对某一个视频流所分配的带宽不足时,可能会出现丢包,从而导致在接收端无法重现该视频流。如何在有限的网络带宽内传输视频并保证视频质量一个研究的课题。 比如,一个安防系统通常在不同的位置设置摄像装置,用以记录不同位置和角度的视频。通过编码器对这些视频进行编码,然后通过网络传输给解码器。每个视频流都需占据网络的一些带宽,如果网络出现拥堵,其中一个视频流分配的带宽不足,视频数据会被丢失,则解码器无法还原该视频,整个安防系统存在缺陷。
技术实现思路
本专利技术的目的在于提供一种实时监测网络状况,并调整媒体流传输速率以适应网络带宽变化的方法和控制系统。 本专利技术提供一种通过网络传输媒体的方法,该方法包括把源媒体编码成若干数据包,监测一当前组数据包的实时传输状态,绘制可以反映出不同传输速率下传输质量的实效曲线。根据所述一当前组数据包的实时传输状态和所述实效曲线计算下一组数据包的目标传输速率,并为所述下一组数据包确定一个控制策略,以实现该目标传输速率。 本专利技术还提供一种控制系统,包括一可将视频编码成若干可选择性层的视频编码器;一用来测试视频流当前组数据包的实时传输状态的网络测量模块;一从网络测量模块获得实时传输状态信息的速率分配模块,速率分配模块绘制反映不同选择性图层的视频流质量的实效曲线,速率分配模块根据当前组数据包的实时传输状态和实效曲线计算下一组数据包的目标传输速率;以及一依据所述目标传输速率确定控制策略的优化模块。 附图说明 通过结合附图对于本专利技术的实施例进行描述,可以更好地理解本专利技术,在附图中 图1是依照本专利技术一种视频流系统的一个实施例,该系统通过网络传输若干视频流。 图2是图1中一个视频流的示意性结构框图。 图3是图2所示视频流的一个实效曲线示意图。 图4示意一组编码图片组。 图5是依据图4中编码图片组所设定的选择层示意图。 图6为图1中视频流系统里不同视频流的实效曲线示意图。 具体实施例方式 图1是依据本专利技术一个实施例通过网络11传输媒体的媒体流系统10。该媒体流系统10应用于视频监控系统,其中传输的媒体是视频,网络11为一局域网。若干个网络相机(未图示)录制不同视角的视频,该录制的视频在图中标记为源视频12,然后传输至编码器14进行编码,已编码的视频通过网络11传输,然后由各自对应的接收器16接收。每条由源视频12传输给相应的接收器16的传输流为一个“视频流”。在图1所示实施例中,媒体流系统10拥有同样数量的源视频12和接收器16,而且源视频12和接收器16是一一对应关系。在其他实施例中,若干接收器16通过网络11存取同一源视频12,形成若干个视频流;或一个接收器16通过网络11存取若干个源视频12,形成若干个视频流。每个视频流还包括一个实时控制模块18。每个控制模块18控制相应的视频流的实时传输速率。 图2显示的是图1的一个视频流的示意性框图。源视频12传输给编码器14,编码器14把源视频12压缩并编码成一系列图片组。每个图片组包括一定数量的帧,每个帧含有特定的时序。每一帧然后被打包成若干数据包,数据包通过网络11传输出去,然后被相应的接收器16接收。控制模块18获得当前一组数据包Pi的传输状态,然后确定下一组数据包Pi+1的传输速率。在某些实施例中,每组数据包可以是一个图片组、或同一图片组的一部分、或两个或两个以上邻近图片组的结合。 控制模块18包括一个网络测量模块20、一个速率分配模块22和一个优化模块24。网络测量模块20接收当前组数据包Pi的传输状态信息,然后把该传输状态信息发送给速率分配模块22,速率分配模块22在当前组数据包Pi的传输状态的基础上确定下一组数据包Pi+1的目标传输速率,接着发送Pi+1的目标传输速率给优化模块24。优化模块24最终确定可实现该下一组数据包Pi+1的目标传输速率的控制方案。 在某些实施例中,该网络测量模块24可位于系统10的应用层、传输层、网络层或网卡的驱动程序中。用网络测量模块24测得的传输状态信息可能包括丢包、往返迟延时间、发送率(Rs)、接收率(Rr)等。可利用现有的模块测量或设计专门的测量元件测量该传输状态信息。例如,作为一种实施方式,不依赖于时间同步,通过接收器16的反馈信息可测得数据包的往返迟延时间。一旦接收器16接收到当前组数据包Pi,它会把反馈信息发送到网络测量模块20。网络测量模块20获得反馈信息后,始可计算出相应的传送和接收所经历的时间。在另一个实施例中,操作系统10传输层中有一种DCCP/TFRC(数据包拥塞控制协议/TCP友好数据控制)堆栈,用来测试往返迟延时间、丢包率、发送率、接收率等。在又一实施例,实时控制协议的内容可以自行设计从而达到包含所需要的状态信息的目的。 在一个实施例中,当前组数据包Pi的传输速率Rsi依据公式1 Rsi=∑Sizes/(Tsn-Ts0)公式1 其中,∑Sizes是当前组数据包Pi里各数据包尺寸的和,Tsn是编码器14发送该当前组数据包Pi中最后一个数据包的时间,Ts0是编码器发送该当前组数据包Pi中第一个数据包的时间。作为一种实施方式,Tsn和Ts0可包括在当前组数据包Pi的包头中,并被接收器16读取。 当时组数据包Pi的接收率Rri取决于公式2 Rri=∑Sizer/Trn-Tr0公式2 其中,∑Sizer为接收器16所成功接收到的当前组数据包Pi里各数据包尺寸的和,Trn是接收器16接收到当前组数据包Pi最后一个数据包的时间,Tr0是接收器16接收到当前组数据包Pi的第一个数据包的时间。 分配模块22对所传输的视频流定义一条实效曲线,该实效曲线评估在不同传输速率Rs时所对应的不同的用户满意度。3所示为一个示意性的实效曲线26,该实效曲线26的横坐标为传输速率Rs,纵坐标表示在不同传输速率Rs所对应的用户满意度,该值反映接收端用户对不同发送速率Rs的视频的主观感受。在一个实施例中,网络测量模块20测得当前组数据包Pi的当前实际传输速率Rsi。速率分配模块22根据该当前实际传输速率Rsi和实效曲线26,计算下一组数据包Pi+1的传输速率Rsi+1。最后优化模块24依据该Rsi+1对应的控制方案。 在一个实施例中,编码器14是可分级的视频编码器,比如MPEG-4AVC/H.264标准的解码器。实效曲线26是在该可分级的视频编码器14的基础上建立的。视频流在时间序列上被编码成一系列的图片组。每个图片组包括图4所示的16帧,每帧具有一定的时序和尺寸。该图片组包括独立的I帧和附属的P帧。I帧指那些不需任何前帧或后帧的信息就可单独解码的帧。P帧为解码时需要图片组中前面某一帧或某些帧信息的帧。在图4的示范实施例中,第“0”帧是一个I帧,第“1-15”帧是P帧。 如图4和图5所示,该图片组中的16帧提供16个可选择性传输的层,该16个层是由每一帧的重要性决定的。图5所示每一层中,“1”代表本文档来自技高网...

【技术保护点】
一种通过网络传输媒体的方法,包括:    把源媒体编码成若干数据包;    监测一当前组数据包的实时传输状态;    绘制可以反映出不同传输速率下传输质量的实效曲线;    根据所述一当前组数据包的实时传输状态和所述实效曲线计算下一组数据包的目标传输速率;以及    为所述下一组数据包确定一控制策略,以实现该目标传输速率。

【技术特征摘要】
1.一种通过网络传输媒体的方法,包括把源媒体编码成若干数据包;监测一当前组数据包的实时传输状态;绘制可以反映出不同传输速率下传输质量的实效曲线;根据所述一当前组数据包的实时传输状态和所述实效曲线计算下一组数据包的目标传输速率;以及为所述下一组数据包确定一控制策略,以实现该目标传输速率。2.如权利要求1所述的通过网络传输媒体的方法,其中所述媒体为视频。3.如权利要求2所述的通过网络传输媒体的方法,其中监测当前组数据包的实时传输状态包括通过接收器监测当前组数据包的发送速率和接收速率。4.如权利要求3所述的通过网络传输媒体的方法,其中把源媒体编码成若干数据包包括用可伸缩视频编码器将源视频编码成若干个可选择的层。5.如权利要求4所述的通过网络传输媒体的方法,其中若干个可选择的层是按照不同图像帧率进行编排的若干帧所构成的。6.如权利要求4所述的通过网络传输媒体的方法,其中若干个可选择的层是按照不同图像尺寸进行编排的层。7.如权利要求4所述的通过网络传输媒体的方法,其中若干个可选择的层是不同图像帧率序列和不同图像尺寸序列组合的层。8.如权利要求4所述的通过网络传输媒体的方法,其中把源视频编码成数据包包括把源视频编成一系列的图片组,每组图片具有若干帧,而且每个图片组包括独立的I帧和附属的P帧。9.如权利要求3至8中任何...

【专利技术属性】
技术研发人员:徐力钱浙滨张育刘萍
申请(专利权)人:通用电气公司
类型:发明
国别省市:US[美国]

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1