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

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

Info

Publication number
WO2017000636A1
WO2017000636A1 PCT/CN2016/079887 CN2016079887W WO2017000636A1 WO 2017000636 A1 WO2017000636 A1 WO 2017000636A1 CN 2016079887 W CN2016079887 W CN 2016079887W WO 2017000636 A1 WO2017000636 A1 WO 2017000636A1
Authority
WO
WIPO (PCT)
Prior art keywords
media
priority
source
sources
indication
Prior art date
Application number
PCT/CN2016/079887
Other languages
English (en)
French (fr)
Inventor
刘艳
杨玮玮
Original Assignee
华为技术有限公司
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by 华为技术有限公司 filed Critical 华为技术有限公司
Priority to EP16817000.9A priority Critical patent/EP3300329B1/en
Publication of WO2017000636A1 publication Critical patent/WO2017000636A1/zh
Priority to US15/851,203 priority patent/US10645128B2/en

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L65/00Network arrangements, protocols or services for supporting real-time applications in data packet communication
    • H04L65/1066Session management
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L65/00Network arrangements, protocols or services for supporting real-time applications in data packet communication
    • H04L65/40Support for services or applications
    • H04L65/403Arrangements for multi-party communication, e.g. for conferences
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L47/00Traffic control in data switching networks
    • H04L47/10Flow control; Congestion control
    • H04L47/11Identifying congestion
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L47/00Traffic control in data switching networks
    • H04L47/10Flow control; Congestion control
    • H04L47/15Flow control; Congestion control in relation to multipoint traffic
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L47/00Traffic control in data switching networks
    • H04L47/10Flow control; Congestion control
    • H04L47/24Traffic characterised by specific attributes, e.g. priority or QoS
    • H04L47/2458Modification of priorities while in transit
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L65/00Network arrangements, protocols or services for supporting real-time applications in data packet communication
    • H04L65/1066Session management
    • H04L65/1069Session establishment or de-establishment
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L65/00Network arrangements, protocols or services for supporting real-time applications in data packet communication
    • H04L65/1066Session management
    • H04L65/1083In-session procedures
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L65/00Network arrangements, protocols or services for supporting real-time applications in data packet communication
    • H04L65/40Support for services or applications
    • H04L65/401Support for services or applications wherein the services involve a main real-time session and one or more additional parallel real-time or time sensitive sessions, e.g. white board sharing or spawning of a subconference
    • H04L65/4015Support for services or applications wherein the services involve a main real-time session and one or more additional parallel real-time or time sensitive sessions, e.g. white board sharing or spawning of a subconference where at least one of the additional parallel sessions is real time or time sensitive, e.g. white board sharing, collaboration or spawning of a subconference
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L65/00Network arrangements, protocols or services for supporting real-time applications in data packet communication
    • H04L65/60Network streaming of media packets
    • H04L65/61Network streaming of media packets for supporting one-way streaming services, e.g. Internet radio
    • H04L65/611Network streaming of media packets for supporting one-way streaming services, e.g. Internet radio for multicast or broadcast
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L65/00Network arrangements, protocols or services for supporting real-time applications in data packet communication
    • H04L65/60Network streaming of media packets
    • H04L65/65Network streaming protocols, e.g. real-time transport protocol [RTP] or real-time control protocol [RTCP]
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L65/00Network arrangements, protocols or services for supporting real-time applications in data packet communication
    • H04L65/60Network streaming of media packets
    • H04L65/75Media network packet handling
    • H04L65/752Media network packet handling adapting media to network capabilities
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L65/00Network arrangements, protocols or services for supporting real-time applications in data packet communication
    • H04L65/80Responding to QoS
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/40Network security protocols

