首页> 中国专利> 媒体会话处理方法方法和相关设备及通信系统

媒体会话处理方法方法和相关设备及通信系统

摘要

本发明实施例公开了媒体会话处理方法和相关设备及通信系统。媒体会话处理方法,可以包括:第一媒体设备确定N个媒体源对应的媒体流之间的全局优先级,N个媒体源为第一媒体设备在第二媒体设备所参与的媒体会话中能够提供的N个媒体源,其中,N个媒体源中的一个媒体源对应有用于在会话中同时联播的至少2路媒体流;第一媒体设备在第一媒体设备与第二媒体设备之间的传输通道出现拥塞的情况下,基于确定的N个媒体源对应的媒体流之间的全局优先级,对第一媒体设备向第二媒体设备发送的N个媒体源对应的媒体流进行拥塞控制。本发明实施例提供技术方案有利于在传输通道拥塞等情况下尽量保证媒体会话的质量。

著录项

  • 公开/公告号CN106302377A

    专利类型发明专利

  • 公开/公告日2017-01-04

    原文格式PDF

  • 申请/专利权人 华为技术有限公司;

    申请/专利号CN201510368853.5

  • 发明设计人 刘艳;杨玮玮;

    申请日2015-06-29

  • 分类号H04L29/06(20060101);

  • 代理机构44202 广州三环专利代理有限公司;

  • 代理人郝传鑫;熊永强

  • 地址 518129 广东省深圳市龙岗区坂田华为总部办公楼

  • 入库时间 2023-06-19 01:21:28

法律信息

  • 法律状态公告日

    法律状态信息

    法律状态

  • 2019-10-15

    授权

    授权

  • 2017-02-01

    实质审查的生效 IPC(主分类):H04L29/06 申请日:20150629

    实质审查的生效

  • 2017-01-04

    公开

    公开

说明书

技术领域

本发明涉及网络通信技术领域,具体涉及媒体会话处理方法和相关设备及通信系统。

背景技术

在传统的媒体会话(如基于中心节点的音视频会议)系统中,位于中心节点的会议服务器会收到来自各个与会终端(即媒体终端)的音视频流,会议服务器结合本地策略和其他与会终端接收能力选择相应的音视频流并转发给其他与会终端,这样各个与会终端之间就建立了正常的音视频通信。

在某些时候,某些与会终端可能偏好某版本(如某个质量版本或某个格式版本)的音视频媒体流,因此一些与会终端可能将某媒体源(如视频源)编码成多个版本的媒体流(多个版本的媒体流例如可包括标清版本的媒体流、高清版本的媒体流和超清版本的媒体流等等),并在会话中同时联播这多个版本的媒体流,接收媒体流的与会终端可根据从同时联播的多个版本的媒体流中选择所需版本的媒体流来播放。

本发明的发明人在研究和实践过程中发现,现有技术中媒体流的发送端通常是毫无节制的同时联播媒体源的多个版本的媒体流,这使得在例如传输通道拥塞等情况下,整个媒体会话的质量可能会被严重影响,进而可能较大的影响到用户产品体验。

发明内容

本发明实施例媒体会话处理方法和相关设备及通信系统,以期在传输通道拥塞等情况下尽量保证媒体会话的质量。

本发明实施例第一方面提供一种媒体会话处理方法,包括:

第一媒体设备确定N个媒体源对应的媒体流之间的全局优先级,所述N为正整数,其中,所述N个媒体源为所述第一媒体设备在第二媒体设备所参与的媒体会话中能够提供的N个媒体源,所述N个媒体源中的一个媒体源对应有用于在所述媒体会话中同时联播的至少2路媒体流;

所述第一媒体设备在所述第一媒体设备与所述第二媒体设备之间的传输通道出现拥塞的情况下,基于确定的所述N个媒体源对应的媒体流之间的全局优先级,对所述第一媒体设备向所述第二媒体设备发送的所述N个媒体源对应的媒体流进行拥塞控制。

结合第一方面,在第一方面的第一种可能的实施方式中,所述N个媒体源对应的媒体流之间的全局优先级基于所述N个媒体源之间的优先级、所述N个媒体源中的每个媒体源分别对应的各媒体流之间的源内优先级和优先级参考权重共同确定,其中,所述优先级参考权重为所述N个媒体源之间的优先级和所述N个媒体源中的每个媒体源分别对应的各媒体流之间的源内优先级之间的参考权重。

结合第一方面,在第一方面的第二种可能的实施方式中,

所述N个媒体源对应的媒体流之间的全局优先级基于所述N个媒体源之间的优先级和所述N个媒体源中的每个媒体源分别对应的各媒体流之间的源内优先级共同确定。

结合第一方面或者第一方面的第一种可能的实施方式或第一方面的第二种可能的实施方式,在第一方面的第三种可能的实施方式中,所述第一媒体设备确定N个媒体源对应的媒体流之间的全局优先级,包括:第一媒体设备通过与所述第二媒体设备协商来确定所述N个媒体源对应的媒体流之间的全局优先级。

结合第一方面的第三种可能的实施方式,在第一方面的第五种可能的实施方式中,所述第一媒体设备通过与所述第二媒体设备协商来确定N个媒体源对应的媒体流之间的全局优先级,包括:

第一媒体设备向所述第二媒体设备发送第一会话消息,其中,所述第一会话消息携带优先级指示,其中,所述优先级指示用于确定出所述N个媒体源对应的媒体流之间的全局优先级;第一媒体设备接收所述第二媒体设备发送的第一会话响应消息;其中,若所述第一会话响应消息携带针对所述优先级指示的确认指示,所述优先级指示所确定出的所述N个媒体源对应的媒体流之间的全局优先级为所述第一媒体设备确定出的所述N个媒体源对应的媒体流之间的全局优先级;

或者,

第一媒体设备向所述第二媒体设备发送第二会话消息,其中,所述第二会话消息携带优先级指示,其中,所述优先级指示用于指示出所述N个媒体源对应的媒体流之间的全局优先级;所述第一媒体设备接收所述第二媒体设备发送的第二会话响应消息;若所述第二会话响应消息携带针对所述优先级指示的调整指示,基于所述调整指示对所述优先级指示所指示出的所述N个媒体源对应的媒体流之间的全局优先级进行调整,其中,调整后的所述N个媒体源对应的媒体流之间的全局优先级为所述第一媒体设备确定出的所述N个媒体源对应的媒体流之间的全局优先级。

结合第一方面的第三种可能的实施方式,在第一方面的第六种可能的实施方式中,所述第一媒体设备通过与所述第二媒体设备协商来确定N个媒体源对应的媒体流之间的全局优先级,包括:

第一媒体设备接收所述第二媒体设备发送的第三会话消息,所述第三会话消息携带优先级指示,其中,所述优先级指示用于确定出所述N个媒体源对应的媒体流之间的全局优先级;所述第一媒体设备向所述第二媒体设备发送第三会话响应消息;其中,所述第三会话响应消息携带针对所述优先级指示的确认指示,所述第一媒体设备基于所述第三会话消息携带的优先级指示确定所述N个媒体源对应的媒体流之间的全局优先级;

或者,

第一媒体设备接收所述第二媒体设备发送的第四会话消息,所述第四会话消息携带优先级指示,其中,所述优先级指示用于确定出所述N个媒体源对应的媒体流之间的全局优先级;所述第一媒体设备向所述第二媒体设备发送第四会话响应消息;其中,所述第四会话响应消息携带针对所述优先级指示的调整指示,其中,基于所述调整指示调整后的所述N个媒体源对应的媒体流之间的全局优先级为所述第一媒体设备确定出的所述N个媒体源对应的媒体流之间的全局优先级。

结合第一方面的第五种至第六种可能的实施方式之中的任意一种可能的实施方式,在第一方面的第七种可能的实施方式中,在所述N大于1的情况下所述优先级指示包括媒体源优先级指示、媒体流源内优先级指示和优先级参考权重指示,

所述媒体源优先级指示用于指示不同媒体源之间的优先级;所述媒体流源内优先级指示用于指示同一个媒体源对应的媒体流之间的源内优先级;所述优先级参考权重指示用于指示出所述媒体源优先级指示和所述媒体流源内优先级指示之间的参考权重。

结合第一方面的第七种可能的实施方式,在第一方面的第八种可能的实施方式中,在所述优先级参考权重指示用于指示出所述媒体源优先级指示的参考权重高于所述媒体流源内优先级指示的参考权重的情况下,

若所述N个媒体源中的媒体源i的优先级高于所述N个媒体源中的媒体源j的优先级,所述媒体源i对应的任意一个媒体流的全局优先级高于所述媒体源j对应的任意一个媒体流的全局优先级,其中,所述媒体源i和所述媒体源j为所述N个媒体源中的任意两个媒体源。

结合第一方面的第七种可能的实施方式,在第一方面的第九种可能的实施方式中,在所述优先级参考权重指示用于指示出所述媒体源优先级指示的参考权重低于所述媒体流源内优先级指示的参考权重的情况下,

若所述N个媒体源之中的媒体源i的优先级高于所述N个媒体源之中的媒体源j的优先级,并且所述媒体源i对应的媒体流ix的源内优先级等于所述媒体源j对应的媒体流jx的源内优先级,则所述媒体流ix的全局优先级高于所述媒体流jx的全局优先级,其中,所述媒体源i和所述媒体源j为所述N个媒体源之中的任意两个媒体源,其中,所述媒体源i对应的媒体流ix为所述媒体源i对应的任意一个媒体流;其中,所述媒体源j对应的媒体流jx为所述媒体源j对应的任意一个媒体流;

或者,

若所述N个媒体源之中的媒体源i的优先级高于所述N个媒体源之中的媒体源j的优先级,并且所述媒体源i对应的媒体流ix的源内优先级等于所述媒体源j对应的媒体流jx的源内优先级,并且所述媒体流ix的源内优先级高于所述媒体源i中的媒体流iy的源内优先级,则所述媒体流jx的全局优先级高于所述媒体流iy的全局优先级,其中,所述媒体源i和所述媒体源j为所述N个媒体源之中的任意两个媒体源,其中,所述媒体流ix和所述媒体流iy为所述媒体源i对应的任意两个媒体流,所述媒体源j对应的媒体流jx为所述媒体源j对应的任意一个媒体流;

或者,若所述N个媒体源之中的媒体源i的优先级高于所述N个媒体源之中的媒体源j的优先级,并且所述媒体源i对应的媒体流ix的源内优先级等于所述媒体源j对应的媒体流jx的源内优先级,并且所述媒体流ix的源内优先级低于所述媒体源i中的媒体流iw的源内优先级,则所述媒体流jx的全局优先级低于所述媒体流iw的全局优先级,其中,所述媒体源i和所述媒体源j为所述N个媒体源之中的任意两个媒体源,所述媒体流ix和所述媒体流iw为所述媒体源i对应的任意两个媒体流,所述媒体源j对应的媒体流jx为所述媒体源j对应的任意一个媒体流。

结合第一方面或第一方面的第一种至第九种可能的实施方式之中的任意一种可能的实施方式,在第一方面的第十种可能的实施方式中,

