CN112738565A - Interactive bandwidth optimization method and device, computer equipment and storage medium - Google Patents

Interactive bandwidth optimization method and device, computer equipment and storage medium Download PDF

Info

Publication number
CN112738565A
CN112738565A CN202011530361.9A CN202011530361A CN112738565A CN 112738565 A CN112738565 A CN 112738565A CN 202011530361 A CN202011530361 A CN 202011530361A CN 112738565 A CN112738565 A CN 112738565A
Authority
CN
China
Prior art keywords
video coding
terminal
coding parameter
interactive
coding parameters
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.)
Granted
Application number
CN202011530361.9A
Other languages
Chinese (zh)
Other versions
CN112738565B (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.)
Guangzhou Kaidelian Intelligent Technology Co ltd
Original Assignee
Guangzhou Shiyuan Electronics Thecnology Co Ltd
Guangzhou Shirui Electronics 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 Guangzhou Shiyuan Electronics Thecnology Co Ltd, Guangzhou Shirui Electronics Co Ltd filed Critical Guangzhou Shiyuan Electronics Thecnology Co Ltd
Priority to CN202011530361.9A priority Critical patent/CN112738565B/en
Publication of CN112738565A publication Critical patent/CN112738565A/en
Application granted granted Critical
Publication of CN112738565B publication Critical patent/CN112738565B/en
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/20Servers specifically adapted for the distribution of content, e.g. VOD servers; Operations thereof
    • H04N21/23Processing of content or additional data; Elementary server operations; Server middleware
    • H04N21/236Assembling of a multiplex stream, e.g. transport stream, by combining a video stream with other content or additional data, e.g. inserting a URL [Uniform Resource Locator] into a video stream, multiplexing software data into a video stream; Remultiplexing of multiplex streams; Insertion of stuffing bits into the multiplex stream, e.g. to obtain a constant bit-rate; Assembling of a packetised elementary stream
    • H04N21/2365Multiplexing of several video streams
    • H04N21/23655Statistical multiplexing, e.g. by controlling the encoder to alter its bitrate to optimize the bandwidth utilization
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/20Servers specifically adapted for the distribution of content, e.g. VOD servers; Operations thereof
    • H04N21/23Processing of content or additional data; Elementary server operations; Server middleware
    • H04N21/238Interfacing the downstream path of the transmission network, e.g. adapting the transmission rate of a video stream to network bandwidth; Processing of multiplex streams
    • H04N21/2385Channel allocation; Bandwidth allocation
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/20Servers specifically adapted for the distribution of content, e.g. VOD servers; Operations thereof
    • H04N21/25Management operations performed by the server for facilitating the content distribution or administrating data related to end-users or client devices, e.g. end-user or client device authentication, learning user preferences for recommending movies
    • H04N21/258Client or end-user data management, e.g. managing client capabilities, user preferences or demographics, processing of multiple end-users preferences to derive collaborative data
    • H04N21/25866Management of end-user data
    • H04N21/25891Management of end-user data being end-user preferences
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/40Client devices specifically adapted for the reception of or interaction with content, e.g. set-top-box [STB]; Operations thereof
    • H04N21/43Processing of content or additional data, e.g. demultiplexing additional data from a digital video stream; Elementary client operations, e.g. monitoring of home network or synchronising decoder's clock; Client middleware
    • H04N21/44Processing of video elementary streams, e.g. splicing a video clip retrieved from local storage with an incoming video stream, rendering scenes according to MPEG-4 scene graphs
    • H04N21/44008Processing of video elementary streams, e.g. splicing a video clip retrieved from local storage with an incoming video stream, rendering scenes according to MPEG-4 scene graphs involving operations for analysing video streams, e.g. detecting features or characteristics in the video stream
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/40Client devices specifically adapted for the reception of or interaction with content, e.g. set-top-box [STB]; Operations thereof
    • H04N21/43Processing of content or additional data, e.g. demultiplexing additional data from a digital video stream; Elementary client operations, e.g. monitoring of home network or synchronising decoder's clock; Client middleware
    • H04N21/442Monitoring of processes or resources, e.g. detecting the failure of a recording device, monitoring the downstream bandwidth, the number of times a movie has been viewed, the storage space available from the internal hard disk

Abstract

The application relates to an interactive bandwidth optimization method, an interactive bandwidth optimization device, computer equipment and a storage medium, wherein a master terminal in an interactive terminal is accessed into an interactive platform and is initially configured according to preset video coding parameters, when a slave terminal is accessed subsequently, requested video coding parameters carried in each slave terminal access request are extracted, video coding parameters (resolution, code rate or frame rate) required by each slave terminal are determined, video coding parameters required by each terminal are negotiated uniformly, and video streams are pushed to each slave terminal according to the negotiated uniform video coding parameters. In the whole process, the video coding parameters of all the slave terminals are determined in a unified negotiation mode, the video parameters are not directly performed by adopting the maximum video coding parameters, the requirements of the video coding parameters of the interactive terminals are met, and meanwhile interactive bandwidth consumption for transmitting video data between the terminals in the interactive process is remarkably reduced.

Description