Definitions

  • the present invention relates to the field of network communication technologies, and in particular, to a media session processing method, related devices, and a communication system.
  • the conference server at the central node receives audio and video streams from various participating terminals (ie, media terminals), and the conference server combines local policies and other participating terminals.
  • the receiving capability selects the corresponding audio and video stream and forwards it to other participating terminals, so that normal audio and video communication is established between the participating terminals.
  • some participants may prefer audio and video media streams of a certain version (such as a quality version or a format version), so some participants may encode a media source (such as a video source) into multiple versions.
  • Media stream multiple versions of the media stream may include, for example, a standard definition media stream, a high definition version of the media stream, and a super clear version of the media stream, etc.
  • the participant terminal of the media stream can play according to selecting a media stream of a desired version from the media streams of multiple versions simultaneously simulcast.
  • the inventors of the present invention have found in the research and practice that the transmitting end of the media stream in the prior art is usually unregulated and simultaneously broadcasts multiple versions of the media stream of the media source, which makes the transmission channel congestion, for example.
  • the quality of the entire media session may be seriously affected, which may affect the user product experience.
  • the media session processing method and the related device and the communication system in the embodiment of the present invention are to ensure the quality of the media session as much as possible in the case of congestion of the transmission channel.
  • a first aspect of the embodiments of the present invention provides a media session processing method, including:
  • the first media device Determining, by the first media device, a global priority between the media streams corresponding to the N media sources, where the N is a positive integer, where the N media sources are involved by the first media device in the second media device N media sources that can be provided in the media session, one of the N media sources corresponding to at least two media streams for simultaneous simulcasting in the media session;
  • the first media device based on the determined global priority between the media streams corresponding to the N media sources, when the transmission channel between the first media device and the second media device is congested And performing congestion control on the media stream corresponding to the N media sources that are sent by the first media device to the second media device.
  • the media streams corresponding to the N media sources The global priority is determined based on the priority between the N media sources, the in-source priority and the priority reference weight between the respective media streams corresponding to each of the N media sources.
  • the priority reference weight is a reference between a priority between the N media sources and an in-source priority between respective media streams corresponding to each of the N media sources. Weights.
  • the global priority between the media streams corresponding to the N media sources is based on a priority between the N media sources and a media stream corresponding to each of the N media sources respectively The priority within the source is determined together.
  • the first media device determines The global priority between the media streams corresponding to the N media sources includes: determining, by the first media device, the global priority between the media streams corresponding to the N media sources by negotiating with the second media device.
  • the first media device determines, by negotiating with the second media device, the N media sources
  • the global priority between media streams including:
  • the first media device Transmitting, by the first media device, the first session message to the second media device, where the first session message carries a priority indication, where the priority indication is used to determine media corresponding to the N media sources a global priority between the flows; the first media device receives the first session response message sent by the second media device; wherein, if the first session response message carries an acknowledgement indication for the priority indication,
  • the global priority between the media streams corresponding to the N media sources determined by the priority indication is a global priority between the media streams corresponding to the N media sources determined by the first media device;
  • the first media device sends a second session message to the second media device, where the second session message carries a priority indication, where the priority indication is used to indicate media corresponding to the N media sources a global priority between the flows; the first media device receives a second session response message sent by the second media device; if the second session response message carries an adjustment indication for the priority indication, based on Adjusting the global priority between the media streams corresponding to the N media sources indicated by the priority indication, where the adjusted media streams corresponding to the N media sources are
  • the global priority is a global priority between the media streams corresponding to the N media sources determined by the first media device.
  • the first media device determines, by using the second media device, the N media sources
  • the global priority between media streams including:
  • the first media device receives, by the first media device, a third session message sent by the second media device, where the third session message carries a priority indication, where the priority indication is used to determine a media stream corresponding to the N media sources a global priority between the two; the first media device sends a third session response message to the second media device; wherein the third session response message carries an acknowledgement indication for the priority indication, Determining, by the media device, a global priority between the media streams corresponding to the N media sources, based on the priority indication carried by the third session message;
  • the fourth session message carries a priority indication, where the priority indication is used to determine a media stream corresponding to the N media sources a global priority between the two; the first media device sends a fourth session response message to the second media device; wherein the fourth session response message carries an adjustment indication for the priority indication, where The adjustment indicates that the global priority between the media streams corresponding to the N media sources is the global priority between the media streams corresponding to the N media sources determined by the first media device.
  • the priority indication includes a media source priority indication, a media stream source internal priority indication, and a priority reference weight indication.
  • the media source priority indication is used to indicate a priority between different media sources; the media stream source internal priority indicates an in-source priority between the media streams corresponding to the same media source; the priority reference The weight indication is used to indicate a reference weight between the media source priority indication and the priority indication in the media stream source.
  • the priority reference weight indication is used to indicate that the media source priority indication has a high reference weight In the case of the reference weight indicated by the priority in the media stream source,
  • the global priority of any media stream corresponding to the media source i is higher than The global priority of any media stream corresponding to the media source j, wherein the media source i and the media source j are any two media sources of the N media sources.
  • the priority reference weight indication is used to indicate that the media source priority indication has a low reference weight In the case of the reference weight indicated by the priority in the media stream source,
  • the priority of the media source i among the N media sources is higher than the priority of the media source j among the N media sources, and the source priority of the media stream ix corresponding to the media source i is equal to The source priority of the media stream jx corresponding to the media source j
  • the global priority of the media stream ix is higher than the global priority of the media stream jx, wherein the media source i and the media source j Any one of the N media sources, where the media stream ix corresponding to the media source i is any media stream corresponding to the media source i; wherein the media source j corresponds to The media stream jx is any one of the media streams corresponding to the media source j;
  • the media source j corresponds to the in-source priority of the media stream jx, and the in-source priority of the media stream ix is higher than the in-source priority of the media stream iy in the media source i, and the media stream jx is global.
  • the priority is higher than the global priority of the media stream iy, wherein the media source i and the media source j are any two media sources of the N media sources, wherein the media stream ix And the media stream iy is any two media streams corresponding to the media source i, and the media stream jx corresponding to the media source j is any one of the media streams corresponding to the media source j;
  • the priority of the media source i among the N media sources is higher than the priority of the media source j among the N media sources, and the source of the media stream ix corresponding to the media source i is prioritized
  • the level is equal to the in-source priority of the media stream jx corresponding to the media source j, and the in-source priority of the media stream ix is lower than the in-source priority of the media stream iw in the media source i, then the media stream jx
  • the global priority is lower than the global priority of the media stream iw, wherein the media source i and the media source j are any two media sources of the N media sources, and the media stream ix
  • the media stream iw is any two media streams corresponding to the media source i
  • the media stream jx corresponding to the media source j is any one of the media streams corresponding to the media source j.
  • a second aspect of the embodiments of the present invention provides a media device, including:
  • a determining unit configured to determine a global priority between the media streams corresponding to the N media sources, where the N is a positive integer, where the N media sources are media that the media device participates in the second media device N media sources that can be provided in the session, one of the N media sources corresponding to at least two media streams for simultaneous simulcasting in the media session;
  • a transmission control unit configured to: based on the determined global priority between the media streams corresponding to the N media sources, in a case that the transmission channel between the media device and the second media device is congested The media device performs congestion control on the media stream corresponding to the N media sources sent by the second media device.
  • the global priority between the media streams corresponding to the N media sources is based on a priority between the N media sources, and between each media stream corresponding to each of the N media sources.
  • the in-source priority and the priority reference weight are jointly determined, wherein the priority reference weight is a priority between the N media sources and each media stream corresponding to each of the N media sources respectively The reference weight between the priorities within the source.
  • the global priority between the media streams corresponding to the N media sources is based on the priority and the location between the N media sources
  • the in-source priorities between the media streams corresponding to each of the N media sources are determined together.
  • the first media device that is the transmitting end first determines the global priority between the media streams corresponding to the N media sources, where the first media device and the second media are In the case that the transmission channel between the devices is congested, the first media device may be sent to the second media device based on the determined global priority between the media streams corresponding to the N media sources.
  • the media streams corresponding to the N media sources perform congestion control.
  • the congestion control mechanism refers to the media corresponding to the N media sources, because a relatively effective transmission management mechanism is introduced to perform congestion control on the media stream including the simultaneously broadcasted media stream to be sent by the transmitting end, and the congestion control mechanism refers to the media corresponding to the N media sources.
  • the global priority between the flows is therefore beneficial to ensure reliable transmission of media streams with higher global priority in the case of congestion in the transmission channel, etc., which is beneficial to ensure the quality of the media session, and thus is beneficial to improving the user product experience.
  • FIG. 1 is a schematic diagram of several network architectures according to an embodiment of the present invention.
  • FIG. 2 is a schematic diagram of a media device according to an embodiment of the present invention.
  • FIG. 3 is a schematic flowchart of a media session processing method according to an embodiment of the present disclosure
  • FIG. 5 is a schematic flowchart of another media session processing method according to an embodiment of the present disclosure.
  • FIG. 6 is a schematic flowchart diagram of another media session processing method according to an embodiment of the present disclosure.
  • 7-a is a schematic diagram of a priority sequence in a media stream source according to an embodiment of the present invention.
  • 7-b is a schematic diagram of a media source priority sequence according to an embodiment of the present invention.
  • 7-c is a schematic diagram of a global priority sequence of media streams according to an embodiment of the present invention.
  • 7-d is a schematic diagram of a global priority sequence of media streams according to an embodiment of the present invention.
  • 7-e is a schematic diagram of a global priority sequence of media streams according to an embodiment of the present invention.
  • 7-f is a schematic diagram of a packet header format of an RTP packet according to an embodiment of the present invention.
  • 7-g is a schematic diagram of a packet header format of an RTCP packet according to an embodiment of the present invention.
  • FIG. 8 is a schematic diagram of another media device according to an embodiment of the present disclosure.
  • FIG. 9 is a schematic diagram of a communication system according to an embodiment of the present invention.
  • the media session processing method, related device and communication system of the embodiment of the invention are used to ensure the quality of the media session as much as possible in the case of congestion of the transmission channel.
  • a plurality of media terminals are in communication connection with the conference server, and the conference server located at the central node may receive
  • the audio and video streams from the participating terminals ie, media terminals), etc.
  • the conference server combines the local policy and other participating terminal receiving capabilities to select the corresponding audio and video streams and forward them to other participating terminals, so that the participating terminals are established normally. Audio and video communication.
  • two media terminals (media terminals in a conference scenario may also be referred to as conference terminals or conference terminals, etc.) are interconnected through a network, and the two conference terminals can exchange audio and video through the network.
  • the two participating terminals can establish normal audio and video communication without the participation of the conference server.
  • the conference server and the multi-stream communication terminal are involved in the network architecture of the multi-stream communication system shown in FIG. 1-c.
  • the conference server may be a Multi Control Unit (MCU) or a Multimedia Resource Function Processor (MRFP) entity.
  • MCU Multi Control Unit
  • MRFP Multimedia Resource Function Processor
  • the multi-stream communication terminal itself can generate multi-channel audio and video streams, such as a soft terminal, a conference terminal, a telepresence user, a 3G/4G terminal, and an IP Multimedia Subsystem (IMS) terminal.
  • the SIP (Session Initiation Protocol) telephone terminal or the Public Switched Telephone Network (PSTN) telephone terminal can only generate one audio stream.
  • PSTN Public Switched Telephone Network
  • the multi-stream communication terminals capable of generating multi-channel audio and video streams can communicate with each other without passing through the MCU; in the case of point-to-multipoint, multi-stream communication terminals capable of generating multi-channel audio and video streams Communication with other terminals through the MCU or MRFP, equivalent to the MCU or MRFP is the central node of multipoint communication, responsible for forwarding and other functions.
  • the media terminal and the conference server can be referred to as media devices.
  • the media device that sends the media stream may be referred to as a media stream sending end (which may be referred to as a sending end), and the media device that receives the media stream may be referred to as a media stream receiving end (which may be referred to as a receiving end).
  • simulcasting refers to encoding the same media source (such as audio or video) into multiple independent media streams by different encoding methods (the resolution of these multiple independent media streams may be Synchronous transmission is performed after the difference, the code rate may be different, and/or the code type may be different.
  • the media device 200 further includes at least one network interface 204.
  • the media device 200 can optionally include at least one user interface 203.
  • the user interface 203 may include a display (wherein the display is, for example, a touch screen, a liquid crystal display (LCD), a holographic image, a cathode ray tube (CRT, a cathode ray tube), or a projection (Projector). ), click on a device (such as a mouse or trackball touchpad or touch screen, etc.), a camera and/or a pickup device, and the like.
  • a display wherein the display is, for example, a touch screen, a liquid crystal display (LCD), a holographic image, a cathode ray tube (CRT, a cathode ray tube), or a projection (Projector).
  • a device such as a mouse or trackball touchpad or touch screen, etc.
  • a camera and/or a pickup device and the like.
  • the memory 205 may include a read only memory and a random access memory, and provides instructions and data to the processor 201. Alternatively, a portion of the memory 205 may also include a non-volatile random access memory.
  • the memory 205 stores the following elements, executable modules or data structures, or a subset thereof, or their extended set: an operating system 2051 and an application module 2052.
  • the operating system 2051 can include various system programs for implementing various basic services and processing hardware-based tasks.
  • the application module 2052 can include various applications for implementing various application services.
  • the processor 201 may be configured to: determine a global priority between the media streams corresponding to the N media sources, where N is a positive integer,
  • the N media sources are N media sources that the media device can provide in a media session in which the second media device participates, and one of the N media sources is corresponding to the media.
  • the global priority is used to perform congestion control on the media stream corresponding to the N media sources that are sent by the media device to the second media device.
  • the "global" in the global priority is for a set of media streams formed by multiple media streams.
  • the media stream set may be formed by all media streams corresponding to the N media sources, or the media stream set may be corresponding to all media sources that the media device 200 can provide in the media session in which the second media device participates.
  • the media stream set may be formed by all media streams corresponding to all media sources in the media session in which the second media device and media device 200 participate, or the media stream set may be composed of the media All media sources that device 200 can provide All corresponding media streams are formed, or the media stream set may be formed by all media streams that the second media device may receive, or the media stream set may be media that the second media device participates in the media device 200 All media streams that may be received in the session are formed.
  • the set of media streams targeted by "global" in the global priority may also be formed by other media streams.
  • the media stream set for the "global" in the global priority includes at least all the media streams corresponding to the N media sources.
  • the media stream corresponding to the media source is a media stream indicating that the media source is encoded. If the media source is encoded into multiple media streams, the media source corresponds to multiple media streams (the plurality of media streams may include, for example, a standard definition media stream, a high definition version of the media stream, and/or an ultra clear version of the media stream, etc.) If the media source is only encoded into one media stream, then the media source only corresponds to one media stream.
  • the media device participating in the session may include other one or more media devices in addition to the first media device and the second media device.
  • the second media device in a case where the media device 200 is a conference server, is a media terminal.
  • the second media device may be a media terminal or a conference server.
  • the N may be, for example, an integer greater than or equal to 1.
  • the N can be equal to 1, 2, 3, 4, 5, 6, 8, 10, 15, 19, 21, 30, 500 or other values.
  • the global priority between the media streams corresponding to the N media sources may be based on a priority between the N media sources, each of the N media sources
  • the in-source priority and the priority reference weight between the respective media streams corresponding to the media source are jointly determined, and the priority reference weight is a priority between the N media sources and each of the N media sources
  • the global priority between the media streams corresponding to the N media sources is based on a priority between the N media sources and each of the N media sources.
  • the in-source priorities between the media streams corresponding to the media sources are determined together.
  • the processor 201 may be specifically configured to determine a global priority between media streams corresponding to the N media sources by negotiating with the second media device.
  • the processor 201 may be specifically configured to send, to the second media device, a first session message, where the first session message carries a priority indication, where the priority indication is Determining a global priority between the media streams corresponding to the N media sources; receiving a first session response message sent by the second media device; if the first session response message carries an indication for the priority The acknowledgment indicates that the global priority between the media streams corresponding to the N media sources determined by the priority indication is between the media streams corresponding to the N media sources determined by the processor 201 Global priority
  • the processor 201 may be configured to send a second session message to the second media device, where the second session message carries a priority indication, where the priority indication is used to determine that the N media sources correspond to Receiving a global priority between the media streams; receiving a second session response message sent by the second media device; if the second response session message carries an adjustment indication for the priority indication, based on the adjustment indication pair
  • the priority indicates that the global priority between the media streams corresponding to the N media sources is adjusted, wherein the global priority between the media streams corresponding to the adjusted N media sources is The global priority between the media streams corresponding to the N media sources determined by the processor 201;
  • the processor 201 may be configured to receive a third session message that is sent by the second media device, where the third session message carries a priority indication, where the priority indication is used to determine that the N media sources correspond to a global priority between the media streams; sending a third session response message to the second media device; the third session response message carrying an acknowledgement indication for the priority indication, carried based on the third session message
  • the priority indication determines a global priority between the media streams corresponding to the N media sources;
  • the processor 201 may be configured to receive a fourth session message that is sent by the second media device, where the fourth session message carries a priority indication, where the priority indication is used to determine that the N media sources correspond to a global priority between the media streams; the media device sends a fourth session response message to the second media device; wherein the fourth session response message carries an adjustment indication for the priority indication, where The global priority between the media streams corresponding to the N media sources adjusted based on the adjustment indication is a global priority between the media streams corresponding to the N media sources determined by the media device.
  • the first session message or the second session message or the first session response message or the second session response message further carries a port multiplexing indication, where the port multiplexing indication is used
  • the media stream with the same in-source priority is indicated to be transmitted using the same port address for different media sources.
  • the third session message or the fourth session message or the third session response message or the fourth session response message further carries a port multiplexing indication, where the port multiplexing indication is used
  • the media stream with the same in-source priority is indicated to be transmitted using the same port address for different media sources.
  • the first session message or the second session message may also carry a media description, where the media description may be used to indicate the N media sources.
  • the first session response message or the second session response message may further carry an acknowledgement indication for the media description.
  • the first session message or the second session message may further carry a simultaneous simulcast indication, where the simultaneous simulcast indication is used to indicate the one of the N media sources. At least one media source supports simultaneous simulcasting.
  • the first session response message or the second session response message may further carry an acknowledgement indication for the simultaneous simulcast indication.
  • the third session message or the fourth session message may further carry a media description, where the media description may be used to indicate the N media sources.
  • the third session response message or the fourth session response message may further carry an acknowledgement indication for the media description.
  • the third session message or the fourth session message further carries a simultaneous simulcast indication, wherein the simultaneous simulcast indication is used to indicate at least one of the N media sources.
  • a media source supports simultaneous simulcasting.
  • the third session response message or the fourth session response message may further carry an acknowledgement indication for the simultaneous simulcast indication.
  • the first session response message is used to respond to the first session message.
  • the second session response message is for responding to the second session message.
  • the third session response message is for responding to the third session message.
  • the fourth session response message is used to respond to the fourth session message.
  • the first session message may be a message for requesting to establish a session, a message for requesting an update session, or other session message.
  • the second session message may be a message for requesting to establish a session, a message for requesting an update session, or other session message.
  • the third session message may be a message for requesting to establish a session, a message for requesting an update session, or other session message.
  • the fourth session message may be a message for requesting to establish a session, a message for requesting an update session, or other session message.
  • the first session message may be, for example, a session description protocol (SDP) request message or other type of session message, of course, the first session message is In the case of an SDP offer message, the first session response message may be an SDP response message.
  • SDP session description protocol
  • the second session message may be, for example, an SDP offer message or other type of session message.
  • the second session message is an SDP offer message
  • the second session The response message can be an SDP answer message.
  • the third session message may be, for example, an SDP offer message or other type of session message.
  • the third session message is an SDP offer message
  • the third session The response message can be an SDP answer message.
  • the fourth session message may be, for example, an SDP offer message or other type of session message.
  • the fourth session message is an SDP offer message
  • the fourth session The response message can be an SDP answer message.
  • the priority indication includes a media stream source internal priority indication, and the media stream source internal priority indication is used to indicate a corresponding media source. In-source priority between media streams.
  • the priority indication includes a media source priority indication, a media stream source internal priority indication, and a priority reference weight indication
  • the media source priority The indication is used to indicate a priority between different media sources; the priority of the media stream source indicates an in-source priority between the media streams corresponding to the same media source; the priority reference weight indication is used to indicate The media source priority indication and the media The reference weight between the priority indications within the stream source.
  • the priority reference weight indication is used to indicate that the reference weight of the media source priority indication is higher than the reference weight indicated by the priority in the media stream source
  • the global priority of any media stream corresponding to the media source i is higher than The global priority of any media stream corresponding to the media source j, wherein the media source i and the media source j are any two media sources of the N media sources.
  • the priority reference weight indication is used to indicate that the reference weight of the media source priority indication is lower than a reference weight indicated by the priority in the media stream source
  • the priority of the media source i among the N media sources is higher than the priority of the media source j among the N media sources, and the source priority of the media stream ix corresponding to the media source i is equal to
  • the source priority of the media stream jx corresponding to the media source j the global priority of the media stream ix is higher than the global priority of the media stream jx, wherein the media source i and the media source j
  • the media stream ix corresponding to the media source i is any media stream corresponding to the media source i, wherein the media source j corresponds to any one of the N media sources.
  • the media stream jx is any one of the media streams corresponding to the media source j;
  • the media source j corresponds to the in-source priority of the media stream jx, and the in-source priority of the media stream ix is higher than the in-source priority of the media stream iy in the media source i, and the media stream jx is global.
  • the priority is higher than the global priority of the media stream iy, wherein the media source i and the media source j are any two media sources of the N media sources, wherein the media stream ix And the media stream iy is any two media streams corresponding to the media source i, wherein the media stream jx corresponding to the media source j is any one of the media streams corresponding to the media source j;
  • the media source j corresponds to the in-source priority of the media stream jx, and the in-source priority of the media stream ix is lower than the in-source priority of the media stream iw in the media source i, then the media stream jx globally The priority is lower than the global priority of the media stream iw, wherein the media source i and the media source j are any two media sources of the N media sources, wherein the media stream ix And the media stream iw is any two media streams corresponding to the media source i, wherein the media stream jx corresponding to the media source j is any one of the media streams corresponding to the media source j.
  • the processor 201 is specifically configured to preferentially discard the media device pending when it is determined that the transmission channel between the media device and the second media device is congested. And determining, by the second media device, part or all of the media data packets of the media stream with a relatively lower global priority in the media stream corresponding to the N media sources; or determining the media device and the second In the case where the transmission channel between media devices is congested, And delaying to send part or all of the media data packets of the media stream with a relatively lower global priority in the media stream corresponding to the N media sources to be sent by the media device to the second media device.
  • the media device 200 as the transmitting end first determines the global priority between the media streams corresponding to the N media sources, between determining the media device 200 and the second media device.
  • the N media that the media device 200 sends to the second media device may be based on the determined global priority between the media streams corresponding to the N media sources, if the transmission channel is congested.
  • the media stream corresponding to the source performs congestion control.
  • the congestion control mechanism refers to the media corresponding to the N media sources, because a relatively effective transmission management mechanism is introduced to perform congestion control on the media stream including the simultaneously broadcasted media stream to be sent by the transmitting end, and the congestion control mechanism refers to the media corresponding to the N media sources.
  • the global priority between the flows is beneficial to ensure reliable transmission of media streams with higher global priority in the case of congestion of the transmission channel, thereby facilitating the quality of the media session and improving the user experience.
  • FIG. 3 is a schematic flowchart diagram of a media session processing method according to an embodiment of the present invention.
  • a media session processing method provided by an embodiment of the present invention may include:
  • the first media device determines a global priority between the media streams corresponding to the N media sources.
  • the N is a positive integer (for example, the N may be an integer greater than or equal to 1).
  • the N media sources are N media sources that the first media device can provide in the media session in which the second media device participates, and at least one of the N media sources respectively corresponding to the media source At least 2 media streams simultaneously simulcast in the media session.
  • the media device participating in the session may include other one or more media devices in addition to the first media device and the second media device.
  • the second media device is a media terminal.
  • the second media device may be a media terminal or a conference server.
  • the N can be equal to 1, 2, 3, 4, 5, 6, 8, 10, 15, 19, 21, 30, 500 or other values.
  • one of the N media sources corresponds to at least two media streams for simultaneous simulcasting in the media session, and that one of the N media sources is correspondingly used for At least two media streams simultaneously simulcasted in the media session may also indicate that n media sources of the N media sources respectively correspond to at least two media streams for simultaneous simulcasting in the media session, n Is an integer greater than 1 and less than or equal to N.
  • N is equal to 3
  • one of the N media sources corresponds to at least 2 media streams for simultaneous simulcasting in the media session, and it may represent that only one media source of the N media sources corresponds to There are at least two media streams for simultaneous simulcasting in the media session, and two media sources of the N media sources respectively corresponding to at least two media streams for simultaneous simulcasting in the media session It is also possible to indicate that each of the N media sources respectively corresponds to at least two media streams for simultaneous simulcasting in the media session, and so on.
  • n can be equal to 2, 3, 4, 5, 6, 8, 10, 15, 19, 21, 30, 499, 500 or other values.
  • the first media device determines, according to the determined transmission path between the first media device and the second media device, based on the determined media streams corresponding to the N media sources.
  • the global priority is used to perform congestion control on the media stream corresponding to the N media sources sent by the first media device to the second media device.
  • the "global" in the global priority is for a set of media streams formed by multiple media streams.
  • the media stream set may be formed by all media streams corresponding to the N media sources, or the media stream set may be all media sources that the first media device can provide in the media session in which the second media device participates.
  • All corresponding media streams are formed, or the media stream set may be formed by all media streams corresponding to all media sources in the media session in which the second media device and the first media device participate, or the media stream set may be All media streams corresponding to all media sources that the first media device can provide are formed, or the media stream set may be formed by all media streams that the second media device may receive, or the media stream set may be The two media devices are formed by all media streams that may be received in the media session in which the first media device participates.
  • the set of media streams targeted by "global" in the global priority may also be formed by other media streams.
  • the media stream set for the "global" in the global priority includes at least all the media streams corresponding to the N media sources.
  • the media stream corresponding to the media source is a media stream indicating that the media source is encoded. If the media source is encoded into multiple media streams, the media source corresponds to multiple media streams (the plurality of media streams may include, for example, a standard definition media stream, a high definition version of the media stream, and a super clear version of the media stream, etc.). If the media source is only encoded into one media stream, then the media source only corresponds to one media stream.
  • the media stream corresponding to the N media sources sent by the first media device to the second media device is congested according to the determined global priority between the media streams corresponding to the N media sources.
  • Control its main purpose is to ensure the quality of related sessions as much as possible in the case of congestion in the transmission channel, for example, to ensure reliable transmission of media streams with higher global priority in the case of congestion in the transmission channel, etc.
  • various congestion control modes that facilitate reliable transmission of media streams with higher global priority are considered as possible implementations of the present invention.
  • the determining, the global priority between the media streams corresponding to the N media sources, and the N media sources that are sent by the first media device to the second media device Performing congestion control on the media stream includes: preferentially discarding a portion of the media stream having a relatively lower global priority in the media stream corresponding to the N media sources to be sent by the first media device to the second media device Or all media data packets, or delays sending a portion of the media stream having a relatively lower global priority in the media stream corresponding to the N media sources to be sent by the first media device to the second media device or All media packets.
  • the first media device that is the transmitting end first determines the global priority between the media streams corresponding to the N media sources, where the first media device and the second media If the transmission channel between the devices is congested, the first priority may be based on the determined global priority between the media streams corresponding to the N media sources.
  • the media device performs congestion control on the media stream corresponding to the N media sources sent by the second media device.
  • the congestion control mechanism refers to the media corresponding to the N media sources, because a relatively effective transmission management mechanism is introduced to perform congestion control on the media stream including the simultaneously broadcasted media stream to be sent by the transmitting end, and the congestion control mechanism refers to the media corresponding to the N media sources.
  • the global priority between the flows is therefore beneficial to ensure reliable transmission of media streams with higher global priority in the case of congestion in the transmission channel, and thus to ensure the quality of related sessions, thereby facilitating the user product experience.
  • the global priority between the media streams corresponding to the N media sources may be jointly determined based on various parameters.
  • the global priority between the media streams corresponding to the N media sources may be based on a priority between the N media sources, the N media
  • the in-source priority and the priority reference weight between each media stream corresponding to each media source in the source are determined together, wherein the priority reference weight is a priority between the N media sources and the A reference weight between in-source priorities between respective media streams corresponding to each of the N media sources.
  • the global priority between media streams corresponding to the N media sources is based on a priority between the N media sources and the N media
  • the in-source priority between each media stream corresponding to each media source in the source is determined jointly.
  • the determining, by the first media device, a global priority between the media streams corresponding to the N media sources the first media device determining, according to the user priority setting instruction, the N The global priority between the media streams corresponding to the media sources; or the first media device determines the global priority between the media streams corresponding to the N media sources according to the pre-configured priority determining policy.
  • determining, by the first media device, a global priority between the media streams corresponding to the N media sources may include: determining, by the first media device, by negotiating with the second media device The global priority between the media streams corresponding to the N media sources.
  • the manner in which the first media device negotiates with the second media device to determine the global priority between the media streams corresponding to the N media sources may be various.
  • the determining, by the first media device, the global priority between the media streams corresponding to the N media sources by using the second media device may include:
  • the first media device Transmitting, by the first media device, the first session message to the second media device, where the first session message carries a priority indication, where the priority indication is used to determine media corresponding to the N media sources a global priority between the flows; the first media device receives the first session response message sent by the second media device; wherein, if the first session response message carries an acknowledgement indication for the priority indication,
  • the global priority between the media streams corresponding to the N media sources determined by the priority indication is a global priority between the media streams corresponding to the N media sources determined by the first media device;
  • the first media device receives, by the first media device, a third session message sent by the second media device, where the third session message carries a priority indication, where the priority indication is used to determine a media stream corresponding to the N media sources a global priority between the two; the first media device sends a third session response message to the second media device; wherein the third session response message carries an acknowledgement indication for the priority indication, Determining, by the media device, a global priority between the media streams corresponding to the N media sources, based on the priority indication carried by the third session message;
  • the fourth session message carries a priority indication, where the priority indication is used to determine a media stream corresponding to the N media sources a global priority between the two; the first media device sends a fourth session response message to the second media device; wherein the fourth session response message carries an adjustment indication for the priority indication, where The adjustment indicates that the global priority between the media streams corresponding to the N media sources is the global priority between the media streams corresponding to the N media sources determined by the first media device.
  • the first session message or the second session message or the first session response message or the second session response message further carries a port multiplexing indication, where the port multiplexing indication is used for Indicates that media streams with the same in-source priority of different media sources are transmitted using the same port address.
  • the port multiplexing indication is used for Indicates that media streams with the same in-source priority of different media sources are transmitted using the same port address.
  • the first session message or the second session message may also carry a media description, where the media description may be used to indicate the N media sources.
  • the first session response message or the second session response message may further carry an acknowledgement indication for the media description.
  • the first session message or the second session message may further carry a simultaneous simulcast indication, where the simultaneous simulcast indication is used to indicate the one of the N media sources. At least one media source supports simultaneous simulcasting.
  • the first session response message or the second session response message may further carry an acknowledgement indication for the simultaneous simulcast indication.
  • the third session message or the fourth session message or the third session response message or the fourth session response message further carries a port multiplexing indication, where the port multiplexing indication is used for Indicates that media streams with the same in-source priority of different media sources are transmitted using the same port address.
  • the third session message or the fourth session message may also carry a medium The volume description, wherein the media description can be used to indicate the N media sources.
  • the third session response message or the fourth session response message may further carry an acknowledgement indication for the media description.
  • the third session message or the fourth session message further carries a simultaneous simulcast indication, wherein the simultaneous simulcast indication is used to indicate at least one of the N media sources.
  • a media source supports simultaneous simulcasting.
  • the third session response message or the fourth session response message may also carry an acknowledgement indication for the simultaneous simulcast indication.
  • the first session response message is used to respond to the first session message.
  • the second session response message is for responding to the second session message.
  • the third session response message is for responding to the third session message.
  • the fourth session response message is used to respond to the fourth session message.
  • the first session message may be a message for requesting to establish a session, a message for requesting an update session, or other session message.
  • the second session message may be a message for requesting to establish a session, a message for requesting an update session, or other session message.
  • the third session message may be a message for requesting to establish a session, a message for requesting an update session, or other session message.
  • the fourth session message may be a message for requesting to establish a session, a message for requesting an update session, or other session message.
  • the first session message may be, for example, an SDP offer message or other type of session message.
  • the first session response message may be an SDP answer message.
  • the second session message may be, for example, an SDP offer message or other type of session message.
  • the second session message is an SDP offer message
  • the second session The response message can be an SDP answer message.
  • the third session message may be, for example, an SDP offer message or other type of session message.
  • the third session message is an SDP offer message
  • the third session The response message can be an SDP answer message.
  • the fourth session message may be, for example, an SDP offer message or other type of session message.
  • the fourth session message is an SDP offer message
  • the fourth session The response message can be an SDP answer message.
  • the priority indication includes a media stream source internal priority indication, and the media stream source internal priority indication is used to indicate each of the corresponding media sources. In-source priority between media streams.
  • the priority indication includes a media source priority indication, a media stream source internal priority indication, and a priority reference weight indication
  • the media source priority The indication is used to indicate a priority between different media sources; the priority of the media stream source indicates an in-source priority between the media streams corresponding to the same media source; the priority reference weight indication is used to indicate The reference weight between the media source priority indication and the priority indication in the media stream source.
  • the priority reference weight indication is used to indicate that the reference weight of the media source priority indication is higher than a reference weight of the priority indication in the media stream source
  • the priority of the media source i of the N media sources is higher than the priority of the media source j of the N media sources
  • the global priority of any media stream corresponding to the media source i is higher than the The global priority of any one of the media streams corresponding to the media source j, wherein the media source i and the media source j are any two of the N media sources.
  • the priority reference weight indication is used to indicate that the reference weight of the media source priority indication is lower than a reference weight indicated by the priority in the media stream source
  • the priority of the media source i among the N media sources is higher than the priority of the media source j among the N media sources, and the source priority of the media stream ix corresponding to the media source i is equal to
  • the source priority of the media stream jx corresponding to the media source j the global priority of the media stream ix is higher than the global priority of the media stream jx, wherein the media source i and the media source j
  • the media stream ix corresponding to the media source i is any media stream corresponding to the media source i, wherein the media source j corresponds to any one of the N media sources.
  • the media stream jx is any one of the media streams corresponding to the media source j;
  • the media source j corresponds to the in-source priority of the media stream jx, and the in-source priority of the media stream ix is higher than the in-source priority of the media stream iy in the media source i, and the media stream jx is global.
  • the priority is higher than the global priority of the media stream iy, wherein the media source i and the media source j are any two media sources of the N media sources, wherein the media stream ix And the media stream iy is any two media streams corresponding to the media source i, and the media stream jx corresponding to the media source j is any one of the media streams corresponding to the media source j;
  • the priority of the media source i among the N media sources is higher than the priority of the media source j among the N media sources, and the source priority of the media stream ix corresponding to the media source i is equal to
  • the media source j corresponds to the in-source priority of the media stream jx, and the in-source priority of the media stream ix is lower than the in-source priority of the media stream iw in the media source i, then the media stream jx globally The priority is lower than the global priority of the media stream iw, wherein the media source i and the media source j are any two media sources of the N media sources, wherein the media stream ix
  • the media stream iw is any two media streams corresponding to the media source i
  • the media stream jx corresponding to the media source j is any one of the media streams corresponding to the media source j.
  • the foregoing example provides a possible manner for determining the global priority of the media stream by combining the priority reference weight indication, the media source priority indication, and the media stream source priority indication, but may not be limited to the example in practical applications. The way.
  • FIG. 4 is a schematic flowchart diagram of another media session processing method according to another embodiment of the present invention. This example is mainly for the point-to-point application scenario.
  • the corresponding network architecture can be as shown in Figure 1-b.
  • another media session processing method provided by another embodiment of the present invention may include:
  • the first media terminal sends an SDP offer message m11 to the second media terminal.
  • the SDP offer message m11 can be regarded as a specific example of the session message (for example, the first session message or the second session message, etc.) mentioned in the foregoing embodiment.
  • the SDP offer message m11 may carry a media description, a simulcast indication, a port multiplexing indication, and/or a priority indication.
  • the media description may be used to indicate N media sources, where the N media sources are N media sources that the first media terminal can provide in a media session in which the second media terminal participates. At least one of the N media sources respectively corresponds to at least two media streams for simultaneous simulcasting in the media session.
  • N is greater than 1
  • the integer in which N is greater than 1 is taken as an example.
  • the N can be equal to 352, 2, 3, 4, 5, 6, 8, 10, 15, 19, 21, 30, 500 or other values.
  • the priority indication includes a medium source priority indication, a media stream source internal priority indication, and a priority reference weight indication, where the priority indication is used to determine a global relationship between the media streams corresponding to the N media sources. priority.
  • the media source priority indication is used to indicate a priority between the N media sources; the media stream source internal priority indicates an in-source priority between the media streams corresponding to the same media source; the priority
  • the reference weight indication is used to indicate a reference weight between the media source priority indication and the priority indication in the media stream source.
  • the simultaneous simulcast indication is used to indicate that at least one of the N media sources supports simultaneous simulcasting.
  • the port multiplexing indication is used to indicate that media streams having the same in-source priority of different media sources are transmitted using the same port address.
  • the test found that if the media sender uses the media source with the same in-source priority of different media sources to transmit using the same port address, it is beneficial to reduce the port consumption caused by redundant coding in each port transmission, and also facilitate compatibility with the current network.
  • the side differentiates the service based on the port address.
  • the second media terminal sends an SDP answer message m12 for responding to the SDP offer message m11 to the first media terminal.
  • the SDP answer message m12 may carry an acknowledgement indication for the simultaneous simulcast indication. If the second media terminal supports port multiplexing, the SDP answer message m12 may carry the acknowledgement for the port multiplexing indication. Instructions.
  • the SDP answer message m12 may also carry an acknowledgement indication or an adjustment indication for the priority indication.
  • the SDP answer message m12 carries the confirmation indication for the priority indication as an example.
  • the SDP answer message m12 can be replied according to the conventional SDP offer/answer mechanism. If the first media terminal receives the SDP answer message indicating that the second media terminal does not support simultaneous simulcasting, the SDP offer message is re-initiated to remove the simultaneous simulcast mechanism, and a media source is used to initiate the request only in the form of one media stream. In this embodiment, the scenario in which the second media terminal supports simultaneous simulcasting is taken as an example for description.
  • the first media terminal After the transmission channel between the first media terminal and the second media terminal is established, the first media terminal is connected to And transmitting, by the transmission channel, the media stream corresponding to the N media sources to the second media terminal.
  • the number of media streams corresponding to the N media sources is greater than N.
  • the first media terminal detects that the transmission channel between the first media terminal and the second media terminal is congested (eg, the delay and/or the packet loss rate exceeds a threshold)
  • the first media terminal sends the second media terminal to the second media terminal.
  • Sending an SDP offer message m21 where the SDP offer message m21 may explicitly indicate that the media stream with a lower global priority in a certain media source will be deleted, or the deletion priority may be explicitly indicated in the SDP offer message m21.
  • Some or all of the media streams corresponding to a lower media source since these media streams have a relatively low global priority).
  • the second media terminal receives the SDP offer message m21 of the first media terminal, and sends an SDP answer message m22 to the first media terminal in response to the SDP offer message m21.
  • the first media terminal After receiving the SDP answer message m22 of the second media terminal, the first media terminal can identify and discard the media stream with lower priority.
  • the first media terminal that is the transmitting end first determines the global priority between the media streams corresponding to the N media sources, where the first media terminal and the second media terminal are In the case that congestion occurs between the transmission channels, the first media terminal may send the second media terminal to the second media terminal based on the determined global priority between the media streams corresponding to the N media sources.
  • the media streams corresponding to the N media sources perform congestion control.
  • the congestion control mechanism refers to the media corresponding to the N media sources, because a relatively effective transmission management mechanism is introduced to perform congestion control on the media stream including the simultaneously broadcasted media stream to be sent by the transmitting end, and the congestion control mechanism refers to the media corresponding to the N media sources.
  • the global priority between the flows is therefore beneficial to ensure reliable transmission of media streams with higher global priority in the case of congestion in the transmission channel, and thus to ensure the quality of the media session, thereby facilitating the user product experience.
  • FIG. 5 is a schematic flowchart diagram of another media session processing method according to another embodiment of the present invention.
  • This example describes an application scenario in which the conference server participates.
  • the corresponding network architecture can be as shown in Figure 1-a or Figure 1-c.
  • another media session processing method provided by another embodiment of the present invention may include:
  • the first media terminal sends an SDP offer message m11 to the conference server.
  • the SDP offer message m11 can be regarded as a specific example of the session message (for example, the first session message or the second session message, etc.) mentioned in the foregoing embodiment.
  • the SDP offer message m11 may carry a media description, a simulcast indication, a port multiplexing indication, and/or a priority indication.
  • the media description may be used to indicate N media sources, where the N media sources are N media sources that the first media terminal can provide in a media session in which the conference server participates. At least one of the N media sources respectively corresponds to at least two media streams for simultaneous simulcasting in the media session.
  • N is greater than 1
  • the integer in which N is greater than 1 is taken as an example.
  • the N can be equal to 352, 2, 3, 4, 5, 6, 8, 10, 15, 19, 21, 30, 500 or other values.
  • the media source priority indication is used to indicate a priority between the N media sources; the media stream source internal priority indicates an in-source priority between the media streams corresponding to the same media source; the priority
  • the reference weight indication is used to indicate a reference weight between the media source priority indication and the priority indication in the media stream source.
  • the simultaneous simulcast indication is used to indicate that at least one of the N media sources supports simultaneous simulcasting.
  • the port multiplexing indication is used to indicate that media streams having the same in-source priority of different media sources are transmitted using the same port address.
  • the test finds that if the media sender uses the same source-preferred media stream of different media sources to transmit using the same port address, it is beneficial to reduce the port consumption caused by redundant coding in each port transmission, and also facilitate compatibility with the current network side. The case of distinguishing services based on port addresses.
  • the conference server sends, to the first media terminal, an SDP answer message m12 for responding to the SDP offer message m11.
  • the SDP answer message m12 may also carry an acknowledgement indication or an adjustment indication for the priority indication.
  • the SDP answer message m12 carries the confirmation indication for the priority indication as an example.
  • the SDP answer message m12 can be replied according to the regular SDP offer/answer mechanism. If the first media terminal receives the SDP answer message indicating that the conference server does not support simultaneous simulcasting, the SDP offer message is re-initiated to remove the simultaneous simulcast mechanism, and a media source is used to initiate the request only in the form of one media stream.
  • the scenario in which the conference server supports simultaneous simulcasting is described as an example.
  • the first media terminal After the transmission channel between the first media terminal and the conference server is established, the first media terminal sends the media stream corresponding to the N media sources to the conference server by using the transmission channel.
  • the number of media streams corresponding to the N media sources is greater than N.
  • the conference server After receiving the SDP offer message m21 of the first media terminal, the conference server sends an SDP answer message m22 to the first media terminal in response to the SDP offer message m21.
  • the first media terminal After receiving the SDP answer message m22 of the conference server, the first media terminal can identify and discard the media stream with lower priority.
  • the first media terminal that is the transmitting end first determines the global priority between the media streams corresponding to the N media sources, where the first media terminal and the conference server Transmission channel between If the congestion occurs, the media corresponding to the N media sources that are sent by the first media terminal to the conference server may be determined based on the determined global priority between the media streams corresponding to the N media sources.
  • the flow is subjected to congestion control.
  • the congestion control mechanism refers to the media corresponding to the N media sources, because a relatively effective transmission management mechanism is introduced to perform congestion control on the media stream including the simultaneously broadcasted media stream to be sent by the transmitting end, and the congestion control mechanism refers to the media corresponding to the N media sources.
  • the global priority between the flows is therefore beneficial to ensure reliable transmission of media streams with higher global priority in the case of congestion in the transmission channel, and thus to ensure the quality of the media session, thereby facilitating the user product experience.
  • FIG. 6 is a schematic flowchart diagram of another media session processing method according to another embodiment of the present invention.
  • This example describes an application scenario in which the conference server participates.
  • the corresponding network architecture can be as shown in Figure 1-a or Figure 1-c.
  • another media session processing method provided by another embodiment of the present invention may include:
  • the first media terminal sends an SDP offer message m11 to the conference server.
  • the SDP offer message m11 can be regarded as a specific example of the session message (for example, the first session message or the second session message, etc.) mentioned in the foregoing embodiment.
  • the media description may be used to indicate N media sources, where the N media sources are N media sources that the first media terminal can provide in a media session in which the conference server participates. At least one of the N media sources respectively corresponds to at least two media streams for simultaneous simulcasting in the media session.
  • N is greater than 1
  • the integer in which N is greater than 1 is taken as an example.
  • the N can be equal to 352, 2, 3, 4, 5, 6, 8, 10, 15, 19, 21, 30, 500 or other values.
  • the port multiplexing indication is used to indicate that media streams having the same in-source priority of different media sources are transmitted using the same port address.
  • the test finds that if the media sender uses the same source-preferred media stream of different media sources to transmit using the same port address, it is beneficial to reduce the port consumption caused by redundant coding in each port transmission, and also facilitate compatibility with the current network side. The case of distinguishing services based on port addresses.
  • the conference server sends an SDP answer message m12 for responding to the SDP offer message m1 to the first media terminal.
  • the SDP answer message m12 may carry an acknowledgement indication for the simultaneous simulcast indication. If the conference server supports port multiplexing, the SDP answer message m12 may carry an acknowledgement indication for the port multiplexing indication.
  • the SDP answer message m12 may also carry an acknowledgement indication or an adjustment indication for the priority indication.
  • the SDP answer message m12 carries the confirmation indication for the priority indication as an example.
  • the SDP answer message m12 can be replied according to the regular SDP offer/answer mechanism. If the first media terminal receives the SDP answer message indicating that the conference server does not support simultaneous simulcasting, the SDP offer message is re-initiated to remove the simultaneous simulcast mechanism, and a media source is used to initiate the request only in the form of one media stream.
  • the scenario in which the conference server supports simultaneous simulcasting is described as an example.
  • the conference server sends an SDP offer message m31 to the second media terminal.
  • the SDP offer message m31 can be regarded as a specific example of the session message (for example, the first session message or the second session message, etc.) mentioned in the foregoing embodiment.
  • the SDP offer message m31 may carry a media description, a simulcast indication, a port multiplexing indication, and/or a priority indication.
  • the media description may be used to indicate N media sources, where the N media sources are N media sources that the first media terminal can provide in a media session in which the conference server participates. At least one of the N media sources respectively corresponds to at least two media streams for simultaneous simulcasting in the media session.
  • the priority indication includes a medium source priority indication, a media stream source internal priority indication, and a priority reference weight indication, where the priority indication is used to determine a global relationship between the media streams corresponding to the N media sources. priority.
  • the simultaneous simulcast indication is used to indicate that at least one of the N media sources supports simultaneous simulcasting.
  • the port multiplexing indication is used to indicate that media streams having the same in-source priority of different media sources are transmitted using the same port address.
  • the second media terminal sends an SDP answer message m32 for responding to the SDP offer message m31 to the conference server.
  • the SDP answer message m32 may carry an acknowledgement indication for the simultaneous simulcast indication. If the conference server supports port multiplexing, the SDP answer message m32 may carry an acknowledgement indication for the port multiplexing indication.
  • the SDP answer message m12 can be replied according to the conventional SDP offer/answer mechanism. If the conference server receives the SDP answer message indicating that the second media terminal does not support simultaneous simulcasting, the SDP offer message is re-initiated to remove the simultaneous simulcast mechanism, and a media source is used to initiate the request only in the form of one media stream. In this embodiment, the scenario in which the second media terminal supports simultaneous simulcasting is taken as an example for description.
  • steps 601-602 and steps 603-604. Steps 603-604 may be performed prior to steps 601-602, or steps 603-604 may be performed later than steps 601-602 or steps 603-604 and steps 601-602 may be performed concurrently.
  • the first media terminal After the transmission channel between the first media terminal and the conference server is established, the first media terminal sends the media stream corresponding to the N media sources to the conference server by using the transmission channel.
  • the number of media streams corresponding to the N media sources is greater than N.
  • Step 605 may be performed prior to steps 603-604, or step 605 may be performed later than steps 603-604 or steps 603-604 and step 605 may be performed concurrently.
  • the conference server After the transmission channel between the second media terminal and the conference server is established, the conference server sends the media stream corresponding to the N media sources to the second media terminal by using the transmission channel.
  • the conference server detects that the transmission channel between the first media terminal and the conference server is congested (eg, the delay and/or the packet loss rate exceeds a threshold)
  • the conference server sends an SDP offer message m21 to the first media terminal
  • the SDP offer message m21 may explicitly indicate that the media stream with a lower global priority in a certain media source is deleted, or the SDP offer message m21 may explicitly indicate that the lower priority is deleted.
  • the first media terminal After receiving the SDP offer message m21 of the conference server, the first media terminal sends an SDP answer message m22 to the conference server in response to the SDP offer message m21.
  • the conference server detects that the transmission channel between the second media terminal and the conference server is congested (such as delay and/or loss)
  • the packet rate exceeds the threshold.
  • the conference server sends an SDP offer message m41 to the second media terminal.
  • the SDP offer message m41 may explicitly indicate that the media stream with a lower global priority in a certain media source is deleted, or In the SDP offer message m41, it may be explicitly indicated that part or all of the media streams corresponding to a certain media source having a lower priority will be deleted (because the global priorities of the media streams are relatively low).
  • the second media terminal After receiving the SDP offer message m41 of the conference server, the second media terminal sends an SDP answer message m42 to the conference server in response to the SDP offer message m41.
  • the transmission channel between the second media terminal and the conference server is congested, and the transmission channel between the first media terminal and the conference server is congested.
  • the two events of the door may occur at a certain time, or may not At the same time.
  • the conference server may send an SDP offer message to the media terminal to indicate that the media stream with a lower global priority in a certain media source is deleted, or Some or all media streams corresponding to a certain media source with a lower priority will be deleted.
  • the first media terminal that is the transmitting end first determines the global priority between the media streams corresponding to the N media sources, where the first media terminal and the conference are determined. If the transmission channel between the servers is congested, the N that is sent by the first media terminal to the conference server may be based on the determined global priority between the media streams corresponding to the N media sources.
  • the media streams corresponding to the media sources are subjected to congestion control.
  • the congestion control mechanism refers to the media corresponding to the N media sources, because a relatively effective transmission management mechanism is introduced to perform congestion control on the media stream including the simultaneously broadcasted media stream to be sent by the transmitting end, and the congestion control mechanism refers to the media corresponding to the N media sources.
  • the global priority between the flows is therefore beneficial to ensure reliable transmission of media streams with higher global priority in the case of congestion in the transmission channel, etc., which is beneficial to ensure the quality of the media session, and thus is beneficial to improving the user product experience.
  • the N media sources Each media source in the corresponding The intra-source priority (indicated by the priority indication within the media stream source) and the priority reference weight (indicated by the priority reference weight indication) between the media streams are jointly determined.
  • the N media sources include a media source M1, a media source M2, a media source M3, and a media source Mx.
  • the media source M1, the media source M2, the media source M3, and the media source Mx are respectively encoded into three media streams.
  • the media source M1 is encoded into a media stream M11, a media stream M12, and a media stream M13.
  • the media source M2 is encoded into a media stream M21, a media stream M22, and a media stream M23.
  • the media source M3 is encoded into a media stream M31, a media stream M32, and a media stream M33.
  • the media source Mx is encoded into a media stream Mx1, a media stream Mx2, and a media stream Mx3.
  • FIG. 7-a exemplifies the order of priority of the in-source priorities of different media streams corresponding to the same media source.
  • FIG. 7-b illustrates the priority between the media source M1, the media source M2, the media source M3, and the media source Mx included in the N media sources
  • FIG. 7-b illustrates an example between the N media sources.
  • the order of priority is M1>M2>M3>Mx.
  • the media source M1 is audio and the media source M2/M3/M4 is video, then in the case of congestion in the network, it is usually necessary to preferentially ensure the transmission of the media source M1, that is, audio, so the media source M1 has the highest priority.
  • the sender can set the priorities of different media sources of the same media type according to the actual policy. For example, the media source representing the auxiliary stream screen is higher than the media source representing the scene of the site character.
  • the priority reference weight indicates that the reference weight of the priority between the N media sources is lower than the in-source priority between the media streams corresponding to each of the N media sources.
  • the reference weight is equivalent to the priority of ensuring the integrity of the media source.
  • the priority order of the packets shown in the arrow in Figure 7-c is lost. Three media streams, Mx3, M33 and M23, can be preferentially lost. Therefore, although three media streams are lost, the media source M1/M2/M3/Mx has corresponding media stream transmission, that is, the packet loss strategy is equivalent to the principle of ensuring the integrity of the media source transmission, and the overall media stream
  • the global priority order is shown by the arrow in Figure 7-c. If you need to perform a packet loss policy when network congestion occurs, you can drop packets in the order of the arrows.
  • the priority reference weight indicates that the reference weight of the priority between the N media sources is higher than the source priority between the media streams corresponding to each of the N media sources respectively
  • the reference weight is equivalent to preferentially guaranteeing as many copies of the high priority media source as possible to send the media stream.
  • the priority order of the packet shown in the arrow of FIG. 7-d is lost, and the priority may be lost by 3
  • the media streams are Mx3, Mx2 and Mx1, so that although three media streams are lost, the media source Mx is not sent, but the media source M1/M2/M3 can send multiple media streams, wherein the overall priority of the overall media stream
  • the sequence is shown by the arrow in Figure 7-d. If you need to perform a packet loss policy when network congestion occurs, you can drop packets in the order of the arrows.
  • FIG. 7-e illustrates that only one media source of the N media sources corresponds to multiple media streams, and other media sources only correspond to There is a media stream.
  • One possible global priority order for its overall media stream is shown by the arrows in Figure 7-e. If you need to perform a packet loss policy when network congestion occurs, you can drop packets in the order of the arrows.
  • media streams M11/M21/M31/Mx1 with higher priority corresponding to media source M1/M2/M3/Mx can be transmitted in port address 1; M1/M2/M3/Mx is preferred.
  • the media stream M12/M22/M32/Mx2 in the stage is transmitted in the port address 2; the media stream M13/M23/M33/Mx3 with the M1/M2/M3/Mx priority is transmitted in the port address 3. Therefore, the media sender carries a port multiplexing indication in the session request message, and the port multiplexing indication is used to indicate that media streams having the same in-source priority of different media sources are transmitted using the same port address.
  • the test finds that if the media sender uses the same source-preferred media stream of different media sources to transmit using the same port address, it is beneficial to reduce the port consumption caused by redundant coding in each port transmission, and also facilitate compatibility with the current network side. The case of distinguishing services based on port addresses.
  • the media description carried by the SDP offer message may indicate a binding relationship between the same media source and the corresponding multiple media streams, for example, by indicating:
  • a group:Simulcast M11 M12 M13 //Instruct the media stream M11/M12/M13 to be from the same media source M1;
  • a group:Simulcast M21 M22 M23 //Instruct the media stream M21/M22/M23 to be from the same media source M2;
  • Simulcast M31 M32 M33 //Instruct the media stream M31/M32/M33 to be from the same media source M3;
  • the priority indication carried in the SDP offer message may indicate different media source priorities, which may be indicated by:
  • the possible value of the order here is, for example, ascending/descending/equal.
  • Simulcast descending// may indicate that the priority order of different media sources to which each simulcast group belongs is descending order and M1>M2>M3>Mx.
  • the priority indication carried in the SDP offer message may indicate the in-source priority of different media streams in the same media source, which may be indicated by:
  • the in-source priority relationship between the media streams and the priority relationship of the media source are indicated at the session negotiation level, and the global priority relationship of the media stream is indicated as a whole.
  • the SDP/RTP headers may be further extended as follows to form a mapping of priority parameters between the SDP and the RTP/RTCP.
  • Priority can be expressed as follows:
  • the header extension of the matching RTP packet can be as shown in Figure 7-f.
  • the header extension of the matching RTCP packet can be shown in the example of Figure 7-g, in which a new SDES items are added.
  • the port multiplexing indication can be indicated by: multiplexing multiple media streams on one port by using a bundle mechanism
  • the multiplexing of RTP port 1 is as follows:
  • a group:Bundle M11 M21 M31 Mx1 //Instructs M11/M21/M31/Mx1 to be multiplexed on the same RTP port, PORT1.
  • a group:Bundle M11 M21 M31 Mx1 //Instructs M11/M21/M31/Mx1 multiplexing to be transmitted on Port1.
  • a group:Bundle M13 M23 M33 Mx3 //Instructs M13/M23/M33/Mx3 multiplexing to be transmitted on Port3.
  • an embodiment of the present invention further provides another media device 800, which may include: a determining unit 810 and a transmission control unit 820.
  • the determining unit 810 is configured to determine a global priority between the media streams corresponding to the N media sources, where the N a positive integer, where the N media sources are N media sources that the media device can provide in a media session in which the second media device participates, and one of the N media sources is correspondingly used for At least 2 media streams simultaneously simulcast in the media session;
  • the transmission control unit 820 is configured to: based on the determined global priority between the media streams corresponding to the N media sources, if the transmission channel between the media device 800 and the second media device is congested Congestion control is performed on the media stream corresponding to the N media sources sent by the media device 800 to the second media device.
  • the global priority between the media streams corresponding to the N media sources may be based on a priority between the N media sources, each of the N media sources
  • the in-source priority and the priority reference weight between the respective media streams corresponding to the media source are jointly determined, and the priority reference weight is a priority between the N media sources and each of the N media sources
  • the global priority between the media streams corresponding to the N media sources is based on a priority between the N media sources and each of the N media sources.
  • the in-source priorities between the media streams corresponding to the media sources are determined together.
  • the determining unit is specifically configured to determine a global priority between the media streams corresponding to the N media sources by negotiating with the second media device.
  • the determining unit 810 may be specifically configured to determine, according to a user priority setting instruction, a global priority between the media streams corresponding to the N media sources; or determine a policy determination according to the pre-configured priority The global priority between the media streams corresponding to the N media sources.
  • the determining unit 810 may be specifically configured to send, to the second media device, a first session message, where the first session message carries a priority indication, where the priority indication is used to determine a location Determining a global priority between media streams corresponding to the N media sources; receiving a first session response message sent by the second media device; and if the first session response message carries an acknowledgement indication for the priority indication,
  • the priority indicates the global priority between the determined media streams corresponding to the N media sources, and the global priority between the media streams corresponding to the N media sources determined by the determining unit ;
  • the determining unit 810 is specifically configured to send, to the second media device, a second session message, where the second session message carries a priority indication, where the priority indication is used to determine that the N media sources correspond to a global priority between the media streams; receiving a second session response message sent by the second media device; if the second response session message carries an adjustment indication for the priority indication, based on the adjustment indication
  • the global priority between the media streams corresponding to the N media sources indicated by the priority indication is adjusted, wherein the global priority between the media streams corresponding to the adjusted N media sources is Determining, by the determining unit, a global priority between the media streams corresponding to the N media sources;
  • the determining unit 810 is specifically configured to receive a third session message sent by the second media device, where the third session message carries a priority indication, where the priority indication is used to determine media corresponding to the N media sources Global optimization between streams a third session response message is sent to the second media device; the third session response message carries an acknowledgement indication for the priority indication, and the determining is performed based on the priority indication carried by the third session message Global priority between media streams corresponding to N media sources;
  • the determining unit 810 is specifically configured to receive a fourth session message sent by the second media device, where the fourth session message carries a priority indication, where the priority indication is used to determine media corresponding to the N media sources a global priority between the flows; the media device sends a fourth session response message to the second media device; wherein the fourth session response message carries an adjustment indication for the priority indication, where The adjustment indicates the global priority between the media streams corresponding to the adjusted N media sources, and the global priority between the media streams corresponding to the N media sources determined by the media device.
  • the first session message or the second session message or the first session response message or the second session response message further carries a port multiplexing indication, where the port multiplexing indication is used to indicate Media streams with the same in-source priority of different media sources are transmitted using the same port address.
  • the third session message or the fourth session message or the third session response message or the fourth session response message further carries a port multiplexing indication, where the port multiplexing indication is used to indicate Media streams with the same in-source priority of different media sources are transmitted using the same port address.
  • the priority indication includes a media stream source internal priority indication
  • the media stream source internal priority indication is used to indicate each media stream corresponding to the media source. The priority within the source.
  • the priority indication when the N is greater than 1, includes a media source priority indication, a media stream source internal priority indication, and a priority reference weight indication, and the media source priority indication
  • the media source priority indication For indicating a priority between different media sources; the media stream source internal priority indicates an in-source priority between the media streams corresponding to the same media source; the priority reference weight indication is used to indicate the location A reference weight between the media source priority indication and the priority indication in the media stream source.
  • the priority reference weight indication is used to indicate that the reference weight of the media source priority indication is higher than the reference weight indicated by the priority in the media stream source
  • the global priority of any media stream corresponding to the media source i is higher than The global priority of any media stream corresponding to the media source j, wherein the media source i and the media source j are any two media sources of the N media sources.
  • the priority reference weight indication is used to indicate that the reference weight of the media source priority indication is lower than the reference weight indicated by the priority in the media stream source
  • the priority of the media source i among the N media sources is higher than the priority of the media source j among the N media sources, and the source priority of the media stream ix corresponding to the media source i is equal to The source priority of the media stream jx corresponding to the media source j
  • the global priority of the media stream ix is higher than the global priority of the media stream jx, wherein the media source i and the The media source j is any two of the N media sources, wherein the media stream ix corresponding to the media source i is any media stream corresponding to the media source i, and the media source j
  • the corresponding media stream jx is any one of the media streams corresponding to the media source j;
  • the media source j corresponds to the in-source priority of the media stream jx, and the in-source priority of the media stream ix is higher than the in-source priority of the media stream iy in the media source i, and the media stream jx is global.
  • the priority is higher than the global priority of the media stream iy, wherein the media source i and the media source j are any two media sources of the N media sources, wherein the media stream ix And the media stream iy is any two media streams corresponding to the media source i, and the media stream jx corresponding to the media source j is any one of the media streams corresponding to the media source j;
  • the media source j corresponds to the in-source priority of the media stream jx, and the in-source priority of the media stream ix is lower than the in-source priority of the media stream iw in the media source i, then the media stream jx globally The priority is lower than the global priority of the media stream iw, wherein the media source i and the media source j are any two media sources of the N media sources, wherein the media stream ix And the media stream iw is any two media streams corresponding to the media source i; wherein the media stream jx corresponding to the media source j is any one of the media streams corresponding to the media source j.
  • the transmission control unit 820 may be specifically configured to preferentially discard the media device pending when it is determined that the transmission channel between the media device and the second media device is congested. And determining, by the second media device, part or all of the media data packets of the media stream with a relatively lower global priority in the media stream corresponding to the N media sources; or determining the media device and the second media When the transmission channel between the devices is congested, the media stream of the media priority corresponding to the N media sources to be sent to the second media device is sent to the second media device. Some or all of the media packets.
  • the second media device in a case where the media device 800 is a conference server, may be a media terminal; or in a case where the media device 800 is a media terminal, The second media device can be a media terminal or a conference server.
  • the media device 800 as the transmitting end may first determine the global priority between the media streams corresponding to the N media sources, between the media device 800 and the second media device. If the transmission channel is congested, the N media sent by the media device 800 to the second media device may be determined based on the determined global priority between the media streams corresponding to the N media sources.
  • the media stream corresponding to the source performs congestion control.
  • the congestion control mechanism refers to a global priority between media streams corresponding to the N media sources. Level, therefore, it is beneficial to ensure reliable transmission of media streams with higher global priority in the case of congestion of the transmission channel, etc., thereby ensuring the quality of the media session and further improving the user product experience.
  • an embodiment of the present invention further provides a communication system, including:
  • the first media device 910 and the second media device 920, wherein the first media device 910 can be any one of the media devices described in the foregoing embodiments.
  • the first media device 910 can be, for example, the media device 200 or the media device 800 or the like.
  • the second media device may be a media terminal; or the first media device 910 is a media terminal.
  • the second media device may be a media terminal or a conference server.
  • the disclosed apparatus may be implemented in other ways.
  • the device embodiments described above are merely illustrative.
  • the division of the unit is only a logical function division.
  • there may be another division manner for example, multiple units or components may be combined or may be Integrate into another system, or some features can be ignored or not executed.
  • the mutual coupling or direct coupling or communication connection shown or discussed may be an indirect coupling or communication connection through some interface, device or unit, and may be electrical or otherwise.
  • the units described as separate components may or may not be physically separated, and the components displayed as units may or may not be physical units, that is, may be located in one place, or may be distributed to multiple network units. Some or all of the units may be selected according to actual needs to achieve the purpose of the solution of the embodiment.
  • each functional unit in each embodiment of the present invention may be integrated into one processing unit, or each unit may exist physically separately, or two or more units may be integrated into one unit.
  • the above integrated unit can be implemented in the form of hardware or in the form of a software functional unit.
  • the integrated unit if implemented in the form of a software functional unit and sold or used as a standalone product, may be stored in a computer readable storage medium.
  • the technical solution of the present invention which is essential or contributes to the prior art, or all or part of the technical solution, may be embodied in the form of a software product stored in a storage medium.
  • a number of instructions are included to cause a computer device (which may be a personal computer, server or network device, etc.) to perform all or part of the steps of the methods described in various embodiments of the present invention.
  • the foregoing storage medium includes: a U disk, a read-only memory (ROM), and a random access memory (RAM, Random Access Memory), removable hard disk, disk or optical disk, and other media that can store program code.