所述基于确定的所述N个媒体源对应的媒体流之间的全局优先级,对所述第一媒体设备向所述第二媒体设备发送的所述N个媒体源对应的媒体流进行拥塞控制,包括:优先丢弃所述第一媒体设备待向所述第二媒体设备发送的所述N个媒体源对应的媒体流中的全局优先级相对较低的媒体流的部分或全部媒体数据包;或,延迟发送所述第一媒体设备待向所述第二媒体设备发送的所述N个媒体源对应的媒体流中的全局优先级相对较低的媒体流的部分或全部媒体数据包。

本发明实施例第二方面提供一种媒体设备,包括:

确定单元,用于确定N个媒体源对应的媒体流之间的全局优先级,所述N为正整数,其中,所述N个媒体源为所述媒体设备在第二媒体设备所参与的媒体会话中能够提供的N个媒体源,所述N个媒体源中的一个媒体源对应有用于在所述媒体会话中同时联播的至少2路媒体流;

传输控制单元,用于在所述媒体设备与所述第二媒体设备之间的传输通道出现拥塞的情况下,基于确定的所述N个媒体源对应的媒体流之间的全局优先级,对所述媒体设备向所述第二媒体设备发送的所述N个媒体源对应的媒体流进行拥塞控制。

结合第二方面,在第二方面的第一种可能的实施方式中,

所述N个媒体源对应的媒体流之间的全局优先级基于所述N个媒体源之间的优先级、所述N个媒体源中的每个媒体源分别对应的各媒体流之间的源内优先级和优先级参考权重共同确定,其中,所述优先级参考权重为所述N个媒体源之间的优先级和所述N个媒体源中的每个媒体源分别对应的各媒体流之间的源内优先级之间的参考权重。

结合第二方面,在第二方面的第二种可能的实施方式中,

所述N个媒体源对应的媒体流之间的全局优先级基于所述N个媒体源之间的优先级和所述N个媒体源中的每个媒体源分别对应的各媒体流之间的源内优先级共同确定。

可以看出,本发明实施例的技术方案中,作为发送端的第一媒体设备先确定N个媒体源对应的媒体流之间的全局优先级,在所述第一媒体设备与所述第二媒体设备之间的传输通道出现拥塞的情况下,可基于确定的所述N个媒体源对应的媒体流之间的全局优先级,对所述第一媒体设备向所述第二媒体设备发送的所述N个媒体源对应的媒体流进行拥塞控制。其中,由于引入了一种相对行之有效的发送管控机制来对发送端待发送的包括同时联播的媒体流在内的媒体流进行拥塞控制,而拥塞控制机制参考了N个媒体源对应的媒体流之间的全局优先级,因此,有利于在传输通道拥塞等情况下尽量保证全局优先级较高的媒体流的可靠传输,有利于保证媒体会话的质量,进而有利于提升用户产品体验。

附图说明

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

图1-a~图1-c为本发明实施例提供的几种网络架构的示意图;

图2为本发明实施例提供的一种媒体设备的示意图;

图3为本发明实施例提供的一种媒体会话处理方法的流程示意图;

图4为本发明实施例提供的另一种媒体会话处理方法的流程示意图;

图5为本发明实施例提供的另一种媒体会话处理方法的流程示意图;

图6为本发明实施例提供的另一种媒体会话处理方法的流程示意图;

图7-a为本发明实施例提供的一种媒体流源内优先级顺序的示意图;

图7-b为本发明实施例提供的一种媒体源优先级顺序的示意图;

图7-c为本发明实施例提供的一种媒体流全局优先级顺序的示意图;

图7-d为本发明实施例提供的一种媒体流全局优先级顺序的示意图;

图7-e为本发明实施例提供的一种媒体流全局优先级顺序的示意图;

图7-f为本发明实施例提供的一种RTP包的包头格式示意图;

图7-g为本发明实施例提供的一种RTCP包的包头格式的示意图;

图8为本发明实施例提供的另一种媒体设备的示意图;

图9为本发明实施例提供的一种通信系统的示意图。

具体实施方式

本发明实施例媒体会话处理方法和相关装置及通信系统,以期在传输通道拥塞等情况下尽量保证媒体会话的质量。

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

以下分别进行详细说明。

本发明说明书和权利要求书及上述附图中的术语“第一”、“第二”、“第三”和“第四”等是用于区别不同对象,而不是用于描述特定顺序。此外,术语“包括”和“具有”以及它们任何变形,意图在于覆盖不排他的包含。例如包含了一系列步骤或单元的过程、方法、系统、产品或设备没有限定于已列出的步骤或单元,而是可选地还包括没有列出的步骤或单元,或可选地还包括对于这些过程、方法、产品或设备固有的其它步骤或单元。

下面首先介绍几种可能用于实施本发明实施例方案的网络架构。

参见图1-a~图1-c。其中,在图1-a所示网络架构中,若干个媒体终端(在会议场景下媒体终端也可以称为与会终端或者会议终端等)与会议服务器通信连接,位于中心节点的会议服务器可收到来自各与会终端(即媒体终端)的音视频流等等,会议服务器结合本地策略和其他与会终端接收能力选择相应的音视频流并转发给其他与会终端,这样各个与会终端之间就建立了正常的音视频通信。

其中,在图1-b所示网络架构中,两个媒体终端(在会议场景下媒体终端也可以称为与会终端或者会议终端等)通过网络互联,这两个与会终端可通过网络交互音视频流等等,这两个与会终端可以无需会议服务器的参与而建立起正常的音视频通信。

其中,在图1-c所示的多流通信系统的网络架构中涉及会议服务器和多流通信终端。其中,会议服务器可能是多点控制单元(MCU,Multi Control Unit)或多媒体资源功能处理(MRFP,Multimedia Resource Function Processor)实体等。

其中,多流通信终端如软终端、会议终端、智真用户、3G/4G终端和IP多媒体子系统(IMS,IP Multimedia Subsystem)终端等,多流通信终端自身能产生多路音视频流,普通会话初始协议(SIP,Session Initiation Protocol)电话终端或公共交换电话网络(PSTN,Public Switched Telephone Network)电话终端仅能产生一路音频流。在点对点情况下,这种能产生多路音视频流的多流通信终端之间能互相通信而不需要经过MCU;在点对多点情况下,能产生多路音视频流的多流通信终端与其他终端通信经过MCU或MRFP,相当于MCU或MRFP是多点通信的中心节点,负责转发等功能。

其中,媒体终端和会议服务器均可称之为媒体设备。其中,发送媒体流的媒体设备可称之为媒体流发送端(可简称发送端),接收媒体流的媒体设备可称之为媒体流接收端(可简称接收端)。

本发明下面实施例的技术方案,例如可基于图1-a或图1-b或图1-c所示网络架构或形变后的网络架构来具体实施。下面具体的介绍本发明的实施例的一些技术方案。

下面先对同时联播做一些简单说明。所谓“同时联播”,指的是将同一媒体源(如音频或视频)采用不同的编码方式编码成多个独立的媒体流(这多个独立的媒体流的分辨率可能不同、码率可能不同和/或码类型可能不同)后进行同步发送。

参见图2,图2是本发明实施例提供的媒体设备200的结构框图。媒体设备200可包括:至少1个处理器201,存储器205和至少1个通信总线202。通信总线202用于实现这些组件之间的连接通信。

其中,媒体设备200还包含至少1个网络接口204。

其中,媒体设备200可选的可以包含至少1个用户接口203。

可选的,用户接口203可包括显示器(其中,显示器例如为触摸屏、液晶显示器(LCD,Liquid Crystal Display)、全息成像(Holographic)、阴极射线管(CRT,Cathode Ray Tube)或者投影(Projector)等)、点击设备(例如鼠标或轨迹球(trackball)触感板或触摸屏等)、摄像头和/或拾音装置等。

其中,存储器205可以包括只读存储器和随机存取存储器,并向处理器201提供指令和数据。可选的,存储器205中的一部分还可以包括非易失性随机存取存储器。

可选的,在一些可能的实施方式中,存储器205存储如下的元素,可执行模块或者数据结构,或者他们的子集,或者他们的扩展集:操作系统2051和应用程序模块2052。

其中,操作系统2051,可包含各种系统程序,用于实现各种基础业务以及处理基于硬件的任务。应用程序模块2052,可包含各种应用程序,用于实现各种应用业务。

在本发明的实施例中,通过调用存储器205存储的程序或指令,处理器201可用于执行如下步骤:确定N个媒体源对应的媒体流之间的全局优先级,所述N为正整数,其中,所述N个媒体源为所述媒体设备在第二媒体设备所参与的媒体会话中能够提供的N个媒体源,所述N个媒体源中的一个媒体源对应有用于在所述媒体会话中同时联播的至少2路媒体流;在所述媒体设备与所述第二媒体设备之间的传输通道出现拥塞的情况下,基于确定的所述N个媒体源对应的媒体流之间的全局优先级,对所述媒体设备向所述第二媒体设备发送的所述N个媒体源对应的媒体流进行拥塞控制。

在本发明的各实施例中,出现拥塞可以是指如出现延迟和/或丢包率超过第一阈值(第一阈值例如等于5%、8%、2%或其它值),或出现拥塞也可以是指剩余带宽少于第二阈值(第二阈值例如可等于100Kbps、200Kbps、1000bps或其它值)、或出现拥塞也可以是指带宽占用率高于第三阈值(第三阈值例如等于85%、90%、95%、98%或其它值),当然也可通过其它方式来界定是否出现拥塞。总的来说,出现拥塞表示资源紧张的情况将要出现或资源紧张的情况已经出现。在具体应用场景中,可以根据具体需要来对定义那些情况下表示出现拥塞。

可以理解,全局优先级中的“全局”,针对的是一个由多个媒体流所形成的媒体流集合。举例来说,媒体流集合可能由N个媒体源对应的所有媒体流所形成,或媒体流集合可能由所述媒体设备200在第二媒体设备所参与的媒体会话中能够提供的所有媒体源对应的所有媒体流所形成,或媒体流集合可能由所述第二媒体设备和媒体设备200所参与的媒体会话中的所有媒体源对应的所有媒体流所形成,或媒体流集合可能由所述媒体设备200能够提供的所有媒体源对应的所有媒体流所形成,或媒体流集合可能由所述第二媒体设备可能接收到的所有媒体流所形成,或媒体流集合可能由所述第二媒体设备在媒体设备200所参与的媒体会话中可能接收到的所有媒体流所形成。

当然,全局优先级中的“全局”所针对的媒体流集合也可能是通过其它媒体流来形成。全局优先级中的“全局”所针对的媒体流集合至少包括了所述N个媒体源对应的所有媒体流。

其中,媒体源对应的媒体流是指示该媒体源被编码成的媒体流。若媒体源被编码成多个媒体流,那么该媒体源对应有多个媒体流(多个媒体流例如可包括标清版本的媒体流、高清版本的媒体流和/或超清版本的媒体流等),若媒体源只被编码成1个媒体流,那么该媒体源只对应有1个媒体流。

在本发明的一些可能的实施方式中,参与所述会话的媒体设备除了所述第一媒体设备和所述第二媒体设备之外,还可以包括其它一个或多个媒体设备。

在本发明的一些可能的实施方式中,在所述媒体设备200为会议服务器的情况下,所述第二媒体设备为媒体终端。或者,在所述媒体设备200为媒体终端的情况下,所述第二媒体设备可为媒体终端或会议服务器。

其中,所述N例如可为大于或等于1的整数。

例如所述N可等于1、2、3、4、5、6、8、10、15、19、21、30、500或其他值。

