CN108769805B - Data transmission method and device, computer equipment and storage medium - Google Patents

Data transmission method and device, computer equipment and storage medium Download PDF

Info

Publication number
CN108769805B
CN108769805B CN201810595339.9A CN201810595339A CN108769805B CN 108769805 B CN108769805 B CN 108769805B CN 201810595339 A CN201810595339 A CN 201810595339A CN 108769805 B CN108769805 B CN 108769805B
Authority
CN
China
Prior art keywords
data
slice
terminal
slice data
video
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Active
Application number
CN201810595339.9A
Other languages
Chinese (zh)
Other versions
CN108769805A (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.)
Chengdu kugou business incubator management Co.,Ltd.
Original Assignee
Guangzhou Kugou Computer Technology 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 Kugou Computer Technology Co Ltd filed Critical Guangzhou Kugou Computer Technology Co Ltd
Priority to CN201810595339.9A priority Critical patent/CN108769805B/en
Publication of CN108769805A publication Critical patent/CN108769805A/en
Application granted granted Critical
Publication of CN108769805B publication Critical patent/CN108769805B/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/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 or rendering scenes according to encoded video stream scene graphs
    • H04N21/4402Processing of video elementary streams, e.g. splicing a video clip retrieved from local storage with an incoming video stream or rendering scenes according to encoded video stream scene graphs involving reformatting operations of video signals for household redistribution, storage or real-time display
    • 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 or rendering scenes according to encoded video stream scene graphs
    • H04N21/4402Processing of video elementary streams, e.g. splicing a video clip retrieved from local storage with an incoming video stream or rendering scenes according to encoded video stream scene graphs involving reformatting operations of video signals for household redistribution, storage or real-time display
    • H04N21/440218Processing of video elementary streams, e.g. splicing a video clip retrieved from local storage with an incoming video stream or rendering scenes according to encoded video stream scene graphs involving reformatting operations of video signals for household redistribution, storage or real-time display by transcoding between formats or standards, e.g. from MPEG-2 to MPEG-4
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/80Generation or processing of content or additional data by content creator independently of the distribution process; Content per se
    • H04N21/83Generation or processing of protective or descriptive data associated with content; Content structuring
    • H04N21/845Structuring of content, e.g. decomposing content into time segments
    • H04N21/8456Structuring of content, e.g. decomposing content into time segments by decomposing the content in the time domain, e.g. in time segments

Landscapes

  • Engineering & Computer Science (AREA)
  • Multimedia (AREA)
  • Signal Processing (AREA)
  • Data Exchanges In Wide-Area Networks (AREA)
  • Two-Way Televisions, Distribution Of Moving Picture Or The Like (AREA)

Abstract

The invention relates to a data transmission method, a data transmission device, computer equipment and a storage medium, and belongs to the technical field of communication. The method comprises the following steps: transmitting the first slice data to the terminal; when the first slice data is transmitted, detecting the transmission process in real time to acquire detection data; and when the network quality is determined to be not in accordance with the preset conditions based on the detection data, determining target second slice data according to the first slice data to be sent, and sending the target second slice data to the terminal. According to the method and the device, when the live video stream is transmitted, the detection data is obtained, when the fact that the network quality does not accord with the preset condition is determined, the first video data of the live video stream is transmitted to the terminal, so that the video data of which code rate is transmitted to the terminal can be judged according to the network quality of data connection, code rate conversion of the received data is not needed, the terminal is prevented from playing delay, the method and the device are more suitable for a live scene, intelligence is better, and user viscosity is higher.

Description

