CN115580600A - Media data transmission control method, device and storage medium - Google Patents

Media data transmission control method, device and storage medium Download PDF

Info

Publication number
CN115580600A
CN115580600A CN202110762656.7A CN202110762656A CN115580600A CN 115580600 A CN115580600 A CN 115580600A CN 202110762656 A CN202110762656 A CN 202110762656A CN 115580600 A CN115580600 A CN 115580600A
Authority
CN
China
Prior art keywords
media data
client
controller
state information
clients
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.)
Pending
Application number
CN202110762656.7A
Other languages
Chinese (zh)
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.)
Tencent Technology Shenzhen Co Ltd
Original Assignee
Tencent Technology Shenzhen 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 Tencent Technology Shenzhen Co Ltd filed Critical Tencent Technology Shenzhen Co Ltd
Priority to CN202110762656.7A priority Critical patent/CN115580600A/en
Publication of CN115580600A publication Critical patent/CN115580600A/en
Pending legal-status Critical Current

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L65/00Network arrangements, protocols or services for supporting real-time applications in data packet communication
    • H04L65/80Responding to QoS

Abstract

The embodiment of the application discloses a media data transmission control method, a device and a storage medium. The method comprises receiving media data from a media data server; forwarding the media data to at least one first client corresponding to the first controller; acquiring state information fed back by a target client, wherein the target client is any one of the at least one first client; and executing a control strategy determined based on the state information, wherein the control strategy is used for controlling the media data transmitted between the first controller and the target client. The client side can interact with the corresponding controller, so that the controller can control the media data transmitted between the client side and the client side, influence on other client sides is avoided, the client sides are highly decoupled, a control path is shorter, network resources are fully saved, control sensitivity is improved, and communication quality is improved.

Description