在本发明一些可能的实施方式中,所述N个媒体源对应的媒体流之间的全局优先级可以基于所述N个媒体源之间的优先级、所述N个媒体源中的每个媒体源分别对应的各媒体流之间的源内优先级和优先级参考权重共同确定,所述优先级参考权重为所述N个媒体源之间的优先级和所述N个媒体源中的每个媒体源分别对应的各媒体流之间的源内优先级之间的参考权重。

在本发明的一些可能的实施方式中,所述N个媒体源对应的媒体流之间的全局优先级基于所述N个媒体源之间的优先级和所述N个媒体源中的每个媒体源分别对应的各媒体流之间的源内优先级共同确定。

在本发明的一些可能的实施方式中,所述处理器201例如可具体用于通过与所述第二媒体设备协商来确定所述N个媒体源对应的媒体流之间的全局优先级。

在本发明一些可能的实施方式中,所述处理器201也可具体用于,根据用户优先级设置指令确定所述N个媒体源对应的媒体流之间的全局优先级;或根据预配置的优先级确定策略确定所述N个媒体源对应的媒体流之间的全局优先级。

在本发明的一些可能的实施方式中,所述处理器201可具体用于向所述第二媒体设备发送第一会话消息,所述第一会话消息携带优先级指示,所述优先级指示用于确定出所述N个媒体源对应的媒体流之间的全局优先级;接收所述第二媒体设备发送的第一会话响应消息;若所述第一会话响应消息携带针对所述优先级指示的确认指示,所述优先级指示所确定出的所述N个媒体源对应的媒体流之间的全局优先级为所述处理器201确定出的所述N个媒体源对应的媒体流之间的全局优先级;

或者,

处理器201可具体用于,向所述第二媒体设备发送第二会话消息,所述第二会话消息携带优先级指示,其中,所述优先级指示用于确定出所述N个媒体源对应的媒体流之间的全局优先级;接收所述第二媒体设备发送的第二会话响应消息;若所述第二响应会话消息携带针对所述优先级指示的调整指示,基于所述调整指示对所述优先级指示所指示出的所述N个媒体源对应的媒体流之间的全局优先级进行调整,其中,调整后的所述N个媒体源对应的媒体流之间的全局优先级为所述处理器201确定出的所述N个媒体源对应的媒体流之间的全局优先级;

或者,

所述处理器201可具体用于接收第二媒体设备发送的第三会话消息,所述第三会话消息携带优先级指示,其中,所述优先级指示用于确定出所述N个媒体源对应的媒体流之间的全局优先级;向所述第二媒体设备发送第三会话响应消息;所述第三会话响应消息携带针对所述优先级指示的确认指示,基于所述第三会话消息携带的优先级指示确定所述N个媒体源对应的媒体流之间的全局优先级;

或者,

所述处理器201可具体用于接收第二媒体设备发送的第四会话消息,所述第四会话消息携带优先级指示,其中,所述优先级指示用于确定出所述N个媒体源对应的媒体流之间的全局优先级;所述媒体设备向所述第二媒体设备发送第四会话响应消息;其中,所述第四会话响应消息携带针对所述优先级指示的调整指示,其中,基于所述调整指示调整后的所述N个媒体源对应的媒体流之间的全局优先级为所述媒体设备确定出的所述N个媒体源对应的媒体流之间的全局优先级。

在本发明的一些可能的实施方式中,所述第一会话消息或所述第二会话消息或第一会话响应消息或第二会话响应消息还携带端口复用指示,所述端口复用指示用于指示将不同媒体源的具有相同源内优先级的媒体流使用相同的端口地址传输。

在本发明的一些可能的实施方式中,所述第三会话消息或所述第四会话消息或第三会话响应消息或第四会话响应消息还携带端口复用指示,所述端口复用指示用于指示将不同媒体源的具有相同源内优先级的媒体流使用相同的端口地址传输。

在本发明一些可能的实施方式中,所述第一会话消息或所述第二会话消息还可携带有媒体描述,其中,所述媒体描述可用于指示出所述N个媒体源。可选的,在本发明一些可能的实施方式中,所述第一会话响应消息或所述第二会话响应消息还可携带有针对所述媒体描述的确认指示。

在本发明的一些可能的实施方式中,所述第一会话消息或所述第二会话消息还可携带有同时联播指示,其中,所述同时联播指示用于指示所述N个媒体源中的至少一个媒体源支持同时联播。可选的,在本发明一些可能的实施方式中,所述第一会话响应消息或所述第二会话响应消息还可携带有针对所述同时联播指示的确认指示。

在本发明一些可能的实施方式中,所述第三会话消息或所述第四会话消息还可携带有媒体描述,其中,所述媒体描述可用于指示出所述N个媒体源。可选的,在本发明一些可能的实施方式中,所述第三会话响应消息或所述第四会话响应消息还可携带有针对所述媒体描述的确认指示。

在本发明的一些可能的实施方式中,所述第三会话消息或所述第四会话消息还携带有同时联播指示,其中,所述同时联播指示用于指示所述N个媒体源中的至少一个媒体源支持同时联播。可选的,在本发明一些可能的实施方式中,所述第三会话响应消息或所述第四会话响应消息还可携带有针对所述同时联播指示的确认指示。

其中,第一会话响应消息用于响应第一会话消息。第二会话响应消息用于响应第二会话消息。第三会话响应消息用于响应第三会话消息。第四会话响应消息用于响应第四会话消息。

其中,第一会话消息可以是用于请求建立会话的消息、用于请求更新会话的消息或其它会话消息。第二会话消息可以是用于请求建立会话的消息、用于请求更新会话的消息或其它会话消息。第三会话消息可以是用于请求建立会话的消息、用于请求更新会话的消息或其它会话消息。第四会话消息可以是用于请求建立会话的消息、用于请求更新会话的消息或其它会话消息。

在本发明的一些可能的实施方式中,所述第一会话消息例如可为会话描述协议(SDP,session description protocol)请求(offer)消息或其它类型的会话消息,当然,在第一会话消息为SDP offer消息的情况下,所述第一会话响应消息可为SDP响应(answer)消息。

在本发明的一些可能的实施方式中,所述第二会话消息例如可以为SDPoffer消息或其它类型的会话消息,当然,在第二会话消息为SDP offer消息的情况下,所述第二会话响应消息可为SDP answer消息。

在本发明的一些可能的实施方式中,所述第三会话消息例如可以为SDPoffer消息或其它类型的会话消息,当然,在第三会话消息为SDP offer消息的情况下,所述第三会话响应消息可为SDP answer消息。

在本发明的一些可能的实施方式中,所述第四会话消息例如可以为SDPoffer消息或其它类型的会话消息,当然,在第四会话消息为SDP offer消息的情况下,所述第四会话响应消息可为SDP answer消息。

在本发明的一些可能的实施方式中,在所述N等于1的情况下所述优先级指示包括媒体流源内优先级指示,所述媒体流源内优先级指示用于指示同一个媒体源对应的各媒体流之间的源内优先级。

在本发明一些可能的实施方式中,在所述N大于1的情况下所述优先级指示包括媒体源优先级指示、媒体流源内优先级指示和优先级参考权重指示,所述媒体源优先级指示用于指示不同媒体源之间的优先级;所述媒体流源内优先级指示用于指示同一个媒体源对应的媒体流之间的源内优先级;所述优先级参考权重指示用于指示出所述媒体源优先级指示和所述媒体流源内优先级指示之间的参考权重。

在本发明的一些可能的实施方式中,在所述优先级参考权重指示用于指示出所述媒体源优先级指示的参考权重高于所述媒体流源内优先级指示的参考权重的情况下,

若所述N个媒体源中的媒体源i的优先级高于所述N个媒体源中的媒体源j的优先级,所述媒体源i对应的任意一个媒体流的全局优先级高于所述媒体源j对应的任意一个媒体流的全局优先级,其中,所述媒体源i和所述媒体源j为所述N个媒体源中的任意两个媒体源。

在本发明的一些可能的实施方式中,在所述优先级参考权重指示用于指示出所述媒体源优先级指示的参考权重低于所述媒体流源内优先级指示的参考权重的情况下,

若所述N个媒体源之中的媒体源i的优先级高于所述N个媒体源之中的媒体源j的优先级,并且所述媒体源i对应的媒体流ix的源内优先级等于所述媒体源j对应的媒体流jx的源内优先级,则所述媒体流ix的全局优先级高于所述媒体流jx的全局优先级,其中,所述媒体源i和所述媒体源j为所述N个媒体源之中的任意两个媒体源,其中,所述媒体源i对应的媒体流ix为所述媒体源i对应的任意一个媒体流,其中,所述媒体源j对应的媒体流jx为所述媒体源j对应的任意一个媒体流;

或者,

若所述N个媒体源之中的媒体源i的优先级高于所述N个媒体源之中的媒体源j的优先级,并且所述媒体源i对应的媒体流ix的源内优先级等于所述媒体源j对应的媒体流jx的源内优先级,并且所述媒体流ix的源内优先级高于所述媒体源i中的媒体流iy的源内优先级,则所述媒体流jx的全局优先级高于所述媒体流iy的全局优先级,其中,所述媒体源i和所述媒体源j为所述N个媒体源之中的任意两个媒体源,其中,所述媒体流ix和所述媒体流iy为所述媒体源i对应的任意两个媒体流,其中,所述媒体源j对应的媒体流jx为所述媒体源j对应的任意一个媒体流;

或者,

若所述N个媒体源之中的媒体源i的优先级高于所述N个媒体源之中的媒体源j的优先级,并且所述媒体源i对应的媒体流ix的源内优先级等于所述媒体源j对应的媒体流jx的源内优先级,并且所述媒体流ix的源内优先级低于所述媒体源i中的媒体流iw的源内优先级,则所述媒体流jx的全局优先级低于所述媒体流iw的全局优先级,其中,所述媒体源i和所述媒体源j为所述N个媒体源之中的任意两个媒体源,其中,所述媒体流ix和所述媒体流iw为所述媒体源i对应的任意两个媒体流,其中,所述媒体源j对应的媒体流jx为所述媒体源j对应的任意一个媒体流。

在本发明一些可能的实施方式中,所述处理器201具体用于在确定所述媒体设备与所述第二媒体设备之间的传输通道出现拥塞的情况下,优先丢弃所述媒体设备待向所述第二媒体设备发送的所述N个媒体源对应的媒体流中的全局优先级相对较低的媒体流的部分或全部媒体数据包;或,在确定所述媒体设备与所述第二媒体设备之间的传输通道出现拥塞的情况下,延迟发送所述媒体设备待向所述第二媒体设备发送的所述N个媒体源对应的媒体流中的全局优先级相对较低的媒体流的部分或全部媒体数据包。

可以看出,在本实施例的技术方案中,作为发送端的媒体设备200先确定N个媒体源对应的媒体流之间的全局优先级,在确定媒体设备200与所述第二媒体设备之间的传输通道出现拥塞的情况下,可基于确定的所述N个媒体源对应的媒体流之间的全局优先级,对所述媒体设备200向所述第二媒体设备发送的所述N个媒体源对应的媒体流进行拥塞控制。其中,由于引入了一种相对行之有效的发送管控机制来对发送端待发送的包括同时联播的媒体流在内的媒体流进行拥塞控制,而拥塞控制机制参考了N个媒体源对应的媒体流之间的全局优先级,因此有利于在传输通道拥塞等情况下尽量保证全局优先级较高的媒体流的可靠传输,进而有利于保证媒体会话的质量,进而有利于提升用户产品体验。