Data transmission method and device, computer equipment and storage medium
Technical Field
The present invention relates to the field of communications technologies, and in particular, to a data transmission method and apparatus, a computer device, and a storage medium.
Background
With the development of communication technology, users can use terminals to connect to a wireless network, and can freely and pertinently select and watch favorite videos. The videos selected by the user to watch include real-time videos and recorded and played videos, most of the videos can be selected from three play modes of smoothness, standard definition and high definition during playing, and video code rates of data transmitted in the three play modes are different. In order to adapt to the data transmission in the three play modes, the server of the provider generally transmits the data of the video by using transmission modes such as HLS (Hyper text transfer protocol Live Streaming), DASH (Dynamic Adaptive Streaming over Hyper text transfer protocol), and the like.
In the related art, when data of a video is transmitted by using transmission methods such as HLS and DASH, a server end is generally required to encode the video to be transmitted into a plurality of video stream data with different code rates, and slice the plurality of video stream data to obtain slice data with different code rates. When determining which code rate video is transmitted to the terminal, the terminal is required to actively detect the network quality from the terminal to the server end, and the terminal requests the video with the specified code rate from the server end according to the network quality, so that when the server end receives the request of the terminal held by a user for the video with the specified code rate, slice data of the video corresponding to the code rate requested by the terminal is transmitted to the terminal, and the terminal can play the video.
In the process of implementing the invention, the inventor finds that the related art has at least the following problems:
when transmission modes such as HLS and DASH are used for transmitting video data, the terminal needs to detect the network quality from the terminal to the server, and the detection process exists in the whole process of watching videos by users, so that if the transmitted video data are real-time video data, the terminal can have larger time delay when playing the received data transmitted by the server, and the time delay is larger and larger, so that the data transmission method cannot adapt to live scenes, the intelligence is poor, and the viscosity of the users is low.
Disclosure of Invention
In order to solve the problems that the data transmission method cannot adapt to a live broadcast scene, is poor in intelligence and low in user viscosity due to the fact that large delay exists and the delay is increased, the data transmission method and device, the computer equipment and the storage medium exist in the related technology.
According to a first aspect of embodiments of the present invention, there is provided a data transmission method, including:
sending at least one first slice data of a live video stream to a terminal, wherein the at least one first slice data is a first video data with a code rate larger than a first preset code rate;
when the at least one first slice data is transmitted, detecting the transmission process in real time to obtain detection data, wherein the detection data at least comprises an overtime retransmission parameter, a transmission packet quantity parameter and a congestion parameter;
when the network quality is determined to be not in accordance with the preset conditions based on the detection data, determining target second slice data from at least one second slice data of the live video stream according to the first slice data to be sent, and sending the target second slice data to the terminal;
the at least one second slice data is second video data with a code rate smaller than a second preset code rate, and the position of the target second slice data in the at least one second slice data is consistent with the position of the first slice data to be sent in the at least one first slice data.
In another embodiment, before the sending of the at least one first slice data of the live video stream to the terminal, the method further comprises:
receiving an access request of the terminal, and accessing the terminal based on a real-time message transfer (RTMP) protocol;
and establishing communication parameters with the terminal, and establishing data connection with the terminal.
In another embodiment, before the sending of the at least one first slice data of the live video stream to the terminal, the method further comprises:
receiving a video request sent by the terminal, wherein the video request at least comprises a resource identifier of the first video data;
acquiring the first video data according to the resource identifier;
and performing code rate conversion on the first video data based on an encoding system to generate the second video data.
In another embodiment, after the coding system performs rate conversion on the first video data to generate the second video data, the method further includes:
slicing the first video data into the at least one first slice data, and slicing the second video data into the at least one second slice data;
assigning at least one first tag to the at least one first slice data and at least one second tag to the at least one second slice data;
associating the at least one first tag with the at least one second tag in an order of arrangement of the at least one first slice data and the at least one second slice data;
correspondingly, when it is determined based on the detection data that the network quality does not meet the preset condition, determining target second slice data from at least one second slice data of the live video stream according to the first slice data to be sent, and sending the target second slice data to the terminal includes:
when the transmission threshold is larger than a preset threshold, determining that the network quality does not meet a preset condition, and acquiring a specified first label of the first slice data to be sent;
determining a designated second label corresponding to the designated first label, and extracting target second slice data corresponding to the designated second label from the at least one second slice data;
transmitting the target second slice data to the terminal.
In another embodiment, when the at least one first slice of data is transmitted, the transmission process is detected in real time, and after the detection data is acquired, the method further includes:
respectively determining a first weight coefficient, a second weight coefficient and a third weight coefficient of the overtime retransmission parameter, the sending packet quantity parameter and the congestion parameter;
calculating the timeout retransmission parameter, the transmission packet size parameter and the congestion parameter based on the first weight coefficient, the second weight coefficient and the third weight coefficient to obtain the transmission threshold;
and acquiring the preset threshold value, and judging whether the transmission threshold value is larger than the preset threshold value.
In another embodiment, the method further comprises:
and when the network quality is determined to meet the preset condition based on the detection data, continuing to execute the transmission process of the current at least one first slice of data.
In another embodiment, the method further comprises:
and determining a preset detection period, and executing the process of acquiring the detection data and determining whether the network quality meets a preset condition every other preset detection period.
In another embodiment, the method further comprises:
if a disconnection request of the terminal is received, disconnecting the data connection with the terminal;
deleting the at least one first slice data and the at least one second slice data.
According to a second aspect of the embodiments of the present invention, there is provided a data transmission apparatus, the apparatus including:
the system comprises a sending module, a receiving module and a processing module, wherein the sending module is used for sending at least one first slice data of a live video stream to a terminal, and the at least one first slice data is a first video data with a code rate larger than a first preset code rate;
the detection module is used for detecting the transmission process in real time when the at least one first slice of data is transmitted to obtain detection data, wherein the detection data at least comprises an overtime retransmission parameter, a transmission packet amount parameter and a congestion parameter;
the determining module is used for determining target second slice data from at least one second slice data of the live video stream according to the first slice data to be sent when the network quality is determined to be not in accordance with the preset condition based on the detection data, and sending the target second slice data to the terminal;
the at least one second slice data is second video data with a code rate smaller than a second preset code rate, and the position of the target second slice data in the at least one second slice data is consistent with the position of the first slice data to be sent in the at least one first slice data.
In another embodiment, the apparatus further comprises:
the access module is used for receiving an access request of the terminal and accessing the terminal based on a real-time messaging protocol (RTMP);
and the creating module is used for creating communication parameters between the terminal and the creating module and establishing data connection between the terminal and the creating module.
In another embodiment, the apparatus further comprises:
a receiving module, configured to receive a video request sent by the terminal, where the video request at least includes a resource identifier of the first video data;
the acquisition module is used for acquiring the first video data according to the resource identifier;
and the conversion module is used for performing code rate conversion on the first video data based on an encoding system to generate the second video data.
In another embodiment, the apparatus further comprises:
a slicing module, configured to slice the first video data into the at least one first slice data and slice the second video data into the at least one second slice data;
the distribution module is used for distributing at least one first label for the at least one first slice data and distributing at least one second label for the at least one second slice data;
an association module for associating the at least one first tag with the at least one second tag according to an arrangement order of the at least one first slice data and the at least one second slice data;
correspondingly, the determining module is configured to determine that the network quality does not meet a preset condition when the transmission threshold is greater than a preset threshold, and acquire an assigned first tag of the first slice data to be sent; determining a designated second label corresponding to the designated first label, and extracting target second slice data corresponding to the designated second label from the at least one second slice data; transmitting the target second slice data to the terminal.
In another embodiment, the apparatus further comprises:
a coefficient determining module, configured to determine a first weight coefficient, a second weight coefficient, and a third weight coefficient of the timeout retransmission parameter, the sent packet size parameter, and the congestion parameter, respectively;
a calculating module, configured to calculate the timeout retransmission parameter, the sent packet size parameter, and the congestion parameter based on the first weight coefficient, the second weight coefficient, and the third weight coefficient, so as to obtain the transmission threshold;
and the judging module is used for acquiring the preset threshold value and judging whether the transmission threshold value is larger than the preset threshold value.
In another embodiment, the sending module is further configured to continue to perform the transmission process of the current at least one first slice of data when it is determined that the network quality meets the preset condition based on the detection data.
In another embodiment, the detection module is further configured to determine a preset detection period, and execute the above-mentioned process of acquiring the detection data and determining whether the network quality meets a preset condition every other preset detection period.
In another embodiment, the apparatus further comprises:
the disconnection module is used for disconnecting the data connection with the terminal if a disconnection request of the terminal is received;
a deletion module to delete the at least one first slice data and the at least one second slice data.
According to a third aspect of embodiments of the present invention, there is provided a computer device, including a memory, a processor, and computer-executable instructions stored on the memory and executable on the processor, where the processor executes the computer-executable instructions to implement the data transmission method according to the first aspect.
According to a fourth aspect of the embodiments of the present invention, there is provided a storage medium having instructions stored thereon, the instructions being executed by a processor to implement the data transmission method according to the first aspect.
The technical scheme provided by the embodiment of the invention can have the following beneficial effects:
the method comprises the steps of sending at least one first slice data of a live video stream to a terminal, detecting a transmission process in real time when the at least one first slice data is transmitted, obtaining detection data, determining a target second slice data from at least one second slice data of the live video stream according to the first slice data to be sent when the network quality is determined to be not in accordance with a preset condition based on the detection data, and sending the target second slice data to the terminal, so that a server side can judge which code rate video data is transmitted to the terminal according to the network quality of data connection between the server side and the terminal, code rate conversion is not needed to be carried out on the received data, play delay of the terminal in the process of converting the code rate is avoided, the method is more suitable for a live scene, intelligence is better, and user viscosity is higher.
It is to be understood that both the foregoing general description and the following detailed description are exemplary and explanatory only and are not restrictive of the invention, as claimed.
Drawings
The accompanying drawings, which are incorporated in and constitute a part of this specification, illustrate embodiments consistent with the invention and together with the description, serve to explain the principles of the invention.
FIG. 1 is a flow chart illustrating a method of data transmission according to an exemplary embodiment;
FIG. 2A is a flow chart illustrating a method of data transmission according to an exemplary embodiment;
FIG. 2B is a schematic diagram illustrating a data transmission method in accordance with an exemplary embodiment;
FIG. 3A is a block diagram illustrating a data transmission device in accordance with an exemplary embodiment;
FIG. 3B is a block diagram illustrating a data transmission device in accordance with an exemplary embodiment;
FIG. 3C is a block diagram illustrating a data transmission apparatus according to an example embodiment;
FIG. 3D is a block diagram illustrating a data transmission device in accordance with an exemplary embodiment;
FIG. 3E is a block diagram illustrating a data transmission apparatus according to an example embodiment;
FIG. 3F is a block diagram illustrating a data transmission device in accordance with an exemplary embodiment;
fig. 4 is a block diagram illustrating a data transmission apparatus 400 according to an example embodiment.
Detailed Description
Reference will now be made in detail to the exemplary embodiments, examples of which are illustrated in the accompanying drawings. When the following description refers to the accompanying drawings, like numbers in different drawings represent the same or similar elements unless otherwise indicated. The embodiments described in the following exemplary embodiments do not represent all embodiments consistent with the present invention. Rather, they are merely examples of apparatus and methods consistent with certain aspects of the invention, as detailed in the appended claims.
Fig. 1 is a flow chart illustrating a method of data transmission, as shown in fig. 1, according to an example embodiment, the method including the following steps.
In step 101, at least one first slice data of a live video stream is sent to a terminal, where the at least one first slice data is a first video data with a bitrate greater than a first preset bitrate.
In step 102, when at least one first slice of data is transmitted, the transmission process is detected in real time to obtain detected data, and the detected data at least includes an overtime retransmission parameter, a transmission packet amount parameter and a congestion parameter.
In step 103, when it is determined that the network quality does not meet the preset condition based on the detection data, determining target second slice data from at least one second slice data of the live broadcast video stream according to the first slice data to be transmitted, and transmitting the target second slice data to the terminal; the at least one second slice data is second video data with a code rate smaller than a second preset code rate, and the position of the target second slice data in the at least one second slice data is consistent with the position of the first slice data to be sent in the at least one first slice data.
The method provided by the embodiment of the invention transmits at least one first slice data of the live video stream to the terminal, detecting the transmission process in real time while transmitting the at least one first slice of data, obtaining detection data, when it is determined based on the detection data that the network quality does not meet a preset condition, determining target second slice data from at least one second slice data of the live video stream according to the first slice data to be sent, sending the target second slice data to the terminal, the server side can judge which code rate video data are transmitted to the terminal according to the network quality of data connection between the server side and the terminal, code rate conversion is not needed to be carried out on the received data by the terminal, playing delay is avoided when the terminal converts the code rate, the method and the device are more suitable for live scenes, intelligence is better, and user viscosity is higher.
In another embodiment, before transmitting the at least one first slice data of the live video stream to the terminal, the method further comprises:
receiving an access request of a terminal, and accessing the terminal based on a real-time message transfer (RTMP) protocol;
and establishing communication parameters with the terminal and establishing data connection with the terminal.
In another embodiment, before transmitting the at least one first slice data of the live video stream to the terminal, the method further comprises:
receiving a video request sent by a terminal, wherein the video request at least comprises a resource identifier of first video data;
acquiring first video data according to the resource identifier;
and performing code rate conversion on the first video data based on the coding system to generate second video data.
In another embodiment, after rate converting the first video data to generate the second video data based on the encoding system, the method further includes:
slicing the first video data into at least one first slice data, and slicing the second video data into at least one second slice data;
assigning at least one first tag to at least one first slice data and at least one second tag to at least one second slice data;
associating the at least one first tag with the at least one second tag in an order of arrangement of the at least one first slice data and the at least one second slice data;
correspondingly, when it is determined based on the detection data that the network quality does not meet the preset condition, determining target second slice data from at least one second slice data of the live video stream according to the first slice data to be sent, and sending the target second slice data to the terminal includes:
when the transmission threshold is larger than a preset threshold, determining that the network quality does not meet a preset condition, and acquiring a specified first label of first slice data to be sent;
determining a designated second label corresponding to the designated first label, and extracting target second slice data corresponding to the designated second label from the at least one second slice data;
and transmitting the target second slice data to the terminal.
In another embodiment, when transmitting the at least one first slice of data, the transmission process is detected in real time, and after acquiring the detection data, the method further includes:
respectively determining a first weight coefficient, a second weight coefficient and a third weight coefficient of an overtime retransmission parameter, a transmission packet quantity parameter and a congestion parameter;
calculating an overtime retransmission parameter, a sending packet quantity parameter and a congestion parameter based on the first weight coefficient, the second weight coefficient and the third weight coefficient to obtain a transmission threshold value;
and acquiring a preset threshold value, and judging whether the transmission threshold value is larger than the preset threshold value.
In another embodiment, the method further comprises:
and when the network quality is determined to meet the preset condition based on the detection data, continuing to execute the transmission process of the current at least one first slice of data.
In another embodiment, the method further comprises:
and determining a preset detection period, and executing the process of acquiring the detection data and determining whether the network quality meets the preset condition every other preset detection period.
In another embodiment, the method further comprises:
if a disconnection request of the terminal is received, disconnecting the data connection with the terminal;
the at least one first slice data and the at least one second slice data are deleted.
All the above-mentioned optional technical solutions can be combined arbitrarily to form the optional embodiments of the present invention, and are not described herein again.
Fig. 2A is a flow chart illustrating a method of data transmission according to an example embodiment, the method including the following steps, as shown in fig. 2A.
In step 201, the server receives an access request of the terminal, accesses the terminal based on the RTMP protocol, creates communication parameters with the terminal, and establishes a data connection with the terminal.
In the embodiment of the present invention, in order to perform data transmission between the server and the terminal subsequently, a data connection needs to be established between the server and the terminal. Considering that the present invention also transmits Real-Time video data, the server may establish a data connection with the terminal based on a Real Time Messaging Protocol (RTMP) Protocol. The server can be a live video server, the server can be loaded on the terminal in a client mode, and a user holding the terminal can download the client supported by the server in the terminal, so that the server can provide corresponding services for the user based on the client.
When the user needs the server to provide the service, the user can access the downloaded client supported by the server and operate the client. When the terminal detects that the client runs, the terminal sends an access request to the server, so that the server receives the access request of the terminal and establishes data connection with the terminal. When the terminal sends an access request to the server, the terminal can acquire the registration information of the user in the client and carry the registration information in the access request so that the subsequent server can transmit correct data to the terminal. The content included in the access request is not specifically limited in the embodiments of the present invention.
When the server receives the access request of the terminal, the data connection with the terminal can be established. When establishing data connection with the terminal, the server end can perform RTMP handshake and conversation process with the terminal, and communication parameters between the server end and the terminal are established based on the RTMP handshake and conversation process, so as to establish data connection between the server end and the terminal. The embodiment of the present invention does not specifically limit the manner of establishing data connection between the server and the terminal.
In step 202, the server receives a video request sent by the terminal, and obtains first video data according to the resource identifier, where the video request at least includes the resource identifier of the first video data.
In the embodiment of the invention, a plurality of video watching entrances of different videos can be provided in the client installed on the terminal held by the user. When the terminal detects that a user triggers a certain video watching entrance, the resource identification of the resource which can be watched by the watching entrance is determined, a video request is generated based on the resource identification, and the video request is sent to the server side, so that the server side pushes the corresponding resource to the terminal according to the resource identification.
When the server receives the video request sent by the terminal, the resource identifier is extracted from the video request, and the resource data indicated by the resource identifier is obtained. For the server, the server and some clients may have a function of reducing the bit rate, and the user may want to see the video data with the higher bit rate, so the resource data uploaded to the server is usually the video data with the bit rate larger than the first preset bit rate, that is, the video data with the high bit rate, and thus the resource data acquired by the server according to the resource identifier is usually the first video data. Generally, the AH1 may be used to represent the first video data that is captured.
The server side can provide the functions of playing the recorded and played video and the real-time video, so that the resource indicated by the resource identifier may be the first video data of the recorded and played video or the first video data of the real-time video. If the resource indicated by the resource identifier is first video data of recorded and played videos, the server side can acquire complete first video data when receiving a video request, store the complete first video data in a storage database of the server side, and further transmit the first video data to the terminal for playing; if the resource indicated by the resource identifier is the first video data of the real-time video, then the server needs to upload the first video data in real time by the live main broadcast when acquiring the first video data, so that after receiving the video request sent by the terminal, the server needs to continuously pull the first video data indicated by the resource identifier carried in the video request, and transmit the pulled first video data to the terminal for playing.
It should be noted that, because the first video data uploaded by the anchor through the device is uploaded in real time and is not a resource after the recording is completed, the server may create a cache database, and cache the first video data continuously pulled in the created cache database, so as to ensure that data transmission is continuously performed to the terminal.
In step 203, the server performs rate conversion on the first video data based on the coding system to generate second video data.
In the embodiment of the present invention, the code rate of the second video data is smaller than the second preset code rate. The inventor realizes that some tools for playing video data by users may be playing tools carried by the system, and the strategy of playing video data by these playing tools is fixed, that is, video data can only be played with a fixed bitrate. In addition, the network environment of the terminal held by the user is inconsistent, so that the network quality of the data connection between the server and the terminal is different. If the network quality of the data connection between the server and the terminal is good, the server can send the first video data to the terminal, and the terminal can smoothly receive the first video data without the conditions of time delay and the like; if the network quality of the data connection between the server and the terminal is poor, when the server sends the first video data to the terminal, situations such as data transmission delay, data packet loss and the like may occur, and at this time, sending the first video data should be avoided, and the code rate of the sent video data needs to be reduced. Therefore, in order to enable the server to provide a normal video viewing server for the terminal of the user, after the server extracts the first video data, the code rate of the first video data needs to be reduced, the first video data is converted into the second video data, and when the network quality of data connection between the server and the terminal is poor, the server can automatically transmit the second video data to the terminal without the need of the terminal to convert the code rate after receiving the first video data, so that the requirement of providing a playing tool for the terminal is reduced while the normal viewing service is provided for the terminal. The difference between the first video data and the second video data only exists in a code rate, the code rate of the first video data is greater than that of the second video data, the first video data is video data with the code rate greater than a first preset code rate, the second video data is video data with the code rate smaller than a second preset code rate, the first preset code rate is greater than the second preset code rate, generally, the code rate of the first video data can be called as a high code rate, the code rate of the second video data is called as a low code rate, but specific contents of videos included in the first video data and the second video data are the same.
The server end can set a coding system of the user conversion code rate. When the second video data is generated, the server side transmits the extracted first video data to the coding system, and converts the first video data based on the coding system to generate the second video data. Generally, the second video data may be represented by AL 1.
In the process of practical application, because a plurality of users requesting the same video resource at the same time may exist, and the network quality of data connection between the terminals of the plurality of users and the server is uneven, after the server extracts the first video data, the first video data can be converted in real time to generate the second video data, so as to meet different requirements of different terminals due to the network quality.
In step 204, the server side segments the first video data into at least one first slice data, segments the second video data into at least one second slice data, assigns at least one first label to the at least one first slice data, and assigns at least one second label to the at least one second slice data.
In the embodiment of the present invention, it is considered that the data size of the first video data acquired by the server is large, and the first video data may be continuously acquired, and the second video data is continuously generated, so that after the server acquires the first video data and the second video data, the server does not transmit the entire acquired first video data or the second video data to the terminal, but needs to segment the first video data and the second video data to obtain at least one first slice data and at least one second slice data, and subsequently, according to the network quality of the data connection between the server and the terminal, the server continuously transmits the at least one first slice data or the at least one second slice data. Wherein the at least one first slice data is a slice data of the first video data, and the at least one second slice data is a slice data of the second video data. The essence Of the first slice data and the second slice data are both GOPs (Group Of Pictures), generally, the time length Of the first slice data and the time length Of the second slice data can both be 10 seconds, and the embodiment Of the present invention does not specifically limit the manner Of dividing the first video data and the second video data.
It should be noted that, after the first video data and the second video data are sliced to generate at least one first slice data and at least one second slice data, in order to ensure that when the quality of the data connection network between the server and the terminal is detected to be poor, the content included in the second slice data of the second video data sent next is correctly jointed with the content included in the first slice data of the first video data sent last, so as to avoid the mess of the slice data, after generating the at least one first slice data and the at least one second slice data, it is necessary to assign at least one first label to the at least one first slice data, assign at least one second label to the at least one second slice data, so as to subsequently one-to-one correspond the at least one first slice data and the at least one second slice data based on the at least one first label and the at least one second label. Wherein the first TAG may be represented by TAG1 and the second TAG may be represented by TAG 2.
In step 205, the server-side associates at least one first tag with at least one second tag one-to-one according to an arrangement order of the at least one first sliced data and the at least one second sliced data.
In the embodiment of the present invention, after obtaining at least one first slice data and at least one second slice data, at least one first label of the at least one first slice data needs to be in one-to-one correspondence with a second label of the at least one second slice data. When the at least one first tag corresponds to the at least one second tag, the at least one first slice data may be compared with content included in the at least one second slice data, and the first tag of the first slice data and the second tag of the second slice data including the same content are associated, so as to enable the at least one first tag to correspond to the at least one second tag.
Since the at least one first slice data and the at least one second slice data are arranged according to the time sequence, in order to simplify the process of corresponding the first tag and the second tag, after the first tag arranged at the head corresponds to the second tag, the rest of the first tag and the rest of the second tag can be corresponding according to the arrangement sequence of the rest of the first tag and the rest of the second tag, and the content included in the first slice data does not need to be compared with the content included in the second slice data, thereby saving a great deal of manpower.
In step 206, the server determines at least one piece of first slice data, and detects a transmission process of transmitting the at least one piece of first slice data to the terminal in real time when the at least one piece of first slice data is transmitted, so as to obtain detection data.
In the embodiment of the invention, the detection data at least comprises a time-out retransmission parameter, a transmission packet quantity parameter and a congestion parameter. After the server determines at least one first slice data and at least one second slice data, in order to ensure that a user with better network quality can receive the first video data as soon as possible, the server sends the first slice data of the first video data to the terminal for the first time, and if the network quality is detected to be poor in the subsequent process, the server changes to transmit the second slice data of the second video data. When the server side starts to transmit the first slice data in the at least one first slice data, the network quality of data connection between the server side and the terminal fluctuates, so that the situation of the network quality can be known in real time, the slice data with the code rate capable of being transmitted normally is sent according to the network quality, and when the first slice data starts to be transmitted, the server side can detect the data transmission process in real time and acquire the detection data.
When the detection data is obtained, the server end can set the detection duration, obtain the number of failures of the first slice data which fails to be sent within the detection duration, and use the number of failures as an overtime retransmission parameter; acquiring the total number of first slice data sent within the detection time period, and taking the number as a packet sending quantity parameter; and calculating the proportion of the failure number in the total number, and taking the proportion as a congestion parameter. After the timeout retransmission parameter, the transmission packet amount parameter, and the congestion parameter are obtained, the timeout retransmission parameter, the transmission packet amount parameter, and the congestion parameter may be used as detection data. The embodiment of the present invention does not specifically limit the type of the acquired detection data and the method for acquiring the detection data.
In step 207, the server determines a first weight coefficient, a second weight coefficient, and a third weight coefficient of the timeout retransmission parameter, the packet size sending parameter, and the congestion parameter, respectively, and calculates the timeout retransmission parameter, the packet size sending parameter, and the congestion parameter based on the first weight coefficient, the second weight coefficient, and the third weight coefficient, to obtain the transmission threshold.
In the embodiment of the present invention, in order to comprehensively consider the acquired detection data and further determine the network quality between the server and the terminal according to the detection data, the server may set a first weight coefficient, a second weight coefficient, and a third weight coefficient of the timeout retransmission parameter, the packet size parameter, and the congestion parameter, respectively, and further generate the transmission threshold according to the first weight coefficient, the second weight coefficient, and the third weight coefficient.
When the transmission threshold is generated, a first product of the timeout retransmission parameter and the first weight coefficient may be calculated, a second product of the transmission packet size parameter and the second weight coefficient may be calculated, a third product of the congestion parameter and the third weight coefficient may be calculated, and a sum of the first product, the second product, and the third product may be calculated, and the sum may be used as the transmission threshold. The algorithm of the transmission threshold mentioned above is only one possible case, and there may be different methods for generating the transmission threshold according to different real-time scenarios.
In step 208, the server acquires a preset threshold, determines whether the transmission threshold is greater than the preset threshold, and executes step 209 when the transmission threshold is less than the preset threshold; when the transmission threshold is greater than the preset threshold, the following step 210 is performed.
In the embodiment of the present invention, in order to evaluate the network quality of the data connection between the server and the terminal according to the transmission threshold, the server may set a preset threshold, compare the generated transmission threshold with the preset threshold, determine whether the transmission threshold is greater than the preset threshold, and when the transmission threshold is less than the preset threshold, indicate that the network quality of the data connection between the server and the terminal currently meets the preset condition, and may continue to transmit the first video data (i.e., the first sliced data) to the terminal, so that step 209 may be executed; when the transmission threshold is greater than the preset threshold, it indicates that the network quality of the data connection between the current server and the terminal does not meet the preset condition, the first video data is not suitable for the data connection with the current terminal, and the second video data (i.e., the second slice data) needs to be replaced for transmission, so that the following step 210 may be executed.
It should be noted that, for different application scenarios and areas, the preset threshold set by the server may be different, for example, for an area with more base stations and stronger network signals, the preset threshold may be appropriately reduced; for areas with fewer base stations and weaker network information, the preset threshold value can be properly increased, and the value of the preset threshold value is not specifically limited in the embodiment of the invention.
In step 209, when the transmission threshold is smaller than the preset threshold, it is determined that the network quality meets the preset condition, and the server continues to execute the transmission process of the current at least one first slice of data.
In the embodiment of the present invention, when the transmission threshold is smaller than the preset threshold, it indicates that the network quality of the data connection between the current server and the terminal meets the preset condition, and the first video data may be continuously transmitted to the terminal, that is, the first slice data may be continuously transmitted to the terminal, so that the remaining first slice data may be continuously transmitted to the terminal.
In step 210, when the transmission threshold is greater than the preset threshold, it is determined that the network quality does not meet the preset condition, the server obtains a first tag of the first sliced data to be transmitted, determines a second target tag corresponding to the first tag, extracts second sliced data corresponding to the second target tag from at least one second sliced data, and transmits the second sliced data to the terminal.
In the embodiment of the invention, when the transmission threshold is greater than the preset threshold, it indicates that the network quality of the data connection between the current server and the terminal does not meet the preset condition, the first video data is not suitable for the data connection with the current terminal, and the second video data needs to be replaced for data transmission. Since some first slice data are transmitted to the terminal before, the server needs to determine the current first slice data to be transmitted, and further determine the target second slice data corresponding to the first slice data to be transmitted, so as to transmit the target second slice data to the terminal.
After the server determines the first slice data to be sent, the server can extract the specified first tag of the first slice data to be sent. Since there is a correspondence between at least one first tag of the at least one first slice data and at least one second tag of the at least one second slice data, a target second tag corresponding to the specified first tag may be determined. After the target second tag is determined, target second slice data corresponding to the target second tag may be extracted from the at least one second slice data, and the target second slice data is transmitted to the terminal.
After the target second slice data is transmitted to the terminal, the server side may also continuously transmit other slice data subsequent to the target second slice data to the terminal.
In step 211, the server determines a preset detection period, and executes the above-mentioned process of acquiring the detection data and determining whether the network quality meets the preset condition every other preset detection period.
In the embodiment of the invention, because the network quality of the data connection between the server and the terminal fluctuates and the network quality is likely to be improved subsequently, the server can continuously detect the network quality of the data connection between the server and the terminal. The server side can set preset detection periods, and each preset detection period can execute the process of acquiring the detection data and determining whether the network quality meets the preset conditions. The process of obtaining the detection data and determining whether the network quality meets the preset condition is consistent with the process shown in the above step 206 to step 208, and is not described herein again.
It should be noted that, if it is determined that the transmission threshold is smaller than the preset threshold in a certain judgment of the transmission threshold, the sending of the second slice data to the terminal may be stopped, the first slice data corresponding to the second slice data that is currently ready to be sent is determined, and the first slice data corresponding to the second slice data that is currently ready to be sent and other first slice data subsequent to the first slice data are sent to the terminal. Referring to fig. 2B, at time 16: when the rate is from 20:03 to 16:20:05, the server side sends first slice data of the high-bit-rate video to the terminal; when the network quality of the data connection between the server and the terminal is detected to be not in accordance with the preset condition at the moment 16:20:05, second slice data which are second video data are sent to the terminal by the server at the moment 16:20: 05; when the network quality of the data connection between the server and the terminal is detected to meet the preset condition at the moment 16:20:06, the server sends second slice data which is the first video data to the terminal at the moment 16:20: 06; and when the network quality of the data connection between the server side and the terminal is detected to be not in accordance with the preset condition at the time 16:20:07, the server side sends second slice data which is second video data to the terminal at the time 16:20: 07. The process of determining the first slice data corresponding to the second slice data that is currently ready to be sent is consistent with the process of determining the target second slice data shown in step 210, and is not described herein again.
In step 212, if a disconnection request of the terminal is received, the server disconnects the data connection with the terminal, and deletes the at least one first slice data and the at least one second slice data.
In the embodiment of the invention, when the terminal detects that the user closes the page of the video playing in the client, the terminal determines that the video playing needs to be stopped, and at this time, the terminal generates the disconnection request and sends the disconnection request to the server so that the server stops data transmission to the terminal. In order to ensure that the server can determine which data transmission is stopped when receiving the disconnection request, the terminal may carry the to-be-terminated identifier of the to-be-terminated resource in the disconnection request.
If the server receives the disconnection request of the terminal, the server disconnects the data connection with the terminal. In addition, considering that the server may already cache video data that has not been transmitted to the terminal, in order to save storage space of the server and avoid causing an excessive load on the server, when the server disconnects the data connection with the terminal, the at least one first slice data that has already been cached and the at least one second slice data that has been converted may be deleted.
It should be noted that the content in step 212 may be executed only when the terminal sends the disconnection request, and if the server does not receive the disconnection request sent by the terminal, the server may maintain the data transmission state to the terminal.
The method provided by the embodiment of the invention transmits at least one first slice data of the live video stream to the terminal, detecting the transmission process in real time while transmitting the at least one first slice of data, obtaining detection data, when it is determined based on the detection data that the network quality does not meet a preset condition, determining target second slice data from at least one second slice data of the live video stream according to the first slice data to be sent, sending the target second slice data to the terminal, the server side can judge which code rate video data are transmitted to the terminal according to the network quality of data connection between the server side and the terminal, code rate conversion is not needed to be carried out on the received data by the terminal, playing delay is avoided when the terminal converts the code rate, the method and the device are more suitable for live scenes, intelligence is better, and user viscosity is higher.
Fig. 3A is a block diagram illustrating a data transmission apparatus according to an example embodiment. Referring to fig. 3A, the apparatus includes a transmitting module 301, a detecting module 302, and a determining module 303.
The sending module 301 is configured to send at least one first slice data of a live video stream to a terminal, where the at least one first slice data is a first video data with a code rate greater than a first preset code rate;
the detection module 302 is configured to detect a transmission process in real time when transmitting at least one first slice of data, and obtain detection data, where the detection data at least includes an overtime retransmission parameter, a packet sending amount parameter, and a congestion parameter;
the determining module 303 is configured to determine, according to first slice data to be sent, target second slice data from at least one second slice data of a live video stream when it is determined that the network quality does not meet a preset condition based on the detection data, and send the target second slice data to the terminal; the at least one second slice data is second video data with a code rate smaller than a second preset code rate, and the position of the target second slice data in the at least one second slice data is consistent with the position of the first slice data to be sent in the at least one first slice data.
The device provided by the embodiment of the invention transmits at least one piece of first slice data of the live video stream to the terminal, detecting the transmission process in real time while transmitting the at least one first slice of data, obtaining detection data, when it is determined based on the detection data that the network quality does not meet a preset condition, determining target second slice data from at least one second slice data of the live video stream according to the first slice data to be sent, sending the target second slice data to the terminal, the server side can judge which code rate video data are transmitted to the terminal according to the network quality of data connection between the server side and the terminal, code rate conversion is not needed to be carried out on the received data by the terminal, playing delay is avoided when the terminal converts the code rate, the method and the device are more suitable for live scenes, intelligence is better, and user viscosity is higher.
In another embodiment, referring to fig. 3B, the apparatus further comprises an access module 304 and a creation module 305.
The access module 304 is configured to receive an access request of a terminal, and access the terminal based on a real-time messaging protocol (RTMP);
the creating module 305 is configured to create a communication parameter with the terminal, and establish a data connection with the terminal.
In another embodiment, referring to fig. 3C, the apparatus further comprises a receiving module 306, an obtaining module 307 and a converting module 308.
The receiving module 306 is configured to receive a video request sent by a terminal, where the video request at least includes a resource identifier of first video data;
the obtaining module 307 is configured to obtain first video data according to the resource identifier;
the conversion module 308 is configured to perform rate conversion on the first video data based on the coding system to generate second video data.
In another embodiment, referring to fig. 3D, the apparatus further comprises a segmentation module 309, an assignment module 310 and an association module 311.
The slicing module 309 is configured to slice the first video data into at least one first slice data, and slice the second video data into at least one second slice data;
the assigning module 310 is configured to assign at least one first tag to at least one first slice data and assign at least one second tag to at least one second slice data;
the associating module 311 is configured to associate at least one first tag with at least one second tag according to an arrangement order of the at least one first slice data and the at least one second slice data;
correspondingly, the determining module 303 is configured to determine that the network quality does not meet the preset condition when the transmission threshold is greater than the preset threshold, and acquire the specified first tag of the first slice data to be sent; determining a designated second label corresponding to the designated first label, and extracting target second slice data corresponding to the designated second label from the at least one second slice data; and transmitting the target second slice data to the terminal.
In another embodiment, referring to fig. 3E, the apparatus further comprises a coefficient determination module 312, a calculation module 313 and a decision module 314.
The coefficient determining module 312 is configured to determine a first weight coefficient, a second weight coefficient, and a third weight coefficient of the timeout retransmission parameter, the packet size sending parameter, and the congestion parameter, respectively;
the calculating module 313 is configured to calculate an overtime retransmission parameter, a transmission packet size parameter, and a congestion parameter based on the first weight coefficient, the second weight coefficient, and the third weight coefficient, so as to obtain a transmission threshold;
the determining module 314 is configured to obtain a preset threshold, and determine whether the transmission threshold is greater than the preset threshold.
In another embodiment, the sending module 301 is further configured to continue to perform the transmission process of the current at least one first slice of data when it is determined that the network quality meets the preset condition based on the detection data.
In another embodiment, the detecting module 302 is further configured to determine a preset detecting period, and execute the above-mentioned processes of acquiring the detection data and determining whether the network quality meets the preset condition every preset detecting period.
In another embodiment, referring to fig. 3F, the apparatus further comprises a disconnection module 315 and a deletion module 316.
The disconnection module 315 is configured to disconnect the data connection with the terminal if a disconnection request of the terminal is received;
the deleting module 316 is configured to delete the at least one first slice data and the at least one second slice data.
With regard to the apparatus in the above-described embodiment, the specific manner in which each module performs the operation has been described in detail in the embodiment related to the method, and will not be elaborated here.
Fig. 4 is a block diagram illustrating an apparatus 400 for data transmission in accordance with an example embodiment. For example, the apparatus 400 may be provided as a server. Referring to fig. 4, apparatus 400 includes a processing component 422, which further includes one or more processors, and memory resources, represented by memory 432, for storing instructions, such as applications, that are executable by processing component 422. The application programs stored in memory 432 may include one or more modules that each correspond to a set of instructions. Further, the processing component 422 is configured to execute instructions to perform the data transfer methods described above.
The apparatus 400 may also include a power component 426 configured to perform power management of the apparatus 400, a wired or wireless network interface 450 configured to connect the apparatus 400 to a network, and an input output (I/O) interface 458. The apparatus 400 may operate based on an operating system, such as Windows Server, stored in the memory 432TM,Mac OS XTM,UnixTM,LinuxTM,FreeBSDTMOr the like.
The embodiment of the invention also provides computer equipment which comprises a memory, a processor and computer executable instructions stored on the memory and capable of running on the processor, wherein the processor executes the computer executable instructions to realize the data transmission method.
Embodiments of the present invention further provide a readable storage medium, and when instructions in the storage medium are executed by a processor of a data transmission apparatus, the data transmission apparatus is enabled to execute the data transmission method.
Other embodiments of the invention will be apparent to those skilled in the art from consideration of the specification and practice of the invention disclosed herein. This application is intended to cover any variations, uses, or adaptations of the invention following, in general, the principles of the invention and including such departures from the present disclosure as come within known or customary practice within the art to which the invention pertains. It is intended that the specification and examples be considered as exemplary only, with a true scope and spirit of the invention being indicated by the following claims.
It will be understood that the invention is not limited to the precise arrangements described above and shown in the drawings and that various modifications and changes may be made without departing from the scope thereof. The scope of the invention is limited only by the appended claims.