Landscapes

  • Engineering & Computer Science (AREA)
  • Multimedia (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Business, Economics & Management (AREA)
  • General Business, Economics & Management (AREA)
  • Computer Security & Cryptography (AREA)
  • Data Exchanges In Wide-Area Networks (AREA)
  • Two-Way Televisions, Distribution Of Moving Picture Or The Like (AREA)

Abstract

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

Description

媒体会话处理方法方法和相关设备及通信系统
本申请要求于2015年6月29日提交中国专利局、申请号为201510368853.5、发明名称为“媒体会话处理方法方法和相关设备及通信系统”的中国专利申请的优先权,其全部内容通过引用结合在本申请中。
技术领域
本发明涉及网络通信技术领域,具体涉及媒体会话处理方法和相关设备及通信系统。
背景技术
在传统的媒体会话(如基于中心节点的音视频会议)系统中,位于中心节点的会议服务器会收到来自各个与会终端(即媒体终端)的音视频流,会议服务器结合本地策略和其他与会终端接收能力选择相应的音视频流并转发给其他与会终端,这样各个与会终端之间就建立了正常的音视频通信。
在某些时候,某些与会终端可能偏好某版本(如某个质量版本或某个格式版本)的音视频媒体流,因此一些与会终端可能将某媒体源(如视频源)编码成多个版本的媒体流(多个版本的媒体流例如可包括标清版本的媒体流、高清版本的媒体流和超清版本的媒体流等等),并在会话中同时联播这多个版本的媒体流,接收媒体流的与会终端可根据从同时联播的多个版本的媒体流中选择所需版本的媒体流来播放。
本发明的发明人在研究和实践过程中发现,现有技术中媒体流的发送端通常是毫无节制的同时联播媒体源的多个版本的媒体流,这使得在例如传输通道拥塞等情况下,整个媒体会话的质量可能会被严重影响,进而可能较大的影响到用户产品体验。
发明内容
本发明实施例媒体会话处理方法和相关设备及通信系统,以期在传输通道拥塞等情况下尽量保证媒体会话的质量。
本发明实施例第一方面提供一种媒体会话处理方法,包括:
第一媒体设备确定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)消息。
在本发明的一些可能的实施方式中,所述第二会话消息例如可以为SDP offer消息或其它类型的会话消息,当然,在第二会话消息为SDP offer消息的情况下,所述第二会话响应消息可为SDP answer消息。
在本发明的一些可能的实施方式中,所述第三会话消息例如可以为SDP offer消息或其它类型的会话消息,当然,在第三会话消息为SDP offer消息的情况下,所述第三会话响应消息可为SDP answer消息。
在本发明的一些可能的实施方式中,所述第四会话消息例如可以为SDP offer消息或其它类型的会话消息,当然,在第四会话消息为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消息。
在本发明的一些可能的实施方式中,所述第二会话消息例如可以为SDP offer消息或其它类型的会话消息,当然,在第二会话消息为SDP offer消息的情况下,所述第二会话响应消息可为SDP answer消息。
在本发明的一些可能的实施方式中,所述第三会话消息例如可以为SDP offer消息或其它类型的会话消息,当然,在第三会话消息为SDP offer消息的情况下,所述第三会话响应消息可为SDP answer消息。
在本发明的一些可能的实施方式中,所述第四会话消息例如可以为SDP offer消息或其它类型的会话消息,当然,在第四会话消息为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 M11 M12 M13   //指示媒体流M11/M12/M13均来自相同的媒体源M1;
a=group:Simulcast M21 M22 M23   //指示媒体流M21/M22/M23均来自相同的媒体源M2;
a=group:Simulcast M31 M32 M33   //指示媒体流M31/M32/M33均来自相同的媒体源M3;
a=group:Simulcast Mx1 Mx2 Mx3   //指示媒体流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 M11 M12 M13  //指示M11/M12/M13均来自M1且优先级为M11>M12>M13。
其中,a=group:Simulcast M21 M22 M23  //指示M21/M22/M23均来自M2且优先级为M21>M22>M23。
其中,a=group:Simulcast M31 M32 M33  //指示M31/M32/M33均来自M3且优先级为M31>M32>M33。
其中,a=group:Simulcast Mx1 Mx2 Mx3  //指示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 PORT1 YYYY
a=mid M11
a=pri:p1
a=rtpmap:0 PCMU/8000
a=extmap 21 urn:ietf:params:rtp-hdrext:sdes:pri。
其中,与之相匹配的RTP包的包头扩展可以如图7-f举例所示。
其中,与之相匹配的RTCP包的头扩展可以如图7-g举例所示,其中主要新增一个SDES items项。
此外,将不同媒体源的具有相同源内优先级的媒体流放在同一RTP端口地址传输以节省端口消耗,端口复用指示可通过如下方式来指示:使用bundle机制把多个媒体流复用在一个端口,如RTP端口1的复用情况如下:
a=group:Bundle M11 M21 M31 Mx1  //指示M11/M21/M31/Mx1复用在相同的RTP端口即PORT1。
m=video RTP PORT1 YYYY
a=mid M11         //指示M11在port1传输
m=video RTP PORT1 YYYY
a=mid M21                     //指示M21在port1传输
m=video RTP PORT1 YYYY
a=mid M31                     //指示M31在port1传输
m=video RTP PORT1 YYYY
a=mid Mx1                     //指示Mx1在port1传输
a=group:Bundle M12 M22 M32 Mx2    //指示M12/M22/M32/Mx2复用在相同的RTP端口即PORT2
m=video RTP PORT2 YYYY
a=mid M12                     //指示M12在port2传输
m=video RTP PORT2 YYYY
a=mid M22                     //指示M22在port2传输
m=video RTP PORT2 YYYY
a=mid M32                     //指示M32在port2传输
m=video RTP PORT2 YYYY
a=mid Mx2                     //指示Mx2在port2传输
a=group:Bundle M13 M23 M33 Mx3    //指示M13/M23/M33/Mx3复用在相同的RTP端口即PORT3
m=video RTP PORT3 YYYY
a=mid M13                     //指示M13在port3传输
m=video RTP PORT3 YYYY
a=mid M23                     //指示M23在port3传输
m=video RTP PORT3 YYYY
a=mid M33                     //指示M33在port3传输
m=video RTP PORT3 YYYY
a=mid Mx3                     //指示Mx3在port3传输
其中,
a=group:Bundle M11 M21 M31 Mx1  //指示M11/M21/M31/Mx1复用在Port1传输。
a=group:Bundle M12 M22 M32 Mx2  //指示M12/M22/M32/Mx2复用在Port2传输。
a=group:Bundle M13 M23 M33 Mx3  //指示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)、移动硬盘、磁碟或者光盘等各种可以存储程序代码的介质。
以上所述,以上实施例仅用以说明本发明技术方案,而非对其限制;尽管参照前述实施例对本发明进行了详细的说明,其中,本领域的普通技术人员应当理解:其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分技术特征进行等同替换;而这些修改或者替换,并不使相应技术方案的本质脱离本发明各实施例技术方案的范围。