可以理解的是,本实施例媒体设备200的各功能模块的功能,以及该媒体设备与其他设备之间的交互机制,可根据方法实施例中的方法具体实现,其具体实现过程可以参照下述方法实施例的相关描述,此处不再赘述。

请参见图3,图3为本发明的一个实施例提供的一种媒体会话处理方法的流程示意图。如图3所示,本发明的一个实施例提供的一种媒体会话处理方法可以包括:

301、第一媒体设备确定N个媒体源对应的媒体流之间的全局优先级。

其中,所述N为正整数(例如所述N可为大于或等于1的整数)。所述N个媒体源为所述第一媒体设备在第二媒体设备所参与的媒体会话中能够提供的N个媒体源,所述N个媒体源中的至少一个媒体源分别对应有用于在所述媒体会话中同时联播的至少2路媒体流。

在本发明的一些可能的实施方式中,参与所述会话的媒体设备除了所述第一媒体设备和所述第二媒体设备之外,还可以包括其它一个或多个媒体设备。

在本发明的一些可能的实施方式中,在所述第一媒体设备为会议服务器的情况下,所述第二媒体设备为媒体终端。或者,在所述第一媒体设备为媒体终端的情况下,所述第二媒体设备可为媒体终端或会议服务器。

例如所述N可等于1、2、3、4、5、6、8、10、15、19、21、30、500或其他值。

可以理解的是,所述N个媒体源中的一个媒体源对应有用于在所述媒体会话中同时联播的至少2路媒体流,可表示所述N个媒体源中只有一个媒体源对应有用于在所述媒体会话中同时联播的至少2路媒体流,也可表示所述N个媒体源中的n个媒体源分别对应有用于在所述媒体会话中同时联播的至少2路媒体流,n为大于1且小于或等于N的整数。例如假设N等于3,所述N个媒体源中的一个媒体源对应有用于在所述媒体会话中同时联播的至少2路媒体流,可表示所述N个媒体源中只有1个媒体源对应有用于在所述媒体会话中同时联播的至少2路媒体流,也可表示所述N个媒体源中的2个媒体源分别对应有用于在所述媒体会话中同时联播的至少2路媒体流,也可以表示所述N个媒体源中的每个媒体源分别对应有用于在所述媒体会话中同时联播的至少2路媒体流,以此类推。

例如所述n可等于2、3、4、5、6、8、10、15、19、21、30、499、500或其他值。

302、所述第一媒体设备在确定所述第一媒体设备与所述第二媒体设备之间的传输通道出现拥塞的情况下,基于确定的所述N个媒体源对应的媒体流之间的全局优先级,对所述第一媒体设备向所述第二媒体设备发送的所述N个媒体源对应的媒体流进行拥塞控制。

可以理解,全局优先级中的“全局”,针对的是一个由多个媒体流所形成的媒体流集合。举例来说,媒体流集合可能由N个媒体源对应的所有媒体流所形成,或媒体流集合可能由所述第一媒体设备在第二媒体设备所参与的媒体会话中能够提供的所有媒体源对应的所有媒体流所形成,或媒体流集合可能由所述第二媒体设备和第一媒体设备所参与的媒体会话中的所有媒体源对应的所有媒体流所形成,或媒体流集合可能由所述第一媒体设备能够提供的所有媒体源对应的所有媒体流所形成,或媒体流集合可能由所述第二媒体设备可能接收到的所有媒体流所形成,或媒体流集合可能由所述第二媒体设备在第一媒体设备所参与的媒体会话中可能接收到的所有媒体流所形成。

当然,全局优先级中的“全局”所针对的媒体流集合也可能是通过其它其它媒体流来形成。全局优先级中的“全局”所针对的媒体流集合至少包括了所述N个媒体源对应的所有媒体流。

其中,媒体源对应的媒体流是指示该媒体源被编码成的媒体流。若媒体源被编码成多个媒体流,那么该媒体源对应有多个媒体流(多个媒体流例如可包括标清版本的媒体流、高清版本的媒体流和超清版本的媒体流等),若媒体源只被编码成1个媒体流,那么该媒体源只对应有1个媒体流。

其中,基于确定的所述N个媒体源对应的媒体流之间的全局优先级,对所述第一媒体设备向所述第二媒体设备发送的所述N个媒体源对应的媒体流进行拥塞控制,其主要目的为在传输通道拥塞等情况下尽量有利于保证相关会话的质量,例如,在传输通道拥塞等情况下尽量保证全局优先级较高的媒体流的可靠传输,因此,在传输通道拥塞等情况下,有利于尽量保证全局优先级较高的媒体流的可靠传输的多种拥塞控制方式,均可考虑作为本发明的一些可能实施方式。

具体举例来说,所述基于确定的所述N个媒体源对应的媒体流之间的全局优先级,对所述第一媒体设备向所述第二媒体设备发送的所述N个媒体源对应的媒体流进行拥塞控制,包括:优先丢弃所述第一媒体设备待向所述第二媒体设备发送的所述N个媒体源对应的媒体流中的全局优先级相对较低的媒体流的部分或全部媒体数据包,或,延迟发送所述第一媒体设备待向所述第二媒体设备发送的所述N个媒体源对应的媒体流中的全局优先级相对较低的媒体流的部分或全部媒体数据包。

可以看出,在本实施例的技术方案中,作为发送端的第一媒体设备先确定N个媒体源对应的媒体流之间的全局优先级,在所述第一媒体设备与所述第二媒体设备之间的传输通道出现拥塞的情况下,可基于确定的所述N个媒体源对应的媒体流之间的全局优先级,对所述第一媒体设备向所述第二媒体设备发送的所述N个媒体源对应的媒体流进行拥塞控制。其中,由于引入了一种相对行之有效的发送管控机制来对发送端待发送的包括同时联播的媒体流在内的媒体流进行拥塞控制,而拥塞控制机制参考了N个媒体源对应的媒体流之间的全局优先级,因此,有利于在传输通道拥塞等情况下尽量保证全局优先级较高的媒体流的可靠传输,进而有利于保证相关会话的质量,进而有利于提升用户产品体验。

其中,所述N个媒体源对应的媒体流之间的全局优先级可基于多方面的参数来共同确定。

举例来说,在本发明的一些可能的实施方式中,所述N个媒体源对应的媒体流之间的全局优先级可以基于所述N个媒体源之间的优先级、所述N个媒体源中的每个媒体源分别对应的各媒体流之间的源内优先级和优先级参考权重共同确定,其中,所述优先级参考权重为所述N个媒体源之间的优先级和所述N个媒体源中的每个媒体源分别对应的各媒体流之间的源内优先级之间的参考权重。

又举例来说,在本发明的一些可能的实施方式中,所述N个媒体源对应的媒体流之间的全局优先级基于所述N个媒体源之间的优先级和所述N个媒体源中的每个媒体源分别对应的各媒体流之间的源内优先级共同确定。

在本发明的一些可能的实施方式中,所述第一媒体设备确定N个媒体源对应的媒体流之间的全局优先级,可以包括:第一媒体设备根据用户优先级设置指令确定所述N个媒体源对应的媒体流之间的全局优先级;或者第一媒体设备根据预配置的优先级确定策略确定所述N个媒体源对应的媒体流之间的全局优先级。

在本发明的一些可能的实施方式中,所述第一媒体设备确定N个媒体源对应的媒体流之间的全局优先级可包括:第一媒体设备通过与所述第二媒体设备协商来确定所述N个媒体源对应的媒体流之间的全局优先级。第一媒体设备与所述第二媒体设备之间协商确定所述N个媒体源对应的媒体流之间的全局优先级的方式可以是多种多样的。

举例来说,所述第一媒体设备通过与所述第二媒体设备协商来确定N个媒体源对应的媒体流之间的全局优先级,可以包括:

第一媒体设备向所述第二媒体设备发送第一会话消息,其中,所述第一会话消息携带优先级指示,其中,所述优先级指示用于确定出所述N个媒体源对应的媒体流之间的全局优先级;第一媒体设备接收所述第二媒体设备发送的第一会话响应消息;其中,若所述第一会话响应消息携带针对所述优先级指示的确认指示,所述优先级指示所确定出的所述N个媒体源对应的媒体流之间的全局优先级为所述第一媒体设备确定出的所述N个媒体源对应的媒体流之间的全局优先级;

或者,

第一媒体设备向所述第二媒体设备发送第二会话消息,其中,所述第二会话消息携带优先级指示,其中,所述优先级指示用于指示出所述N个媒体源对应的媒体流之间的全局优先级;所述第一媒体设备接收所述第二媒体设备发送的第二会话响应消息;若所述第二会话响应消息携带针对所述优先级指示的调整指示,基于所述调整指示对所述优先级指示所指示出的所述N个媒体源对应的媒体流之间的全局优先级进行调整,其中,调整后的所述N个媒体源对应的媒体流之间的全局优先级为所述第一媒体设备确定出的所述N个媒体源对应的媒体流之间的全局优先级;

或者,

第一媒体设备接收所述第二媒体设备发送的第三会话消息,所述第三会话消息携带优先级指示,其中,所述优先级指示用于确定出所述N个媒体源对应的媒体流之间的全局优先级;所述第一媒体设备向所述第二媒体设备发送第三会话响应消息;其中,所述第三会话响应消息携带针对所述优先级指示的确认指示,所述第一媒体设备基于所述第三会话消息携带的优先级指示确定所述N个媒体源对应的媒体流之间的全局优先级;

或者,

第一媒体设备接收所述第二媒体设备发送的第四会话消息,所述第四会话消息携带优先级指示,其中,所述优先级指示用于确定出所述N个媒体源对应的媒体流之间的全局优先级;所述第一媒体设备向所述第二媒体设备发送第四会话响应消息;其中,所述第四会话响应消息携带针对所述优先级指示的调整指示,其中,基于所述调整指示调整后的所述N个媒体源对应的媒体流之间的全局优先级为所述第一媒体设备确定出的所述N个媒体源对应的媒体流之间的全局优先级。

在本发明一些可能的实施方式中,所述第一会话消息或所述第二会话消息或第一会话响应消息或第二会话响应消息还携带端口复用指示,所述端口复用指示用于指示将不同媒体源的具有相同源内优先级的媒体流使用相同的端口地址传输。测试和实践过程中发现,若媒体发送端把不同媒体源的相同源内优先级的媒体流使用同一端口地址传输,有利于减少冗余编码放在每端口传输带来的端口消耗。

在本发明一些可能的实施方式中,所述第一会话消息或所述第二会话消息还可携带有媒体描述,其中,所述媒体描述可用于指示出所述N个媒体源。可选的,在本发明一些可能的实施方式中,所述第一会话响应消息或所述第二会话响应消息还可携带有针对所述媒体描述的确认指示。

在本发明的一些可能的实施方式中,所述第一会话消息或所述第二会话消息还可携带有同时联播指示,其中,所述同时联播指示用于指示所述N个媒体源中的至少一个媒体源支持同时联播。可选的,在本发明一些可能的实施方式中,所述第一会话响应消息或所述第二会话响应消息还可携带有针对所述同时联播指示的确认指示。

