一种多媒体流传输的方法以及媒体流发送设备与流程

文档序号:11388863阅读:164来源:国知局
一种多媒体流传输的方法以及媒体流发送设备与流程

本发明涉及通信领域,尤其涉及一种多媒体流传输的方法以及媒体流发送设备。



背景技术:

多媒体视讯系统又称会议电视、视讯会议等,是指两个或两个以上不同地方的个人或群体,通过现有的各种电信通讯传输媒体,将人物的静、动态图像、语音、文字、图片等多种资料分送到各个用户的计算机上,使得在地理上分散的用户可以共聚一处,通过图形、声音等多种方式交流信息,增加双方对内容的理解能力。目前视频会议逐步向着多网协作、高清化、开发化的方向发展。

一般的多媒体视讯系统包括微控制单元mcu多点控制器(视频会议服务器)、会议室终端、个人计算机pc桌面型终端、电话接入网关(pstngateway)、网闸(gatekeeper)等几个部分。各种不同的终端都连入mcu进行集中交换,组成一个视频会议网络。在多媒体视讯系统中,不同的终端产生不同的媒体流,可以为话音流、视频流、数据流和文件流等,不同的媒体流彼此孤立,同时共享同一个网络接口,即mcu多点控制器,每条媒体流有各自独立的流控、网络探测功能。

现有技术中,是通过优先级分配可用带宽和控制各媒体流的发送带宽,避免对网络造成过载和欠载使用。移动终端确定请求处理的媒体流的资源分配优先级的等级;并按照与确定的等级对应的资源分配策略,为请求处理的媒体流分配带宽资源;其中,资源分配优先级的等级越高,按照该等级对应的资源分配策略所分配的带宽资源越能够满足该等级的媒体流的带宽资源需求;以及使用分配的带宽资源,传输该媒体流的待传输数据。从用户体验的角度来说,在变化的网络下,对可用带宽区分优先级的分配策略固然有用,但不能协同的分配有限的网络资源,高优先级的媒体流如视频流始终优先分配带宽,会用掉大量带宽,导致低优先级的媒体流可用带宽不足。



技术实现要素:

本发明实施例提供了一种多媒体流传输的方法以及媒体流发送设备,用 于在多条媒体流存在的条件下,解决网络资源的协同分配问题,从而合理有效地利用带宽资源。

本发明实施例第一方面提供了一种多媒体流传输的方法,可包括:媒体流发送设备确定当前可用总带宽;媒体流发送设备根据当前可用总带宽,以及在第x周期向媒体流接收设备发送的各条媒体流的发送带宽,确定在第x+1周期向媒体流接收设备发送的每条媒体流的发送带宽,x为大于0的整数;这里主要是要确定第x+1周期发送的每条媒体流的发送带宽,确保低优先级的媒体流也有自己的发送带宽资源,确定好之后,媒体流发送设备在第x+1周期,按照确定的在第x+1周期每条媒体流的发送带宽向媒体流接收设备发送每条媒体流。

其中,当前可用总带宽获取的方式有两种,一般是由媒体流接收设备确定的,再向媒体流发送设备发送当前可用总带宽,另外一种是媒体流发送设备统计实际发送流量,媒体流接收设备统计实际接收流量,再将实际接收流量向媒体流发送设备发送,从而确定当前可用总带宽。

在本发明实施例中,应理解,在第x+1周期发送的每条媒体流是按照确定的在第x+1周期发送的每条媒体流的发送带宽发送的,不是按照现有技术中按照媒体流的优先级来分配带宽的,现有技术中,高优先级的媒体流如视频流始终优先满足,会吃掉大量带宽,导致低优先级的可配带宽不足,所以,在本发明技术中,保证了在多条媒体流的存在的条件下,协同的分配当前可用总带宽,保证了低优先级的媒体流的发送。

结合本发明实施例第一方面,在本发明实施例的第一方面的第一种可能的实现方式中,第x周期的各条媒体流的发送带宽包含基本流的发送带宽,只包含基本流的发送带宽,就说明在第x周期的当前可用总带宽不是很充足,所以,优先保证每条媒体流的基本流的发送。确定在第x+1周期向媒体流接收设备发送的每条媒体流的发送带宽,可包括:媒体流发送设备按照预置比例确定各条媒体流中基本流的第一变化量;这里所说的预置比例可以从上一周期分配的每条媒体流的带宽多少得出,也可以是一个预置的经验值。媒体流发送设备根据第x周期各条媒体流中基本流的发送带宽和第一变化量,确定在第x+1周期每条媒体流的基本流的发送带宽。当变化量为正时,每条媒 体流的发送带宽增加,当变化量为负时,每条媒体流的发送带宽减少。

在本发明实施例中,在第x周期的各条媒体流的发送带宽只包含基本流的发送带宽,无论当前可用总带宽与第x周期的各条媒体流的发送带宽之和的大小怎样,在第x+1周期都保证了每条媒体流的基本流的发送,给本发明实施例增加了一种可行的方案。