Claims (31)

  1. 一种媒体会话处理方法,其特征在于,包括:
    第一媒体设备确定N个媒体源对应的媒体流之间的全局优先级,所述N为正整数,其中,所述N个媒体源为所述第一媒体设备在第二媒体设备所参与的媒体会话中能够提供的N个媒体源,所述N个媒体源中的一个媒体源对应有用于在所述媒体会话中同时联播的至少2路媒体流;
    所述第一媒体设备在所述第一媒体设备与所述第二媒体设备之间的传输通道出现拥塞的情况下,基于确定的所述N个媒体源对应的媒体流之间的全局优先级,对所述第一媒体设备向所述第二媒体设备发送的所述N个媒体源对应的媒体流进行拥塞控制。
  2. 根据权利要求1所述的方法,其特征在于,
    所述N个媒体源对应的媒体流之间的全局优先级基于所述N个媒体源之间的优先级、所述N个媒体源中的每个媒体源分别对应的各媒体流之间的源内优先级和优先级参考权重共同确定,其中,所述优先级参考权重为所述N个媒体源之间的优先级和所述N个媒体源中的每个媒体源分别对应的各媒体流之间的源内优先级之间的参考权重。
  3. 根据权利要求1所述的方法,其特征在于,
    所述N个媒体源对应的媒体流之间的全局优先级基于所述N个媒体源之间的优先级和所述N个媒体源中的每个媒体源分别对应的各媒体流之间的源内优先级共同确定。
  4. 根据权利要求1至3任意一项所述的方法,其特征在于,所述第一媒体设备确定N个媒体源对应的媒体流之间的全局优先级,包括:第一媒体设备通过与所述第二媒体设备协商来确定所述N个媒体源对应的媒体流之间的全局优先级。
  5. 根据权利要求1至3任意一项所述的方法,其特征在于,所述第一媒体设备确定N个媒体源对应的媒体流之间的全局优先级,包括:
    第一媒体设备根据用户优先级设置指令确定所述N个媒体源对应的媒体流之间的全局优先级;或第一媒体设备根据预配置的优先级确定策略确定所述N个媒体源对应的媒体流之间的全局优先级。
  6. 根据权利要求4所述的方法,其特征在于,
    所述第一媒体设备通过与所述第二媒体设备协商来确定N个媒体源对应的媒体流之间的全局优先级,包括:
    第一媒体设备向所述第二媒体设备发送第一会话消息,其中,所述第一会话消息携带优先级指示,其中,所述优先级指示用于确定出所述N个媒体源对应的媒体流之间的全局优先级;第一媒体设备接收所述第二媒体设备发送的第一会话响应消息;其中,若所述第一会话响应消息携带针对所述优先级指示的确认指示,所述优先级指示所确定出的所述N个媒体源对应的媒体流之间的全局优先级为所述第一媒体设备确定出的所述N个媒体源对应的媒体流之间的全局优先级;
    或者,
    第一媒体设备向所述第二媒体设备发送第二会话消息,其中,所述第二会话消息携带优先级指示,其中,所述优先级指示用于指示出所述N个媒体源对应的媒体流之间的全局优先级;所述第一媒体设备接收所述第二媒体设备发送的第二会话响应消息;若所述第二会话响应消息携带针对所述优先级指示的调整指示,基于所述调整指示对所述优先级指示所指示出的所述N个媒体源对应的媒体流之间的全局优先级进行调整,其中,调整后的所述N个媒体源对应的媒体流之间的全局优先级为所述第一媒体设备确定出的所述N个媒体源对应的媒体流之间的全局优先级。
  7. 根据权利要求6所述的方法,其特征在于,
    所述第一会话消息或所述第二会话消息或第一会话响应消息或第二会话响应消息还携带端口复用指示,所述端口复用指示用于指示将不同媒体源的具有相同源内优先级的媒体流使用相同的端口地址传输。
  8. 根据权利要求4所述的方法,其特征在于,
    所述第一媒体设备通过与所述第二媒体设备协商来确定N个媒体源对应的媒体流之间的全局优先级,包括:
    第一媒体设备接收所述第二媒体设备发送的第三会话消息,所述第三会话消息携带优先级指示,其中,所述优先级指示用于确定出所述N个媒体源对应的媒体流之间的全局优先级;所述第一媒体设备向所述第二媒体设备发送第三会话响应消息;其中,所述第三会话响应消息携带针对所述优先级指示的确认指示,所述第一媒体设备基于所述第三会话消息携带的优先级指示确定所述N个媒体源对应的媒体流之间的全局优先级;
    或者,
    第一媒体设备接收所述第二媒体设备发送的第四会话消息,所述第四会话消息携带优先级指示,其中,所述优先级指示用于确定出所述N个媒体源对应的媒体流之间的全局优先级;所述第一媒体设备向所述第二媒体设备发送第四会话响应消息;其中,所述第四会话响应消息携带针对所述优先级指示的调整指示,其中,基于所述调整指示调整后的所述N个媒体源对应的媒体流之间的全局优先级为所述第一媒体设备确定出的所述N个媒体源对应的媒体流之间的全局优先级。
  9. 根据权利要求8所述的方法,其特征在于,
    所述第三会话消息或所述第四会话消息或第三会话响应消息或第四会话响应消息还携带端口复用指示,所述端口复用指示用于指示将不同媒体源的具有相同源内优先级的媒体流使用相同的端口地址传输。
  10. 根据权利要求6至9任一项所述的方法,其特征在于,在所述N等于1的情况下,所述优先级指示包括媒体流源内优先级指示,所述媒体流源内优先级指示用于指示媒体源对应的各媒体流之间的源内优先级。
  11. 根据权利要求6至9任一项所述的方法,其特征在于,在所述N大于1的情况下,所述优先级指示包括媒体源优先级指示、媒体流源内优先级指示和优先级参考权重指示,
    所述媒体源优先级指示用于指示不同媒体源之间的优先级;所述媒体流源内优先级指示用于指示同一个媒体源对应的媒体流之间的源内优先级;所述优先级参考权重指示用于指示出所述媒体源优先级指示和所述媒体流源内优先级指示之间的参考权重。
  12. 根据权利要求11所述的方法,其特征在于,在所述优先级参考权重指示用于指示出所述媒体源优先级指示的参考权重高于所述媒体流源内优先级指示的参考权重的情况下,
    若所述N个媒体源中的媒体源i的优先级高于所述N个媒体源中的媒体源j的优先级,所述媒体源i对应的任意一个媒体流的全局优先级高于所述媒体源j对应的任意一个媒体流的全局优先级,其中,所述媒体源i和所述媒体源j为所述N个媒体源中的任意两个媒体源。
  13. 根据权利要求11所述的方法,其特征在于,在所述优先级参考权重指示用于指示出所述媒体源优先级指示的参考权重低于所述媒体流源内优先级指示的参考权重的情况下,
    若所述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对应的任意一个媒体流。
  14. 根据权利要求1至13任一项所述的方法,其特征在于,
    所述基于确定的所述N个媒体源对应的媒体流之间的全局优先级,对所述第一媒体设备向所述第二媒体设备发送的所述N个媒体源对应的媒体流进行拥塞控制,包括:优先丢弃所述 第一媒体设备待向所述第二媒体设备发送的所述N个媒体源对应的媒体流中的全局优先级相对较低的媒体流的部分或全部媒体数据包;或,延迟发送所述第一媒体设备待向所述第二媒体设备发送的所述N个媒体源对应的媒体流中的全局优先级相对较低的媒体流的部分或全部媒体数据包。
  15. 根据权利要求1至14任一项所述的方法,其特征在于,在所述第一媒体设备为会议服务器的情况下,所述第二媒体设备为媒体终端;或者在所述第一媒体设备为媒体终端的情况下,所述第二媒体设备为媒体终端或者会议服务器。
  16. 一种媒体设备,其特征在于,包括:
    确定单元,用于确定N个媒体源对应的媒体流之间的全局优先级,所述N为正整数,其中,所述N个媒体源为所述媒体设备在第二媒体设备所参与的媒体会话中能够提供的N个媒体源,所述N个媒体源中的一个媒体源对应有用于在所述媒体会话中同时联播的至少2路媒体流;
    传输控制单元,用于在所述媒体设备与所述第二媒体设备之间的传输通道出现拥塞的情况下,基于确定的所述N个媒体源对应的媒体流之间的全局优先级,对所述媒体设备向所述第二媒体设备发送的所述N个媒体源对应的媒体流进行拥塞控制。
  17. 根据权利要求16所述的媒体设备,其特征在于,
    所述N个媒体源对应的媒体流之间的全局优先级基于所述N个媒体源之间的优先级、所述N个媒体源中的每个媒体源分别对应的各媒体流之间的源内优先级和优先级参考权重共同确定,其中,所述优先级参考权重为所述N个媒体源之间的优先级和所述N个媒体源中的每个媒体源分别对应的各媒体流之间的源内优先级之间的参考权重。
  18. 根据权利要求16所述的媒体设备,其特征在于,
    所述N个媒体源对应的媒体流之间的全局优先级基于所述N个媒体源之间的优先级和所述N个媒体源中的每个媒体源分别对应的各媒体流之间的源内优先级共同确定。
  19. 根据权利要求16至18任意一项所述的媒体设备,其特征在于,所述确定单元具体用于,通过与所述第二媒体设备协商来确定所述N个媒体源对应的媒体流之间的全局优先级。
  20. 根据权利要求16至18任意一项所述的方法,其特征在于,所述确定单元具体用于,根据用户优先级设置指令确定所述N个媒体源对应的媒体流之间的全局优先级;或根据预配置的优先级确定策略确定所述N个媒体源对应的媒体流之间的全局优先级。
  21. 根据权利要求19所述的媒体设备,其特征在于,
    所述确定单元具体用于,向所述第二媒体设备发送第一会话消息,所述第一会话消息携带优先级指示,其中,所述优先级指示用于确定出所述N个媒体源对应的媒体流之间的全局优先级;接收所述第二媒体设备发送的第一会话响应消息;若所述第一会话响应消息携带针对所述优先级指示的确认指示,所述优先级指示所确定出的所述N个媒体源对应的媒体流之间的全局优先级为所述确定单元确定出的所述N个媒体源对应的媒体流之间的全局优先级;
    或者,
    所述确定单元具体用于,向所述第二媒体设备发送第二会话消息,所述第二会话消息携带优先级指示,其中,所述优先级指示用于确定出所述N个媒体源对应的媒体流之间的全局优先级;接收所述第二媒体设备发送的第二会话响应消息;若所述第二响应会话消息携带针对所述优先级指示的调整指示,基于所述调整指示对所述优先级指示所指示出的所述N个媒体源对应的媒体流之间的全局优先级进行调整,其中,调整后的所述N个媒体源对应的媒体流之间的全局优先级为所述确定单元确定出的所述N个媒体源对应的媒体流之间的全局优先级。
  22. 根据权利要求21所述的媒体设备,其特征在于,
    所述第一会话消息或所述第二会话消息或第一会话响应消息或第二会话响应消息还携带端口复用指示,所述端口复用指示用于指示将不同媒体源的具有相同源内优先级的媒体流使用相同的端口地址传输。
  23. 根据权利要求19所述的媒体设备,其特征在于,
    所述确定单元具体用于,接收第二媒体设备发送的第三会话消息,所述第三会话消息携带优先级指示,其中,所述优先级指示用于确定出所述N个媒体源对应的媒体流之间的全局优先级;向所述第二媒体设备发送第三会话响应消息;所述第三会话响应消息携带针对所述优先级指示的确认指示,基于所述第三会话消息携带的优先级指示确定所述N个媒体源对应的媒体流之间的全局优先级;
    或者,
    所述确定单元具体用于,接收第二媒体设备发送的第四会话消息,所述第四会话消息携带优先级指示,其中,所述优先级指示用于确定出所述N个媒体源对应的媒体流之间的全局优先级;所述媒体设备向所述第二媒体设备发送第四会话响应消息;其中,所述第四会话响应消息携带针对所述优先级指示的调整指示,其中,基于所述调整指示调整后的所述N个媒体源对应的媒体流之间的全局优先级为所述媒体设备确定出的所述N个媒体源对应的媒体流之间的全局优先级。
  24. 根据权利要求23所述的媒体设备,其特征在于,
    所述第三会话消息或所述第四会话消息或第三会话响应消息或第四会话响应消息还携带端口复用指示,所述端口复用指示用于指示将不同媒体源的具有相同源内优先级的媒体流使用相同的端口地址传输。
  25. 根据权利要求21至24任一项所述的媒体设备,其特征在于,在所述N等于1的情况下,所述优先级指示包括媒体流源内优先级指示,所述媒体流源内优先级指示用于指示媒体源对应的各媒体流之间的源内优先级。
  26. 根据权利要求21至25任一项所述的媒体设备,其特征在于,在所述N大于1的情况下,所述优先级指示包括媒体源优先级指示、媒体流源内优先级指示和优先级参考权重指示,所述媒体源优先级指示用于指示不同媒体源之间的优先级;所述媒体流源内优先级指示用于指示同一个媒体源对应的媒体流之间的源内优先级;所述优先级参考权重指示用于指示出所述 媒体源优先级指示和所述媒体流源内优先级指示之间的参考权重。
  27. 根据权利要求26所述的媒体设备,其特征在于,在所述优先级参考权重指示用于指示出所述媒体源优先级指示的参考权重高于所述媒体流源内优先级指示的参考权重的情况下,
    若所述N个媒体源中的媒体源i的优先级高于所述N个媒体源中的媒体源j的优先级,所述媒体源i对应的任意一个媒体流的全局优先级高于所述媒体源j对应的任意一个媒体流的全局优先级,其中,所述媒体源i和所述媒体源j为所述N个媒体源中的任意两个媒体源。
  28. 根据权利要求26所述的媒体设备,其特征在于,在所述优先级参考权重指示用于指示出所述媒体源优先级指示的参考权重低于所述媒体流源内优先级指示的参考权重的情况下,
    若所述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对应的任意一个媒体流。
  29. 根据权利要求16至28任一项所述的媒体设备,其特征在于,
    所述传输控制单元具体用于,在所述媒体设备与所述第二媒体设备之间的传输通道出现拥塞的情况下,优先丢弃所述媒体设备待向所述第二媒体设备发送的所述N个媒体源对应的媒体流中的全局优先级相对较低的媒体流的部分或全部媒体数据包;或,在所述媒体设备与所述第二媒体设备之间的传输通道出现拥塞的情况下,延迟发送所述媒体设备待向所述第二媒体设备发送的所述N个媒体源对应的媒体流中的全局优先级相对较低的媒体流的部分或全部 媒体数据包。
  30. 根据权利要求16至29任一项所述的媒体设备,其特征在于,在所述媒体设备为会议服务器的情况下,所述第二媒体设备为媒体终端;或者在所述媒体设备为媒体终端的情况下,所述第二媒体设备为媒体终端或会议服务器。
  31. 一种通信系统,其特征在于,包括:
    第一媒体设备和第二媒体设备,其中,所述第一媒体设备为如权利要求16至30任意一项权利要求所述的媒体设备。