在本发明一些可能的实施方式中,所述第三会话消息或所述第四会话消息或第三会话响应消息或第四会话响应消息还携带端口复用指示,所述端口复用指示用于指示将不同媒体源的具有相同源内优先级的媒体流使用相同的端口地址传输。

在本发明一些可能的实施方式中,所述第三会话消息或所述第四会话消息还可携带有媒体描述,其中,所述媒体描述可用于指示出所述N个媒体源。可选的,在本发明一些可能的实施方式中,所述第三会话响应消息或所述第四会话响应消息还可携带有针对所述媒体描述的确认指示。

在本发明的一些可能的实施方式中,所述第三会话消息或所述第四会话消息还携带有同时联播指示,其中,所述同时联播指示用于指示所述N个媒体源中的至少一个媒体源支持同时联播。在本发明一些可能的实施方式中,所述第三会话响应消息或所述第四会话响应消息还可携带有针对所述同时联播指示的确认指示。

其中,第一会话响应消息用于响应第一会话消息。第二会话响应消息用于响应第二会话消息。第三会话响应消息用于响应第三会话消息。第四会话响应消息用于响应第四会话消息。

其中,第一会话消息可以是用于请求建立会话的消息、用于请求更新会话的消息或其它会话消息。第二会话消息可以是用于请求建立会话的消息、用于请求更新会话的消息或其它会话消息。第三会话消息可以是用于请求建立会话的消息、用于请求更新会话的消息或其它会话消息。第四会话消息可以是用于请求建立会话的消息、用于请求更新会话的消息或其它会话消息。

在本发明的一些可能的实施方式中,所述第一会话消息例如可SDP offer消息或其它类型的会话消息。在第一会话消息为SDP offer消息的情况下,所述第一会话响应消息可为SDP answer消息。

在本发明的一些可能的实施方式中,所述第二会话消息例如可以为SDPoffer消息或其它类型的会话消息,当然,在第二会话消息为SDP offer消息的情况下,所述第二会话响应消息可为SDP answer消息。

在本发明的一些可能的实施方式中,所述第三会话消息例如可以为SDPoffer消息或其它类型的会话消息,当然,在第三会话消息为SDP offer消息的情况下,所述第三会话响应消息可为SDP answer消息。

在本发明的一些可能的实施方式中,所述第四会话消息例如可以为SDPoffer消息或其它类型的会话消息,当然,在第四会话消息为SDP offer消息的情况下,所述第四会话响应消息可为SDP answer消息。

在本发明一些可能的实施方式中,在所述N等于1的情况下所述优先级指示包括媒体流源内优先级指示,所述媒体流源内优先级指示用于指示同一个媒体源对应的各媒体流之间的源内优先级。

在本发明一些可能的实施方式中,在所述N大于1的情况下所述优先级指示包括媒体源优先级指示、媒体流源内优先级指示和优先级参考权重指示,所述媒体源优先级指示用于指示不同媒体源之间的优先级;所述媒体流源内优先级指示用于指示同一个媒体源对应的媒体流之间的源内优先级;所述优先级参考权重指示用于指示出所述媒体源优先级指示和所述媒体流源内优先级指示之间的参考权重。

在本发明一些可能的实施方式中,在所述优先级参考权重指示用于指示出所述媒体源优先级指示的参考权重高于所述媒体流源内优先级指示的参考权重的情况下,若所述N个媒体源中的媒体源i的优先级高于所述N个媒体源中的媒体源j的优先级,所述媒体源i对应的任意一个媒体流的全局优先级高于所述媒体源j对应的任意一个媒体流的全局优先级,其中,所述媒体源i和所述媒体源j为所述N个媒体源中的任意两个媒体源。

在本发明一些可能的实施方式中,在所述优先级参考权重指示用于指示出所述媒体源优先级指示的参考权重低于所述媒体流源内优先级指示的参考权重的情况下,

若所述N个媒体源之中的媒体源i的优先级高于所述N个媒体源之中的媒体源j的优先级,并且所述媒体源i对应的媒体流ix的源内优先级等于所述媒体源j对应的媒体流jx的源内优先级,则所述媒体流ix的全局优先级高于所述媒体流jx的全局优先级,其中,所述媒体源i和所述媒体源j为所述N个媒体源之中的任意两个媒体源,其中,所述媒体源i对应的媒体流ix为所述媒体源i对应的任意一个媒体流,其中,所述媒体源j对应的媒体流jx为所述媒体源j对应的任意一个媒体流;

或者,

若所述N个媒体源之中的媒体源i的优先级高于所述N个媒体源之中的媒体源j的优先级,并且所述媒体源i对应的媒体流ix的源内优先级等于所述媒体源j对应的媒体流jx的源内优先级,并且所述媒体流ix的源内优先级高于所述媒体源i中的媒体流iy的源内优先级,则所述媒体流jx的全局优先级高于所述媒体流iy的全局优先级,其中,所述媒体源i和所述媒体源j为所述N个媒体源之中的任意两个媒体源,其中,所述媒体流ix和所述媒体流iy为所述媒体源i对应的任意两个媒体流,所述媒体源j对应的媒体流jx为所述媒体源j对应的任意一个媒体流;

或者,

若所述N个媒体源之中的媒体源i的优先级高于所述N个媒体源之中的媒体源j的优先级,并且所述媒体源i对应的媒体流ix的源内优先级等于所述媒体源j对应的媒体流jx的源内优先级,并且所述媒体流ix的源内优先级低于所述媒体源i中的媒体流iw的源内优先级,则所述媒体流jx的全局优先级低于所述媒体流iw的全局优先级,其中,所述媒体源i和所述媒体源j为所述N个媒体源之中的任意两个媒体源,其中,所述媒体流ix和所述媒体流iw为所述媒体源i对应的任意两个媒体流,所述媒体源j对应的媒体流jx为所述媒体源j对应的任意一个媒体流。

可以理解,上述举例给出了结合优先级参考权重指示、媒体源优先级指示和所述媒体流源内优先级指示来确定媒体流全局优先级的可能方式,但是在实际应用中可能并不限于举例的方式。

为便于更好的理解和实施本发明实施例的上述方案,下面通过一些具体的应用场景进行举例说明。

请参见图4,图4为本发明的另一个实施例提供的另一种媒体会话处理方法的流程示意图。其中,本实施例主要针对点对点应用场景举例介绍,相应网络架构可如图1-b举例所示。

其中,如图4所示,本发明的另一个实施例提供的另一种媒体会话处理方法可以包括:

401、第一媒体终端向第二媒体终端发送SDP offer消息m11。

其中,SDP offer消息m11可看作是上述实施例中提及的会话消息(例如第一会话消息或第二会话消息等)的一种具体举例。

其中,SDP offer消息m11可以携带媒体描述、同时联播指示、端口复用指示和/或优先级指示等。

其中,所述媒体描述可用于指示出N个媒体源,所述N个媒体源为所述第一媒体终端在第二媒体终端所参与的媒体会话中能够提供的N个媒体源。所述N个媒体源中的至少一个媒体源分别对应有用于在所述媒体会话中同时联播的至少2路媒体流。

其中,本实施中以所述N为大于1的整数为例。

例如所述N可等于352、2、3、4、5、6、8、10、15、19、21、30、500或其他值。

其中,所述优先级指示包括媒体源优先级指示、媒体流源内优先级指示和优先级参考权重指示,所述优先级指示用于确定出所述N个媒体源对应的媒体流之间的全局优先级。

所述媒体源优先级指示用于指示N个媒体源之间的优先级;所述媒体流源内优先级指示用于指示同一个媒体源对应的媒体流之间的源内优先级;所述优先级参考权重指示用于指示出所述媒体源优先级指示和所述媒体流源内优先级指示之间的参考权重。

其中,所述同时联播指示用于指示所述N个媒体源中的至少一个媒体源支持同时联播。

其中,所述端口复用指示用于指示将不同媒体源的具有相同源内优先级的媒体流使用相同的端口地址传输。测试发现,若媒体发送端把不同媒体源的具有相同源内优先级的媒体流使用同一端口地址传输,有利于减少冗余编码放在每端口传输带来的端口消耗,同时也有利于兼容现在网络侧根据端口地址进行区别服务的情况。

402、所述第二媒体终端向所述第一媒体终端发送用于响应所述SDP offer消息m11的SDP answer消息m12。

其中,若第二媒体终端支持同时联播,SDP answer消息m12可携带针对上述同时联播指示的确认指示,若第二媒体终端支持端口复用,SDP answer消息m12可携带针对上述端口复用指示的确认指示。

其中,SDP answer消息m12还可携带针对上述优先级指示的确认指示或调整指示。本实施例中以SDP answer消息m12携带了针对上述优先级指示的确认指示为例。

此外,若第二媒体终端不支持同时联播,则SDP answer消息m12可按照常规SDP offer/answer机制回复。第一媒体终端若收到指示第二媒体终端不支持同时联播的SDP answer消息时重新发起SDP offer消息以去掉同时联播机制,采用一个媒体源只对应一份媒体流的形式发起请求。其中,本实施例中主要是以第二媒体终端支持同时联播的场景为例进行描述。

403、在第一媒体终端与第二媒体终端之间的传输通道建立之后,所述第一媒体终端通过所述传输通道向所述第二媒体终端发送所述N个媒体源对应的媒体流。

可以理解,所述N个媒体源对应的媒体流的数量大于N。

404、当第一媒体终端检测到第一媒体终端与第二媒体终端之间的传输通道出现拥塞的情况下(如延迟和/或丢包率超过阈值),第一媒体终端向第二媒体终端发送SDP offer消息m21,其中,在SDP offer消息m21中可显式地指示将删除某个媒体源中全局优先级较低的媒体流,或者在SDP offer消息m21中可显式地指示将删除优先级较低的某个媒体源对应的部分或全部媒体流(因为这些媒体流的全局优先级相对较低)。

405、第二媒体终端接收第一媒体终端的SDP offer消息m21,向第一媒体终端发送SDP answer消息m22以响应SDP offer消息m21。

第一媒体终端收到第二媒体终端的SDP answer消息m22之后,可识别出优先级较低的媒体流并进行丢弃。

可以看出,本实施例方案中,作为发送端的第一媒体终端先确定N个媒体源对应的媒体流之间的全局优先级,其中,在所述第一媒体终端与所述第二媒体终端之间的传输通道出现拥塞的情况下,可基于确定的所述N个媒体源对应的媒体流之间的全局优先级,对所述第一媒体终端向所述第二媒体终端发送的所述N个媒体源对应的媒体流进行拥塞控制。其中,由于引入了一种相对行之有效的发送管控机制来对发送端待发送的包括同时联播的媒体流在内的媒体流进行拥塞控制,而拥塞控制机制参考了N个媒体源对应的媒体流之间的全局优先级,因此,有利于在传输通道拥塞等情况下尽量保证全局优先级较高的媒体流的可靠传输,进而有利于保证媒体会话的质量,进而有利于提升用户产品体验。

请参见图5,图5为本发明的另一个实施例提供的另一种媒体会话处理方法的流程示意图。本实施例针对会议服务器参与的应用场景举例介绍,相应网络架构可如图1-a或图1-c举例所示。

其中,如图5所示,本发明的另一个实施例提供的另一种媒体会话处理方法可以包括:

501、第一媒体终端向会议服务器发送SDP offer消息m11。

其中,SDP offer消息m11可看作是上述实施例中提及的会话消息(例如第一会话消息或第二会话消息等)的一种具体举例。

其中,SDP offer消息m11可以携带媒体描述、同时联播指示、端口复用指示和/或优先级指示等。

其中,所述媒体描述可用于指示出N个媒体源,所述N个媒体源为所述第一媒体终端在会议服务器所参与的媒体会话中能够提供的N个媒体源。所述N个媒体源中的至少一个媒体源分别对应有用于在所述媒体会话中同时联播的至少2路媒体流。

其中,本实施中以所述N为大于1的整数为例。

例如所述N可等于352、2、3、4、5、6、8、10、15、19、21、30、500或其他值。

其中,所述优先级指示包括媒体源优先级指示、媒体流源内优先级指示和优先级参考权重指示,所述优先级指示用于确定出所述N个媒体源对应的媒体流之间的全局优先级。

所述媒体源优先级指示用于指示N个媒体源之间的优先级;所述媒体流源内优先级指示用于指示同一个媒体源对应的媒体流之间的源内优先级;所述优先级参考权重指示用于指示出所述媒体源优先级指示和所述媒体流源内优先级指示之间的参考权重。

其中,所述同时联播指示用于指示所述N个媒体源中的至少一个媒体源支持同时联播。

其中,所述端口复用指示用于指示将不同媒体源的具有相同源内优先级的媒体流使用相同的端口地址传输。测试发现,若媒体发送端把不同媒体源的相同源内优先级的媒体流使用同一端口地址传输,有利于减少冗余编码放在每端口传输带来的端口消耗,同时也有利于兼容现在网络侧根据端口地址进行区别服务的情况。

502、所述会议服务器向所述第一媒体终端发送用于响应所述SDP offer消息m11的SDP answer消息m12。

其中,若会议服务器支持同时联播,SDP answer消息m12可携带针对上述同时联播指示的确认指示,若会议服务器支持端口复用,SDP answer消息m12可携带针对上述端口复用指示的确认指示。

其中,SDP answer消息m12还可携带针对上述优先级指示的确认指示或调整指示。本实施例中以SDP answer消息m12携带了针对上述优先级指示的确认指示为例。

此外,若会议服务器不支持同时联播,则SDP answer消息m12可按照常规SDP offer/answer机制回复。第一媒体终端若收到指示会议服务器不支持同时联播的SDP answer消息时重新发起SDP offer消息以去掉同时联播机制,采用一个媒体源只对应一份媒体流的形式发起请求。其中,本实施例中主要是以会议服务器支持同时联播的场景为例进行描述。

503、在第一媒体终端与会议服务器之间的传输通道建立之后,所述第一媒体终端通过所述传输通道向所述会议服务器发送所述N个媒体源对应的媒体流。

可以理解,所述N个媒体源对应的媒体流的数量大于N。

504、当第一媒体终端检测到第一媒体终端与会议服务器之间的传输通道出现拥塞的情况下(如延迟和/或丢包率超过阈值),第一媒体终端向会议服务器发送SDP offer消息m21,其中,在SDP offer消息m21中可显式地指示将删除某个媒体源中全局优先级较低的媒体流,或者在SDP offer消息m21中可显式地指示将删除优先级较低的某个媒体源对应的部分或全部媒体流(因为这些媒体流的全局优先级相对较低)。

505、会议服务器接收第一媒体终端的SDP offer消息m21后,向第一媒体终端发送SDP answer消息m22以响应SDP offer消息m21。

第一媒体终端收到会议服务器的SDP answer消息m22之后,可识别出优先级较低的媒体流并进行丢弃。

可以看出,本实施例的技术方案中,作为发送端的第一媒体终端先确定N个媒体源对应的媒体流之间的全局优先级,其中,在所述第一媒体终端与所述会议服务器之间的传输通道出现拥塞的情况下,可基于确定的所述N个媒体源对应的媒体流之间的全局优先级,对所述第一媒体终端向所述会议服务器发送的所述N个媒体源对应的媒体流进行拥塞控制。其中,由于引入了一种相对行之有效的发送管控机制来对发送端待发送的包括同时联播的媒体流在内的媒体流进行拥塞控制,而拥塞控制机制参考了N个媒体源对应的媒体流之间的全局优先级,因此,有利于在传输通道拥塞等情况下尽量保证全局优先级较高的媒体流的可靠传输,进而有利于保证媒体会话的质量,进而有利于提升用户产品体验。

请参见图6,图6为本发明的另一个实施例提供的另一种媒体会话处理方法的流程示意图。本实施例针对会议服务器参与的应用场景举例介绍,相应网络架构可如图1-a或图1-c举例所示。

其中,如图6所示,本发明的另一个实施例提供的另一种媒体会话处理方法可以包括:

601、第一媒体终端向会议服务器发送SDP offer消息m11。

其中,SDP offer消息m11可看作是上述实施例中提及的会话消息(例如第一会话消息或第二会话消息等)的一种具体举例。

其中,SDP offer消息m11可以携带媒体描述、同时联播指示、端口复用指示和/或优先级指示等。

其中,所述媒体描述可用于指示出N个媒体源,所述N个媒体源为所述第一媒体终端在会议服务器所参与的媒体会话中能够提供的N个媒体源。所述N个媒体源中的至少一个媒体源分别对应有用于在所述媒体会话中同时联播的至少2路媒体流。

其中,本实施中以所述N为大于1的整数为例。

例如所述N可等于352、2、3、4、5、6、8、10、15、19、21、30、500或其他值。

其中,所述优先级指示包括媒体源优先级指示、媒体流源内优先级指示和优先级参考权重指示,所述优先级指示用于确定出所述N个媒体源对应的媒体流之间的全局优先级。

其中,所述同时联播指示用于指示所述N个媒体源中的至少一个媒体源支持同时联播。

其中,所述端口复用指示用于指示将不同媒体源的具有相同源内优先级的媒体流使用相同的端口地址传输。测试发现,若媒体发送端把不同媒体源的相同源内优先级的媒体流使用同一端口地址传输,有利于减少冗余编码放在每端口传输带来的端口消耗,同时也有利于兼容现在网络侧根据端口地址进行区别服务的情况。

602、所述会议服务器向所述第一媒体终端发送用于响应所述SDP offer消息m1的SDP answer消息m12。

其中,若会议服务器支持同时联播,SDP answer消息m12可携带针对上述同时联播指示的确认指示,若会议服务器支持端口复用,SDP answer消息m12可携带针对上述端口复用指示的确认指示。

其中,SDP answer消息m12还可携带针对上述优先级指示的确认指示或调整指示。本实施例中以SDP answer消息m12携带了针对上述优先级指示的确认指示为例。

此外,若会议服务器不支持同时联播,则SDP answer消息m12可按照常规SDP offer/answer机制回复。第一媒体终端若收到指示会议服务器不支持同时联播的SDP answer消息时重新发起SDP offer消息以去掉同时联播机制,采用一个媒体源只对应一份媒体流的形式发起请求。其中,本实施例中主要是以会议服务器支持同时联播的场景为例进行描述。

603、会议服务器向第二媒体终端发送SDP offer消息m31。

其中,SDP offer消息m31可看作是上述实施例中提及的会话消息(例如第一会话消息或第二会话消息等)的一种具体举例。

其中,SDP offer消息m31可以携带媒体描述、同时联播指示、端口复用指示和/或优先级指示等。

其中,所述媒体描述可用于指示出N个媒体源,所述N个媒体源为所述第一媒体终端在会议服务器所参与的媒体会话中能够提供的N个媒体源。所述N个媒体源中的至少一个媒体源分别对应有用于在所述媒体会话中同时联播的至少2路媒体流。

其中,所述优先级指示包括媒体源优先级指示、媒体流源内优先级指示和优先级参考权重指示,所述优先级指示用于确定出所述N个媒体源对应的媒体流之间的全局优先级。

其中,所述同时联播指示用于指示所述N个媒体源中的至少一个媒体源支持同时联播。

其中,所述端口复用指示用于指示将不同媒体源的具有相同源内优先级的媒体流使用相同的端口地址传输。

604、所述第二媒体终端向所述会议服务器发送用于响应所述SDP offer消息m31的SDP answer消息m32。

其中,若第二媒体终端支持同时联播,SDP answer消息m32可携带针对上述同时联播指示的确认指示,若会议服务器支持端口复用,SDP answer消息m32可携带针对上述端口复用指示的确认指示。

其中,SDP answer消息m32还可携带针对上述优先级指示的确认指示或调整指示。本实施例中以SDP answer消息m32携带了针对上述优先级指示的确认指示为例。

此外,若第二媒体终端不支持同时联播,则SDP answer消息m12可按照常规SDP offer/answer机制回复。会议服务器若收到指示第二媒体终端不支持同时联播的SDP answer消息时重新发起SDP offer消息以去掉同时联播机制,采用一个媒体源只对应一份媒体流的形式发起请求。其中,本实施例中主要是以第二媒体终端支持同时联播的场景为例进行描述。

可以理解,步骤601~602与步骤603~604之间没有必然的先后顺序。步骤603~604可先于步骤601~602执行、或步骤603~604可晚于步骤601~602执行或者步骤603~604与步骤601~602可同步执行。

605、在第一媒体终端与会议服务器之间的传输通道建立之后,所述第一媒体终端通过所述传输通道向所述会议服务器发送所述N个媒体源对应的媒体流。

可以理解,所述N个媒体源对应的媒体流的数量大于N。

可以理解,步骤603~604与步骤605之间没有必然的先后顺序。步骤605可先于步骤603~604执行,或者步骤605可晚于步骤603~604执行或者,或者步骤603~604与步骤605可同步执行。

606、在第二媒体终端与会议服务器之间的传输通道建立之后,所述会议服务器通过所述传输通道向所述第二媒体终端发送所述N个媒体源对应的媒体流。

607、当会议服务器检测到第一媒体终端与会议服务器之间的传输通道出现拥塞的情况下(如延迟和/或丢包率超过阈值),会议服务器向第一媒体终端发送SDP offer消息m21,其中,在SDP offer消息m21中可显式地指示将删除某个媒体源中全局优先级较低的媒体流,或者在SDP offer消息m21中可显式地指示将删除优先级较低的某个媒体源对应的部分或全部媒体流(因为这些媒体流的全局优先级相对较低)。

608、第一媒体终端接收会议服务器的SDP offer消息m21后,向会议服务器发送SDP answer消息m22以响应SDP offer消息m21。

可以理解的是,与步骤607~608类似的,在一些可能的应用场景下,当会议服务器检测到第二媒体终端与会议服务器之间的传输通道出现拥塞的情况下(如延迟和/或丢包率超过阈值),会议服务器向第二媒体终端发送SDP offer消息m41,其中,在SDP offer消息m41中可显式地指示将删除某个媒体源中全局优先级较低的媒体流,或者,在SDP offer消息m41中可显式地指示将删除优先级较低的某个媒体源对应的部分或全部媒体流(因为这些媒体流的全局优先级相对较低)。第二媒体终端接收会议服务器的SDP offer消息m41后,向会议服务器发送SDP answer消息m42以响应SDP offer消息m41。