结合本发明实施例的第一方面的第一种可能的实现方式,在本发明实施例的第一方面的第二种可能的实现方式中,确定在第x+1周期每条媒体流的基本流的发送带宽之后,方法还可包括:若当前可用总带宽大于第x周期的各条媒体流的基本流的发送带宽之和,则媒体流发送设备确定各条第一类型媒体流中可丢弃流的发送带宽,第一类型媒体流为每条媒体流中包含基本流和可丢弃流的媒体流。这里的前提是若当前可用总带宽大于第x周期的各条媒体流的基本流的发送带宽之和,那么,可以确定第一类型媒体流中可丢弃流的发送带宽,这里具体的确定比例可以根据实际需要而灵活调整。

在本发明实施例中,若当前可用总带宽大于第x周期的各条媒体流的基本流的发送带宽之和,那么,媒体流发送设备可以进一步确定各条第一类型媒体流中可丢弃流的发送带宽,可丢弃流的发送是为了第一类型媒体流在传输的过程中,可能会出现丢失一些媒体数据,如数据包、参考帧等,导致已传输的数据不能解码,既浪费了带宽资源,也降低了网络的使用效率,从而影响用户感知的通信质量,此时,可丢弃流实际上就是一个备用的数据,当原始数据丢失时,会从可丢弃流中找到备用的数据,从而保证了第一类型媒体流,如视频流和音频流的通信质量。

结合本发明实施例第一方面,在本发明实施例的第一方面的第三种可能的实现方式中,第x周期的各条媒体流中包含第一类型媒体流,第一类型媒体流的发送带宽包含基本流的发送带宽和可丢弃流的发送带宽,这就说明在第x周期的当前可用总带宽是充足的,确定在第x+1周期向媒体流接收设备发送的每条媒体流的发送带宽,可包括:若当前可用总带宽大于第x周期的各条媒体流的基本流的发送带宽之和,则媒体流发送设备按照预置比例确定各条媒体流中基本流的第一变化量和第一类型媒体流中可丢弃流的第二变化量;媒体流发送设备根据第x周期各条媒体流中基本流的发送带宽和第一变 化量,确定在第x+1周期每条媒体流的基本流的发送带宽,并根据第x周期各条第一类型媒体流中可丢弃流的发送带宽和第二变化量,确定在第x+1周期各条第一类型媒体流中可丢弃流的发送带宽。这里当前可用总带宽和第x周期的各条媒体流的基本流的发送带宽之和作比较,是因为,不管什么情况下,都需先保证每条媒体流的基本流的发送,当基本流满足之后,再可以确定第一类型媒体流中可丢弃流的发送带宽。

在本发明实施例中,若当前可用总带宽大于第x周期的各条媒体流的基本流的发送带宽之和,所以在确定第x+1周期每条媒体流的发送带宽时,其中,还包含可丢弃流的发送,这样既可以合理有效的利用当前可用总带宽,又发送了可丢弃流,防止了万一在基本流的传输过程中,丢失数据,那么还可以从可丢弃流中找回数据,保证了第一类型媒体流的通信质量。

结合本发明实施例的第一方面的第三种可能的实现方式,在本发明实施例的第一方面的第四种可能的实现方式中,若当前可用总带宽小于第x周期的各条媒体流的基本流的发送带宽之和,则媒体流发送设备按照预置比例确定各条媒体流中基本流的第一变化量;媒体流发送设备根据第x周期各条媒体流中基本流的发送带宽和第一变化量,确定在第x+1周期每条媒体流的基本流的发送带宽。若当前可用总带宽小于第x周期的各条媒体流的基本流的发送带宽之和,那么,在第x+1周期只能确定每条媒体流的基本流的发送带宽,因为带宽资源不足。

在本发明实施例中,若当前可用总带宽小于第x周期的各条媒体流的基本流的发送带宽之和,可以理解为当前的带宽资源不充足,所以,优先满足每条媒体流的基本流的发送,所以,只确定每条媒体流的基本流的发送带宽。这样可以根据当前可用总带宽来灵活的调整下一周期发送的每条媒体流的发送带宽,合理有效的利用网络资源。

结合本发明实施例第一方面,在本发明实施例的第一方面的第五种可能的实现方式中,媒体流发送设备确定当前可用总带宽之后,方法还可包括:媒体流发送设备确定在第x+1周期发送的每条媒体流;因为在第x+1周期发送媒体流的时候,可能和第x周期发送的媒体流不一致。媒体流发送设备根据当前可用总带宽,以及在第x周期向媒体流接收设备发送的各条媒体流的 发送带宽,确定在第x+1周期向媒体流接收设备发送的每条媒体流的发送带宽,包括:媒体流发送设备根据当前可用总带宽,第x+1周期发送的每条媒体流以及在第x周期向媒体流接收设备发送的各条媒体流的发送带宽,确定在第x+1周期向媒体流接收设备发送的每条媒体流的发送带宽。

在本发明实施例中,因为在新的发送周期,可能和上一周期发送的媒体流不完全一致,所以,会先确定一下新发送周期要发送的媒体流,再根据当前可用总带宽,第x+1周期发送的每条媒体流以及在第x周期向媒体流接收设备发送的各条媒体流的发送带宽,确定在第x+1周期向媒体流接收设备发送的每条媒体流的发送带宽,为本发明实施例又提供了一个可选的方案,当多增加了媒体流或减少了媒体流,会根据实际要发送的媒体流而调整要发送的每条媒体流的发送带宽。

