CN108206925B - Method and device for realizing multichannel video call and multichannel terminal - Google Patents

Method and device for realizing multichannel video call and multichannel terminal Download PDF

Info

Publication number
CN108206925B
CN108206925B CN201611169711.7A CN201611169711A CN108206925B CN 108206925 B CN108206925 B CN 108206925B CN 201611169711 A CN201611169711 A CN 201611169711A CN 108206925 B CN108206925 B CN 108206925B
Authority
CN
China
Prior art keywords
code rate
value
path
load
grade
Prior art date
Legal status (The legal status 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 status listed.)
Active
Application number
CN201611169711.7A
Other languages
Chinese (zh)
Other versions
CN108206925A (en
Inventor
邱毅
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Spreadtrum Communications Shanghai Co Ltd
Original Assignee
Spreadtrum Communications Shanghai Co Ltd
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 Spreadtrum Communications Shanghai Co Ltd filed Critical Spreadtrum Communications Shanghai Co Ltd
Priority to CN201611169711.7A priority Critical patent/CN108206925B/en
Publication of CN108206925A publication Critical patent/CN108206925A/en
Application granted granted Critical
Publication of CN108206925B publication Critical patent/CN108206925B/en
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N7/00Television systems
    • H04N7/14Systems for two-way working
    • H04N7/15Conference systems
    • 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
    • H04L65/00Network arrangements, protocols or services for supporting real-time applications in data packet communication
    • H04L65/80Responding to QoS

Landscapes

  • Engineering & Computer Science (AREA)
  • Multimedia (AREA)
  • Signal Processing (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Business, Economics & Management (AREA)
  • General Business, Economics & Management (AREA)
  • Data Exchanges In Wide-Area Networks (AREA)

Abstract

The invention provides a method and a device for realizing multi-channel video call and a multi-channel terminal. The method is applied to a multi-pass terminal, and comprises the following steps: monitoring and updating the packet loss rate of each path of load between each call opposite terminal and each call opposite terminal in real time and the code rate value requested in the TMMBR message sent by each call opposite terminal; estimating the network bandwidth of each path of load according to the latest packet loss rate monitored in the preset time and the code rate value requested in the TMMBR message at intervals of preset time, grading the coding code rate according to the network bandwidth estimation value of each path of load, and determining the code rate grade corresponding to each path of load; controlling the frame rate on each video frame output channel according to the code rate grade corresponding to each path of load; and coding the video data transmitted to each opposite call end according to the code rate grade corresponding to each path of load. The invention can carry out code rate self-adaptive adjustment in multi-channel video call and ensure the quality of the video call.

Description

Method and device for realizing multichannel video call and multichannel terminal
Technical Field
The invention relates to the technical field of communication, in particular to a method and a device for realizing multi-channel video call and a multi-channel terminal.
Background
Voice over LTE (LTE, LTE network audio and video call) is a Voice solution for realizing service control through an LTE network as service access and an IMS (IP Multimedia Subsystem) network. The system supports communication services such as high-definition voice, high-definition video and the like, and can also realize voice compatibility and intercommunication with the existing network 2G/3G.
As one of the core services of VoLTE, the video call service provides a new call experience for mobile terminal users. In the process of making a video call, the quality of the video becomes the focus of most attention of the user.
At present, in a multi-path video call, video coding code rates configured for all paths of video call terminals are the same.
In the process of implementing the invention, the inventor finds that at least the following technical problems exist in the prior art:
if the configured video coding rate is higher than the bandwidth of the network bearer, the terminal with poor bearer receiving capability can cause the problems of video blockage, image mosaic and the like due to excessive network packet loss; if the configured video coding rate is lower than the bandwidth of the network bearer, the terminal with stronger bearing receiving capacity cannot display clear and smooth images.
Disclosure of Invention
The method, the device and the multi-channel terminal for realizing the multi-channel video call can perform code rate self-adaptive adjustment in the multi-channel video call, and ensure the video call quality.
In a first aspect, the present invention provides a method for implementing a multi-channel video call, where the method is applied to a multi-channel terminal, and the method includes:
monitoring and updating the packet loss rate of each path of load between each call opposite terminal and each call opposite terminal in real time and the code rate value requested in the TMMBR message sent by each call opposite terminal;
estimating the network bandwidth of each path of load according to the latest packet loss rate monitored in the preset time and the code rate value requested in the TMMBR message at intervals of preset time, grading the coding code rate according to the network bandwidth estimation value of each path of load, and determining the code rate grade corresponding to each path of load;
controlling the frame rate on each video frame output channel according to the code rate grade corresponding to each path of load;
and coding the video data transmitted to each opposite call end according to the code rate grade corresponding to each path of load.
Optionally, the estimating the network bandwidth of each bearer according to the latest packet loss rate monitored in the predetermined time and the code rate value requested in the TMMBR message includes:
for each path of load, when the TMMBR is monitored in the preset time, determining that the network bandwidth of the load is equal to the code rate value carried by the recently received TMMBR; when the TMMBR is not monitored in the preset time and the monitored latest packet loss rate is smaller than a preset packet loss rate threshold value, determining that the network bandwidth is equal to the last determined network bandwidth; and when the TMMBR is not monitored in the preset time and the monitored latest packet loss rate is greater than or equal to a preset packet loss rate threshold value, determining that the network bandwidth is equal to the downlink transmission rate statistic value multiplied by a preset factor.
Optionally, when the code rate level is three levels, the classifying the coding code rate according to the network bandwidth estimation value of each bearer, and determining the code rate level corresponding to each bearer includes:
when X/Br ismaxWhen the code rate is less than or equal to 0.1, classifying all the loads into a first code rate grade, wherein the code rate corresponding to the first code rate gradeValue B1=BrminWherein X is the maximum value Br of code rate Br in each path of loadmaxWith a minimum value of BrminThe difference between them;
when 0.1 < X/BrmaxWhen the content is less than or equal to 0.2, Br is belonged to [ Br [ [ Br ]min,Brmin+X/2]The bearer is classified as a second code rate class, and the code rate value corresponding to the second code rate class is B2=Brmin(ii) a Br is from E (Br)min+X/2,Brmax]The load bearing is classified as a first code rate grade, and the code rate value corresponding to the first code rate grade is B1=Br1_minIn which Br1_minThe minimum value of the code rates in all the loads classified as the first code rate grade is determined;
when X/Br ismaxWhen the ratio is more than 0.2, Br is larger thanmax-X/3,Brmax]The load bearing is classified as a first code rate grade, and the code rate value corresponding to the first code rate grade is B1=Br1_minIn which Br1_minThe minimum value of the code rates in all the loads classified as the first code rate grade is determined; br is from E (Br)max-2·X/3,Brmax-X/3]The bearer is classified as a second code rate class, and the code rate value corresponding to the second code rate class is B2=Br2_minIn which Br2_minThe minimum value of the code rate in all the loads classified as the second code rate grade is obtained; br is E [ Br ∈min,Brmax-2·X/3]The bearer is classified into a third code rate level, and the code rate value corresponding to the third code rate level is B3=Br3_minIn which Br3_minThe minimum value of the code rates in all the bearers classified as the third code rate class is obtained.
Optionally, the method further comprises:
and after code rate grading is carried out, when one or more code rate grades do not have corresponding load bearing, temporarily stopping resource reservation and processing for data corresponding to the one or more code rate grades.
In a second aspect, the present invention provides an apparatus for implementing a multi-channel video call, where the apparatus is located at a multi-channel terminal, and the apparatus includes:
the monitoring unit is used for monitoring and updating the packet loss rate of each path of load between each call opposite terminal and each call opposite terminal in real time and the code rate value requested in the TMMBR message sent by each call opposite terminal;
a network bandwidth estimation unit, configured to estimate, every predetermined time, a network bandwidth carried by each path according to the latest packet loss rate monitored in the predetermined time and a code rate value requested in the TMMBR message;
the code rate grading unit is used for grading the coding code rate according to the network bandwidth estimation value loaded by each path and determining the code rate grade corresponding to each path of load;
the frame rate control unit is used for controlling the frame rate on each video frame output channel according to the code rate grade corresponding to each path of load;
and the coding unit is used for coding the video data transmitted to each opposite call end according to the code rate grade corresponding to each path of load.
Optionally, the network bandwidth estimation unit is configured to perform network bandwidth estimation as follows:
for each path of load, when the TMMBR is monitored in the preset time, determining that the network bandwidth of the load is equal to the code rate value carried by the recently received TMMBR; when the TMMBR is not monitored in the preset time and the monitored latest packet loss rate is smaller than a preset packet loss rate threshold value, determining that the network bandwidth is equal to the last determined network bandwidth; and when the TMMBR is not monitored in the preset time and the monitored latest packet loss rate is greater than or equal to a preset packet loss rate threshold value, determining that the network bandwidth is equal to the downlink transmission rate statistic value multiplied by a preset factor.
Optionally, when the bitrate grade is three grades, the bitrate grading unit is configured to perform bitrate grading as follows:
when X/Br ismaxWhen the code rate is less than or equal to 0.1, classifying all the loads into a first code rate grade, and classifying a code rate value B corresponding to the first code rate grade1=BrminWherein X is the maximum value Br of code rate Br in each path of loadmaxWith a minimum value of BrminThe difference between them;
when 0.1 < X/BrmaxWhen the content is less than or equal to 0.2, Br is belonged to [ Br [ [ Br ]min,Brmin+X/2]The bearer is classified as a second code rate class, and the code rate value corresponding to the second code rate class is B2=Brmin(ii) a Br is from E (Br)min+X/2,Brmax]The load bearing is classified as a first code rate grade, and the code rate value corresponding to the first code rate grade is B1=Br1_minIn which Br1_minThe minimum value of the code rates in all the loads classified as the first code rate grade is determined;
when X/Br ismaxWhen the ratio is more than 0.2, Br is larger thanmax-X/3,Brmax]The load bearing is classified as a first code rate grade, and the code rate value corresponding to the first code rate grade is B1=Br1_minIn which Br1_minThe minimum value of the code rates in all the loads classified as the first code rate grade is determined; br is from E (Br)max-2·X/3,Brmax-X/3]The bearer is classified as a second code rate class, and the code rate value corresponding to the second code rate class is B2=Br2_minIn which Br2_minThe minimum value of the code rate in all the loads classified as the second code rate grade is obtained; br is E [ Br ∈min,Brmax-2·X/3]The bearer is classified into a third code rate level, and the code rate value corresponding to the third code rate level is B3=Br3_minIn which Br3_minThe minimum value of the code rates in all the bearers classified as the third code rate class is obtained.
Optionally, the frame rate control unit and the encoding unit are configured to, after the rate classification unit performs rate classification, temporarily stop resource reservation and processing for data corresponding to one or more rate classes when one or more rate classes do not have corresponding bearers.
In a third aspect, the present invention provides a multi-channel terminal, where the multi-channel terminal includes the apparatus for implementing the multi-channel video call.
The method, the device and the multi-channel terminal for realizing multi-channel video call provided by the embodiment of the invention monitor and update the packet loss rate of each channel of bearer between each call opposite terminal and the code rate value requested in the TMMBR message sent by each call opposite terminal in real time, estimate the network bandwidth of each channel of bearer according to the latest packet loss rate monitored in the preset time and the code rate value requested in the TMMBR message at intervals of preset time, grade the coding code rate according to the network bandwidth estimation value of each channel of bearer, determine the code rate grade corresponding to each channel of bearer, control the frame rate on each video frame output channel according to the code rate grade corresponding to each channel of bearer, and encode the video data transmitted to each call opposite terminal according to the code rate grade corresponding to each channel of bearer. Compared with the prior art, the method and the device can evaluate the receiving capability of the TMMBR to the coding code rate based on the TMMBR and the network packet loss conditions of different bearers, and provide code sources of different codes for the multi-channel bearer, so that the code rate can be adaptively adjusted in the multi-channel video call, and the video call quality is ensured.
Drawings
FIG. 1 is a flow chart of a method for implementing a multi-way video call according to an embodiment of the present invention;
fig. 2 is a topology structure diagram of a multi-channel video call based on VoLTE according to an embodiment of the present invention;
fig. 3 is a system structure diagram of a single-channel video call based on VoLTE according to an embodiment of the present invention;
fig. 4 is a system framework diagram of a VoLTE-based multi-channel video call according to an embodiment of the present invention;
fig. 5 is a schematic structural diagram of an apparatus for implementing a multi-way video call according to another embodiment of the present invention.
Detailed Description
In order to make the objects, technical solutions and advantages of the embodiments of the present invention clearer, the technical solutions in the embodiments of the present invention will be clearly and completely described below with reference to the drawings in the embodiments of the present invention, and it is obvious that the described embodiments are only a part of the embodiments of the present invention, and not all of the embodiments. All other embodiments, which can be derived by a person skilled in the art from the embodiments given herein without making any creative effort, shall fall within the protection scope of the present invention.
The invention provides a method for realizing multi-channel video call, which is applied to a multi-channel terminal, and as shown in figure 1, the method comprises the following steps:
and S11, real-time monitoring and updating the packet loss Rate of each path of bearer between each opposite call end and the code Rate value requested in the TMMBR (Temporary Maximum Media Stream Bit Rate Request) message sent by each opposite call end.
And S12, estimating the network bandwidth of each path of load according to the latest packet loss rate monitored in the preset time and the code rate value requested in the TMMBR message every preset time, grading the coding code rate according to the network bandwidth estimation value of each path of load, and determining the code rate grade corresponding to each path of load.
And S13, controlling the frame rate of each video frame output channel according to the code rate grade corresponding to each path of load.
And S14, coding the video data transmitted to each opposite call terminal according to the code rate grade corresponding to each path of load.
The method for implementing multi-channel video call provided by the embodiment of the invention monitors and updates the packet loss rate of each channel of bearer between each call opposite end and the code rate value requested in the TMMBR message sent by each call opposite end in real time, estimates the network bandwidth of each channel of bearer according to the latest packet loss rate monitored in the preset time and the code rate value requested in the TMMBR message at intervals of preset time, grades the coding code rate according to the network bandwidth estimation value of each channel of bearer, determines the code rate grade corresponding to each channel of bearer, controls the frame rate on each video frame output channel according to the code rate grade corresponding to each channel of bearer, and codes the video data transmitted to each call opposite end according to the code rate grade corresponding to each channel of bearer. Compared with the prior art, the method and the device can evaluate the receiving capability of the TMMBR to the coding code rate based on the TMMBR and the network packet loss conditions of different bearers, and provide code sources of different codes for the multi-channel bearer, so that the code rate can be adaptively adjusted in the multi-channel video call, and the video call quality is ensured.
In the scenario of multi-channel VoLTE video call, one Host terminal in the network topology will be interconnected with multiple Client terminals one-to-one, as shown in fig. 2. Like a single-path VoLTE video call, in the call process, a terminal initiates a TMMBR to request the coding code rate of a data sending end according to the network packet loss condition. Then, as the Host terminal, the TMMBR of all Client terminals needs to be collected, and the multi-channel encoder is controlled to implement the code rate transmission request for different clients.
The structure of a one-way VoLTE video call system is shown in fig. 3, where an MO (Mobile terminal that sends data) sends video data to an MT (Mobile terminal that receives data) is taken as an example, in a VoLTE network, a Session Initiation Protocol (SIP) Protocol is used between the MO and the MT to complete media capability negotiation and Session establishment. After the video call is established, the video acquisition module of the MO outputs the acquired data to the DSP encoding module, and the encoding module compresses and encodes the original data and transmits the compressed and encoded data to the MT through a network in a Real-time transport protocol (RTP) package mode. The MT receives and unpacks RTP data, then outputs the RTP data to the jitter suppression module, and the DSP decoding module acquires video frame data from the jitter suppression module, decodes the video frame data and finally displays the video frame data through the video display module. If packet loss exists in the downlink RTP data of the MT, the situations of video blocking and mosaic can occur, and if the packet loss is serious, the user experience can be greatly influenced. For the downlink packet loss situation, the MT may request the MO to reduce the video coding rate through an extension Protocol TMMBR of RTCP (RTP Control Protocol ), so as to reduce the downlink throughput of the MT, and further reduce the packet loss rate of RTP. When the MO receives the TMMBR, it immediately feeds back a TMMBN (Temporary Maximum Media Stream Bit Rate Notification) to respond to the MT, and then the video quality control module configures the current video coding Rate according to the parameters carried by the TMMBR message.
In the framework of a multi-channel VoLTE video call system, the embodiment of the present invention introduces a multi-channel rate control subsystem as shown in fig. 4, which is used for controlling different coding rates sent to different Client terminals, and the control flow is as follows:
step 1, initializing Ts as the current system time.
And 2, monitoring the packet loss rate of the multi-path bearer sent by the network transmission layer and the TMMBR.
And 3, updating the packet loss rate and the TMMBR of each bearer, and calculating the current system time Tc.
Step 4, if (Tc-Ts) is larger than the threshold, executing step 5; otherwise, go to step 2.
And 5, estimating code rate Br according to the packet loss rate and the TMMBR, grading the code rates for different Socket transmissions, and finally updating Ts (time to live) to Tc.
Wherein the code rate estimation and code rate grading are performed as follows.
Code rate estimation: if a monitored bearing receives the TMMBR in the counting period, the code rate estimated value Br is the code rate value carried by the recently received TMMBR; if the TMMBR is not received and the packet loss rate is less than the threshold loss _ threshold, then Br is the Br value in the previous period; if the TMMBR is not received and the packet loss rate is greater than the threshold loss _ threshold, Br is the downlink rate statistic multiplied by the performance factor. For example, the multiplicative factor may be taken to be 0.9.
Code rate grading: the code rate series needs to depend on the multi-channel coding capability supported by software and hardware video encoders of each terminal, and the more channels supported by the encoders, the finer the division granularity of the code rate. Assuming that the encoder can support 3-way encoding at the same time, the maximum number of code rate levels is 3 levels. Let X be the maximum Br value in each loadmaxWith minimum Br of BrminThe difference between them.
Case 1 if X/BrmaxLess than or equal to 0.1, all the bearers are classified as level _1, and the code rate value B corresponding to the level _11=Brmin
Case 2 if 0.1 < X/BrmaxLess than or equal to 0.2, then Br is belonged to [ Br ∈ [min,Brmin+X/2]The load bearing is classified into level _2, and the code rate value corresponding to the level _2 is B2=Brmin(ii) a In addition, Br ∈ (Br)min+X/2,Brmax]Is assigned to level _1, and let B1=Br1_minIn which Br1_minThe minimum value of Br in all bearers classified as level _ 1.
Case 3 if X/BrmaxIf > 0.2, then Br ∈ (Br)max-X/3,Brmax]The load bearing is classified into level _1, and the code rate value corresponding to the level _1 is B1=Br1_minIn which Br1_minThe minimum value of Br in all loads classified as level _1 is obtained; if Br epsilon (Br) existsmax-2·X/3,Brmax-X/3]The bearer in (B) is classified into level _2, and let B2=Br2_minIn which Br2_minThe minimum value of Br in all the loads classified as level _2 is obtained; br is E [ Br ∈min,Brmax-2·X/3]The load bearing is classified into level _3, and the code rate value corresponding to the level _3 is B3=Br3_min
When a certain level does not have any corresponding bearer, the video coding module and the video frame distribution processing module can be notified to suspend resource reservation and processing for the path of data so as to reduce the system overhead. After receiving the information of code rate classification, the video coding module sets the code rate values of different grades to different encoders for coding; and simultaneously, the video frame distribution processing module can control the frame rates on the video frame output channels corresponding to different grades according to the current code rate grading condition, wherein the video frame output channels correspond to the encoder channels one by one.
And 6, updating the output frame rate corresponding to each code rate grade, and informing a video frame distribution processing module through an event.
And 7, updating the coding code rate corresponding to each code rate grade, and informing the video coding module through an event.
An embodiment of the present invention further provides a device for implementing a multi-channel video call, where the device is located at a multi-channel terminal, and as shown in fig. 5, the device includes:
the monitoring unit 11 is configured to monitor and update, in real time, packet loss rates of each path of bearer between each call peer and a code rate value requested in a TMMBR message sent by each call peer;
a network bandwidth estimation unit 12, configured to estimate, every predetermined time, a network bandwidth carried by each path according to the latest packet loss rate monitored in the predetermined time and a code rate value requested in the TMMBR message;
a code rate grading unit 13, configured to grade a coding code rate according to the network bandwidth estimation value carried by each path, and determine a code rate grade corresponding to each path;
a frame rate control unit 14, configured to control a frame rate on each video frame output channel according to a code rate level corresponding to each bearer;
and the encoding unit 15 is configured to encode the video data transmitted to each opposite call end according to the code rate level corresponding to each bearer.
The device for implementing multi-channel video call provided in the embodiments of the present invention monitors and updates the packet loss rate of each channel bearer between each call peer end and the code rate value requested in the TMMBR message sent by each call peer end in real time, estimates the network bandwidth of each channel bearer according to the latest packet loss rate monitored in the predetermined time and the code rate value requested in the TMMBR message at predetermined intervals, classifies the coding code rate according to the estimated value of the network bandwidth of each channel bearer, determines the code rate grade corresponding to each channel bearer, controls the frame rate on each video frame output channel according to the code rate grade corresponding to each channel bearer, and codes the video data transmitted to each call peer end according to the code rate grade corresponding to each channel bearer. Compared with the prior art, the method and the device can evaluate the receiving capability of the TMMBR to the coding code rate based on the TMMBR and the network packet loss conditions of different bearers, and provide code sources of different codes for the multi-channel bearer, so that the code rate can be adaptively adjusted in the multi-channel video call, and the video call quality is ensured.
Optionally, the network bandwidth estimation unit 12 is configured to perform network bandwidth estimation as follows:
for each path of load, when the TMMBR is monitored in the preset time, determining that the network bandwidth of the load is equal to the code rate value carried by the recently received TMMBR; when the TMMBR is not monitored in the preset time and the monitored latest packet loss rate is smaller than a preset packet loss rate threshold value, determining that the network bandwidth is equal to the last determined network bandwidth; and when the TMMBR is not monitored in the preset time and the monitored latest packet loss rate is greater than or equal to a preset packet loss rate threshold value, determining that the network bandwidth is equal to the downlink transmission rate statistic value multiplied by a preset factor.
Optionally, when the code rate level is three levels, the code rate grading unit 13 is configured to grade the code rate as follows:
when X/Br ismaxWhen the code rate is less than or equal to 0.1, classifying all the loads into a first code rate grade, and classifying a code rate value B corresponding to the first code rate grade1=BrminWherein X is the maximum value Br of code rate Br in each path of loadmaxWith a minimum value of BrminThe difference between them;
when 0.1 < X/BrmaxWhen the content is less than or equal to 0.2, Br is belonged to [ Br [ [ Br ]min,Brmin+X/2]The bearer is classified as a second code rate class, and the code rate value corresponding to the second code rate class is B2=Brmin(ii) a Br is from E (Br)min+X/2,Brmax]The load bearing is classified as a first code rate grade, and the code rate value corresponding to the first code rate grade is B1=Br1_minIn which Br1_minThe minimum value of the code rates in all the loads classified as the first code rate grade is determined;
when X/Br ismaxWhen the ratio is more than 0.2, Br is larger thanmax-X/3,Brmax]The load bearing is classified as a first code rate grade, and the code rate value corresponding to the first code rate grade is B1=Br1_minIn which Br1_minThe minimum value of the code rates in all the loads classified as the first code rate grade is determined; br is from E (Br)max-2·X/3,Brmax-X/3]The bearer is classified as a second code rate class, and the code rate value corresponding to the second code rate class is B2=Br2_minIn which Br2_minThe minimum value of the code rate in all the loads classified as the second code rate grade is obtained; br is E [ Br ∈min,Brmax-2·X/3]The bearer is classified into a third code rate level, and the code rate value corresponding to the third code rate level is B3=Br3_minIn which Br3_minThe minimum value of the code rates in all the bearers classified as the third code rate class is obtained.
Optionally, the frame rate control unit 14 and the encoding unit 15 are configured to, after the rate grading unit 13 performs rate grading, temporarily stop resource reservation and processing for data corresponding to one or more rate grades when one or more rate grades do not have corresponding bearers.
The apparatus of this embodiment may be configured to implement the technical solutions of the above method embodiments, and the implementation principles and technical effects are similar, which are not described herein again.
The embodiment of the invention also provides a multi-channel terminal, which comprises the device for realizing the multi-channel video call.
The embodiment of the invention can be applied to multi-channel video call based on VoLTE, but is not limited to the method.
It will be understood by those skilled in the art that all or part of the processes of the methods of the embodiments described above can be implemented by a computer program, which can be stored in a computer-readable storage medium, and when executed, can include the processes of the embodiments of the methods described above. The storage medium may be a magnetic disk, an optical disk, a Read-Only Memory (ROM), a Random Access Memory (RAM), or the like.
The above description is only for the specific embodiment of the present invention, but the scope of the present invention is not limited thereto, and any changes or substitutions that can be easily conceived by those skilled in the art within the technical scope of the present invention are included in the scope of the present invention. Therefore, the protection scope of the present invention shall be subject to the protection scope of the claims.