可以理解,第二媒体终端与会议服务器之间的传输通道出现拥塞,第一媒体终端与会议服务器之间的传输通道出现拥塞,上门这两个事件可在某个时段均发生,当然也可能不同时发生。当会议服务器与某个媒体终端之间的传输通道出现拥塞,会议服务器便可向该媒体终端发送SDP offer消息,以指示将删除某个媒体源中全局优先级较低的媒体流,或者,指示将删除优先级较低的某个媒体源对应的部分或全部媒体流等。

可以看出,本实施例的技术方案中,作为发送端的第一媒体终端先确定N个媒体源对应的媒体流之间的全局优先级,其中,在确定所述第一媒体终端与所述会议服务器之间的传输通道出现拥塞的情况下,可基于确定的所述N个媒体源对应的媒体流之间的全局优先级,对所述第一媒体终端向所述会议服务器发送的所述N个媒体源对应的媒体流进行拥塞控制。其中,由于引入了一种相对行之有效的发送管控机制来对发送端待发送的包括同时联播的媒体流在内的媒体流进行拥塞控制,而拥塞控制机制参考了N个媒体源对应的媒体流之间的全局优先级,因此,有利于在传输通道拥塞等情况下尽量保证全局优先级较高的媒体流的可靠传输,有利于保证媒体会话的质量,进而有利于提升用户产品体验。

为便于更好理解N个媒体源对应的媒体流之间的全局优先级是如何基于所述N个媒体源之间的优先级(可由媒体源优先级指示来指示)、所述N个媒体源中的每个媒体源分别对应的各媒体流之间的源内优先级(可由媒体流源内优先级指示来指示)和优先级参考权重(可由优先级参考权重指示来指示)来共同确定的。

下面结合附图7-a~图7-e进行举例说明。

如图7-a举例所示,假设N个媒体源包括媒体源M1、媒体源M2、媒体源M3和媒体源Mx。其中,媒体源M1、媒体源M2、媒体源M3和媒体源Mx分别被编码为三个媒体流。

其中,媒体源M1被编码成媒体流M11、媒体流M12和媒体流M13。

其中,媒体源M2被编码成媒体流M21、媒体流M22和媒体流M23。

其中,媒体源M3被编码成媒体流M31、媒体流M32和媒体流M33。

其中,媒体源Mx被编码成媒体流Mx1、媒体流Mx2和媒体流Mx3。

其中,图7-a举例示出了同一媒体源对应的不同媒体流的源内优先级的高低顺序。

其中,图7-a举例示出M1对应的3个媒体流的源内优先级高低顺序依次为M11>M12>M13。图7-a举例示出M2对应的3个媒体流的源内优先级高低顺序依次为M21>M22>M23。图7-a举例示出M3对应的3个媒体流的源内优先级高低顺序依次为M31>M32>M33。图7-a举例示出Mx对应的3个媒体流的源内优先级高低顺序依次为Mx1>Mx2>Mx3。

其中,图7-b举例示出N个媒体源包括的媒体源M1、媒体源M2、媒体源M3和媒体源Mx之间的优先级,图7-b举例示出N个媒体源之间的优先级高低顺序依次为M1>M2>M3>Mx。具体的,假设媒体源M1为音频,媒体源M2/M3/M4为视频,那么,在网络出现拥塞的情况下通常需要优先保证媒体源M1即音频的传输,故媒体源M1的优先级最高。对于媒体源M2/M3/M4,发送端可以根据实际策略制定相同媒体类型的不同媒体源的优先级,例如代表辅流画面的媒体源高于代表会场人物画面的媒体源等。

其中,若优先级参考权重指示出所述N个媒体源之间的优先级的参考权重低于所述N个媒体源中的每个媒体源分别对应的各媒体流之间的源内优先级的参考权重,相当于优先保证媒体源的完整性,那么如图7-c举例所示,图7-c箭头所示的优先级顺序丢包,可优先丢3个媒体流即Mx3,M33和M23,这样虽然丢了3个媒体流,但是媒体源M1/M2/M3/Mx都有相应的媒体流发送,也就是这个丢包策略相当于倾向保证媒体源完整性发送的原则,则整体媒体流的全局优先级顺序如图7-c中箭头所示。若出现网络拥塞状况需执行丢包策略时可以按照箭头顺序依次丢包。

其中,若优先级参考权重指示出所述N个媒体源之间的优先级的参考权重高于所述N个媒体源中的每个媒体源分别对应的各媒体流之间的源内优先级的参考权重,相当于优先保证高优先级媒体源的尽可能多份发送媒体流,那么如图7-d举例所示,图7-d箭头所示的优先级顺序丢包,可优先丢3个媒体流即Mx3,Mx2和Mx1,这样虽然丢了3个媒体流,造成媒体源Mx不发送,但是对于媒体源M1/M2/M3可多份发送媒体流,其中,整体媒体流的全局优先级顺序如图7-d中箭头所示。若出现网络拥塞状况需执行丢包策略时可以按照箭头顺序依次丢包。

图7-e举例示出所述N个媒体源中只有一个媒体源对应有多个媒体流,其它媒体源只对应有一个媒体流。其整体媒体流的一种可能的全局优先级顺序如图7-e中箭头所示。若出现网络拥塞状况需执行丢包策略时可以按照箭头顺序依次丢包。

此外,为了节省端口消耗,可以把媒体源M1/M2/M3/Mx对应的优先级高的媒体流M11/M21/M31/Mx1放在端口地址1内传输;把M1/M2/M3/Mx优先级中的媒体流M12/M22/M32/Mx2放在端口地址2内传输;把M1/M2/M3/Mx优先级低的媒体流M13/M23/M33/Mx3放在端口地址3内传输。因此,媒体发送端在会话请求消息中携带端口复用指示,所述端口复用指示用于指示将不同媒体源的具有相同源内优先级的媒体流使用相同的端口地址传输。测试发现,若媒体发送端把不同媒体源的相同源内优先级的媒体流使用同一端口地址传输,有利于减少冗余编码放在每端口传输带来的端口消耗,同时也有利于兼容现在网络侧根据端口地址进行区别服务的情况。

下面结合图7-a~图7-e所示举例,针对SDP offer消息携带的媒体描述、端口复用指示和优先级指示等的一些可能的形式进行举例。

其中,SDP offer消息携带的媒体描述可以指示出同一媒体源与对应的多份媒体流之间的绑定关系,例如可通过如下方式指示:

新增支持同时联播的group,a=group:Simulcast<mid>指示绑定关系,具体可以例如:

a=group:Simulcast M11M12M13//指示媒体流M11/M12/M13均来自相同的媒体源M1;

a=group:Simulcast M21M22M23//指示媒体流M21/M22/M23均来自相同的媒体源M2;

a=group:Simulcast M31M32M33//指示媒体流M31/M32/M33均来自相同的媒体源M3;

a=group:Simulcast Mx1Mx2Mx3//指示媒体流Mx1/Mx2/Mx3均来自相同的媒体源Mx。

其中,SDP offer消息携带的优先级指示可指示出不同媒体源优先级,具体可通过如下方式指示:

新增支持a=pri-source:Name of Group<order>指示该同时联播所属的不同媒体源间的优先级排列顺序。

其中,这里order可能的值例如为ascending/descending/equal。

其中,a=pri-source:Simulcast descending//可指示各联播组所属的不同媒体源的优先级排列顺序是降序且M1>M2>M3>Mx。

即[M11,M12,M13]>[M21,M22,M23]>[M31,M32,M33]>[Mx1,Mx2,Mx3]。

其中,SDP offer消息携带的优先级指示可指示出同一媒体源内不同媒体流的源内优先级,具体可通过如下方式指示:

新增a=pri-stream:Name of Group<order>,指示同一媒体源内的各媒体流的源内优先级排序。

其中,这里order可能的值为ascending/descending/equal。

其中,a=pri-stream:Simulcast descending//指示Simulcast组内的媒体流优先级按照降序排序。

其中,a=group:Simulcast M11M12M13//指示M11/M12/M13均来自M1且优先级为M11>M12>M13。

其中,a=group:Simulcast M21M22M23//指示M21/M22/M23均来自M2且优先级为M21>M22>M23。

其中,a=group:Simulcast M31M32M33//指示M31/M32/M33均来自M3且优先级为M31>M32>M33。

其中,a=group:Simulcast Mx1Mx2Mx3//指示Mx1/Mx2/Mx3均来自Mx且优先级为Mx1>Mx2>Mx3。

根据以上步骤在会话协商层面已经指示出媒体流之间的源内优先级关系和媒体源的优先级关系,整体指示出媒体流的全局优先级关系。还可进一步对SDP/RTP头分别进行如下扩展,来使得具体的媒体流在SDP与RTP/RTCP之间形成优先级参数的映射。

下面以媒体源M11为例说明,在SDP中新增媒体级别的a行属性a=pri以及指示在相应实时传输协议(RTP,Real-time Transport Protocol)包的包头扩展中携带该媒体流级别的优先级,可以表示如下:

m=video RTP PORT1YYYY

a=mid M11

a=pri:p1

a=rtpmap:0PCMU/8000

a=extmap 21urn:ietf:params:rtp-hdrext:sdes:pri。

其中,与之相匹配的RTP包的包头扩展可以如图7-f举例所示。

其中,与之相匹配的RTCP包的头扩展可以如图7-g举例所示,其中主要新增一个SDES items项。

此外,将不同媒体源的具有相同源内优先级的媒体流放在同一RTP端口地址传输以节省端口消耗,端口复用指示可通过如下方式来指示:使用bundle机制把多个媒体流复用在一个端口,如RTP端口1的复用情况如下:

a=group:Bundle M11M21M31Mx1//指示M11/M21/M31/Mx1复用在相同的RTP端口即PORT1。

m=video RTP PORT1YYYY

a=mid M11//指示M11在port1传输

m=video RTP PORT1YYYY

a=mid M21//指示M21在port1传输

m=video RTP PORT1YYYY

a=mid M31//指示M31在port1传输

m=video RTP PORT1YYYY

a=mid Mx1//指示Mx1在port1传输

a=group:Bundle M12M22M32Mx2//指示M12/M22/M32/Mx2复用在相同的RTP端口即PORT2

m=video RTP PORT2YYYY

a=mid M12//指示M12在port2传输

m=video RTP PORT2YYYY

a=mid M22//指示M22在port2传输

m=video RTP PORT2YYYY

a=mid M32//指示M32在port2传输

m=video RTP PORT2YYYY

a=mid Mx2//指示Mx2在port2传输

a=group:Bundle M13M23M33Mx3//指示M13/M23/M33/Mx3复用在相同的RTP端口即PORT3

m=video RTP PORT3YYYY

a=mid M13//指示M13在port3传输

m=video RTP PORT3YYYY

a=mid M23//指示M23在port3传输

m=video RTP PORT3YYYY

a=mid M33//指示M33在port3传输

m=video RTP PORT3YYYY

a=mid Mx3//指示Mx3在port3传输

其中,

a=group:Bundle M11M21M31Mx1//指示M11/M21/M31/Mx1复用在Port1传输。

a=group:Bundle M12M22M32Mx2//指示M12/M22/M32/Mx2复用在Port2传输。

a=group:Bundle M13M23M33Mx3//指示M13/M23/M33/Mx3复用在Port3传输。