结合本发明实施例第一方面,本发明实施例的第一方面的第一种可能的实现方式,本发明实施例的第一方面的第二种可能的实现方式,本发明实施例的第一方面的第三种可能的实现方式,本发明实施例的第一方面的第四种可能的实现方式,本发明实施例的第一方面的第五种可能的实现方式,在本发明实施例的第一方面的第六种可能的实现方式中,按照确定的在第x+1周期每条媒体流的发送带宽向媒体流接收设备发送每条媒体流之前,方法还可包括:媒体流发送设备确定当前可用总带宽与各条媒体流发送带宽之和之间的比例;当比例大于第一预置阈值时,媒体流发送设备调高每条媒体流的编码速率;当比例小于第二预置阈值时,媒体流发送设备调低每条媒体流的编码速率。

在本发明实施例中,媒体流发送设备还是会确定第x+1周期要发送的每条媒体流的发送带宽,但是,当比例大于第一预置阈值时,媒体流发送设备调高每条媒体流的编码速率;当比例小于第二预置阈值时,媒体流发送设备调低每条媒体流的编码速率;即从根源上来解决问题,这样才能充分的利用网络资源。

结合本发明实施例的第一方面的第二种可能的实现方式,本发明实施例的第一方面的第三种可能的实现方式,在本发明实施例的第一方面的第七种可能的实现方式中,方法还可包括:媒体流发送设备确定在第x+1周期的应 发送总流量,应发送总流量为每条媒体流的发送带宽的总和与第x+1周期的时间长度的乘积;媒体流发送设备根据从第x+1周期的开始时刻到当前时刻的每条媒体流的发送流量,预测在第x+1周期的预测发送总流量,当前时刻属于第x+1周期;当预测发送总流量大于应发送总流量时,媒体流发送设备在当前时刻到第x+1周期结束的时间内,减少或停止可丢弃流的发送。

在本发明实施例中,在第x+1周期已经发送每条媒体流的过程中,可能会预测一下该周期会发送的预测发送总流量,当预测发送总流量大于应发送总流量时,媒体流发送设备在当前时刻到第x+1周期结束的时间内,减少或停止可丢弃流的发送,避免了对网络资源造成过载使用。

本发明实施例第二方面提供一种媒体流发送设备,具有实现对应于上述第一方面提供的多媒体流传输的方法的功能。所述功能可以通过硬件实现,也可以通过硬件执行相应的软件实现。所述硬件或软件包括一个或多个与上述功能相对应的模块。

本发明实施例第三方面提供一种媒体流发送设备,该媒体流发送设备中包括收发器,存储器,处理器和总线;所述收发器、所述存储器和所述处理器通过所述总线连接;所述存储器用于存储支持媒体流发送设备执行上述方法的应用程序代码,所述处理器被配置为用于执行所述存储器中存储的应用程序。

所述收发器用于确定当前可用总带宽;在所述第x+1周期,按照确定的在所述第x+1周期每条媒体流的发送带宽向所述媒体流接收设备发送所述每条媒体流;所述处理器用于根据所述当前可用总带宽,以及在第x周期向所述媒体流接收设备发送的各条媒体流的发送带宽,确定在第x+1周期向所述媒体流接收设备发送的每条媒体流的发送带宽,所述x为大于0的整数。

本发明实施例第二至第三方面的有益效果参考本发明实施例第一方面的对应技术方案的有益效果,不再赘述。

需要说明的是,本发的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的全部或部分可以以软件产口的形式体现出来,该计算机软件产品存储在一个存储介质中,本发明实施例第四方面提供了一种计算机存储介质,并与收发器耦合,用于储存为上述媒体流发送设备所用的计算机软件 指令,其包含用于执行上述第一方面为媒体流发送设备所设计的程序。

该存储介质包括:u盘、移动硬盘、只读存储器(rom,read-onlymemory)、随机存取存储器(ram,randomaccessmemory)、磁碟或者光盘等各种可以存储程序代码的介质。

从以上技术方案可以看出,本发明实施例具有以下优点:

在本发明技术方案中,媒体流发送设备根据接收媒体流接收设备发送的当前可用总带宽,以及在第x周期内向媒体流接收设备发送的各条媒体流的发送带宽,确定在第x+1周期内向媒体流接收设备发送的每条媒体流的发送带宽,在第x+1周期内,按照每条媒体流的发送带宽向媒体流接收设备发送每条媒体流,本方案解决了在多条媒体流存在的条件下,对网络资源的协同分配问题,媒体流发送设备按照重新确定的发送带宽发送每条媒体流,保证了低优先级的媒体流的正常发送,从而合理有效地利用带宽资源。

附图说明

为了更清楚地说明本发明实施例技术方案,下面将对实施例和现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其它的附图。

图1为本发明实施例中多媒体流传输系统的示意图;

图2为本发明实施例中多媒体流传输的方法的一个实施例示意图;

图3为本发明实施例中多媒体流传输的方法的另一个实施例示意图;

图4为本发明实施例中媒体流发送设备的一个实施例示意图;

图5为本发明实施例中媒体流发送设备的另一个实施例示意图;

图6为本发明实施例中媒体流发送设备的另一个实施例示意图。

具体实施方式