Media data transmission control method, device and storage medium
Technical Field
The embodiment of the application relates to the technical field of computers, in particular to a media data transmission control method, a media data transmission control device and a storage medium.
Background
With the development of wireless communication technology, multimedia interaction becomes an important channel for people to communicate information, but wireless networks generally have the problems of signal attenuation, network congestion and the like, so that the problems of interruption, blockage and the like of multimedia interaction are caused by easily causing network packet loss, delay or jitter, and the interaction quality is reduced. In order to improve the interaction quality, the related art generally performs C2C (Client to Client) mode control on the clients participating in the multimedia interaction, but the control path of this control method is too long, thereby reducing the control quality and also causing waste of network resources.
Disclosure of Invention
In order to shorten a control path, save network resources, and improve control quality, embodiments of the present application provide a method, an apparatus, and a storage medium for controlling media data transmission.
In one aspect, an embodiment of the present application provides a media data transmission control method, which is applied to a first controller, and the method includes:
receiving media data from a media data server;
forwarding the media data to at least one first client corresponding to a first controller;
acquiring state information fed back by a target client, wherein the target client is any one of the at least one first client;
executing a control policy determined based on the state information, the control policy for controlling media data transmitted between the first controller and the target client.
In another aspect, an embodiment of the present application provides a media data transmission control method, which is applied to a first controller, and the method includes:
receiving media data sent by a target client; the target client is any first client corresponding to the first controller;
sending the media data to a media data server to trigger the media data server to forward the media data;
detecting the media data to obtain state information;
executing a control policy determined based on the state information, the control policy for controlling media data transmitted between the first controller and the target client.
In another aspect, an embodiment of the present application provides a media data transmission control apparatus, where the apparatus is applied to a first controller, and the apparatus includes:
the first media data receiving module is used for receiving media data from the media data server;
the downlink sending module is used for forwarding the media data to at least one first client corresponding to the first controller;
the feedback receiving module is used for acquiring state information fed back by a target client, wherein the target client is any one client in the at least one first client;
a first control module configured to execute a control policy determined based on the state information, the control policy being used to control media data transmitted between the first controller and the target client.
In another aspect, an embodiment of the present application provides a media data transmission control apparatus, where the apparatus is applied to a first controller, and the apparatus includes:
the second media data receiving module is used for receiving media data sent by the target client; the target client is any first client corresponding to the first controller;
the uplink sending module is used for sending the media data to a media data server so as to trigger the media data server to forward the media data;
the state detection module is used for detecting the media data to obtain state information;
a second control module configured to execute a control policy determined based on the state information, the control policy being used to control media data transmitted between the first controller and the target client.
In another aspect, an embodiment of the present application provides a computer-readable storage medium, where at least one instruction or at least one program is stored in the computer-readable storage medium, and the at least one instruction or the at least one program is loaded and executed by a processor to implement the above-mentioned media data transmission control method.
In another aspect, an embodiment of the present application provides an electronic device, which includes at least one processor, and a memory communicatively connected to the at least one processor; the memory stores instructions executable by the at least one processor, and the at least one processor implements the media data transmission control method by executing the instructions stored in the memory.
The embodiment of the application provides a media data transmission control method, a media data transmission control device and a storage medium. In the embodiment of the application, the client can interact with the corresponding controller, so that the controller can control the media data transmitted between the client and the controller, the influence on other clients is avoided, the clients are highly decoupled, the control path is shorter, network resources are fully saved, the control sensitivity is improved, and the communication quality is improved.
Drawings
In order to more clearly illustrate the technical solutions and advantages of the embodiments of the present application or the related technology, the drawings used in the description of the embodiments or the related technology will be briefly introduced, it is obvious that the drawings in the description below are only some embodiments of the present application, and other drawings can be obtained by those skilled in the art without creative efforts.
Fig. 1 is a schematic diagram illustrating media data packet loss control in a dual-end communication scenario according to an embodiment of the present application;
fig. 2 is a schematic diagram illustrating media data packet loss control in a multi-port communication scenario according to an embodiment of the present application;
fig. 3 is a schematic diagram of a possible implementation framework for implementing a media data transmission control method according to an embodiment of the present application;
FIG. 4 is a schematic diagram of an application scenario of an implementation framework provided by an embodiment of the present application;
fig. 5 is a flowchart of a media data transmission control method according to an embodiment of the present application;
fig. 6 is a schematic view of an application scenario of a media data transmission control method according to an embodiment of the present application;
fig. 7 is a schematic view of another application scenario of a media data transmission control method provided in an embodiment of the present application;
fig. 8 is a flowchart of a method for controlling media data transmission in an uplink scene according to an embodiment of the present application;
fig. 9 is a schematic diagram of a method for controlling media data transmission in an uplink scene according to an embodiment of the present application;
fig. 10 is a block diagram of a media data transmission control device according to an embodiment of the present application;
fig. 11 is a block diagram of another media data transmission control device according to an embodiment of the present application;
fig. 12 is a hardware structural diagram of an apparatus for implementing the method provided in the embodiment of the present application.
Detailed Description
The technical solutions in the embodiments of the present application will be clearly and completely described below with reference to the drawings in the embodiments of the present application, and it is obvious that the described embodiments are only a part of the embodiments of the present application, and not all of the embodiments. All other embodiments obtained by a person of ordinary skill in the art based on the embodiments in the present application without making creative efforts belong to the protection scope of the embodiments in the present application.
It should be noted that the terms "first," "second," and the like in the description and claims of the embodiments of the present application and in the drawings described above are used for distinguishing between similar elements and not necessarily for describing a particular sequential or chronological order. It is to be understood that the data so used is interchangeable under appropriate circumstances such that the embodiments of the application described herein are capable of operation in sequences other than those illustrated or otherwise described herein. Moreover, the terms "comprises," "comprising," and "having," and any variations thereof, are intended to cover a non-exclusive inclusion, such that a process, method, system, article, or server that comprises a list of steps or elements is not necessarily limited to those steps or elements expressly listed, but may include other steps or elements not expressly listed or inherent to such process, method, article, or apparatus.
In order to make the objects, technical solutions and advantages disclosed in the embodiments of the present application more clearly understood, the embodiments of the present application are described in further detail below with reference to the accompanying drawings and the embodiments. It should be understood that the specific embodiments described herein are merely illustrative of the embodiments of the application and are not intended to limit the embodiments of the application.
In the following, the terms "first", "second" are used for descriptive purposes only and are not to be understood as indicating or implying relative importance or implicitly indicating the number of technical features indicated. Thus, a feature defined as "first" or "second" may explicitly or implicitly include one or more of that feature. In the description of the present embodiment, "a plurality" means two or more unless otherwise specified. In order to facilitate understanding of the above technical solutions and the technical effects thereof in the embodiments of the present application, the embodiments of the present application first explain related terms:
C2C: and the Client to the Client, wherein the Client is opposite to the Client. The embodiment of the application represents a communication architecture from a client to a client. Both client sides communicating under the C2C communication architecture influence each other, and if the communication is multi-end communication, each client side participating in communication is also influenced, so the communication architecture is a communication architecture with highly coupled client sides.
S2C: server to Client, server to Client. The embodiment of the application represents a communication architecture from a server to a client. Under the S2C communication architecture, a client only interacts with a controller in direct communication connection, and the controller may be understood as a control server. Under the communication architecture, no matter double-end communication or multi-end communication, no influence is generated on other clients, and therefore the communication architecture is a client decoupling communication architecture.
RTP: real-time Transport Protocol, real-time Transport Protocol. The RTP protocol specifies a standard packet format for the delivery of audio and video over the internet. It was originally designed as a multicast protocol but was later used in many unicast applications. The RTP Protocol is commonly used in Streaming media systems (in conjunction with RTSP Protocol), video conferencing, and Push to Talk (Push to Talk) systems, making it the technical foundation of the IP (Internet Protocol) telephone industry. The RTP Protocol can be used together with the RTP control Protocol RTCP and it is built on the UDP (User Datagram Protocol) Protocol.
RTCP: real-time Transport Control Protocol or RTP Control Protocol, real-time Transport Control Protocol. RTCP collects statistics about media connections, such as: the network application can use the statistical information of RTCP to control the transmission quality, for example, limit the information flow or change to a codec with smaller compression ratio when the network bandwidth is highly loaded.
In the related art, transmission control is required in a weak network environment, and such transmission control is generally in a C2C mode. The embodiment of the present application does not limit the control object, and for example, packet loss control, delay control, jitter control, and the like may be performed. The following briefly introduces a general process for controlling various control objects in a C2C mode in a scenario of two-terminal communication and multi-terminal communication.
Taking dual-end communication in a C2C mode as an example, a receiving client generally detects received media data and feeds back a detection result to a sending client, and the sending client may adjust a sending policy according to the detection result. Taking packet loss control as an example, please refer to fig. 1, which shows a schematic diagram of media data packet loss control in a dual-end communication scenario. The client B is used as a receiving client, and the client a is used as a sending client to explain transmission control in the C2C mode. The client B as a receiving client can acquire media data from the media relay server, which is transmitted to the media relay server by the sending client (client a). The transmission of media data is based on the RTP protocol. The client B detects the media data, and if a packet loss is found, the client B may feed back a related control signaling for controlling the packet loss to the media forwarding server based on the RTCP protocol, the media forwarding server feeds back the control signaling to the client a, and the client a performs packet loss compensation according to the control signaling, for example, redundant media data may be added. The redundant media data may be determined based on a Forward Error Correction (FEC) technology or an Automatic Repeat ReQuest (ARQ), which is not described herein in detail in this embodiment of the present application.
Taking multi-end communication in a C2C mode as an example, in general, a receiving client detects received media data and feeds back a detection result to a sending client, and the sending client can adjust a sending policy according to the detection result, so that all clients capable of receiving the media data sent by the sending client receive the influence of adjustment of the sending policy. Still taking packet loss control as an example, please refer to fig. 2, which shows a schematic diagram of media data packet loss control in a multi-terminal communication scenario. The description will be given by taking client a and client b as receiving clients and client c as sending clients as examples. The client a as a receiving client can obtain the media data from the media forwarding server, and the media data is transmitted to the media forwarding server by the sending client (client c). The transmission of media data is based on the RTP protocol. The client a detects the media data, if packet loss is found, a related control signaling for controlling the packet loss can be fed back to the media forwarding server based on the RTCP protocol, the media forwarding server feeds back the control signaling to the client c, and the client c performs packet loss compensation according to the control signaling to increase redundant media data. The redundant media data is transmitted indiscriminately to all receiving clients with respect to client c, i.e. both client a and client b receive the redundant media data.
Of course, the above receiving client and sending client are relative concepts, and at some times certain scenarios, which may be interchangeable, are not to be reiterated in this application.
As can be seen from the foregoing, the media data server in the C2C mode has little control over the media transmission process, and instead, the control right is put down to the client, so that the client is highly coupled, and the clients can influence each other. Taking fig. 1 as an example, when a client B finds a packet loss, it first needs to notify the client a via the media forwarding server, and then needs to perform control adjustment by the client a, add redundant media data, and then transmit the redundant media data to the client B via the media forwarding server, which obviously causes a waste of transmission time, reduces the sensitivity of control, and additionally consumes more network resources. Taking fig. 2 as an example, in a multi-end communication scenario, the problem of too long control is consistent with that of dual-end communication, and when one receiving end detects packet loss in the multi-end communication process, all receiving ends correspondingly receive redundant media data, which may adversely affect other clients, and further aggravate the waste of transmission time and the consumption of network resources.
The high coupling between clients in C2C mode results in a too long control path and causes a waste of transmission time and a consumption of network resources. In order to solve the technical problem, embodiments of the present application provide a media data transmission control method capable of implementing decoupling between clients, and by providing a decoupling transmission architecture, a control path is shortened, control flexibility is improved, transmission time is shortened, and network resources are saved.
The method provided in the embodiment of the present application may relate to a blockchain, that is, the method provided in the embodiment of the present application may be implemented based on a blockchain, or data related to the method provided in the embodiment of the present application may be stored based on a blockchain, or an execution subject of the method provided in the embodiment of the present application may be located in a blockchain. The blockchain is a novel application mode of computer technologies such as distributed data storage, point-to-point transmission, a consensus mechanism and an encryption algorithm. A block chain (Blockchain), which is essentially a decentralized database, is a series of data blocks associated by using a cryptographic method, and each data block contains information of a batch of network transactions, so as to verify the validity (anti-counterfeiting) of the information and generate a next block. The blockchain may include a blockchain underlying platform, a platform product services layer, and an application services layer.
The block chain underlying platform can comprise processing modules such as user management, basic service, intelligent contract and operation monitoring. The user management module is responsible for identity information management of all blockchain participants, and comprises the steps of maintaining public and private key generation (account management), key management, user real identity and blockchain address corresponding relation maintenance (authority management) and the like, and under the authorized condition, supervising and auditing the transaction condition of some real identities, and providing rule configuration (wind control audit) of risk control; the basic service module is deployed on all block chain node equipment and used for verifying the validity of the service request, recording the service request to storage after consensus on the valid request is completed, for a new service request, the basic service firstly performs interface adaptation analysis and authentication processing (interface adaptation), then encrypts service information (consensus management) through a consensus algorithm, transmits the service information to a shared account (network communication) completely and consistently after encryption, and performs recording and storage; the intelligent contract module is responsible for registering and issuing contracts, triggering the contracts and executing the contracts, developers can define contract logics through a certain programming language, issue the contract logics to a block chain (contract registration), call keys or other event triggering and executing according to the logics of contract clauses, complete the contract logics and simultaneously provide the function of upgrading and canceling the contracts; the operation monitoring module is mainly responsible for deployment, configuration modification, contract setting, cloud adaptation in the product release process and visual output of real-time states in product operation, such as: alarm, monitoring network conditions, monitoring node equipment health status, and the like.
The platform product service layer provides basic capability and an implementation framework of typical application, and developers can complete block chain implementation of business logic based on the basic capability and the characteristics of the superposed business. The application service layer provides the application service based on the block chain scheme to the business participants for use.
Referring to fig. 3, fig. 3 is a schematic diagram of a possible implementation framework for implementing a media data transmission control method provided in the embodiment of the present disclosure, as shown in fig. 3, the implementation framework may include at least a first client 01, a first controller 02, a second client 03, a second controller 04, and a media data server 05, where one first controller 02 may control at least one first client 01, one second controller 04 may control at least one second client 03, the second controller 04 may have one or more than one, two-way communication may be performed between the first client 01 and the first controller 02, two-way communication may be performed between the second controller 04 and the second client 03, and both the first controller 02 and the second controller 04 perform two-way communication with the media data server 05. In the embodiment of the present application, a preset association relationship may exist between each first client 01 and each second client 03, for example, the first client and the second client participate in an audio conference and a video conference at the same time, and perform a multimedia call at the same time, or the first client and the second client are located in the same live broadcast room. Fig. 4 is a schematic diagram of an application scenario of the implementation framework, which is a multi-person conversation scenario in which each client participating in the multi-person conversation is located within the implementation framework. Wherein, the client corresponding to the "me" can be the target client of the following text.
In the embodiment of the present application, the first client may be understood as a media data receiving end, and the second client may be understood as a media data sending end, but of course, the media data receiving end and the media data sending end are a functional limitation, and in some cases, the first client may also send media data to become the media data sending end, and the second client may also receive media data to become the media data receiving end.
In the embodiment of the application, the first controller controls the first client through bidirectional interaction with the first client, the control process does not affect the media sending server or other clients, and the second controller is similar to the first controller and/or the second controller, so that decoupling between the clients is realized through setting the first controller and/or the second controller. In the embodiment of the present application, the first controller and the second controller may be separately provided in the form of separate physical components, or may be integrated in the media data server, and the form of the first controller and the second controller is not limited.
The first client 01 or the second client 03 may be a mobile terminal, a desktop computer, a tablet computer, a notebook computer, a digital assistant, a smart wearable device, and other physical devices that may have communication capability and navigation capability, and may also include software running in the physical devices. The media data server 05 may comprise a server operating independently, or a distributed server, or a server cluster composed of a plurality of servers. The media data server 05 may comprise a network communication unit, a processor, a memory, etc.
A media data transmission control method according to an embodiment of the present application is described below, and the method may be implemented by an electronic device, which may be the first controller 02 in the implementation framework. Fig. 5 is a flow chart illustrating a media data transmission control method provided by the embodiment of the present application, which provides the operation steps of the method as described in the embodiment or the flow chart, but may include more or less operation steps based on conventional or non-inventive labor. The order of steps recited in the embodiments is merely one manner of performing the steps in a multitude of orders and does not represent the only order of execution. When a practical system or server product executes, it may execute sequentially or in parallel (e.g. in the context of parallel processors or multi-threaded processing) according to the embodiments or methods shown in the drawings, and the methods may include:
and S101, receiving media data from a media data server.
Taking fig. 3 as an example, the media data transmission control method is described from the perspective of a downlink scene in steps S101 to S107. The first controller 02 obtains media data from the media data server 05, and sends the media data to each first client 01 in communication connection with the first controller 02. For convenience of explanation, in the embodiment of the present application, all the controllers which are in communication connection with the first controller 02 are the first client 01, all the controllers except the first controller 02 are the second controllers 04, and all the controllers 04 are the second clients 03.
And S103, forwarding the media data to at least one first client corresponding to the first controller.
The number of the first clients sent by the first controller is not limited in the embodiment of the present application, for example, the first controller may send the media data to all the first clients that have a connection relationship with the first controller, and of course, may also send the media data to one or some first clients that have a connection relationship with the first controller.
And S105, acquiring the state information fed back by the target client, wherein the target client is any one of the at least one first client.
The embodiment of the present application does not limit the status information, and the status information includes at least one of the following: packet loss state information, jitter state information, bandwidth state information, delay state information, and parameter regulation information.
Referring to fig. 6, a schematic view of an application scenario of the media data transmission control method according to the embodiment of the present application is shown, where a first controller CRA is connected to a unique first client CA1, and a second controller CRB is connected to a unique second client CB1. The first controller CRA sends the media data acquired from the media data server to the first client CA1. The media data may be sent by the second client CB1 to the media data server via the second controller CRB. In this application scenario, a double talk, double audio phone or double video phone can be used. In the scenario shown in fig. 6, the target client is the first client CA1, and the first client CA1 feeds back the acquired state information to the first controller CRA.
Referring to fig. 7, a schematic diagram of another application scenario of the media data transmission control method provided in the embodiment of the present application is shown, where a first controller cra is connected to a first client ca1 and a first client ca2, a second controller crb is connected to a unique second client cb1, and a second controller crc is connected to a unique second client cc1. The first controller cra transmits the media data acquired from the media data server to the first client ca1 and the first client ca2. If the media data is sent from the second client cb1 to the media data server through the second controller crb, the media data is also transmitted to the second client cc1 through the second controller crc. In this application scenario, multi-end calls, multi-end audio phones or multi-end video phones are usually possible. In the scenario illustrated in fig. 7, the target client may be first client ca1 or first client ca2. Taking the target client as the first client ca1 as an example, the first client ca1 feeds back the acquired state information to the first controller cra.
And S107, executing a control strategy determined based on the state information, wherein the control strategy is used for controlling the media data transmitted between the first controller and the target client.
Taking the scenario shown in fig. 6 as an example, if the first client CA1 (target client) feeds back the acquired state information to the first controller CRA, the first controller CRA may determine a corresponding control policy, and adjust a communication process between the first client CA1 and the first controller CRA based on the control policy, for example, adjust a communication parameter or send additional redundant media data, or adjust and control a parameter related to communication, for example, a redundancy rate or a cache size in the first controller, according to parameter adjustment and control information in the state information.
Taking the scenario shown in fig. 7 as an example, both the first client ca1 and the first client ca2 receive media data, and if the first client ca1 (target client) feeds back the acquired state information to the first controller cra, the first controller cra may determine a corresponding control policy, and adjust the communication process between the first client ca1 and the first controller cra based on the control policy without affecting the first client ca2 or affecting other clients except the first client ca1.
The embodiment of the present application does not limit the determination method of the control strategy, and may be determined according to a preset control scheme and state information. In an embodiment, in a case that the state information is packet loss state information, the executing the control policy determined based on the state information includes:
s1071, determining a transmission control strategy in a packet loss state.
The embodiment of the present application does not limit the transmission control policy in the packet loss state, and the transmission control policy may be a Forward Error Correction (FEC) policy or an Automatic Repeat ReQuest (ARQ) policy.
And S1073, determining redundant media data according to the transmission control strategy and the packet loss state information.
And S1075, sending the redundant media data to the target client.
The redundant media data may be determined based on packet loss state information and a transmission control policy, and the embodiment of the present application does not limit the determination method, and the redundant information is sent to the target client and is not sent to other clients, that is, only data recovery is performed on the client that determines that packet loss occurs, and other clients are not affected.
Taking fig. 6 as an example, if the first client CA1 feeds back the packet loss status information, the first controller CRA directly sends the redundant media data to the first client CA1 without affecting other clients (the second client CB 1). Taking fig. 7 as an example, if the first client ca1 feeds back the packet loss state information, the first controller cra directly sends the redundant media data to the first client ca1 without affecting other clients (the first client ca2, the second client cb1, and the second client cc 1).
In another embodiment, in the case that the state information is jitter state information, bandwidth state information, or delay state information, the executing the control policy determined based on the state information includes:
s1072, determining a transmission control strategy corresponding to the state information.
The jitter status information, the bandwidth status information, or the delay status information respectively correspond to different transmission control strategies, and the specific transmission control strategy is not limited in the embodiment of the present application.
S1074, adjusting transmission control parameters according to the transmission control strategy and the state information.
The present application does not limit the specific scheme for adjusting the transmission control parameter according to the transmission control policy and the state information. For example, if the jitter status information indicates that the media data is jittered and the jitter exceeds a preset first threshold, the cache parameter corresponding to the target client in the first controller may be adjusted, and the cache parameter may be increased to suppress the jitter. For example, if the bandwidth status information indicates that the bandwidth is smaller than the preset second threshold, the frequency of sending data to the target client by the first controller may be adjusted or the compression rate of the media data may be increased. For example, if the delay status information indicates that the delay duration exceeds the preset third threshold, the bandwidth configuration parameter corresponding to the target client in the first controller may be adjusted, so as to reduce the delay. The first threshold, the second threshold, or the third threshold are not limited in the embodiments of the present application, and may be configured autonomously according to an actual situation.
S1076, the media data to be sent are sent to the target client side based on the adjusted transmission control parameters.
The transmission control method in the embodiment of the present application may be widely applied to dual-end communication or multi-end communication, and the present application does not limit the purpose of communication, such as audio communication and video communication. Taking multi-port communication as an example, in the architecture shown in fig. 3, the media data may be sent by any second client to trigger the media data server to send the media data to a first class client and a second class client, where the first class client refers to other second clients except the second client that sends the media data, and the second class client refers to all first clients corresponding to the first controller.
In the media data transmission control method provided in the embodiment of the application, the client can interact with the corresponding controller, so that the controller can control the media data transmitted between the client and the client without influencing other clients, which is a S2C transmission control mode, the client cannot be influenced by each other in the mode, the clients are highly decoupled, and compared with the C2C transmission control mode, the control path is shorter, network resources are sufficiently saved, the control sensitivity is improved, and thus the communication quality is improved.
In the foregoing, a downlink scenario is taken as an example to describe the media data transmission control method in the embodiment of the present application in detail. Referring to fig. 8, a flowchart of a method for controlling media data transmission in an uplink scenario provided in an embodiment of the present application is shown, and still applied to a first controller, where the method includes:
s201, receiving media data sent by a target client; the target client is any one of the first clients corresponding to the first controller.
S203, the media data are sent to a media data server to trigger the media data server to forward the media data.
S205, detecting the media data to obtain state information.
And S207, executing a control strategy determined based on the state information, wherein the control strategy is used for controlling the media data transmitted between the first controller and the target client.
Referring to fig. 9, which shows a schematic diagram of a media data transmission control method in an uplink scenario according to an embodiment of the present application, in fig. 9, a first client ca1 (a target client) sends media data to a first controller cra, the first controller cra detects status information, and controls a communication process between the first client ca1 and the first client according to the status information. The method for controlling media data transmission in the uplink scene is based on the same inventive concept as above, and is not described herein again. The method for controlling media data transmission in an uplink scene may be applied to a two-terminal communication scene or a multi-terminal communication scene, taking the multi-terminal communication scene as an example, a target client may send the media data to a media data server through a first controller to trigger the media data server to forward the media data to a third class of clients and a fourth class of clients, where the third class of clients refers to all second clients having a preset association relationship with the target client, and the fourth class of clients refers to other first clients corresponding to the first controller except the target client.
It is emphasized that the first controller implementing the framework in fig. 3 may perform the media data transmission control method in the uplink scenario or the downlink scenario, or may have the capability of performing the media data transmission control method in the uplink scenario and the downlink scenario at the same time. For example, at a first time, the first controller may execute a media data transmission control method corresponding to an uplink scene, and at a second time, the first controller may execute the media data transmission control method corresponding to the downlink scene.
An embodiment of the present application further discloses a media data transmission control device, as shown in fig. 10, where the device is applied to a first controller, and the device includes:
the first media data receiving module 101 is configured to receive media data from a media data server.
A downlink sending module 103, configured to forward the media data to at least one first client corresponding to the first controller.
A feedback receiving module 105, configured to obtain state information fed back by the target client, where the target client is any client in the at least one first client.
A first control module 107, configured to execute a control policy determined based on the status information, where the control policy is used to control media data transmitted between the first controller and the target client.
Specifically, the embodiment of the present application discloses a media data transmission control device and the corresponding method embodiments of the downlink scenario all based on the same inventive concept. For details, please refer to the method embodiment, which is not described herein.
The embodiment of the present application further discloses a media data transmission control device, as shown in fig. 11, where the device is applied to a first controller, and the device includes:
a second media data receiving module 201, configured to receive media data sent by a target client; the target client is any one of the first clients corresponding to the first controller.
The uplink sending module 203 is configured to send the media data to a media data server to trigger the media data server to forward the media data.
The status detecting module 205 is configured to detect the media data to obtain status information.
A second control module 207, configured to execute a control policy determined based on the status information, where the control policy is used to control media data transmitted between the first controller and the target client.
Specifically, the embodiment of the present application discloses a media data transmission control device and the corresponding method embodiment of the uplink scene, which are all based on the same inventive concept. For details, please refer to the method embodiment, which is not described herein.
Embodiments of the present application also provide a computer program product or computer program comprising computer instructions stored in a computer-readable storage medium. The processor of the computer device reads the computer instruction from the computer readable storage medium, and executes the computer instruction, so that the computer device executes the media data transmission control device of the uplink scene or the downlink scene.
Embodiments of the present application further provide a computer-readable storage medium, where the computer-readable storage medium may store a plurality of instructions. The above instructions may be adapted to be loaded by a processor and execute the media data transmission control apparatus of the uplink scenario or the downlink scenario described in the embodiment of the present application.
Further, fig. 12 is a schematic hardware configuration diagram of an apparatus for implementing the method provided in the embodiment of the present application, and the apparatus may participate in forming or containing the device or system provided in the embodiment of the present application. As shown in fig. 12, device 10 may include one or more (shown as 102a, 102b, \8230;, 102 n) processors 102 (processor 102 may include, but is not limited to, a processing device such as a microprocessor MCU or a programmable logic device FPGA, etc.), memory 104 for storing data, and transmission device 106 for communication functions. Besides, the method can also comprise the following steps: a display, an input/output interface (I/O interface), a Universal Serial Bus (USB) port (which may be included as one of the ports of the I/O interface), a network interface, a power source, and/or a camera. It will be understood by those skilled in the art that the structure shown in fig. 12 is only an illustration and is not intended to limit the structure of the electronic device. For example, device 10 may also include more or fewer components than shown in FIG. 12, or have a different configuration than shown in FIG. 12.
It should be noted that the one or more processors 102 and/or other data processing circuitry described above may be referred to generally herein as "data processing circuitry". The data processing circuitry may be embodied in whole or in part in software, hardware, firmware, or any combination thereof. Further, the data processing circuit may be a single, stand-alone processing module, or incorporated, in whole or in part, into any of the other elements in the device 10 (or mobile device). As referred to in the embodiments of the application, the data processing circuit acts as a processor control (e.g. selection of a variable resistance termination path connected to the interface).
The memory 104 may be configured to store software programs and modules of application software, such as program instructions/data storage devices corresponding to the methods described above in the embodiments of the present application, and the processor 102 executes various functional applications and data processing by running the software programs and modules stored in the memory 104, so as to implement the above-described media data transmission control method for the uplink scenario or the downlink scenario. The memory 104 may include high-speed random access memory, and may also include non-volatile memory, such as one or more magnetic storage devices, flash memory, or other non-volatile solid-state memory. In some examples, memory 104 may further include memory located remotely from processor 102, which may be connected to device 10 via a network. Examples of such networks include, but are not limited to, the internet, intranets, local area networks, mobile communication networks, and combinations thereof.
The transmission device 106 is used to receive or transmit data via a network. Specific examples of such networks may include wireless networks provided by the communication provider of the device 10. In one example, the transmission device 106 includes a network adapter (NIC) that can be connected to other network devices through a base station so as to communicate with the internet. In one example, the transmission device 106 can be a Radio Frequency (RF) module, which is used for communicating with the internet in a wireless manner.
The display may be, for example, a touch screen type Liquid Crystal Display (LCD) that may enable a user to interact with a user interface of the device 10 (or mobile device).
It should be noted that: the sequence of the embodiments of the present application is only for description, and does not represent the advantages and disadvantages of the embodiments. And specific embodiments thereof have been described above. Other embodiments are within the scope of the following claims. In some cases, the actions or steps recited in the claims may be performed in a different order than in the embodiments and still achieve desirable results. In addition, the processes depicted in the accompanying figures do not necessarily require the particular order shown, or sequential order, to achieve desirable results. In some embodiments, multitasking and parallel processing may also be possible or may be advantageous.
The embodiments in the present application are described in a progressive manner, and the same and similar parts among the embodiments can be referred to each other, and each embodiment focuses on the differences from the other embodiments. In particular, as for the device and server embodiments, since they are substantially similar to the method embodiments, the description is relatively simple, and reference may be made to the partial description of the method embodiments for relevant points.
It will be understood by those skilled in the art that all or part of the steps for implementing the above embodiments may be implemented by hardware, or may be implemented by a program instructing relevant hardware, and the program may be stored in a computer-readable storage medium, and the storage medium may be a read-only memory, a magnetic disk or an optical disk.
The above description is only a preferred embodiment of the present application and should not be taken as limiting the present application, and any modifications, equivalents, improvements and the like made within the spirit and principle of the present application should be included in the scope of the present application.