上述举例的SDP offer消息携带的媒体描述、端口复用指示和优先级指示等的一些可能的形式仅为了说明,在实际应用中可能根据需要来进行调整具体表现形式。

参见图8,本发明实施例还提供另一种媒体设备800,可包括:确定单元810和传输控制单元820。

其中,上述确定单元810,用于确定N个媒体源对应的媒体流之间的全局优先级,所述N为正整数,其中,所述N个媒体源为所述媒体设备在第二媒体设备所参与的媒体会话中能够提供的N个媒体源,所述N个媒体源中的一个媒体源对应有用于在所述媒体会话中同时联播的至少2路媒体流;

传输控制单元820,用于在所述媒体设备800与所述第二媒体设备之间的传输通道出现拥塞的情况下,基于确定的所述N个媒体源对应的媒体流之间的全局优先级,对所述媒体设备800向所述第二媒体设备发送的所述N个媒体源对应的媒体流进行拥塞控制。

在本发明一些可能的实施方式中,所述N个媒体源对应的媒体流之间的全局优先级可以基于所述N个媒体源之间的优先级、所述N个媒体源中的每个媒体源分别对应的各媒体流之间的源内优先级和优先级参考权重共同确定,所述优先级参考权重为所述N个媒体源之间的优先级和所述N个媒体源中的每个媒体源分别对应的各媒体流之间的源内优先级之间的参考权重。

在本发明的一些可能的实施方式中,所述N个媒体源对应的媒体流之间的全局优先级基于所述N个媒体源之间的优先级和所述N个媒体源中的每个媒体源分别对应的各媒体流之间的源内优先级共同确定。

在本发明的一些可能实施方式中,所述确定单元具体用于,通过与所述第二媒体设备协商来确定所述N个媒体源对应的媒体流之间的全局优先级。

在本发明一些可能实施方式中,确定单元810可具体用于根据用户优先级设置指令确定所述N个媒体源对应的媒体流之间的全局优先级;或根据预配置的优先级确定策略确定所述N个媒体源对应的媒体流之间的全局优先级。

在本发明一些可能实施方式中,确定单元810可具体用于向所述第二媒体设备发送第一会话消息,所述第一会话消息携带优先级指示,所述优先级指示用于确定出所述N个媒体源对应的媒体流之间的全局优先级;接收所述第二媒体设备发送的第一会话响应消息;若所述第一会话响应消息携带针对所述优先级指示的确认指示,所述优先级指示所确定出的所述N个媒体源对应的媒体流之间的全局优先级,为所述确定单元确定出的所述N个媒体源对应的媒体流之间的全局优先级;

或者,

确定单元810可具体用于向所述第二媒体设备发送第二会话消息,所述第二会话消息携带优先级指示,其中,所述优先级指示用于确定出所述N个媒体源对应的媒体流之间的全局优先级;接收所述第二媒体设备发送的第二会话响应消息;若所述第二响应会话消息携带针对所述优先级指示的调整指示,基于所述调整指示对所述优先级指示所指示出的所述N个媒体源对应的媒体流之间的全局优先级进行调整,其中,调整后的所述N个媒体源对应的媒体流之间的全局优先级,为所述确定单元确定出的所述N个媒体源对应的媒体流之间的全局优先级;

或者,

确定单元810可具体用于接收第二媒体设备发送的第三会话消息,所述第三会话消息携带优先级指示,其中,所述优先级指示用于确定出所述N个媒体源对应的媒体流之间的全局优先级;向所述第二媒体设备发送第三会话响应消息;所述第三会话响应消息携带针对所述优先级指示的确认指示,基于所述第三会话消息携带的优先级指示确定所述N个媒体源对应的媒体流之间的全局优先级;

或者,

确定单元810可具体用于接收第二媒体设备发送的第四会话消息,所述第四会话消息携带优先级指示,其中,所述优先级指示用于确定出所述N个媒体源对应的媒体流之间的全局优先级;所述媒体设备向所述第二媒体设备发送第四会话响应消息;其中,所述第四会话响应消息携带针对所述优先级指示的调整指示,其中,基于所述调整指示调整后的所述N个媒体源对应的媒体流之间的全局优先级,为所述媒体设备确定出的所述N个媒体源对应的媒体流之间的全局优先级。

在本发明一些可能实施方式中,所述第一会话消息或所述第二会话消息或第一会话响应消息或第二会话响应消息还携带端口复用指示,所述端口复用指示用于指示将不同媒体源的具有相同源内优先级的媒体流使用相同的端口地址传输。

在本发明一些可能实施方式中,所述第三会话消息或所述第四会话消息或第三会话响应消息或第四会话响应消息还携带端口复用指示,所述端口复用指示用于指示将不同媒体源的具有相同源内优先级的媒体流使用相同的端口地址传输。

在本发明一些可能实施方式中,在所述N等于1的情况下,所述优先级指示包括媒体流源内优先级指示,所述媒体流源内优先级指示用于指示媒体源对应的各媒体流之间的源内优先级。

在本发明一些可能实施方式中,在所述N大于1的情况下所述优先级指示包括媒体源优先级指示、媒体流源内优先级指示和优先级参考权重指示,所述媒体源优先级指示用于指示不同媒体源之间的优先级;所述媒体流源内优先级指示用于指示同一个媒体源对应的媒体流之间的源内优先级;所述优先级参考权重指示用于指示出所述媒体源优先级指示和所述媒体流源内优先级指示之间的参考权重。

在本发明一些可能实施方式中,在所述优先级参考权重指示用于指示出所述媒体源优先级指示的参考权重高于所述媒体流源内优先级指示的参考权重的情况下,

若所述N个媒体源中的媒体源i的优先级高于所述N个媒体源中的媒体源j的优先级,所述媒体源i对应的任意一个媒体流的全局优先级高于所述媒体源j对应的任意一个媒体流的全局优先级,其中,所述媒体源i和所述媒体源j为所述N个媒体源中的任意两个媒体源。

在本发明一些可能实施方式中,在所述优先级参考权重指示用于指示出所述媒体源优先级指示的参考权重低于所述媒体流源内优先级指示的参考权重的情况下,

若所述N个媒体源之中的媒体源i的优先级高于所述N个媒体源之中的媒体源j的优先级,并且所述媒体源i对应的媒体流ix的源内优先级等于所述媒体源j对应的媒体流jx的源内优先级,则所述媒体流ix的全局优先级高于所述媒体流jx的全局优先级,其中,所述媒体源i和所述媒体源j为所述N个媒体源之中的任意两个媒体源,其中,所述媒体源i对应的媒体流ix为所述媒体源i对应的任意一个媒体流,所述媒体源j对应的媒体流jx为所述媒体源j对应的任意一个媒体流;

或者,

若所述N个媒体源之中的媒体源i的优先级高于所述N个媒体源之中的媒体源j的优先级,并且所述媒体源i对应的媒体流ix的源内优先级等于所述媒体源j对应的媒体流jx的源内优先级,并且所述媒体流ix的源内优先级高于所述媒体源i中的媒体流iy的源内优先级,则所述媒体流jx的全局优先级高于所述媒体流iy的全局优先级,其中,所述媒体源i和所述媒体源j为所述N个媒体源之中的任意两个媒体源,其中,所述媒体流ix和所述媒体流iy为所述媒体源i对应的任意两个媒体流,所述媒体源j对应的媒体流jx为所述媒体源j对应的任意一个媒体流;

或者,

若所述N个媒体源之中的媒体源i的优先级高于所述N个媒体源之中的媒体源j的优先级,并且所述媒体源i对应的媒体流ix的源内优先级等于所述媒体源j对应的媒体流jx的源内优先级,并且所述媒体流ix的源内优先级低于所述媒体源i中的媒体流iw的源内优先级,则所述媒体流jx的全局优先级低于所述媒体流iw的全局优先级,其中,所述媒体源i和所述媒体源j为所述N个媒体源之中的任意两个媒体源,其中,所述媒体流ix和所述媒体流iw为所述媒体源i对应的任意两个媒体流;其中,所述媒体源j对应的媒体流jx为所述媒体源j对应的任意一个媒体流。

在本发明一些可能实施方式中,传输控制单元820可以具体用于,在确定所述媒体设备与所述第二媒体设备之间的传输通道出现拥塞的情况下,优先丢弃所述媒体设备待向所述第二媒体设备发送的所述N个媒体源对应的媒体流中的全局优先级相对较低的媒体流的部分或全部媒体数据包;或在确定所述媒体设备与所述第二媒体设备之间的传输通道出现拥塞的情况下,延迟发送所述媒体设备待向所述第二媒体设备发送的所述N个媒体源对应的媒体流中的全局优先级相对较低的媒体流的部分或全部媒体数据包。

在本发明的一些可能的实施方式中,在所述媒体设备800为会议服务器的情况下,所述第二媒体设备可以为媒体终端;或者在所述媒体设备800为媒体终端的情况下,所述第二媒体设备可以媒体终端或会议服务器。

可以理解的是,本实施例媒体设备800的各功能模块的功能,以及该媒体设备与其他设备之间的交互机制,可根据方法实施例中的方法具体实现,其具体实现过程可以参照方法实施例的相关描述,此处不再赘述。

可以看出,在本实施例的技术方案中,作为发送端的媒体设备800可先确定N个媒体源对应的媒体流之间的全局优先级,在媒体设备800与所述第二媒体设备之间的传输通道出现拥塞的情况下,可基于确定的所述N个媒体源对应的媒体流之间的全局优先级,对所述媒体设备800向所述第二媒体设备发送的所述N个媒体源对应的媒体流进行拥塞控制。其中,由于引入了一种相对行之有效的发送管控机制来对发送端待发送的包括同时联播的媒体流在内的媒体流进行拥塞控制,而拥塞控制机制参考了N个媒体源对应的媒体流之间的全局优先级,因此,有利于在传输通道拥塞等情况下尽量保证全局优先级较高的媒体流的可靠传输,进而有利于保证媒体会话的质量,进而有利于提升用户产品体验。

参见图9,本发明实施例还提供一种通信系统,包括:

第一媒体设备910和第二媒体设备920,其中,所述第一媒体设备910可以为上述实施例所述的任意一种媒体设备。例如,第一媒体设备910可如媒体设备200或媒体设备800等。

可选的,在本发明的一些可能的实施方式中,在第一媒体设备910为会议服务器的情况下,所述第二媒体设备可为媒体终端;或者在第一媒体设备910为媒体终端的情况下,所述第二媒体设备可以媒体终端或会议服务器。

需要说明的是,对于前述的各方法实施例,为了简单描述,故将其都表述为一系列的动作组合,但是本领域技术人员应该知悉,本发明并不受所描述的动作顺序的限制,因为依据本发明,某些步骤可以采用其他顺序或者同时进行。其次,本领域技术人员也应该知悉,说明书中所描述的实施例均属于优选实施例,所涉及的动作和模块并不一定是本发明所必须的。

在上述实施例中,对各个实施例的描述都各有侧重,某个实施例中没有详述的部分,可以参见其他实施例的相关描述。

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

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

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

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

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

去获取专利,查看全文>

相似文献

  • 专利
  • 中文文献
  • 外文文献
获取专利

客服邮箱:kefu@zhangqiaokeyan.com

京公网安备:11010802029741号 ICP备案号:京ICP备15016152号-6 六维联合信息科技 (北京) 有限公司©版权所有
  • 客服微信

  • 服务号