本发明实施例提供了一种多媒体流协同传输的方法、媒体流发送设备以及媒体流接收设备,用于在多条媒体流存在的条件下,解决网络资源的协同分配问题,从而合理有效地利用带宽资源。

为了使本技术领域的人员更好地理解本发明方案,下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分的实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都应当属于本发明保护的范围。

本发明的说明书和权利要求书及上述附图中的术语“第一”、“第二”、“第三”、“第四”等(如果存在)是用于区别类似的对象,而不必用于描述特定的顺序或先后次序。应该理解这样使用的数据在适当情况下可以互换,以便这里描述的实施例能够以除了在这里图示或描述的内容以外的顺序实施。此外,术语“包括”和“具有”以及他们的任何变形,意图在于覆盖不排他的包含,例如,包含了一系列步骤或单元的过程、方法、系统、产品或设备不必限于清楚地列出的那些步骤或单元,而是可包括没有清楚地列出的或对于这些过程、方法、产品或设备固有的其它步骤或单元。

本发明技术应用于多媒体流传输系统,多媒体流传输系统可以包括常见的多媒体视讯系统,下面以多媒体视讯系统为例,介绍本发明实施例的多媒体流在多媒体视讯系统中的传输过程。多媒体视讯系统又称会议电视、视讯会议等,它可以实现在两点和多点间实时传送活动图像、语音及应用数据(电子白板、桌面共享、文件,文字)等形式的多种媒体流信息。多媒体视讯系统包括媒体流发送设备和媒体流接收设备,媒体流发送设备是数据信息的源处理端,媒体流接收设备是数据信息的接收处理端,为例便于描述,可以将媒体流发送设备描述为源端,媒体流接收设备描述为收端。源端和收端都可以为终端或服务器。终端可以为包括手机、平板电脑、个人数字助理(英文全称:personaldigitalassistant,英文缩写:pda)、销售终端(英文全称:pointofsales,英文缩写:pos)、车载电脑等任意终端设备。

现有技术中,源端向收端发送的各条媒体流的发送带宽是通过优先级控制各媒体数据流的发送带宽,避免对网络造成过载和欠载使用。从用户体验的角度来说,在变化的网络下,对可用带宽区分优先级的分配策略固然有用,但是不能协同的分配有限的网络资源,高优先级的媒体流如视频流始终优先满足,会用掉大量带宽,导致低优先级的媒体流的可用单宽不足。

图1为多媒体流传输系统的示意图。下面结合图1对多媒体流的传输过程做下述简要描述。

本发明实施例中的多媒体流可以包括但不限于音频流、视频流、信令流或文件流等。

需要说明的是,音频流和视频流可以分解为基本流和可丢弃流,音频流的基本流是编码器生成的流,可丢弃流是冗余流;视频流的基本流是参考帧流,可丢弃流是非参考帧流和冗余流;信令流为基本流;文件流为不可丢弃流,可认为是基本流。

在本发明技术中,多媒体视讯系统中的源端先发起会话请求,收端接收该会话请求,作出响应,初始会话时,源端是根据配置的设置确定各条媒体流的发送带宽,并向收端发送各条媒体流。

在初始会话时,源端根据配置设置各路媒体流的初始可用带宽,以及对应的最小使用带宽和最大使用带宽,最小使用带宽和最大使用带宽依赖于源端编码器性能,与选择的编码算法以及编码配置参数相关,是经验数据。媒体流的发送建立之后,收端接收各条媒体流,并对实际接收字节、丢包情况等信息进行统计,计算网络的当前可用总带宽,并持续将其反馈给源端,源端接收到当前可用总带宽之后,可根据当前可用总带宽,上一周期向收端发送的各条媒体流的发送带宽,确定下一周期向收端发送的各条媒体流的发送带宽,在下一周期按照确定的各条媒体流的发送带宽向收端发送各条媒体流,以此往复。

在本发明实施例中,可以分为两种情况,一是第x周期发送的各条媒体流的发送带宽包含基本流的发送带宽,二是第x周期的各条媒体流中包含第一类型媒体流,所述第一类型媒体流的发送带宽包含基本流的发送带宽和可丢弃流的发送带宽,下面对此分别进行说明。

一、第x周期发送的各条媒体流的发送带宽只包含基本流的发送带宽。

如图2所示,本发明实施例中多媒体流传输的方法的一个实施例包括:

201、会话请求建立。

202、媒体流发送设备根据确定的各条媒体流的发送带宽向媒体流接收设备发送各条媒体流。

203、媒体流接收设备根据接收的各条媒体流确定当前可用总带宽并向媒体流发送设备发送。

需要说明的是,步骤201至步骤203的过程和上述图1所述的过程一样,具体此处不再赘述。

204、媒体流发送设备确定当前可用总带宽。

本实施例中,当前可用总带宽一般是由媒体流发送设备得出并向媒体流发送设备发送的,具体为媒体流发送设备在第x周期向媒体流接收设备发送各条媒体流,媒体流接收设备接收各条媒体流,对各条媒体流的实际接收带宽进行统计,确定当前接收总带宽;再根据各条媒体流的当前接收总带宽和前一次向媒体流发送设备发送的可用总带宽确定变化量;当变化量大于预置阈值时,媒体流接收设备将当前接收总带宽作为当前可用总带宽向媒体流发送设备发送,媒体流发送设备接收当前可用总带宽。当前可用总带宽的确定也可以是媒体流发送设备根据各条媒体流的发送总带宽和媒体流接收设备的实际接收总带宽确定当前可用总带宽。