Claims (10)

1. A media data transmission control method applied to a first controller, the method comprising:
receiving media data from a media data server;
forwarding the media data to at least one first client corresponding to a first controller;
acquiring state information fed back by a target client, wherein the target client is any one client in the at least one first client;
executing a control policy determined based on the state information, the control policy for controlling media data transmitted between the first controller and the target client.
2. The method of claim 1, wherein the status information comprises at least one of: packet loss state information, jitter state information, bandwidth state information, delay state information, and parameter regulation information.
3. The method according to claim 2, wherein in a case that the status information is packet loss status information, the performing the control policy determined based on the status information comprises:
determining a transmission control strategy in a packet loss state;
determining redundant media data according to the transmission control strategy and the packet loss state information;
and sending the redundant media data to the target client.
4. The method of claim 2, wherein in the case that the status information is jitter status information, bandwidth status information or delay status information, the performing the control policy determined based on the status information comprises:
determining a transmission control strategy corresponding to the state information;
adjusting transmission control parameters according to the transmission control strategy and the state information;
and sending the media data to be sent to the target client based on the adjusted transmission control parameters.
5. The method according to any one of claims 1 to 4, wherein the media data is sent by any one of the second clients to trigger the media data server to send the media data to the first class of clients and the second class of clients, the first class of clients includes other second clients except the second client that sends the media data, and the second class of clients includes all the first clients corresponding to the first controller.
6. A media data transmission control method applied to a first controller, the method comprising:
receiving media data sent by a target client; the target client is any first client corresponding to the first controller;
sending the media data to a media data server to trigger the media data server to forward the media data;
detecting the media data to obtain state information;
executing a control policy determined based on the state information, the control policy for controlling media data transmitted between the first controller and the target client.
7. The method of claim 6, wherein sending the media data to a media data server to trigger the media data server to forward the media data comprises:
and sending the media data to a media data server to trigger the media data server to forward the media data to a third class of clients and a fourth class of clients, wherein the third class of clients comprises all second clients, and the fourth class of clients comprises other first clients corresponding to the first controller except the target client.
8. A media data transmission control apparatus, applied to a first controller, the apparatus comprising:
the first media data receiving module is used for receiving media data from the media data server;
the downlink sending module is used for forwarding the media data to at least one first client corresponding to the first controller;
the feedback receiving module is used for acquiring state information fed back by a target client, wherein the target client is any one of the at least one first client;
a first control module configured to execute a control policy determined based on the state information, the control policy being used to control media data transmitted between the first controller and the target client.
9. A media data transmission control apparatus, applied to a first controller, the apparatus comprising:
the second media data receiving module is used for receiving media data sent by the target client; the target client is any first client corresponding to the first controller;
the uplink sending module is used for sending the media data to a media data server so as to trigger the media data server to forward the media data;
the state detection module is used for detecting the media data to obtain state information;
a second control module, configured to execute a control policy determined based on the state information, where the control policy is used to control media data transmitted between the first controller and the target client.
10. A computer-readable storage medium having stored therein at least one instruction which is loaded and executed by a processor to implement the media data transmission control method of any one of claims 1 to 5, or the media data transmission control method of claim 6 or 7.
CN202110762656.7A 2021-07-06 2021-07-06 Media data transmission control method, device and storage medium Pending CN115580600A (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202110762656.7A CN115580600A (en) 2021-07-06 2021-07-06 Media data transmission control method, device and storage medium

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202110762656.7A CN115580600A (en) 2021-07-06 2021-07-06 Media data transmission control method, device and storage medium

Publications (1)

Publication Number Publication Date
CN115580600A true CN115580600A (en) 2023-01-06

Family

ID=84580193

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202110762656.7A Pending CN115580600A (en) 2021-07-06 2021-07-06 Media data transmission control method, device and storage medium

Country Status (1)

Country Link
CN (1) CN115580600A (en)

Similar Documents

Publication Publication Date Title
US11546388B2 (en) Method and system for integrating real time communication features in applications
US8411129B2 (en) Video conference system and method using multicast and unicast transmissions
US8144632B1 (en) Methods, systems and program products for efficient communications during data sharing event
US20080063173A1 (en) Conference resource allocation and dynamic reallocation
WO2008094377A1 (en) Media continuity service between devices
US8868658B2 (en) Client assisted multicasting for audio and video streams
US20150045082A1 (en) Interoperability and Communications System Dynamic Media Proxy Based on Capability Negotiation
US10778736B2 (en) On demand in-band signaling for conferences
WO2018204023A1 (en) Synthetic transaction based on network condition
US9979759B2 (en) System and method for managing multi-media conferences using group segmentation
US11190734B2 (en) Multiway audio-video conferencing with multiple communication channels per device
WO2024056032A1 (en) Decoding method and apparatus, data transmission method and apparatus, terminal, and server
CN113949596B (en) Device connection method, device and storage medium
EP3585050A1 (en) Multiway audio-video conferencing with multiple communication channels per device
US20220247752A1 (en) Electronic conferencing
CN112131135B (en) Ciphertext operation debugging method and system and device for ciphertext operation debugging
CN115580600A (en) Media data transmission control method, device and storage medium
CN113542813B (en) Data transmission method and device
US20060031343A1 (en) Integrated instant message system with gateway functions and method for implementing the same
US9003241B2 (en) Reporting errors on serial interfaces to application layers for flexible error handling approach selection
US11025683B2 (en) Method of implementing a communications session between a plurality of terminals
CN112055365B (en) Method and device for terminal networking, terminal and readable storage medium
WO2024083008A1 (en) Data transmission method, apparatus and system, electronic device, and medium
CN116233135A (en) Data transmission method, system, device and readable storage medium
FI128026B (en) Enhancing monitoring of connections

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