Claims (5)

1. A method for realizing multi-channel video call is applied to a multi-channel terminal, and is characterized in that the method comprises the following steps:
monitoring and updating the packet loss rate of each path of load between each call opposite terminal and each call opposite terminal in real time and the code rate value requested in the TMMBR message sent by each call opposite terminal;
estimating the network bandwidth of each path of load according to the latest packet loss rate monitored in the preset time and the code rate value requested in the TMMBR message at intervals of preset time, carrying out code rate grading according to the network bandwidth estimation value of each path of load, determining the code rate grade corresponding to each path of load, and temporarily stopping resource reservation and processing for the data corresponding to one or more code rate grades when one or more code rate grades do not have corresponding load after code rate grading;
controlling the frame rate on each video frame output channel according to the code rate grade corresponding to each path of load;
coding the video data transmitted to each opposite call terminal according to the code rate grade corresponding to each path of load;
the estimating the network bandwidth of each path of load according to the latest packet loss rate monitored in the preset time and the code rate value requested in the TMMBR message comprises the following steps: for each path of load, when the TMMBR is monitored in the preset time, determining that the network bandwidth of the load is equal to the code rate value carried by the recently received TMMBR; when the TMMBR is not monitored in the preset time and the monitored latest packet loss rate is smaller than a preset packet loss rate threshold value, determining that the network bandwidth is equal to the last determined network bandwidth; when the TMMBR is not monitored in the preset time and the monitored latest packet loss rate is greater than or equal to a preset packet loss rate threshold value, determining that the network bandwidth is equal to the sum of the downlink transmission rate statistic and a preset factor, wherein the preset factor is smaller than 1;
the code rate grading according to the network bandwidth estimation value of each path of bearer, and the determining of the code rate grade corresponding to each path of bearer comprises: and determining the multi-path coding capacity of each path of load to obtain a code rate grade, and determining the final code rate grade according to the difference value between the maximum code rate value and the minimum code rate value in each path of load and the code rate grade.
2. The method of claim 1, wherein when the bit rate level is three levels, the performing bit rate classification according to the estimated value of the network bandwidth of each bearer, and determining the bit rate level corresponding to each bearer comprises:
when X/Br ismaxWhen the code rate is less than or equal to 0.1, classifying all the loads into a first code rate grade, and classifying a code rate value B corresponding to the first code rate grade1=BrminWherein X is the maximum value Br of code rate Br in each path of loadmaxWith a minimum value of BrminThe difference between them;
when 0.1 < X/BrmaxWhen the content is less than or equal to 0.2, Br is belonged to [ Br [ [ Br ]min,Brmin+X/2]The bearer is classified as a second code rate class, and the code rate value corresponding to the second code rate class is B2=Brmin(ii) a Br is from E (Br)min+X/2,Brmax]The load bearing is classified as a first code rate grade, and the code rate value corresponding to the first code rate grade is B1=Br1_minIn which Br1_minThe minimum value of the code rates in all the loads classified as the first code rate grade is determined;
when X/Br ismaxWhen the ratio is more than 0.2, Br is larger thanmax-X/3,Brmax]The load bearing is classified as a first code rate grade, and the code rate value corresponding to the first code rate grade is B1=Br1_minIn which Br1_minThe minimum value of the code rates in all the loads classified as the first code rate grade is determined; br is from E (Br)max-2·X/3,Brmax-X/3]The bearer is classified as a second code rate class, and the code rate value corresponding to the second code rate class is B2=Br2_minIn which Br2_minThe minimum value of the code rate in all the loads classified as the second code rate grade is obtained; br is E [ Br ∈min,Brmax-2·X/3]The bearer is classified into a third code rate level, and the code rate value corresponding to the third code rate level is B3=Br3_minIn which Br3_minThe minimum value of the code rates in all the bearers classified as the third code rate class is obtained.
3. An apparatus for implementing a multi-channel video call, the apparatus being located at a multi-channel terminal, the apparatus comprising:
the monitoring unit is used for monitoring and updating the packet loss rate of each path of load between each call opposite terminal and each call opposite terminal in real time and the code rate value requested in the TMMBR message sent by each call opposite terminal;
a network bandwidth estimation unit, configured to estimate, every predetermined time, a network bandwidth carried by each path according to the latest packet loss rate monitored in the predetermined time and a code rate value requested in the TMMBR message;
a code rate grading unit, configured to grade code rates according to the network bandwidth estimation values of the bearers, determine a code rate grade corresponding to the bearers, and temporarily stop resource reservation and processing for data corresponding to one or more code rate grades when one or more code rate grades do not have corresponding bearers after the code rates are graded;
the frame rate control unit is used for controlling the frame rate on each video frame output channel according to the code rate grade corresponding to each path of load;
the coding unit is used for coding the video data transmitted to each opposite call end according to the code rate grade corresponding to each path of load;
the network bandwidth estimation unit is configured to perform network bandwidth estimation as follows:
for each path of load, when the TMMBR is monitored in the preset time, determining that the network bandwidth of the load is equal to the code rate value carried by the recently received TMMBR; when the TMMBR is not monitored in the preset time and the monitored latest packet loss rate is smaller than a preset packet loss rate threshold value, determining that the network bandwidth is equal to the last determined network bandwidth; when the TMMBR is not monitored in the preset time and the monitored latest packet loss rate is greater than or equal to a preset packet loss rate threshold value, determining that the network bandwidth is equal to the sum of the downlink transmission rate statistic and a preset factor, wherein the preset factor is smaller than 1;
and the code rate grading unit is used for determining the multi-path coding capacity of each path of load to obtain the code rate grade, and determining the final code rate grading according to the difference value between the maximum code rate value and the minimum code rate value in each path of load and the code rate grade.
4. The apparatus of claim 3, wherein when the bitrate grade is three grades, the bitrate grading unit is configured to perform bitrate grading as follows:
when X/Br ismaxWhen the code rate is less than or equal to 0.1, classifying all the loads into a first code rate grade, and classifying a code rate value B corresponding to the first code rate grade1=BrminWherein X is the maximum value Br of code rate Br in each path of loadmaxWith a minimum value of BrminThe difference between them;
when 0.1 < X/BrmaxWhen the content is less than or equal to 0.2, Br is belonged to [ Br [ [ Br ]min,Brmin+X/2]The bearer is classified as a second code rate class, and the code rate value corresponding to the second code rate class is B2=Brmin(ii) a Br is from E (Br)min+X/2,Brmax]The load bearing is classified as a first code rate grade, and the code rate value corresponding to the first code rate grade is B1=Br1_minIn which Br1_minThe minimum value of the code rates in all the loads classified as the first code rate grade is determined;
when X/Br ismaxWhen the ratio is more than 0.2, Br is larger thanmax-X/3,Brmax]The load bearing is classified as a first code rate grade, and the code rate value corresponding to the first code rate grade is B1=Br1_minIn which Br1_minThe minimum value of the code rates in all the loads classified as the first code rate grade is determined; br is from E (Br)max-2·X/3,Brmax-X/3]The bearer is classified as a second code rate class, and the code rate value corresponding to the second code rate class is B2=Br2_minIn which Br2_minThe minimum value of the code rate in all the loads classified as the second code rate grade is obtained; br is E [ Br ∈min,Brmax-2·X/3]The bearer is classified into a third code rate level, and the code rate value corresponding to the third code rate level is B3=Br3_minIn which Br3_minThe minimum value of the code rates in all the bearers classified as the third code rate class is obtained.
5. Multi-pass terminal, characterized in that it comprises means for implementing a multi-pass video call according to any one of claims 3 to 4.
CN201611169711.7A 2016-12-16 2016-12-16 Method and device for realizing multichannel video call and multichannel terminal Active CN108206925B (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201611169711.7A CN108206925B (en) 2016-12-16 2016-12-16 Method and device for realizing multichannel video call and multichannel terminal

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201611169711.7A CN108206925B (en) 2016-12-16 2016-12-16 Method and device for realizing multichannel video call and multichannel terminal

Publications (2)

Publication Number Publication Date
CN108206925A CN108206925A (en) 2018-06-26
CN108206925B true CN108206925B (en) 2020-04-14

Family

ID=62602513

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201611169711.7A Active CN108206925B (en) 2016-12-16 2016-12-16 Method and device for realizing multichannel video call and multichannel terminal

Country Status (1)

Country Link
CN (1) CN108206925B (en)

Families Citing this family (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN109698794B (en) * 2019-01-21 2021-07-09 北京达佳互联信息技术有限公司 Congestion control method and device, electronic equipment and storage medium
CN112752058B (en) * 2019-10-31 2022-10-04 华为技术有限公司 Method and device for adjusting attribute of video stream
CN111050108A (en) * 2019-12-19 2020-04-21 维沃移动通信有限公司 Method and device for realizing multi-channel video call and electronic equipment
CN111726835B (en) * 2020-06-15 2023-07-07 维沃移动通信有限公司 Voice call method and device and electronic equipment

Family Cites Families (11)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN100588249C (en) * 2006-07-27 2010-02-03 腾讯科技(深圳)有限公司 Method, system and terminal for adjusting video quality
CN101686178B (en) * 2008-09-28 2012-11-21 华为技术有限公司 Method and system for improving multi-media connection quality, media control and processing equipment
US8537699B2 (en) * 2009-06-16 2013-09-17 Qualcomm Incorporated Managing video adaptation algorithms
US9007914B2 (en) * 2009-09-30 2015-04-14 Qualcomm Incorporated Methods and apparatus for enabling rate adaptation across network configurations
CN103259945A (en) * 2013-05-20 2013-08-21 苏州洲际传书信息科技有限公司 Method for achieving speech coding dynamic switching in voip conversation according to network condition
KR102109607B1 (en) * 2013-10-29 2020-05-28 에스케이플래닛 주식회사 System for reducing delay of transmission and reception in communication network, and apparatus thereof
US10171327B2 (en) * 2013-11-08 2019-01-01 Telefonaktiebolaget L M Ericsson (Publ) Handling of network characteristics
US9614724B2 (en) * 2014-04-21 2017-04-04 Microsoft Technology Licensing, Llc Session-based device configuration
CN105100675B (en) * 2015-09-11 2019-07-09 Tcl集团股份有限公司 A kind of quality adjustment method and system of terminal video communication
CN105471865A (en) * 2015-11-23 2016-04-06 苏州工业园区云视信息技术有限公司 Method for dynamic network state adaptation of video stream
CN106937073B (en) * 2015-12-29 2019-10-15 展讯通信(上海)有限公司 Video calling code rate adjustment method, device and mobile terminal based on VoLTE

Also Published As

Publication number Publication date
CN108206925A (en) 2018-06-26

Similar Documents

Publication Publication Date Title
KR101518799B1 (en) Method and apparatus for controlling wireless uplink sessions
US10819766B2 (en) Voice encoding and sending method and apparatus
CN106937073B (en) Video calling code rate adjustment method, device and mobile terminal based on VoLTE
EP2135407B1 (en) Method of transmitting data in a communication system
US9113486B2 (en) Method and apparatus for controlling wireless uplink sessions
KR102013729B1 (en) Systems and methods for application-aware admission control in a communication network
CN108206925B (en) Method and device for realizing multichannel video call and multichannel terminal
US9826260B2 (en) Video encoding device and video encoding method
MX2015001449A (en) Video bandwidth allocation in a video conference.
US8379517B2 (en) Call admission and preemption for multiple bit-rate applications
US10080231B2 (en) Channel bandwidth optimization for dynamic network conditions
EP2740291B1 (en) Selection of signal processing module depending on network conditions
WO2010015546A1 (en) Method and devices for bit rate allocation for point-to-multipoint multimedia communications
AU2015296746B2 (en) System and method for automatic encoder adjustment based on transport data
US11627358B2 (en) Communication entity and a method for transmitting a video data stream
CN115208861B (en) Video communication network based on value function optimization
CN109922533B (en) Data transmission method, multicast coordination entity equipment, base station equipment and eMBMS system
CN112153683A (en) Parameter dynamic configuration method, terminal and session management function entity
Khorov et al. SAND-inspired Cross-layer Approach for CCTV in 5G Networks
CN114584520A (en) Method and apparatus for multiplexing data
CN113938468A (en) Video transmission method, device, system and storage medium

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination
GR01 Patent grant
GR01 Patent grant