需要说明的是,媒体流接收设备向媒体流发送设备发送当前可用总带宽的时间,与媒体流发送设备向媒体流接收设备发送各条媒体流的时间不一定相对应,即媒体流发送设备在第x+1周期向媒体流接收设备发送各条媒体流,在第x+1周期之前不一定会接收到当前可用总带宽,媒体流发送设备会按照之前接收的当前可用总带宽调整第x+1周期发送的每条媒体流的带宽大小。

205、媒体流发送设备确定当前可用总带宽与各条媒体流发送带宽之和之间的比例。

本实施例中,媒体流发送设备确定当前可用总带宽与各条媒体流发送带宽之和之间的比例;当比例大于第一预置阈值时,媒体流发送设备调高每条媒体流的编码速率;当比例小于第二预置阈值时,媒体流发送设备调低每条媒体流的编码速率。

媒体流发送设备在每个周期发送各条媒数据流之后,都会对发送的所有媒体流的发送总带宽进行统计,示例性的,如果在第x周期的发送总带宽为1000kb/s,确定的当前可用总带宽为1500kb/s,当前可用总带宽超出了发送总带宽的50%,则媒体流发送设备根据此步骤,可以通知编码器使得每条媒 体流的编码速率增加50%;如果在第x周期的发送总带宽为1000kb/s,确定的当前可用总带宽为500kb/s,当前可用总带宽只为发送总带宽的50%,则媒体流发送设备根据此步骤,可以通知编码器使得每条媒体流的编码速率减少50%。这样做是对单宽资源的有效利用,否则,可能出现如下情况,虽然在第x+1周期也会确定每条媒体流的发送带宽,但是,实际编码生成的媒体流的流量没那么多,所以,就相当于虽然分配的发送带宽多,但实际上没那么多的媒体流发送,而该步骤就很好的解决了这个问题。

需要说明的是,若该比例在第二预置阈值和第一预置阈值之间,那么,就直接执行步骤206,可以不调整每条媒体流的编码速率。其中,预置阈值的选取可以是经验值,也可以在系统的运行过程中随实际数据处理的情况和系统性能自适应地更新,具体不做限定。

206、媒体流发送设备根据当前可用总带宽,以及在第x周期向媒体流接收设备发送的各条媒体流的发送带宽,按照预置比例确定各条媒体流中基本流的第一变化量。

本实施例中,媒体流发送设备确定当前可用总带宽之后,若x+1周期向媒体流接收设备发送的媒体流与第x周期是相同的,则根据当前可用总带宽,以及在第x周期向媒体流接收设备发送的各条媒体流的发送带宽,按照预置比例确定各条媒体流中基本流的第一变化量。若不同,先确定在第x+1周期发送的每条媒体流;再根据当前可用总带宽,第x+1周期发送的每条媒体流以及在第x周期向媒体流接收设备发送的各条媒体流的发送带宽,确定在第x+1周期向媒体流接收设备发送的每条媒体流的发送带宽。其中,每条媒体流的发送带宽之和不大于当前可用总带宽,且每条媒体流的发送带宽在每条媒体流的最小使用带宽和最大使用带宽范围内。

示例性的,若当前可用总带宽为1000kb/s,在第x周期向媒体流接收设备发送的各条媒体流发送带宽只为基本流的发送带宽,分别是:视频流的基本流的发送带宽为600kb/s,音频流的基本流的发送带宽为100kb/s,文件流的基本流的发送带宽为100kb/s,那么,1000kb/s-600kb/s-100kb/s-100kb/s=200kb/s,按照预置比例确定的第一变化量分别为视频流200kb/s*(3/4)=150kb/s,音频流200kb/s*(1/8)=25kb/s,文件流200kb/s*(1/8) =25kb/s。其中,预置比例的设定一般是一个经验值。

需要说明的是,若当前可用总带宽大于第x周期的各条媒体流的基本流的发送带宽之和,则媒体流发送设备还可确定各条第一类型媒体流中可丢弃流的发送带宽,第一类型媒体流为每条媒体流中包含基本流和可丢弃流的媒体流。

即第x+1周期确定的每条媒体流的发送带宽还可以是,视频流的基本流的发送带宽为600kb/s,可丢弃流的发送带宽为:1500kb/s,音频流的基本流的发送带宽为100kb/s,可丢弃流的发送带宽为:50kb/s,文件流的基本流的发送带宽为100kb/s。而且,在实际应用中,分配的发送带宽可以根据每条媒体流的实际需要而灵活分配。

应理解,通常情况下,如果在第x周期的各条媒体流的发送带宽只包含基本流的发送带宽,若当前可用总带宽大于第x周期的各条媒体流的基本流的发送带宽之和,那么在第x+1周期在确定每条媒体流的带宽时,会优先把多余的带宽分配在第一类型媒体流的可丢弃流上,这是为了避免在媒体流的传输过程中,若出现丢失包,参考帧等数据,还可以从可丢弃流中获取丢失的数据,保证了第一类型媒体流的通信质量。当然,确定每条媒体流的发送带宽可根据实际应用而调整,不做限定,下面就按照在第x+1周期确定的是每条媒体流的基本流的发送带宽来进行说明。