Claims (14)

1. A method of data transmission, the method comprising:
receiving a video request sent by a terminal, wherein the video request at least comprises a resource identifier of first video data;
acquiring the first video data according to the resource identifier;
performing code rate conversion on the first video data based on an encoding system to generate second video data;
slicing the first video data into at least one first slice data, and slicing the second video data into at least one second slice data;
assigning at least one first tag to the at least one first slice data and at least one second tag to the at least one second slice data;
associating the at least one first tag with the at least one second tag in an order of arrangement of the at least one first slice data and the at least one second slice data;
sending the at least one first slice data of the live video stream to a terminal, wherein the at least one first slice data is first video data with a code rate larger than a first preset code rate;
when the at least one first slice data is transmitted, detecting a transmission process in real time to obtain detection data, wherein the detection data at least comprise an overtime retransmission parameter, a sending packet quantity parameter and a congestion parameter, the overtime retransmission parameter is the failure number of the first slice data which is failed to be sent within the detection time, the sending packet quantity parameter is the total number of the first slice data which is sent within the detection time, and the congestion parameter is the proportion of the failure number in the total number;
when the transmission threshold is greater than a preset threshold, determining that the network quality does not meet a preset condition, and acquiring a specified first label of the first slice data to be sent, wherein the transmission threshold is calculated according to the overtime retransmission parameter, the sent packet quantity parameter and the congestion parameter;
determining a designated second label corresponding to the designated first label, and extracting target second slice data corresponding to the designated second label from the at least one second slice data;
transmitting the target second slice data to the terminal;
the at least one second slice data is second video data with a code rate smaller than a second preset code rate, and the position of the target second slice data in the at least one second slice data is consistent with the position of the first slice data to be sent in the at least one first slice data.
2. The method of claim 1, wherein prior to sending the at least one first slice of data of the live video stream to the terminal, the method further comprises:
receiving an access request of the terminal, and accessing the terminal based on a real-time message transfer (RTMP) protocol;
and establishing communication parameters with the terminal, and establishing data connection with the terminal.
3. The method according to claim 1, wherein the detecting a transmission process in real time while transmitting the at least one first slice of data, and after acquiring the detected data, the method further comprises:
respectively determining a first weight coefficient, a second weight coefficient and a third weight coefficient of the overtime retransmission parameter, the sending packet quantity parameter and the congestion parameter;
calculating the timeout retransmission parameter, the transmission packet size parameter and the congestion parameter based on the first weight coefficient, the second weight coefficient and the third weight coefficient to obtain the transmission threshold;
and acquiring the preset threshold value, and judging whether the transmission threshold value is larger than the preset threshold value.
4. The method of claim 1, further comprising:
and when the network quality is determined to meet the preset condition based on the detection data, continuing to execute the transmission process of the current at least one first slice of data.
5. The method of claim 1, further comprising:
and determining a preset detection period, and executing the process of acquiring the detection data and determining whether the network quality meets a preset condition every other preset detection period.
6. The method of claim 1, further comprising:
if a disconnection request of the terminal is received, disconnecting the data connection with the terminal;
deleting the at least one first slice data and the at least one second slice data.
7. A data transmission apparatus, characterized in that the apparatus comprises:
the receiving module is used for receiving a video request sent by a terminal, wherein the video request at least comprises a resource identifier of first video data;
the acquisition module is used for acquiring the first video data according to the resource identifier;
the conversion module is used for carrying out code rate conversion on the first video data based on an encoding system to generate second video data;
a slicing module, configured to slice the first video data into at least one first slice data, and slice the second video data into at least one second slice data;
the distribution module is used for distributing at least one first label for the at least one first slice data and distributing at least one second label for the at least one second slice data;
an association module for associating the at least one first tag with the at least one second tag according to an arrangement order of the at least one first slice data and the at least one second slice data;
the sending module is used for sending the at least one first slice data of the live video stream to a terminal, wherein the at least one first slice data is first video data with a code rate larger than a first preset code rate;
the detection module is used for detecting the transmission process in real time to obtain detection data when the at least one first slice data is transmitted, wherein the detection data at least comprises an overtime retransmission parameter, a sending packet quantity parameter and a congestion parameter, the overtime retransmission parameter is the failure number of the first slice data which is failed to be sent within the detection time, the sending packet quantity parameter is the total number of the first slice data which is sent within the detection time, and the congestion parameter is the proportion of the failure number in the total number;
the determining module is used for determining that the network quality does not meet a preset condition when the transmission threshold is larger than a preset threshold, and acquiring a specified first label of the first slice data to be sent; determining a designated second label corresponding to the designated first label, and extracting target second slice data corresponding to the designated second label from the at least one second slice data; transmitting the target second slice data to the terminal;
the at least one second slice data is second video data with a code rate smaller than a second preset code rate, and the position of the target second slice data in the at least one second slice data is consistent with the position of the first slice data to be sent in the at least one first slice data.
8. The apparatus of claim 7, further comprising:
the access module is used for receiving an access request of the terminal and accessing the terminal based on a real-time messaging protocol (RTMP);
and the creating module is used for creating communication parameters between the terminal and the creating module and establishing data connection between the terminal and the creating module.
9. The apparatus of claim 7, further comprising:
a coefficient determining module, configured to determine a first weight coefficient, a second weight coefficient, and a third weight coefficient of the timeout retransmission parameter, the sent packet size parameter, and the congestion parameter, respectively;
a calculating module, configured to calculate the timeout retransmission parameter, the sent packet size parameter, and the congestion parameter based on the first weight coefficient, the second weight coefficient, and the third weight coefficient, so as to obtain the transmission threshold;
and the judging module is used for acquiring the preset threshold value and judging whether the transmission threshold value is larger than the preset threshold value.
10. The apparatus of claim 7, wherein the sending module is further configured to continue to perform the transmission process of the current at least one first slice of data when it is determined that the network quality meets the preset condition based on the detection data.
11. The apparatus according to claim 7, wherein the detecting module is further configured to determine a preset detecting period, and execute the process of acquiring the detection data and determining whether the network quality meets a preset condition every other preset detecting period.
12. The apparatus of claim 7, further comprising:
the disconnection module is used for disconnecting the data connection with the terminal if a disconnection request of the terminal is received;
a deletion module to delete the at least one first slice data and the at least one second slice data.
13. A computer device comprising a memory, a processor and computer-executable instructions stored on the memory and executable on the processor, wherein the processor implements the data transmission method of any one of claims 1 to 6 when executing the computer-executable instructions.
14. A storage medium having stored thereon instructions executable by a processor to perform the data transfer method of any one of claims 1-6.
CN201810595339.9A 2018-06-11 2018-06-11 Data transmission method and device, computer equipment and storage medium Active CN108769805B (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201810595339.9A CN108769805B (en) 2018-06-11 2018-06-11 Data transmission method and device, computer equipment and storage medium

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201810595339.9A CN108769805B (en) 2018-06-11 2018-06-11 Data transmission method and device, computer equipment and storage medium

Publications (2)

Publication Number Publication Date
CN108769805A CN108769805A (en) 2018-11-06
CN108769805B true CN108769805B (en) 2021-05-07

Family

ID=64021849

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201810595339.9A Active CN108769805B (en) 2018-06-11 2018-06-11 Data transmission method and device, computer equipment and storage medium

Country Status (1)

Country Link
CN (1) CN108769805B (en)

Families Citing this family (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN110312150B (en) * 2019-04-24 2022-04-05 网宿科技股份有限公司 Video frame transmission method, system and server
CN111083536B (en) * 2019-12-31 2022-02-22 广州酷狗计算机科技有限公司 Method and device for adjusting video code rate
CN111901825B (en) * 2020-08-11 2023-02-24 中国联合网络通信集团有限公司 Wireless communication network quality evaluation method and device based on network quality slice
CN112527310A (en) * 2020-12-15 2021-03-19 平安国际智慧城市科技股份有限公司 Multi-tenant data isolation method and device, computer equipment and storage medium
WO2023010356A1 (en) * 2021-08-04 2023-02-09 深圳市大疆创新科技有限公司 Video transmission method and apparatus, and system, terminal device, movable platform and storage medium
CN114826750B (en) * 2022-04-29 2024-02-06 阿里巴巴(中国)有限公司 Network anomaly detection method, server cluster and storage medium

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101447938A (en) * 2008-12-08 2009-06-03 深圳华为通信技术有限公司 Network service quality processing method, device and system
CN102843351A (en) * 2012-03-31 2012-12-26 华为技术有限公司 Streaming media service processing method, streaming media server and system
CN106454395A (en) * 2016-09-20 2017-02-22 北京百度网讯科技有限公司 Method and device for providing multi-code rate streaming media self-adaptively in server
CN106488265A (en) * 2016-10-12 2017-03-08 广州酷狗计算机科技有限公司 A kind of method and apparatus sending Media Stream
CN108024126A (en) * 2017-11-28 2018-05-11 北京潘达互娱科技有限公司 Network direct broadcasting video regulation method, device, electronic equipment and storage medium

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101447938A (en) * 2008-12-08 2009-06-03 深圳华为通信技术有限公司 Network service quality processing method, device and system
CN102843351A (en) * 2012-03-31 2012-12-26 华为技术有限公司 Streaming media service processing method, streaming media server and system
CN106454395A (en) * 2016-09-20 2017-02-22 北京百度网讯科技有限公司 Method and device for providing multi-code rate streaming media self-adaptively in server
CN106488265A (en) * 2016-10-12 2017-03-08 广州酷狗计算机科技有限公司 A kind of method and apparatus sending Media Stream
CN108024126A (en) * 2017-11-28 2018-05-11 北京潘达互娱科技有限公司 Network direct broadcasting video regulation method, device, electronic equipment and storage medium

Also Published As

Publication number Publication date
CN108769805A (en) 2018-11-06

Similar Documents

Publication Publication Date Title
CN108769805B (en) Data transmission method and device, computer equipment and storage medium
CN108989264B (en) Live broadcast method, system and related equipment
US9699518B2 (en) Information processing apparatus, information processing system, recording medium, and method for transmission and reception of moving image data
US9729909B2 (en) Method and system for media adaption
CN102571726B (en) Method, system and the state judgment server that multi-medium data is shared
WO2020155295A1 (en) Live data processing method and system, and server
WO2015120766A1 (en) Video optimisation system and method
CN108881931B (en) Data buffering method and network equipment
US20190149773A1 (en) Moving image splitting device and monitoring method
CN111093094A (en) Video transcoding method, device and system, electronic equipment and readable storage medium
CN110519616B (en) Video distribution method, distribution node, scheduling center and storage medium
CN107920072B (en) Multimedia sharing method and system based on data characteristics
CN115002497B (en) Live broadcast source-returning scheduling method and system and source-returning server
CN112584194A (en) Video code stream pushing method and device, computer equipment and storage medium
CN106664432B (en) Multimedia information playing method and system, acquisition equipment and standardized server
WO2015106383A1 (en) Method for assessing video quality and related device
CN111654526A (en) Load balancing method and system for streaming media server
TWI680668B (en) Screen image transmission method, image restoration method, screen image transmission system, image restoration system, screen image transmission program, image restoration program, image compression method, image compression system, and image compression program
CN116248644A (en) Optimization method based on WebRTC plug flow technology
TWI573448B (en) Streaming connection management method and system
CN111200562B (en) Flow guiding method, static father node, edge node and CDN (content delivery network)
CN114143616A (en) Target video processing method and system, storage medium and electronic device
US11140060B2 (en) Dynamic variation of media segment durations for optimization of network round trip times
KR20220081930A (en) Multiple protocol prediction and in-session adaptation in video streaming
CN112449209B (en) Video storage method and device, cloud server and computer readable storage medium

Legal Events

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

Effective date of registration: 20220406

Address after: 4119, 41st floor, building 1, No.500, middle section of Tianfu Avenue, Chengdu hi tech Zone, China (Sichuan) pilot Free Trade Zone, Chengdu, Sichuan 610000

Patentee after: Chengdu kugou business incubator management Co.,Ltd.

Address before: No. 315, Huangpu Avenue middle, Tianhe District, Guangzhou City, Guangdong Province

Patentee before: GUANGZHOU KUGOU COMPUTER TECHNOLOGY Co.,Ltd.

TR01 Transfer of patent right