PCT/CN2016/079887 2015-06-29 2016-04-21 媒体会话处理方法方法和相关设备及通信系统 WO2017000636A1 (zh)

Priority Applications (2)

Application Number Priority Date Filing Date Title
EP16817000.9A EP3300329B1 (en) 2015-06-29 2016-04-21 Media session processing method, related device, and communication system
US15/851,203 US10645128B2 (en) 2015-06-29 2017-12-21 Media session processing method, related device, and communications system

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
CN201510368853.5 2015-06-29
CN201510368853.5A CN106302377B (zh) 2015-06-29 2015-06-29 媒体会话处理方法和相关设备及通信系统

Related Child Applications (1)

Application Number Title Priority Date Filing Date
US15/851,203 Continuation US10645128B2 (en) 2015-06-29 2017-12-21 Media session processing method, related device, and communications system

Publications (1)

Publication Number Publication Date
WO2017000636A1 true WO2017000636A1 (zh) 2017-01-05

Family

ID=57607659

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/CN2016/079887 WO2017000636A1 (zh) 2015-06-29 2016-04-21 媒体会话处理方法方法和相关设备及通信系统

Country Status (4)

Country Link
US (1) US10645128B2 (zh)
EP (1) EP3300329B1 (zh)
CN (1) CN106302377B (zh)
WO (1) WO2017000636A1 (zh)