207、媒体流发送设备根据第x周期各条媒体流中基本流的发送带宽和第一变化量,确定在第x+1周期每条媒体流的基本流的发送带宽。

本实施例中,上述所示例的在第x周期各条媒体流中基本流的发送带宽分别为:视频流的基本流的发送带宽为600kb/s,音频流的基本流的发送带宽为100kb/s,文件流的基本流的发送带宽为100kb/s,第一变化量分别为:视频流150kb/s,音频流25kb/s,文件流25kb/s。

则确定的在第x+1周期每条媒体流的基本流的发送带宽为:视频流的基本流的发送带宽600kb/s+150kb/s=750kb/s,音频流的基本流的发送带宽100kb/s+25kb/s=125kb/s,文件流的基本流的发送带宽100kb/s+25kb/s=125kb/s。

208、媒体流发送设备在第x+1周期,按照确定的在第x+1周期每条媒 体流的发送带宽向媒体流接收设备发送每条媒体流。

本实施例中,媒体流发送设备在第x+1周期,按照确定的视频流的基本流的发送带宽750kb/s,音频流的基本流的发送带宽125kb/s,文件流的基本流的发送带宽125kb/s,向媒体流接收设备发送视频流、音频流和文件流。

在本发明实施例中,媒体流发送设备实现了带宽资源的动态协同分配,即在x+1周期对每条媒体流都确定了发送带宽,不会出现高优先级的媒体流占用低优先级的媒体流的发送带宽,而且对每条媒体流的发送带宽控制的更准确,进而使得网络探测更精确,业务更平稳;网络资源的利用更加合理,减少了网络利用不足和过载等情况。

二、第x周期的各条媒体流中包含第一类型媒体流,第一类型媒体流的发送带宽包含基本流的发送带宽和可丢弃流的发送带宽。

如图3所示,本发明实施例中多媒体流传输的方法的另一个实施例包括:

301、会话请求建立。

302、媒体流发送设备根据确定的各条媒体流的发送带宽向媒体流接收设备发送各条媒体流。

303、媒体流接收设备根据接收的各条媒体流确定当前可用总带宽并向媒体流发送设备发送。

304、媒体流发送设备确定当前可用总带宽。

305、媒体流发送设备确定当前可用总带宽与各条媒体流发送带宽之和之间的比例。

本发明实施例中的步骤301至305与图2所示实施例中的步骤201至205相同,具体此处不作赘述。

需要说明的是,在本发明实施例中,若当前可用总带宽大于第x周期的各条媒体流的基本流的发送带宽之和,执行步骤306,再接着执行步骤308、310,若当前可用总带宽小于第x周期的各条媒体流的基本流的发送带宽之和,执行步骤307、再接着执行步骤309、310。

306、若当前可用总带宽大于第x周期的各条媒体流的基本流发送带宽之和,则媒体流发送设备按照预置比例确定各条媒体流中基本流的第一变化量和第一类型媒体流中可丢弃流的第二变化量。

本实施例中,第x周期的各条媒体流中包含第一类型媒体流,第一类型媒体流的发送带宽包含基本流的发送带宽和可丢弃流的发送带宽。若当前可用总带宽大于第x周期的各条媒体流的基本流的发送带宽之和,则媒体流发送设备按照预置比例确定各条媒体流中基本流的第一变化量和第一类型媒体流中可丢弃流的第二变化量。

示例性的,若当前可用总带宽为1000kb/s,第x周期发送的媒体流为视频流,音频流,文件流,其中,视频流和音频流视为第一类型媒体流,视频流的基本流为400kb/s,可丢弃流为200kb/s,音频流的基本流为50kb/s,可丢弃流为50kb/s,文件流的基本流为100kb/s。按照预置比例确定的第一变化量分别为视频流200kb/s*(1/2)=100kb/s,音频流200kb/s*(1/16)=12.5kb/s,文件流200kb/s*(1/8)=25kb/s,第二变化量分别为视频流200kb/s*(1/4)=50kb/s,音频流200kb/s*(1/16)=12.5kb/s。

需要说明的是,在实际应用中,媒体流包含但不限于视频流,音频流,文件流,还可包括数据流,信令流等。上述所用到的数据只是举例说明,数值可能和实际应用中相差较大。

307、若当前可用总带宽小于第x周期的各条媒体流的基本流的发送带宽之和,则媒体流发送设备按照预置比例确定各条媒体流中基本流的第一变化量。

本实施例中,第x周期的各条媒体流中包含第一类型媒体流,第一类型媒体流的发送带宽包含基本流的发送带宽和可丢弃流的发送带宽。若当前可用总带宽小于第x周期的各条媒体流的基本流的发送带宽之和,则媒体流发送设备按照预置比例确定各条媒体流中基本流的第一变化量。

示例性的,若当前可用总带宽为1000kb/s,第x周期发送的媒体流为视频流,音频流,文件流,其中,视频流和音频流视为第一类型媒体流,视频流的基本流为800kb/s,可丢弃流为400kb/s,音频流的基本流为200kb/s,可丢弃流为100kb/s,文件流的基本流为200kb/s。当前可用总带宽小于第x周期的各条媒体流的基本流的发送带宽之和,则按照预置比例确定各条媒体流中基本流的第一变化量分别为,视频流-200kb/s*(2/3)约为-133kb/s,音频流-200kb/s*(1/3)约为-66.7kb/s,文件流-200kb/s*(1/3)约为-66.7kb/s。