Interactive bandwidth optimization method and device, computer equipment and storage medium
Technical Field
The present application relates to the field of computer network technologies, and in particular, to a method and an apparatus for optimizing an interactive bandwidth, a computer device, and a storage medium.
Background
Interaction refers to remote audio-video activities, such as teleconferencing, WeChat video, etc., interaction parties are entities participating in the activities, and interaction bandwidth refers to network bandwidth consumed by the interaction parties.
In a traditional interaction scheme, video push of two interaction parties mainly comprises the following two schemes, wherein the first scheme is that the interaction party only pushes one video stream (1080p), and other interaction parties subscribe to the video; the second is that the interactors can push multiple video streams with different resolutions, such as 1080p, 720p, 480p, etc., and other interactors subscribe to videos as required, such as 1080p for a and 480p for B. For video interaction, normally, different display windows such as a full screen, a quad grid, a nine-grid and the like exist, and windows with different sizes display videos with different resolutions, so that the definition of the videos with different resolutions is slightly different, for example, a full screen window displays a 1080p video clearly, but a 720p video is not beautiful enough, and a 480p video is quite blurred; but in the window of the four-square lattice, the video stream of 480p can reach the clear standard without 1080 p. The consumed bandwidth of video streams with different resolutions is different, for example, 1080p requires 2Mbps, 720p requires 1Mbps, and 480p requires only 500 Kbps.
In the two video pushing schemes, the first interactive party only pushes one video stream (1080p), so that when the windows of other receiving parties are small, redundant bandwidth is wasted; the second method needs to push multiple channels of video, needs the sending end to have the capability of editing multiple channels of video, or needs the server to have the capability of transcoding (one 1080p video is transcoded into 720p and 480p videos), needs to consume extra CPU, and may introduce video delay; in addition, the multi-channel video is pushed, so that higher requirements are imposed on the uplink bandwidth of a sending end, and more bandwidth is consumed.
Disclosure of Invention
In view of the above, there is a need to provide an interactive bandwidth optimization method, apparatus, computer device and storage medium that significantly reduce bandwidth consumption.
An interactive bandwidth optimization method, the method comprising:
performing initialization configuration according to preset video coding parameters, wherein the video coding parameters comprise resolution, code rate or frame rate;
when receiving a plurality of access requests of a slave terminal, extracting request video coding parameters carried in each access request to obtain a request video coding parameter set;
according to the request video coding parameter set, negotiating and determining the uniform video coding parameters of each slave terminal;
and pushing the unified video coding parameters to each slave terminal.
In one embodiment, negotiating and determining the unified video coding parameters for each slave terminal according to the requested set of video coding parameters comprises:
and selecting the largest video coding parameter in the request video coding parameter set as the unified video coding parameter of each slave terminal.
In one embodiment, the interactive bandwidth optimization method further includes:
extracting and caching video coding parameters which are carried in the access request and require for the interactive terminal;
when an interactive terminal determining message is received, acquiring video coding parameters required by the interactive terminal and reading the video coding parameters required by the interactive terminal corresponding to each slave terminal to obtain a video coding parameter set required by the interactive terminal;
negotiating and determining video coding parameters of the interactive terminal according to a video coding parameter set required by the interactive terminal;
and pushing the video coding parameters of the interactive terminal to the interactive terminal, and returning the video stream by the interactive terminal according to the video coding parameters of the interactive terminal.
In one embodiment, negotiating and determining the video encoding parameters of the interactive terminal according to the set of video encoding parameters required for the interactive terminal includes:
and selecting the largest video coding parameter in the video coding parameter set required by the interactive terminal as the video coding parameter of the interactive terminal.
In one embodiment, the interactive bandwidth optimization method further includes:
acquiring a video coding parameter change request, and extracting an interactive terminal identifier carried in the video coding parameter change request and required changed video coding parameters;
acquiring a video coding parameter corresponding to the interactive terminal at present;
and when the current corresponding video coding parameter of the interactive terminal is smaller than the required changed video coding parameter, pushing the video stream to the interactive terminal according to the required changed video coding parameter.
In one embodiment, the interactive bandwidth optimization method further includes:
when video coding parameter change requests aiming at the same interactive terminal are received at the same time, required changed video coding parameters carried in each video coding parameter change request are extracted to obtain a required changed video coding parameter set;
selecting the largest video coding parameter in the required changed video coding parameter set as a target video coding parameter required after the change;
and when the current corresponding video coding parameter of the interactive terminal is smaller than the target video coding parameter, pushing the video stream to the interactive terminal according to the target video coding parameter.
In one embodiment, the interactive bandwidth optimization method further includes:
receiving a terminal exit message;
identifying the quit slave terminal according to the terminal quit message;
deleting the request video coding parameters corresponding to the quit slave terminal in the request video coding parameter set to obtain an updated request video coding parameter set;
and renegotiating and determining the unified video coding parameters of each slave terminal according to the updated request video coding parameter set.
An interactive bandwidth optimization device, the device comprising:
the device comprises an initialization module, a video coding module and a video decoding module, wherein the initialization module is used for carrying out initialization configuration according to preset video coding parameters, and the video coding parameters comprise resolution, code rate or frame rate;
the extraction module is used for extracting the request video coding parameters carried in each access request to obtain a request video coding parameter set when receiving the access requests of a plurality of slave terminals;
the negotiation module is used for negotiating and determining the unified video coding parameters of each slave terminal according to the request video coding parameter set;
and the pushing module is used for pushing the video stream to each slave terminal according to the unified video coding parameters.
A computer device comprising a memory and a processor, the memory storing a computer program, the processor implementing the following steps when executing the computer program:
performing initialization configuration according to preset video coding parameters, wherein the video coding parameters comprise resolution, code rate or frame rate;
when receiving a plurality of access requests of a slave terminal, extracting request video coding parameters carried in each access request to obtain a request video coding parameter set;
according to the request video coding parameter set, negotiating and determining the uniform video coding parameters of each slave terminal;
and pushing the video stream to each slave terminal according to the unified video coding parameters.
A computer-readable storage medium, on which a computer program is stored which, when executed by a processor, carries out the steps of:
performing initialization configuration according to preset video coding parameters, wherein the video coding parameters comprise resolution, code rate or frame rate;
when receiving a plurality of access requests of a slave terminal, extracting request video coding parameters carried in each access request to obtain a request video coding parameter set;
according to the request video coding parameter set, negotiating and determining the uniform video coding parameters of each slave terminal;
and pushing the video stream to each slave terminal according to the unified video coding parameters.
According to the interactive bandwidth optimization method, the interactive bandwidth optimization device, the computer equipment and the storage medium, a master terminal in an interactive terminal is accessed into an interactive platform, initial configuration is carried out according to preset video coding parameters, when a slave terminal is accessed subsequently, requested video coding parameters carried in each slave terminal access request are extracted, the video coding parameters (resolution, code rate or frame rate) required by each slave terminal are determined, the video coding parameters required by each terminal are negotiated uniformly, and video streams are pushed to each slave terminal according to the negotiated video coding parameters. In the whole process, the video coding parameters of all the slave terminals are determined in a unified negotiation mode, the video parameters are not directly performed by adopting the maximum video coding parameters, the requirements of the video coding parameters of the interactive terminals are met, and meanwhile interactive bandwidth consumption for transmitting video data between the terminals in the interactive process is remarkably reduced.
Drawings
FIG. 1 is a diagram of an exemplary implementation of a method for interactive bandwidth optimization;
FIG. 2 is a flow diagram illustrating a method for interactive bandwidth optimization in one embodiment;
FIG. 3 is a flowchart illustrating further steps in the interactive bandwidth optimization method according to one embodiment;
FIG. 4 is a flowchart illustrating steps of a method for interactive bandwidth optimization according to yet another embodiment;
FIG. 5 is a flowchart illustrating steps of the interactive bandwidth optimization method further comprising in another embodiment;
FIG. 6 is a timing diagram illustrating an interactive bandwidth optimization method in an application example;
FIG. 7 is a block diagram of an interactive bandwidth optimization apparatus in one embodiment;
FIG. 8 is a diagram illustrating an internal structure of a computer device according to an embodiment.
Detailed Description
In order to make the objects, technical solutions and advantages of the present application more apparent, the present application is described in further detail below with reference to the accompanying drawings and embodiments. It should be understood that the specific embodiments described herein are merely illustrative of the present application and are not intended to limit the present application.
The interactive bandwidth optimization method can be applied to a terminal interactive scene, interaction is carried out between the master terminal and the plurality of slave terminals in the terminal interactive scene, and interactive video data are transmitted through the established interactive bandwidth in the interactive process. More specifically, the interactive bandwidth optimization method provided by the application can be applied to an online teaching scene. Wherein, the on-line teaching scene includes a teaching end 102 (master terminal) and a listening end 104 (slave terminal), the listening end 104 can also become a speaking end when necessary, for example, when a certain speaker needs to speak or the teaching end designates a classmate to speak, the corresponding listening end becomes a speaking end, the teaching end 102 communicates with multiple listening ends through network, the teaching end 102 is accessed to the on-line teaching network platform when power is on, the teaching end 102 can also configure the code rate and frame rate according to the preset resolution (here, the resolution is configured as an indication, it can be understood that the code rate and frame rate can be configured, the following actions are similar), the teaching end displays interactive pictures on its display interface after completing the self resolution configuration, then, the listening end 104 is accessed to the on-line teaching network platform, each time the listening end 104 is accessed, the lecture attending terminal 104 informs the lecture attending terminal of the requested resolution in the access request, when a plurality of lecture attending terminals 104 are accessed, the lecture attending terminal 102 extracts the requested resolution carried in each access request to obtain a requested resolution set; according to the requested resolution set, the lecture end 102 negotiates the uniform resolution of each lecture end, and then pushes a video stream to each lecture end 104 according to the negotiated uniform resolution; further, the listening end 104 can know the required resolution of the lecture end 102 during the interaction process with the lecture end 102, and can send a video stream to the lecture end 102 according to the required resolution of the lecture end 102. The interactive bandwidth optimization method can also be applied to scenes such as online conferences, online videos and the like, and the implementation process is similar to that described above and is not repeated.
In an embodiment, as shown in fig. 2, an interactive bandwidth optimization method is provided, which is described by taking the method as an example applied to the main terminal in fig. 1, and is described by taking a lecture end as an application example in an auxiliary manner, so as to fully describe the technical solution and the effect thereof in the present application. The interactive bandwidth optimization method comprises the following steps:
s100: and carrying out initialization configuration according to preset video coding parameters, wherein the video coding parameters comprise resolution, code rate or frame rate.
The method comprises the steps that a master terminal is accessed to an interactive platform to carry out self initialization configuration, wherein the interactive platform is a platform which is interactively built for the master terminal and a slave terminal, and can be understood as a virtual platform which provides data collection and interaction for the master terminal and the slave terminal. Taking the main terminal as a teaching end as an example, the interactive platform is an online teaching platform, the teaching end is accessed into a room of the online teaching platform, and the teaching ends (slave terminals) which need to listen to the current course are accessed into the room. The preset video coding parameters are data which are configured in advance for the main terminal, and the main terminal can automatically read the preset data when being accessed into the interactive platform, complete the initialization configuration of the main terminal and wait for the access of the follow-up slave terminal. Specifically, the video encoding parameters may include parameters related to the format of the video stream and the size of the video stream, such as resolution, rate, and frame rate. Taking the resolution as an example, the higher the resolution, the clearer the display image is after the enlarged display, and the larger the interaction bandwidth consumed correspondingly. In practical application, a lecture end joins a room, performs self initial configuration according to a preset resolution, pushes a video stream according to the preset resolution, and waits for a subsequent lecture end to join the room.
S200: when receiving a plurality of access requests of the slave terminal, extracting the request video coding parameters carried in each access request to obtain a request video coding parameter set.
And after the main terminal completes self initialization configuration, pushing the video stream according to the preset video coding parameters and waiting for the access of the slave terminal. When a terminal sends an access request to prepare for access, a master terminal receives the access request of a slave terminal, the access request carries request video coding parameters, namely the request video coding parameters which are pushed to a video stream of the master terminal by the slave terminal are carried, when the master terminal is accessed by a single slave terminal, the requirement of the master terminal on the request coding video parameters can be directly met, when a plurality of slave terminals are accessed, the unified video coding parameters which are pushed to the plurality of slave terminals are determined by comprehensive negotiation, therefore, when the access requests of the plurality of terminals are received, the request video coding parameters carried in the access requests are extracted to obtain a request video coding parameter set, and the negotiation is carried out based on the data in the next step to determine the unified video coding parameters of each slave terminal. It should be noted that, the above-mentioned receiving a plurality of access requests from the slave terminals may be a plurality of access requests accumulated in history or a plurality of access requests simultaneously received when the slave terminals start accessing, and both cases satisfy the trigger condition of S400.
Taking the teaching end as an example, the teaching end is accessed into a room to finish the process, the teaching end receives an access request A of the teaching end 1, the access request A carries a resolution a which is requested by the teaching end 1 to be pushed to a video stream of the teaching end, the teaching end allows the teaching end 1 to be accessed, the teaching end 1 is accessed into the room where the teaching end is located, and the teaching end pushes the video stream to the teaching end 1 according to the resolution a; the method comprises the following steps that a follow-up lecture listening end 2 requests to access a room, the lecture listening end 2 sends an access request B to a lecture giving end, the lecture giving end receives the access request B of the lecture listening end 2, the access request B carries a resolution B which is requested by the lecture listening end 2 to be pushed to a video stream of the lecture listening end, the lecture giving end finds that at least 2 (a plurality of) lecture listening ends are accessed to need to be subjected to resolution negotiation, the lecture giving end extracts a resolution a in the access request A and B in the access request B, a requested resolution set { resolution a, resolution B } is constructed to obtain a uniform resolution in follow-up negotiation, then the lecture listening end 2 is allowed to access, and the video stream is pushed to the lecture listening end 1 and the lecture listening end 2 according to the uniform. It can be understood that when there are more listening ends, the processing procedure is similar to the above, and will not be described herein again.
S300: and negotiating and determining the uniform video coding parameters of each slave terminal according to the request video coding parameter set.
And the master terminal negotiates and determines the uniform video coding parameters of each slave terminal according to the request video coding parameter set. The "unified" here means that the video streams subsequently pushed to the respective slave terminals are all pushed according to the unified video encoding parameters. Specifically, the negotiation takes the maximum value as a criterion, and selects the largest video coding parameter in the video coding parameter set as the unified video coding parameter of each slave terminal. Taking the resolution as an example, the maximum resolution requested by a plurality of slave terminals is selected as the uniform resolution of each slave terminal, and then the video stream is pushed to each slave terminal based on the uniform resolution. Continuing with the above application example as an example, after obtaining the requested resolution set { resolution a, resolution b }, selecting a larger resolution from the requested resolution set as a uniform resolution of the lecture attending terminal 1 and the lecture attending terminal 2, for example, the requested resolution set is {1080P, 520P }, selecting a maximum value of 1080P, and pushing the video stream to the lecture attending terminal 1 and the lecture attending terminal 2 according to the resolution of 1080P in the subsequent processing.
S400: and pushing the video stream to each slave terminal according to the unified video coding parameters.
And pushing the video stream to each slave terminal by the master terminal according to the unified video coding parameters determined by negotiation in S300.
According to the interactive bandwidth optimization method, a master terminal in an interactive terminal is accessed into an interactive platform, initial configuration is carried out according to preset video coding parameters, when a slave terminal is subsequently accessed, requested video coding parameters carried in each slave terminal access request are extracted, the video coding parameters (resolution, code rate or frame rate) required by each slave terminal are determined, the video coding parameters required by each terminal are negotiated in a unified mode, and video streams are pushed to each slave terminal according to the negotiated video coding parameters. In the whole process, the video coding parameters of all the slave terminals are determined in a unified negotiation mode, the video parameters are not directly performed by adopting the maximum video coding parameters, the requirements of the video coding parameters of the interactive terminals are met, and meanwhile interactive bandwidth consumption for transmitting video data between the terminals in the interactive process is remarkably reduced.
As shown in fig. 3, in one embodiment, the interactive bandwidth optimization method further includes:
s520: and extracting and caching the video coding parameters which are carried in the access request and require for the interactive terminal.
S540: when the interactive terminal determining message is received, acquiring the video coding parameters required by the interactive terminal, reading the video coding parameters required by the interactive terminal corresponding to each slave terminal, and acquiring the video coding parameter set required by the interactive terminal.
S560: and negotiating to determine the video coding parameters of the interactive terminal according to the video coding parameter set required by the interactive terminal.
S580: and pushing the video coding parameters of the interactive terminal to the interactive terminal, and returning the video stream by the interactive terminal according to the video coding parameters of the interactive terminal.
Under certain specific scenes, the master terminal can designate a certain slave terminal as an interactive terminal for interaction. For example, a master terminal designates a certain slave terminal as a speaking end, and if the master terminal designates a certain slave terminal as a presentation end, in this case, the interactive terminal will be prominently displayed (generally, enlarged display) on the display interface of the master terminal/other slave terminals, and if the video encoding parameters returned by the interactive terminal are not adjusted, the defect of unreasonable display or wasted interactive bandwidth will be obviously caused. Therefore, in this embodiment, a mechanism for adjusting video encoding parameters of an interactive terminal is introduced, and video encoding parameters of a video stream required to be returned by the interactive terminal are adjusted for a specific interactive terminal, so as to meet the requirements of actual application scenes.
In the early data preparation stage, when the master terminal receives an access request each time, the master terminal extracts video coding parameters requested by the slave terminal and also extracts video coding parameters requested by the slave terminal to the interactive terminal, and buffers the data. When a certain slave terminal is appointed to become an interactive terminal (for example, a user operates on a master terminal and clicks an operation interface to select the slave terminal 1 as a speaking end, at the moment, the slave terminal 1 is an interactive terminal), the master terminal obtains video coding parameters required by the master terminal to the speaking end and video coding parameters required by each slave terminal to the speaking end to form a video coding parameter set required by the speaking end, negotiates about the video coding parameters of the speaking end based on the set, sends the video coding parameters of the interactive terminal to the speaking end, and the speaking end switches the video coding parameters to be sent back to the master terminal and other slave terminals (in a scene supporting direct interaction between the slave terminals) corresponding to video streams. Optionally, in the above negotiation process, the largest video coding parameter may also be selected as the speaking end video coding parameter.
To explain the data processing procedure of the above embodiment in further detail, the description is continued by taking the lecture end, the lecture end 1 and the lecture end 2, and the video encoding parameters as an example of the resolution. When receiving an access request A sent by a lecture listening end 1 and an access request B sent by a lecture listening end 2, a lecture giving end extracts a request resolution a carried in the access request A and a resolution x required by the lecture listening end 1 for a speaking end; extracting a request resolution B carried in the access request B and a resolution y required by the lecture listening end 2 for the speaking end; caching the extracted data into a cache space of a teaching end, and recording the data in a form of a list; when a lecturer operates at a lecture end and clicks and selects the lecture receiving end 1 as a speaking end, the lecture end reads the resolution z required by the lecture receiving end according to preset data, inquires the resolution y required by the lecture receiving end 2 for the speaking end in the previously cached data, obtains the resolution set required for the speaking end as { y, z }, selects a larger value (assuming that z is larger), and informs the speaking end (the lecture receiving end 1) of subsequently returning a video stream to the lecture receiving end and the lecture receiving end 2 of returning the video stream with the z resolution.
As shown in fig. 4, in one embodiment, the interactive bandwidth optimization method further includes:
s620: and acquiring a video coding parameter change request, and extracting an interactive terminal identifier carried in the video coding parameter change request and the required changed video coding parameters.
S640: and acquiring a video coding parameter corresponding to the interactive terminal at present.
S660: and when the current corresponding video coding parameter of the interactive terminal is smaller than the required changed video coding parameter, pushing the video stream to the interactive terminal according to the required changed video coding parameter.
When a user needs to change the video coding parameters of the slave terminal, the master terminal acquires a video coding parameter change request, extracts the slave terminal identification (interactive terminal identification) needing to be changed and the required changed video coding parameters carried in the video coding parameter change request, acquires the current video coding parameters of the mutual aid terminal, judges the sizes of the video coding parameters and the video coding parameters, adjusts the video coding parameters pushed to the video stream of the interactive terminal if the current video coding parameters are smaller than the required changed video coding parameters, and pushes the video stream to the interactive terminal based on the required changed video coding parameters.
To explain the data processing procedure in this embodiment in detail, the lecture end 1, and the lecture end 2 are continuously adopted, and the video encoding parameters are described by taking the resolution as an example. The lecture attending terminal 2 requests the lecture attending terminal 1 to change into full-screen image quality, namely requests the lecture attending terminal 1 to change into full-screen image quality, and the lecture attending terminal 1 needs a video stream with higher resolution under the full-screen image quality; the lecture end acquires a resolution adjustment request sent by the lecture end 2 to the lecture end 1, extracts the carried interactive terminal identifier as the lecture end 1 and requests that the resolution after change is the corresponding resolution (1080P) under the full-screen image quality, the lecture end acquires that the resolution of the video stream currently pushed to the lecture end 1 is 504P, the lecture end finds that the resolution 504P corresponding to the current video stream of the lecture end 1 is smaller than the resolution 1080P corresponding to the full-screen image quality required by the lecture end 2 for the lecture end 1, so the lecture end decides to adjust the resolution of the video stream pushed to the lecture end 1, the video stream with the resolution of 1080P is sent to the lecture end 1, and the lecture end can also control the lecture end 1 to be switched to the full-screen image quality, and the lecture end 1 displays the full-screen image quality.
In one embodiment, the interactive bandwidth optimization method further includes:
when video coding parameter change requests aiming at the same interactive terminal are received at the same time, required changed video coding parameters carried in each video coding parameter change request are extracted to obtain a required changed video coding parameter set; selecting the largest video coding parameter in the required changed video coding parameter set as a target video coding parameter required after the change; and when the current corresponding video coding parameter of the interactive terminal is smaller than the target video coding parameter, pushing the video stream to the interactive terminal according to the target video coding parameter.
In some scenes, a plurality of slave terminals may require the same interactive terminal to change the video coding parameters, the change requests are uploaded to the master terminal, and the master terminal extracts the required changed video coding parameters carried in the requests to obtain a required changed video coding parameter set. The video coding parameter change request is mainly generated when some slave terminals require the interactive terminal to be switched to full-screen image quality or medium-screen image quality, for example, when A, B, C three slave terminals simultaneously require the slave terminal D to be changed from small-screen image quality to medium-screen image quality, A, B, C three slave terminals send video coding parameter change requests to the lecture end. The main terminal selects the largest video coding parameter from the requests as a final requirement, if the current video coding parameter of the interactive terminal is found to be smaller than the final requirement, for example, the final requirement is that the slave terminal D is changed into full-screen image quality, the slave terminal D is found to be in middle-screen image quality (that is, the main terminal pushes the video stream according to the video coding parameter corresponding to the middle-screen image quality), and the main terminal pushes the video stream to the slave terminal D according to the full-screen image quality standard.
To explain the data processing procedure in this embodiment in detail, the teaching end, the class-attending end 1, the class-attending end 2, the class-attending end 3 and the class-attending end 4 are continuously adopted, and the video encoding parameters are described by taking the resolution as an example. At a certain time point, the lecture attending terminal 1, the lecture attending terminal 2 and the lecture attending terminal 3 simultaneously request the lecture attending terminal 4 to change to display image quality, the lecture attending terminal simultaneously receives the resolution change request of the lecture attending terminal 1, the lecture attending terminal 2 and the lecture attending terminal 3 to the lecture attending terminal 4, the interactive terminal identifier carried in the extraction request is 4, the resolution required to be changed is respectively {540P, 540P and 1080P }, the maximum value, namely 1080P, is selected as a target resolution, the lecture attending terminal acquires that the resolution of the video stream corresponding to the lecture attending terminal 4 is 540P, then the video stream is pushed to the lecture attending terminal 4 according to 1080P, and the lecture attending terminal 4 can be informed to switch to a full-screen mode, so that the lecture attending terminal 4 displays a full-screen.
As shown in fig. 5, in one embodiment, the interactive bandwidth optimization method further includes:
s720: and receiving a terminal exit message.
S740: and identifying the quit slave terminal according to the terminal quit message.
S760: and deleting the request video coding parameters corresponding to the quit slave terminal in the request video coding parameter set to obtain an updated request video coding parameter set.
S780: and renegotiating and determining the unified video coding parameters of each slave terminal according to the updated request video coding parameter set.
When a slave terminal needs to quit, the slave terminal sends a terminal quit message to a master terminal, the master terminal identifies the slave terminal which needs to quit at present, deletes a request video coding parameter corresponding to the quit slave terminal from a cached request video coding parameter set, deletes and releases the request (request) to obtain an updated request video coding parameter set, and renegotiates each sufficient but uniform video coding parameter based on the updated request video coding parameter set so as to push based on the re-determined uniform video coding parameter when a video stream is pushed subsequently.
To explain the data processing procedure in this embodiment in detail, the lecture end 1, the lecture end 2, and the lecture end 3 are continuously adopted, and the video encoding parameters are described by taking the resolution as an example. The teaching end receives the terminal quit message, identifies that the listening end 3 quits according to the terminal quit message, queries the teaching end to obtain that the corresponding request resolutions of the listening end 1, the listening end 2 and the listening end 3 are {540P, 540P, 1080P } respectively before the listening end 3 quits, deletes the resolution {1080P } corresponding to the listening end 3 in the {540P, 540P, 1080P } set by the teaching end to obtain an updated set of {540P, 540P }, determines the uniform resolution to be 540P based on the set, and then the teaching end switches the resolution of the video stream pushed to the listening end from 1080P to 540P.
To further explain the implementation process of the interactive bandwidth optimization method in the present application in detail, the data processing process of the Teacher, the lecture listening terminal S1, and the lecture listening terminal S2 will be described below with reference to an online lecture application scene as an example and with reference to a scene timing diagram fig. 6. In the application scenario, the interactive bandwidth optimization method comprises the following steps:
1. the teaching end Teacher is added into the room, the picture resolution of the teaching end and the speaking end required by the teaching end is initialized, and the video is pushed according to the default set resolution (the video can be set by the teaching end such as 1080p, or the video with the required resolution can be pushed under the condition of a preview window);
2. the lecture listening end S1 is added into the room;
3. the lecture listening end S1 negotiates with the lecture end about the size, i.e. tells the lecture end about the resolution of the playing pictures of the lecture end, the lecture end and the speaking end; the teaching end caches the request of the lecture listening end S1; the lecture end informs the lecture end S1 of the resolution of the video stream fed back to the lecture end according to the requirement, if the lecture end S1 small picture (such as squared figure) is required to be displayed, the lecture end S1 is informed of pushing the video stream (120P) with the resolution corresponding to the small picture
4. The lecture attending end S2 joins the room;
5. the lecture listening end S2 negotiates with the lecture end to transfer the resolution of the video stream, the process of the step 3 is adopted, the lecture listening end S2 tells the lecture end that the self, lecture end and speaking end have required playing picture resolution, the lecture end caches the lecture listening end S2 request, a request resolution set {120P, 540P } is obtained according to the cached lecture listening end S1 request and lecture listening end S2 request, a larger value 540P is selected as the video stream resolution to be pushed to the lecture listening end S1 and lecture listening end S2, the lecture end pushes the 540P video stream to the lecture listening end S1 and lecture listening end S2, and the lecture listening end S1 and lecture listening end S2 return the 120P video stream to the lecture end based on the lecture end requirement;
6. at a certain moment, the lecture end appoints S1 to speak; deciding the highest resolution according to the resolution requirements of the lecture end and the lecture listening end S2 on the speaking end, if the lecture end requires that the speaking end is a middle picture (corresponding to 540P resolution) and S2 requires that the speaking end is a small picture (corresponding to 120P resolution), the two sides have the highest right and are middle pictures, and the lecture end sends an image quality switching instruction to the lecture listening end S1 to request the lecture listening end S1 to switch the image quality to be the middle picture for returning;
7. the lecture attending terminal S1 switches to the middle picture required by the lecture attending terminal, and the lecture attending terminal S1 returns video stream to the lecture attending terminal and the lecture attending terminal S2 by adopting 540P resolution;
8. at a certain moment, the lecture attending terminal S2 requests the lecture attending terminal to be S1 full screen, and sends S1 full screen picture request;
9. the lecture end decides, because the previous lesson listening end S1 is required to be a middle picture, the current lesson listening end S2 requires the lesson listening end S1 to be a full screen, and the image quality is higher, so that the decision that the lesson listening end S1 needs to push higher image quality, a request is sent to the lesson listening end S1, and the lesson listening end S1 is requested to return a video stream according to 1080P resolution;
10. the lecture attending end S1 switches to full screen image quality, and returns video stream to the lecture attending end and lecture attending end S2 through 1080P resolution;
11. the lecture attending end S2 exits the classroom, the lecture attending end deletes the lecture attending end S2 image quality requirement cache
12. Since the lecture listening end S2 exits the classroom, no one can request the lecture listening end S1 to push a full screen image, and only the lecture giving end requires S1 to be a medium image, so that the lecture listening end S1 only needs to push the medium image, sends a request to the lecture listening end S1, and requests the lecture listening end S1 to return a video stream according to the 540P resolution.
It should be understood that, although the steps in the flowcharts are shown in sequence as indicated by the arrows, the steps are not necessarily performed in sequence as indicated by the arrows. The steps are not performed in the exact order shown and described, and may be performed in other orders, unless explicitly stated otherwise. Moreover, at least a part of the steps in each of the flowcharts described above may include multiple steps or multiple stages, which are not necessarily performed at the same time, but may be performed at different times, and the order of performing the steps or stages is not necessarily sequential, but may be performed alternately or alternately with other steps or at least a part of the steps or stages in other steps.
As shown in fig. 7, the present application further provides an interactive bandwidth optimizing device, which includes:
the initialization module 100 is configured to perform initialization configuration according to preset video coding parameters, where the video coding parameters include resolution, code rate, or frame rate;
an extracting module 200, configured to extract, when receiving access requests of multiple slave terminals, request video coding parameters carried in each access request to obtain a request video coding parameter set;
a negotiation module 300, configured to negotiate and determine a unified video coding parameter of each slave terminal according to the requested video coding parameter set;
a pushing module 400, configured to push the video stream to each slave terminal according to the unified video coding parameter.
According to the interactive bandwidth optimization device, a master terminal in an interactive terminal is accessed into an interactive platform, initial configuration is carried out according to preset video coding parameters, when a slave terminal is accessed subsequently, requested video coding parameters carried in each slave terminal access request are extracted, video coding parameters (resolution, code rate or frame rate) required by each slave terminal are determined, video coding parameters required by each terminal are negotiated in a unified mode, and video streams are pushed to each slave terminal according to the negotiated video coding parameters. In the whole process, the video coding parameters of all the slave terminals are determined in a unified negotiation mode, the video parameters are not directly performed by adopting the maximum video coding parameters, the requirements of the video coding parameters of the interactive terminals are met, and meanwhile interactive bandwidth consumption for transmitting video data between the terminals in the interactive process is remarkably reduced.
In one embodiment, the negotiation module 600 is further configured to select the largest video coding parameter in the requested video coding parameter set as the unified video coding parameter of each slave terminal.
In one embodiment, the interactive bandwidth optimization device further includes a first optimization module, configured to extract video coding parameters, which are carried in the access request and are required for the interactive terminal, and cache the video coding parameters; when an interactive terminal determining message is received, acquiring video coding parameters required by the interactive terminal and reading the video coding parameters required by the interactive terminal corresponding to each slave terminal to obtain a video coding parameter set required by the interactive terminal; negotiating and determining video coding parameters of the interactive terminal according to a video coding parameter set required by the interactive terminal; and pushing the video coding parameters of the interactive terminal to the interactive terminal, and returning the video stream by the interactive terminal according to the video coding parameters of the interactive terminal.
In one embodiment, the first optimization module is further configured to select a largest video coding parameter in the set of video coding parameters required for the interactive terminal as the video coding parameter of the interactive terminal.
In one embodiment, the interactive bandwidth optimization device further includes a second optimization module, configured to obtain a video coding parameter change request, and extract an interactive terminal identifier carried in the video coding parameter change request and a required changed video coding parameter; acquiring a video coding parameter corresponding to the interactive terminal at present; and when the current corresponding video coding parameter of the interactive terminal is smaller than the required changed video coding parameter, pushing the video stream to the interactive terminal according to the required changed video coding parameter.
In one embodiment, the interactive bandwidth optimization device further includes a third optimization module, configured to, when video coding parameter change requests for the same interactive terminal are received at the same time, extract required changed video coding parameters carried in each video coding parameter change request, and obtain a required changed video coding parameter set; selecting the largest video coding parameter in the required changed video coding parameter set as a target video coding parameter required after the change; and when the current corresponding video coding parameter of the interactive terminal is smaller than the target video coding parameter, pushing the video stream to the interactive terminal according to the target video coding parameter.
In one embodiment, the interactive bandwidth optimization device further includes a cache clearing module, configured to receive a terminal exit message; identifying the quit slave terminal according to the terminal quit message; deleting the request video coding parameters corresponding to the quit slave terminal in the request video coding parameter set to obtain an updated request video coding parameter set; and renegotiating and determining the unified video coding parameters of each slave terminal according to the updated request video coding parameter set.
For the specific definition of the interactive bandwidth optimization device, reference may be made to the above definition of the interactive bandwidth optimization method, which is not described herein again. All or part of the modules in the interactive bandwidth optimization device can be realized by software, hardware and a combination thereof. The modules can be embedded in a hardware form or independent from a processor in the computer device, and can also be stored in a memory in the computer device in a software form, so that the processor can call and execute operations corresponding to the modules.
In one embodiment, a computer device is provided, which may be a server, and its internal structure diagram may be as shown in fig. 8. The computer device includes a processor, a memory, and a network interface connected by a system bus. Wherein the processor of the computer device is configured to provide computing and control capabilities. The memory of the computer device comprises a nonvolatile storage medium and an internal memory. The non-volatile storage medium stores an operating system, a computer program, and a database. The internal memory provides an environment for the operation of an operating system and computer programs in the non-volatile storage medium. The database of the computer equipment is used for storing data such as preset cache data or preset custom data. The network interface of the computer device is used for communicating with an external terminal through a network connection. The computer program is executed by a processor to implement an interactive bandwidth optimization method.
Those skilled in the art will appreciate that the architecture shown in fig. 8 is merely a block diagram of some of the structures associated with the disclosed aspects and is not intended to limit the computing devices to which the disclosed aspects apply, as particular computing devices may include more or less components than those shown, or may combine certain components, or have a different arrangement of components.
In one embodiment, a computer device is provided, comprising a memory and a processor, the memory having a computer program stored therein, the processor implementing the following steps when executing the computer program:
performing initialization configuration according to preset video coding parameters, wherein the video coding parameters comprise resolution, code rate or frame rate;
when receiving a plurality of access requests of a slave terminal, extracting request video coding parameters carried in each access request to obtain a request video coding parameter set;
according to the request video coding parameter set, negotiating and determining the uniform video coding parameters of each slave terminal;
and pushing the unified video coding parameters to each slave terminal.
In one embodiment, the processor, when executing the computer program, further performs the steps of:
and selecting the largest video coding parameter in the request video coding parameter set as the unified video coding parameter of each slave terminal.
In one embodiment, the processor, when executing the computer program, further performs the steps of:
extracting and caching video coding parameters which are carried in the access request and require for the interactive terminal; when an interactive terminal determining message is received, acquiring video coding parameters required by the interactive terminal and reading the video coding parameters required by the interactive terminal corresponding to each slave terminal to obtain a video coding parameter set required by the interactive terminal; negotiating and determining video coding parameters of the interactive terminal according to a video coding parameter set required by the interactive terminal; and pushing the video coding parameters of the interactive terminal to the interactive terminal, and returning the video stream by the interactive terminal according to the video coding parameters of the interactive terminal.
In one embodiment, the processor, when executing the computer program, further performs the steps of:
and selecting the largest video coding parameter in the video coding parameter set required by the interactive terminal as the video coding parameter of the interactive terminal.
In one embodiment, the processor, when executing the computer program, further performs the steps of:
acquiring a video coding parameter change request, and extracting an interactive terminal identifier carried in the video coding parameter change request and required changed video coding parameters; acquiring a video coding parameter corresponding to the interactive terminal at present; and when the current corresponding video coding parameter of the interactive terminal is smaller than the required changed video coding parameter, pushing the video stream to the interactive terminal according to the required changed video coding parameter.
In one embodiment, the processor, when executing the computer program, further performs the steps of:
when video coding parameter change requests aiming at the same interactive terminal are received at the same time, required changed video coding parameters carried in each video coding parameter change request are extracted to obtain a required changed video coding parameter set; selecting the largest video coding parameter in the required changed video coding parameter set as a target video coding parameter required after the change; and when the current corresponding video coding parameter of the interactive terminal is smaller than the target video coding parameter, pushing the video stream to the interactive terminal according to the target video coding parameter.
In one embodiment, the processor, when executing the computer program, further performs the steps of:
receiving a terminal exit message; identifying the quit slave terminal according to the terminal quit message; deleting the request video coding parameters corresponding to the quit slave terminal in the request video coding parameter set to obtain an updated request video coding parameter set; and renegotiating and determining the unified video coding parameters of each slave terminal according to the updated request video coding parameter set.
In one embodiment, a computer-readable storage medium is provided, having a computer program stored thereon, which when executed by a processor, performs the steps of:
performing initialization configuration according to preset video coding parameters, wherein the video coding parameters comprise resolution, code rate or frame rate;
when receiving a plurality of access requests of a slave terminal, extracting request video coding parameters carried in each access request to obtain a request video coding parameter set;
according to the request video coding parameter set, negotiating and determining the uniform video coding parameters of each slave terminal;
and pushing the unified video coding parameters to each slave terminal.
In one embodiment, the computer program when executed by the processor further performs the steps of:
and selecting the largest video coding parameter in the request video coding parameter set as the unified video coding parameter of each slave terminal.
In one embodiment, the computer program when executed by the processor further performs the steps of:
extracting and caching video coding parameters which are carried in the access request and require for the interactive terminal; when an interactive terminal determining message is received, acquiring video coding parameters required by the interactive terminal and reading the video coding parameters required by the interactive terminal corresponding to each slave terminal to obtain a video coding parameter set required by the interactive terminal; negotiating and determining video coding parameters of the interactive terminal according to a video coding parameter set required by the interactive terminal; and pushing the video coding parameters of the interactive terminal to the interactive terminal, and returning the video stream by the interactive terminal according to the video coding parameters of the interactive terminal.
In one embodiment, the computer program when executed by the processor further performs the steps of:
and selecting the largest video coding parameter in the video coding parameter set required by the interactive terminal as the video coding parameter of the interactive terminal.
In one embodiment, the computer program when executed by the processor further performs the steps of:
acquiring a video coding parameter change request, and extracting an interactive terminal identifier carried in the video coding parameter change request and required changed video coding parameters; acquiring a video coding parameter corresponding to the interactive terminal at present; and when the current corresponding video coding parameter of the interactive terminal is smaller than the required changed video coding parameter, pushing the video stream to the interactive terminal according to the required changed video coding parameter.
In one embodiment, the computer program when executed by the processor further performs the steps of:
when video coding parameter change requests aiming at the same interactive terminal are received at the same time, required changed video coding parameters carried in each video coding parameter change request are extracted to obtain a required changed video coding parameter set; selecting the largest video coding parameter in the required changed video coding parameter set as a target video coding parameter required after the change; and when the current corresponding video coding parameter of the interactive terminal is smaller than the target video coding parameter, pushing the video stream to the interactive terminal according to the target video coding parameter.
In one embodiment, the computer program when executed by the processor further performs the steps of:
receiving a terminal exit message; identifying the quit slave terminal according to the terminal quit message; deleting the request video coding parameters corresponding to the quit slave terminal in the request video coding parameter set to obtain an updated request video coding parameter set; and renegotiating and determining the unified video coding parameters of each slave terminal according to the updated request video coding parameter set.
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 hardware related to instructions of a computer program, which can be stored in a non-volatile computer-readable storage medium, and when executed, can include the processes of the embodiments of the methods described above. Any reference to memory, storage, database or other medium used in the embodiments provided herein can include at least one of non-volatile and volatile memory. Non-volatile Memory may include Read-Only Memory (ROM), magnetic tape, floppy disk, flash Memory, optical storage, or the like. Volatile Memory can include Random Access Memory (RAM) or external cache Memory. By way of illustration and not limitation, RAM can take many forms, such as Static Random Access Memory (SRAM) or Dynamic Random Access Memory (DRAM), among others.
The technical features of the above embodiments can be arbitrarily combined, and for the sake of brevity, all possible combinations of the technical features in the above embodiments are not described, but should be considered as the scope of the present specification as long as there is no contradiction between the combinations of the technical features.
The above examples only express several embodiments of the present application, and the description thereof is more specific and detailed, but not construed as limiting the scope of the invention. It should be noted that, for a person skilled in the art, several variations and modifications can be made without departing from the concept of the present application, which falls within the scope of protection of the present application. Therefore, the protection scope of the present patent shall be subject to the appended claims.