Families Citing this family (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN108337535B (zh) * 2018-03-21 2020-12-29 广州视源电子科技股份有限公司 客户端视频的转发方法、装置、设备和存储介质
CN110519553B (zh) * 2018-05-22 2021-02-26 杭州海康威视数字技术股份有限公司 视频流转发控制方法、装置、电子设备及可读存储介质
CN110198279B (zh) * 2019-04-16 2022-05-20 腾讯科技(深圳)有限公司 一种转发媒体包的方法及转发服务器

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR100717846B1 (ko) * 2005-12-09 2007-05-14 한국전자통신연구원 양방향 위성 멀티미디어 시스템에서 양질의 서비스를제공하기 위한 동적 자원 할당 장치 및 그 방법
CN1997180A (zh) * 2006-01-05 2007-07-11 中兴通讯股份有限公司 集群无线通讯系统中前向媒体流发送方法
CN104113766A (zh) * 2013-04-16 2014-10-22 华为技术有限公司 一种媒体流的传输带宽的调整方法及相关装置

Family Cites Families (11)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN100425033C (zh) * 2004-07-28 2008-10-08 国家数字交换系统工程技术研究中心 多速率网络视频流媒体承载方法及系统
CN100493038C (zh) * 2006-05-26 2009-05-27 华为技术有限公司 终端通话过程中的媒体流替换方法及系统
CN100479528C (zh) * 2006-08-30 2009-04-15 华为技术有限公司 一种支持多音轨的方法、系统及流媒体服务器
US8489386B2 (en) * 2009-02-27 2013-07-16 Research In Motion Limited Method and system for directing media streams during a conference call
CN101924742B (zh) * 2009-06-16 2014-07-30 华为技术有限公司 媒体传输方法及设备、媒体存储方法及设备
US8296442B2 (en) * 2009-11-18 2012-10-23 Motorola Solutions, Inc. Method and apparatus for minimizing bandwidth usage between a communication server and media device
US9031562B2 (en) * 2011-12-19 2015-05-12 Bandwidth.Com, Inc. Intelligent handoffs for enhancing or avoiding dropped and interrupted communication sessions
CN102843542B (zh) * 2012-09-07 2015-12-02 华为技术有限公司 多流会议的媒体协商方法、设备和系统
US9998771B2 (en) * 2013-10-30 2018-06-12 Saturn Licensing Llc Transmission apparatus, transmission method, reception apparatus, and reception method
US10015068B2 (en) * 2013-11-13 2018-07-03 Telefonaktiebolaget Lm Ericsson (Publ) Methods and devices for media processing in distributed cloud
US9538139B2 (en) * 2015-04-24 2017-01-03 Avaya Inc. Multi-stream video switching with selective optimized composite

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR100717846B1 (ko) * 2005-12-09 2007-05-14 한국전자통신연구원 양방향 위성 멀티미디어 시스템에서 양질의 서비스를제공하기 위한 동적 자원 할당 장치 및 그 방법
CN1997180A (zh) * 2006-01-05 2007-07-11 中兴通讯股份有限公司 集群无线通讯系统中前向媒体流发送方法
CN104113766A (zh) * 2013-04-16 2014-10-22 华为技术有限公司 一种媒体流的传输带宽的调整方法及相关装置

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
See also references of EP3300329A4 *

Also Published As

Publication number Publication date
EP3300329B1 (en) 2020-02-26
EP3300329A4 (en) 2018-06-27
CN106302377B (zh) 2019-10-15
EP3300329A1 (en) 2018-03-28
US20180139250A1 (en) 2018-05-17
US10645128B2 (en) 2020-05-05
CN106302377A (zh) 2017-01-04

Similar Documents

Publication Publication Date Title
JP5788473B2 (ja) 端末の出力を同期させる方法およびシステム
US10893080B2 (en) Relaying multimedia conferencing utilizing software defined networking architecture
US7257641B1 (en) Multipoint processing unit
EP3127285B1 (en) Method and systems for optimizing bandwidth utilization in a multi-participant full mesh peer-to-peer video session
CN111147893B (zh) 一种视频自适应方法、相关设备以及存储介质
US8385234B2 (en) Media stream setup in a group communication system
WO2012167638A1 (zh) 媒体数据控制方法及装置
CN103907358B (zh) 用于切换实时媒体流的设备和方法
NO333235B1 (no) System og fremgangsmate for konferanser med skalerbar mediesvitsjing
US9743043B2 (en) Method and system for handling content in videoconferencing
JP2012522457A (ja) マルチキャスト配信を通じてメディアを提供するシステムのための方法及び装置
WO2020134761A1 (zh) 视频会议实现方法及装置、视频会议系统、存储介质
US9270937B2 (en) Real time stream provisioning infrastructure
WO2011022994A1 (zh) 组播实时传输协议会话快速接入的方法、装置及系统
US10645128B2 (en) Media session processing method, related device, and communications system
JP5748471B2 (ja) 配信装置、配信方法、プログラム
CN108574840B (zh) 一种评估视频体验质量的方法及装置
WO2012175227A1 (en) Methods and apparatus for identifying rtp media streams containing related media data
JP2009194495A (ja) マルチキャスト通信システム及びマルチキャスト通信方法
EP4236326A1 (en) A method, an apparatus and a computer program product for transmission of immersive media
Globisch et al. Architecture for asymmetric P2P group communication

Legal Events

Date Code Title Description
121 Ep: the epo has been informed by wipo that ep was designated in this application

Ref document number: 16817000

Country of ref document: EP

Kind code of ref document: A1

WWE Wipo information: entry into national phase

Ref document number: 2016817000

Country of ref document: EP

NENP Non-entry into the national phase

Ref country code: DE