需要说明的是,因为在该步骤中,当前可用总带宽是小于第x周期的各条媒体流的基本流的发送带宽之和,那就说明带宽资源不足,只能优先保证每条媒体流的基本流的发送。

308、媒体流发送设备根据第x周期各条媒体流中基本流的发送带宽和第一变化量,确定在第x+1周期每条媒体流的基本流的发送带宽,并根据第x周期各条第一类型媒体流中可丢弃流的发送带宽和第二变化量,确定在第x+1周期各条第一类型媒体流中可丢弃流的发送带宽。

本实施例中,媒体流发送设备根据第x周期各条媒体流中基本流的发送带宽和第一变化量,并根据第x周期各条第一类型媒体流中可丢弃流的发送带宽和第二变化量,确定在第x+1周期各条第一类型媒体流中可丢弃流的发送带宽。即视频流的发送带宽为基本流的发送带宽400kb/s+100kb/s与可丢弃流的发送带宽200kb/s+50kb/s之和,为750kb/s,音频流的发送带宽为基本流的发送带宽50kb/s+12.5kb/s与可丢弃流的发送带宽50kb/s+12.5kb/s之和,为125kb/s,文件流的发送带宽为100kb/s+25kb/s=125kb/s。

309、媒体流发送设备根据第x周期各条媒体流中基本流的发送带宽和第一变化量,确定在第x+1周期每条媒体流的基本流的发送带宽。

本实施例中,媒体流发送设备根据第x周期各条媒体流中基本流的发送带宽和第一变化量,确定在第x+1周期每条媒体流的基本流的发送带宽。即视频流的发送带宽为800kb/s-133kb/s=667kb/s,音频流的发送带宽为200kb/s-66.7kb/s=133.3kb/s,文件流的发送带宽为200kb/s-66.7kb/s=133.3kb/s。

310、媒体流发送设备在第x+1周期,按照确定的在第x+1周期每条媒体流的发送带宽向媒体流接收设备发送每条媒体流。

本实施例中,若上接步骤308,媒体流发送设备在第x+1周期,按照确定的视频流的发送带宽750kb/s,音频流的发送带宽125kb/s,文件流的发送带宽125kb/s向媒体流接收设备发送视频流、音频流和文件流。

若上接步骤309,媒体流发送设备在第x+1周期,按照确定的视频流的发送带宽667kb/s,音频流的发送带宽133.3kb/s,文件流的发送带宽133.3 kb/s向媒体流接收设备发送视频流、音频流和文件流。

需要说明的是,在本发明实施例中,步骤310若上接步骤308,步骤310中还可包括:媒体流发送设备确定在第x+1周期的应发送总流量,应发送总流量为每条媒体流的发送带宽的总和与第x+1周期的时间长度的乘积;媒体流发送设备根据从第x+1周期的开始时刻到当前时刻的每条媒体流的发送流量,预测在第x+1周期的预测发送总流量,当前时刻属于第x+1周期;当预测发送总流量大于应发送总流量时,媒体流发送设备在当前时刻到第x+1周期结束的时间内,减少或停止可丢弃流的发送。

示例性的,若一个周期为1s,分为5个小周期,媒体流发送设备在第x+1周期接收新的当前可用总带宽800kb/s,即应发送总量为800kb,而第x+1周期的前2/5周期还是按照之前确定的每条媒体流的发送带宽发送的,所以,前2/5周期已发送总量1000kb/s*0.4s=400kb,预测在第x+1周期的预测发送总量为1000kb,1000kb大于800kb,所以,在第x+1周期的后3/5周期减少或停止可丢弃数据流的发送。

在本发明实施例中,提供的是第x周期的各条媒体流中包含第一类型媒体流,第一类型媒体流的发送带宽包含基本流的发送带宽和可丢弃流的发送带宽。在这种情况下,是怎么确定在第x+1周期的每条媒体流的发送带宽,最基本的是不管当前可用总带宽是否第x周期的各条媒体流的基本流发送带宽之和,在第x+1周期都要保证每条媒体流的基本流的发送,保证了多媒体视讯系统的通信,若有可丢弃流的发送,可进一步避免了在媒体流的传输过程中,若出现丢失包,参考帧等数据,还可以从可丢弃流中获取丢失的数据,保证了第一类型媒体流的通信质量。

上面对本发明实施例中的多媒体流传输的方法进行了描述,下面结合图4,并结合前述的方法实施例对本发明实施例中的媒体流发送设备进行描述。如图4所示,本发明实施例中还提供了媒体流发送设备,包括:第一确定模块401、多流协同模块402和发送模块403,第一确定模块401、多流协同模块402和发送模块403可以执行下述所描述的相应功能:

第一确定模块401,用于确定当前可用总带宽;

多流协同模块402,用于根据第一确定模块确定的当前可用总带宽,以及 在第x周期向媒体流接收设备发送的各条媒体流的发送带宽,确定在第x+1周期向媒体流接收设备发送的每条媒体流的发送带宽,x为大于0的整数;