Claims (10)

1. A method for interactive bandwidth optimization, the method comprising:
performing initialization configuration according to preset video coding parameters, wherein the video coding parameters comprise resolution, code rate or frame rate;
when receiving a plurality of access requests of a slave terminal, extracting request video coding parameters carried in each access request to obtain a request video coding parameter set;
negotiating and determining the unified video coding parameters of each slave terminal according to the request video coding parameter set;
and pushing the video stream to each slave terminal according to the unified video coding parameters.
2. The method of claim 1, wherein negotiating the determination of the unified video coding parameters for each of the slave terminals based on the set of requested video coding parameters comprises:
and selecting the largest video coding parameter in the request video coding parameter set as the uniform video coding parameter of each slave terminal.
3. The method of claim 1, further comprising:
extracting and caching video coding parameters which are carried in the access request and require for the interactive terminal;
when an interactive terminal determining message is received, acquiring video coding parameters required by the interactive terminal and reading the video coding parameters required by the interactive terminal and corresponding to each slave terminal to obtain a video coding parameter set required by the interactive terminal;
negotiating to determine the video coding parameters of the interactive terminal according to the video coding parameter set required by the interactive terminal;
and pushing the video coding parameters of the interactive terminal to the interactive terminal, and returning a video stream by the interactive terminal according to the video coding parameters of the interactive terminal.
4. The method of claim 3, wherein negotiating the interactive terminal video coding parameters according to the set of video coding parameters required for the interactive terminal comprises:
and selecting the largest video coding parameter in the video coding parameter set required by the interactive terminal as the video coding parameter of the interactive terminal.
5. The method of claim 1, further comprising:
acquiring a video coding parameter change request, and extracting an interactive terminal identifier carried in the video coding parameter change request and required changed video coding parameters;
acquiring a video coding parameter corresponding to the interactive terminal at present;
and when the current corresponding video coding parameter of the interactive terminal is smaller than the required changed video coding parameter, pushing a video stream to the interactive terminal according to the required changed video coding parameter.
6. The method of claim 5, further comprising:
when video coding parameter change requests aiming at the same interactive terminal are received at the same time, required changed video coding parameters carried in each video coding parameter change request are extracted to obtain a required changed video coding parameter set;
selecting the largest video coding parameter in the required modified video coding parameter set as a target video coding parameter required after modification;
and when the current corresponding video coding parameter of the interactive terminal is smaller than the target video coding parameter, pushing a video stream to the interactive terminal according to the target video coding parameter.
7. The method of claim 1, further comprising:
receiving a terminal exit message;
identifying the quit slave terminal according to the terminal quit message;
deleting the request video coding parameter corresponding to the quit slave terminal from the request video coding parameter set to obtain an updated request video coding parameter set;
and renegotiating and determining the unified video coding parameters of the slave terminals according to the updated request video coding parameter set.
8. An interactive bandwidth optimization device, the device comprising:
the device comprises an initialization module, a video coding module and a video decoding module, wherein the initialization module is used for carrying out initialization configuration according to preset video coding parameters, and the video coding parameters comprise resolution, code rate or frame rate;
the extraction module is used for extracting the request video coding parameters carried in each access request to obtain a request video coding parameter set when receiving the access requests of a plurality of slave terminals;
the negotiation module is used for negotiating and determining the uniform video coding parameters of each slave terminal according to the request video coding parameter set;
and the pushing module is used for pushing the video stream to each slave terminal according to the unified video coding parameter.
9. A computer device comprising a memory and a processor, the memory storing a computer program, characterized in that the processor, when executing the computer program, implements the steps of the method of any of claims 1 to 7.
10. A computer-readable storage medium, on which a computer program is stored, which, when being executed by a processor, carries out the steps of the method of any one of claims 1 to 7.
CN202011530361.9A 2020-12-22 2020-12-22 Interactive bandwidth optimization method, device, computer equipment and storage medium Active CN112738565B (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202011530361.9A CN112738565B (en) 2020-12-22 2020-12-22 Interactive bandwidth optimization method, device, computer equipment and storage medium

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202011530361.9A CN112738565B (en) 2020-12-22 2020-12-22 Interactive bandwidth optimization method, device, computer equipment and storage medium

Publications (2)

Publication Number Publication Date
CN112738565A true CN112738565A (en) 2021-04-30
CN112738565B CN112738565B (en) 2023-08-18

Family

ID=75605731

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202011530361.9A Active CN112738565B (en) 2020-12-22 2020-12-22 Interactive bandwidth optimization method, device, computer equipment and storage medium

Country Status (1)

Country Link
CN (1) CN112738565B (en)

Citations (12)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20050108765A1 (en) * 2003-11-14 2005-05-19 Antonio Barletta Video signal playback apparatus and method
CN101588252A (en) * 2008-05-23 2009-11-25 华为技术有限公司 Control method and control device of multipoint conference
CN103092552A (en) * 2013-01-18 2013-05-08 中兴通讯股份有限公司 Method and system for achieving multi-screen display
CN103702061A (en) * 2013-12-23 2014-04-02 上海网达软件股份有限公司 Automatic adjustment method of resolution of video call of intelligent terminal
CN108206923A (en) * 2016-12-16 2018-06-26 展讯通信(上海)有限公司 Implementation method, device and the mostly logical terminal of multi-channel video call
CN109831637A (en) * 2017-11-23 2019-05-31 中兴通讯股份有限公司 Data transmission method, server and system in a kind of video conference
CN110381340A (en) * 2019-06-10 2019-10-25 广州虎牙信息科技有限公司 Video file processing system
CN110418197A (en) * 2018-05-11 2019-11-05 腾讯科技(深圳)有限公司 A kind of video transcoding method, device and computer readable storage medium
CN110536176A (en) * 2019-07-31 2019-12-03 深圳银澎云计算有限公司 A kind of video resolution method of adjustment, electronic equipment and storage medium
CN111050108A (en) * 2019-12-19 2020-04-21 维沃移动通信有限公司 Method and device for realizing multi-channel video call and electronic equipment
CN111435589A (en) * 2019-06-21 2020-07-21 杭州海康威视数字技术股份有限公司 Target display method and device and target display system
CN112104904A (en) * 2019-06-17 2020-12-18 北京我声我视科技有限公司 Method and system for synchronously watching video and realizing real-time interaction by multiple users

Patent Citations (12)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20050108765A1 (en) * 2003-11-14 2005-05-19 Antonio Barletta Video signal playback apparatus and method
CN101588252A (en) * 2008-05-23 2009-11-25 华为技术有限公司 Control method and control device of multipoint conference
CN103092552A (en) * 2013-01-18 2013-05-08 中兴通讯股份有限公司 Method and system for achieving multi-screen display
CN103702061A (en) * 2013-12-23 2014-04-02 上海网达软件股份有限公司 Automatic adjustment method of resolution of video call of intelligent terminal
CN108206923A (en) * 2016-12-16 2018-06-26 展讯通信(上海)有限公司 Implementation method, device and the mostly logical terminal of multi-channel video call
CN109831637A (en) * 2017-11-23 2019-05-31 中兴通讯股份有限公司 Data transmission method, server and system in a kind of video conference
CN110418197A (en) * 2018-05-11 2019-11-05 腾讯科技(深圳)有限公司 A kind of video transcoding method, device and computer readable storage medium
CN110381340A (en) * 2019-06-10 2019-10-25 广州虎牙信息科技有限公司 Video file processing system
CN112104904A (en) * 2019-06-17 2020-12-18 北京我声我视科技有限公司 Method and system for synchronously watching video and realizing real-time interaction by multiple users
CN111435589A (en) * 2019-06-21 2020-07-21 杭州海康威视数字技术股份有限公司 Target display method and device and target display system
CN110536176A (en) * 2019-07-31 2019-12-03 深圳银澎云计算有限公司 A kind of video resolution method of adjustment, electronic equipment and storage medium
CN111050108A (en) * 2019-12-19 2020-04-21 维沃移动通信有限公司 Method and device for realizing multi-channel video call and electronic equipment

Non-Patent Citations (2)

* Cited by examiner, † Cited by third party
Title
张铮凯等: ""融合视频通信中提升视频服务质量的终端关键技术研究"", 电信科学 *
罗进: ""多功能视频会议系统设计与实现"", 中国优秀硕士学位论文全文数据库 *

Also Published As

Publication number Publication date
CN112738565B (en) 2023-08-18

Similar Documents

Publication Publication Date Title
US10999344B1 (en) Dynamic video resolution and quality for improved video conferencing
US11120677B2 (en) Transcoding mixing and distribution system and method for a video security system
JP5326234B2 (en) Image transmitting apparatus, image transmitting method, and image transmitting system
EP3562163B1 (en) Audio-video synthesis method and system
EP0934660B1 (en) Method and apparatus for masking the effects of latency in an information distribution system
US6614465B2 (en) Method and apparatus for controlling a remote video camera in a video conferencing system
US7710450B2 (en) System and method for dynamic control of image capture in a video conference system
EP2676432B1 (en) Remote controlled studio camera system
CN101640784A (en) Device and method for controlling multi-image compounding in video conference system
US20220329883A1 (en) Combining Video Streams in Composite Video Stream with Metadata
EP3748983B1 (en) Video playback method, terminal apparatus, and storage medium
WO2017080175A1 (en) Multi-camera used video player, playing system and playing method
KR20150029461A (en) Method of synchronizing tiled image in a streaming service providing system of panoramic image
JP3976864B2 (en) Video server, control method thereof, and storage medium
CN115209189B (en) Video stream transmission method, system, server and storage medium
CN112738565A (en) Interactive bandwidth optimization method and device, computer equipment and storage medium
CN113141352B (en) Multimedia data transmission method and device, computer equipment and storage medium
WO2021093882A1 (en) Video meeting method, meeting terminal, server, and storage medium
US10904590B2 (en) Method and system for real time switching of multimedia content
CN112584084B (en) Video playing method and device, computer equipment and storage medium
CN113727183B (en) Live push method, apparatus, device, storage medium and computer program product
CN110662101A (en) Network video multi-path display method and device based on UDP
CN117641062A (en) System for processing video background environment in video call
JP4612826B2 (en) Storage device, storage method, computer-readable storage medium, and program
CN104702970A (en) Video data synchronization method, device and system

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
TA01 Transfer of patent application right

Effective date of registration: 20220825

Address after: Room 702, Building 1, No. 6, Yunpu 4th Road, Huangpu District, Guangzhou City, Guangdong Province, 510530 (office only)

Applicant after: Guangzhou kaidelian Intelligent Technology Co.,Ltd.

Address before: 510530 No. 6, Yun Po four road, Whampoa District, Guangzhou, Guangdong.

Applicant before: GUANGZHOU SHIYUAN ELECTRONICS Co.,Ltd.

Applicant before: GUANGZHOU SHIRUI ELECTRONICS Co.,Ltd.

TA01 Transfer of patent application right
GR01 Patent grant
GR01 Patent grant