发送模块403,用于在第x+1周期,按照多流协同模块确定的在第x+1周期每条媒体流的发送带宽向媒体流接收设备发送每条媒体流。

进一步的,在本发明的一些实施例中,多流协同模块具体用于执行图2中的步骤202、206、207或者图3中的步骤302、306、307、308。

第一确定模块401具体用于执行图2中的步骤204或者图3中的步骤304。

发送模块403具体用于执行图2中的步骤201、203、208或者图3中的步骤301、303、310。

进一步的,在本发明的一些实施例中,如图4所示,媒体流发送设备还可包括第二确定模块404,第二确定模块404用于执行图2中的步骤205或者图3中的步骤305。

本发明实施例在此不再详述。图3或图4中的装置是以功能模块的形式来呈现。这里的“模块”可以指特定应用集成电路(application-specificintegratedcircuit,asic),电路,执行一个或多个软件或固件程序的处理器和存储器,集成逻辑电路,和/或其他可以提供上述功能的器件。

如图6,本发明实施例中媒体流发送设备的另一个实施例包括:收发器601,存储器602,处理器603和总线604;收发器601、存储器602、处理器603通过总线604连接;存储器602用于存储执行本发明方案中媒体流发送设备所执行方法的应用程序代码,并由处理器603来控制执行。处理器603用于执行所述存储器中存储的应用程序代码。

存储器602可以是只读存储器(read-onlymemory,rom)或可存储静态信息和指令的其他类型的静态存储设备,随机存取存储器(randomaccessmemory,ram)或者可存储信息和指令的其他类型的动态存储设备,也可以是电可擦可编程只读存储器(electricallyerasableprogrammableread-onlymemory,eeprom)、只读光盘(compactdiscread-onlymemory,cd-rom)或其他光盘存储、光碟存储(包括压缩光碟、激光碟、光碟、数字通用光碟、蓝光光碟等)、磁盘存储介质或者其他磁存储设备、或者能够用于携带或存储具有指令或数据结构形式的期望的程序代码并能够由计算机存取的任何其他 介质,但不限于此。存储器可以是独立存在,通过总线与处理器相连接。存储器也可以和处理器集成在一起。

处理器603可以是一个通用中央处理器(cpu),微处理器,特定应用集成电路(application-specificintegratedcircuit,asic),或一个或多个用于控制本发明方案程序执行的集成电路。也可以是一种集成电路芯片,具有信号处理能力,可以是通用处理器、数字信号处理器(dsp)、专用集成电路(asic)、现场可编程门阵列(fpga)或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件,可以实现或者执行本发明实施例中的各方法、步骤及逻辑框图。通用处理器可以是微处理器,也可以是任何常规的处理器等。

总线604可包括一通路,在上述组件之间传送信息。所述收发器601,使用任何收发器一类的装置,用于与其他设备或通信网络通信,如以太网,无线接入网(ran),无线局域网(wirelesslocalareanetworks,wlan)等。

具体的,在本发明的一些实施例中,收发器用于执行上述图2中的步骤201、203、204、208或者图3中的步骤301、303、304、310。

处理器用于执行图2中的步骤202、206、207和图3中的步骤302、306、307、308。

具体的,在本发明的一些实施例中,处理器还用于执行图2中的步骤205或者图3中的步骤305。

本发明实施例还提供了一种计算机存储介质,用于储存为上述图4、图5或图6所述的媒体流发送设备所用的计算机软件指令,其包含用于执行上述方法实施例所设计的程序。通过执行存储的程序,可以实现对多条媒体流的发送带宽的协同调整。

所属领域的技术人员可以清楚地了解到,为描述的方便和简洁,上述描述的系统,装置和单元的具体工作过程,可以参考前述方法实施例中的对应过程,在此不再赘述。

在本申请所提供的几个实施例中,应该理解到,所揭露的系统,装置和方法,可以通过其它的方式实现。例如,以上所描述的装置实施例仅仅是示意性的,例如,所述单元的划分,仅仅为一种逻辑功能划分,实际实现时可 以有另外的划分方式,例如多个单元或组件可以结合或者可以集成到另一个系统,或一些特征可以忽略,或不执行。另一点,所显示或讨论的相互之间的耦合或直接耦合或通信连接可以是通过一些接口,装置或单元的间接耦合或通信连接,可以是电性,机械或其它的形式。

所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部单元来实现本实施例方案的目的。

另外,在本发明各个实施例中的各功能单元可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中。上述集成的单元既可以采用硬件的形式实现,也可以采用软件功能单元的形式实现。

所述集成的单元如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的全部或部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本发明各个实施例所述方法的全部或部分步骤。而前述的存储介质包括:u盘、移动硬盘、只读存储器(rom,read-onlymemory)、随机存取存储器(ram,randomaccessmemory)、磁碟或者光盘等各种可以存储程序代码的介质。

以上所述,以上实施例仅用以说明本发明的技术方案,而非对其限制;尽管参照前述实施例对本发明进行了详细的说明,本领域的普通技术人员应当理解:其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分技术特征进行等同替换;而这些修改或者替换,并不使相应技术方案的本质脱离本发明各实施例技术方案的精神和范围。

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1