CN110213603B - Live streaming transmission method, device, server, system and storage medium - Google Patents

Live streaming transmission method, device, server, system and storage medium Download PDF

Info

Publication number
CN110213603B
CN110213603B CN201910430598.0A CN201910430598A CN110213603B CN 110213603 B CN110213603 B CN 110213603B CN 201910430598 A CN201910430598 A CN 201910430598A CN 110213603 B CN110213603 B CN 110213603B
Authority
CN
China
Prior art keywords
live stream
anchor client
client
transcoding
link
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
CN201910430598.0A
Other languages
Chinese (zh)
Other versions
CN110213603A (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.)
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 CN201910430598.0A priority Critical patent/CN110213603B/en
Publication of CN110213603A publication Critical patent/CN110213603A/en
Application granted granted Critical
Publication of CN110213603B publication Critical patent/CN110213603B/en
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/20Servers specifically adapted for the distribution of content, e.g. VOD servers; Operations thereof
    • H04N21/21Server components or server architectures
    • H04N21/218Source of audio or video content, e.g. local disk arrays
    • H04N21/2187Live feed
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/20Servers specifically adapted for the distribution of content, e.g. VOD servers; Operations thereof
    • H04N21/23Processing of content or additional data; Elementary server operations; Server middleware
    • H04N21/234Processing of video elementary streams, e.g. splicing of video streams, manipulating MPEG-4 scene graphs
    • H04N21/2343Processing of video elementary streams, e.g. splicing of video streams, manipulating MPEG-4 scene graphs involving reformatting operations of video signals for distribution or compliance with end-user requests or end-user device requirements
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/20Servers specifically adapted for the distribution of content, e.g. VOD servers; Operations thereof
    • H04N21/23Processing of content or additional data; Elementary server operations; Server middleware
    • H04N21/234Processing of video elementary streams, e.g. splicing of video streams, manipulating MPEG-4 scene graphs
    • H04N21/2343Processing of video elementary streams, e.g. splicing of video streams, manipulating MPEG-4 scene graphs involving reformatting operations of video signals for distribution or compliance with end-user requests or end-user device requirements
    • H04N21/234363Processing of video elementary streams, e.g. splicing of video streams, manipulating MPEG-4 scene graphs involving reformatting operations of video signals for distribution or compliance with end-user requests or end-user device requirements by altering the spatial resolution, e.g. for clients with a lower screen resolution
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/60Network structure or processes for video distribution between server and client or between remote clients; Control signalling between clients, server and network components; Transmission of management data between server and client, e.g. sending from server to client commands for recording incoming content stream; Communication details between server and client 
    • H04N21/63Control signaling related to video distribution between client, server and network components; Network processes for video distribution between server and clients or between remote clients, e.g. transmitting basic layer and enhancement layers over different transmission paths, setting up a peer-to-peer communication via Internet between remote STB's; Communication protocols; Addressing
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/60Network structure or processes for video distribution between server and client or between remote clients; Control signalling between clients, server and network components; Transmission of management data between server and client, e.g. sending from server to client commands for recording incoming content stream; Communication details between server and client 
    • H04N21/63Control signaling related to video distribution between client, server and network components; Network processes for video distribution between server and clients or between remote clients, e.g. transmitting basic layer and enhancement layers over different transmission paths, setting up a peer-to-peer communication via Internet between remote STB's; Communication protocols; Addressing
    • H04N21/64Addressing

Abstract

When determining that a demand for acquiring a live stream of an anchor client exists, a transcoding center node can directly send a live stream transmission request to an edge node for receiving the live stream of the anchor client according to a pre-established target link uniquely corresponding to the anchor client, so as to trigger the edge node to send the live stream of the anchor client to the transcoding center node through the target link. According to the method and the system, all live streams of all anchor of the edge node cluster are not required to be sent to the transcoding center node, so that the occupation of link bandwidth can be reduced, and when the live streams of the anchor client side are required, the transcoding center node transmits the live streams based on the pre-established target link, so that the link establishment process is reduced, and the problem of delay waiting existing when the transcoding center node pulls the live streams in the edge node can be avoided.

Description

Live streaming transmission method, device, server, system and storage medium
Technical Field
The present invention relates to the field of live broadcast technologies, and in particular, to a live broadcast stream transmission method, apparatus, server, system, and storage medium.
Background
In the current industry, a common scheme of a live broadcast system architecture is that a main broadcast pushes a live broadcast stream (the live broadcast stream can be considered to be composed of original audio and video data) to a corresponding edge server in a live broadcast system, and if a viewer only needs to watch the original audio and video data, the live broadcast stream can be directly obtained from an edge server cluster of the live broadcast system, the edge server can also be called an edge node, and the edge server cluster can be called an edge node cluster; however, if a viewer wants to view non-original audio/video data (such as audio/video data with other image qualities like high definition, blue light, etc.), a server with transcoding capability in a live broadcast system needs to be used for transcoding a live broadcast stream to generate audio/video data with the required image quality, and a server cluster with transcoding capability may be referred to as a transcoding center node.
At present, a method for a transcoding center node to obtain a live stream is as follows: the edge node actively establishes a link to the transcoding center node, and pushes each frame of original audio and video data sent by the anchor to the transcoding center node. Although extra waiting time delay is not needed when the transcoding center node needs the live broadcast stream, the live broadcast streams of all the anchor of the edge node cluster are transmitted to the transcoding center node from the edge node, and therefore the link bandwidth is high in occupation.
Another way for the transcoding center node to obtain the live stream is as follows: when a live stream of a certain anchor is needed, the transcoding center node actively establishes a link to a corresponding edge node of the anchor, and the edge node transfers each frame of original audio and video data newly sent by the anchor to the transcoding center node. Although the transcoding central node pulls the original audio and video data of the anchor on the edge node only when needed, the live broadcast streams of all the anchors on the edge node cluster are not transferred to the transcoding central node, and the occupation of link bandwidth is small; however, when the transcoding central node pulls the live stream, there is a problem of delay waiting (for example, when the transcoding central node pulls the live stream, it needs to establish a link from the transcoding central node to the edge node first to start pulling the live stream, and needs to obtain an operator where the edge node is located, and dispatch a server in the transcoding central node, which is in the same operator as the edge node, to pull the live stream, so that the live stream cannot be pulled across operators, otherwise, the problem that the network between the operators cannot pull the live stream due to difference is caused).
Disclosure of Invention
In view of the above, to solve the above problems, the present invention provides a live streaming transmission method, apparatus, server, system and storage medium, so as to avoid the problem of delay waiting when a transcoding center node pulls a live stream in an edge node on the basis of reducing link bandwidth occupation. The technical scheme is as follows:
a live stream transmission method is applied to a transcoding center node and comprises the following steps:
detecting whether a demand for acquiring a live stream of a main broadcast client exists;
if the demand of acquiring the live stream of the anchor client exists, determining a pre-established target link uniquely corresponding to the anchor client, wherein the target link is a link between the edge node and the transcoding center node, which is established by responding to the received live stream of the anchor client;
sending a live streaming request to the edge node through the target link, where the live streaming request is used to trigger the edge node to send a live streaming of the anchor client to the transcoding center node through the target link.
A live streaming apparatus comprising:
the detection unit is used for detecting whether a requirement for acquiring the live stream of the anchor client exists or not;
the target link determining unit is used for determining a pre-established target link uniquely corresponding to the anchor client if the requirement for acquiring the live stream of the anchor client exists, wherein the target link is a link between the edge node and the transcoding center node, which is established by responding to the received live stream of the anchor client;
and the live streaming transmission unit is used for sending a live streaming transmission request to the edge node through the target link, wherein the live streaming transmission request is used for triggering the edge node to send the live streaming of the anchor client to the transcoding center node through the target link.
A server, comprising: at least one memory and at least one processor; the memory stores a program, and the processor invokes the program stored by the memory, the program being for implementing the live streaming method.
A storage medium having stored therein computer-executable instructions for performing the live streaming method.
A live streaming system, comprising:
the transcoding center node is used for detecting whether a demand for acquiring the live stream of the anchor client exists or not; if the demand of acquiring the live stream of the anchor client exists, determining a pre-established target link uniquely corresponding to the anchor client, wherein the target link is a link between the edge node and the transcoding center node, which is established by responding to the received live stream of the anchor client; sending a live streaming request to the edge node over the target link;
and the edge node is used for responding to the live stream transmission request and sending the live stream of the anchor client to the transcoding center node through the target link.
When determining that a demand for acquiring a live stream of an anchor client exists, a transcoding center node can directly send a live stream transmission request to an edge node for receiving the live stream of the anchor client according to a pre-established target link uniquely corresponding to the anchor client, so as to trigger the edge node to send the live stream of the anchor client to the transcoding center node through the target link. According to the method and the system, all live streams of all anchor of the edge node cluster are not required to be sent to the transcoding center node, so that the occupation of link bandwidth can be reduced, and when the live streams of the anchor client side are required, the transcoding center node transmits the live streams based on the pre-established target link, so that the link establishment process is reduced, and the problem of delay waiting existing when the transcoding center node pulls the live streams in the edge node can be avoided.
Drawings
In order to more clearly illustrate the embodiments of the present invention or the technical solutions in the prior art, the drawings used in the description of the embodiments or the prior art will be briefly described below, it is obvious that the drawings in the following description are only embodiments of the present invention, and for those skilled in the art, other drawings can be obtained according to the provided drawings without creative efforts.
Fig. 1 is a schematic structural diagram of a live streaming system according to an embodiment of the present application;
fig. 2 is a block diagram of a hardware structure of a server according to an embodiment of the present disclosure;
fig. 3 is a flowchart of a live streaming method according to an embodiment of the present application;
fig. 4 is a schematic diagram of a live streaming transmission method according to an embodiment of the present application;
fig. 5 is a schematic diagram of another live streaming transmission method provided in an embodiment of the present application;
fig. 6 is a flowchart of a method for an edge node to establish a target link with a transcoding center node in response to a received live stream of an anchor client in a live stream transmission method according to an embodiment of the present application, and store link information of the anchor client;
fig. 7 is a schematic structural diagram of a live streaming apparatus according to an embodiment of the present application.
Detailed Description
The technical solutions in the embodiments of the present invention will be clearly and completely described below with reference to the drawings in the embodiments of the present invention, and it is obvious that the described embodiments are only a part of the embodiments of the present invention, and not all of the embodiments. All other embodiments, which can be derived by a person skilled in the art from the embodiments given herein without making any creative effort, shall fall within the protection scope of the present invention.
Example (b):
referring to fig. 1, an embodiment of the present application provides a live streaming system, which includes an edge node and a transcoding center node. The anchor client side starts the live broadcast to generate a live broadcast stream (the live broadcast stream is composed of original audio and video data), the anchor client side sends the live broadcast stream to a corresponding edge node, and the audience client side can directly acquire the live broadcast stream from the edge node for watching when needing to watch the original audio and video data of the anchor; however, when the audience client needs to view the non-original audio/video data of the anchor, the transcoding center node needs to acquire the live stream of the anchor client from the edge node and transcode the live stream, so that the audience client can view the non-original audio data by using the transcoded live stream of the anchor client. For example, when the audience client needs to watch the high-definition live video of the anchor, the transcoding center node needs to acquire the live stream of the anchor client from the edge node and transcode the live stream to obtain the high-definition live stream, so that the audience client can watch the high-definition live video of the anchor by using the high-definition live stream.
Furthermore, the live stream transmission system provided by the embodiment of the present application further includes a content delivery network CDN, and the transcoding central node, after transcoding the live stream of the anchor client, may send the transcoded live stream to the content delivery network, so that the audience client may obtain the transcoded live stream from the content delivery network to perform video viewing.
The live streaming transmission method provided by the embodiment of the application can be applied to a server, and the server can be a service device which provides service for a user on a network side, can be a server cluster formed by a plurality of servers, and can also be a single server. In this embodiment of the application, the server to which the live streaming transmission method is applied may be a transcoding center node.
Optionally, fig. 2 shows a block diagram of a hardware structure of the server, and referring to fig. 2, the hardware structure of the server may include: a processor 21, a communication interface 22, a memory 23 and a communication bus 24;
in the embodiment of the present invention, the number of the processor 21, the communication interface 22, the memory 23, and the communication bus 24 may be at least one, and the processor 21, the communication interface 22, and the memory 23 complete mutual communication through the communication bus 24;
the processor 21 may be a central processing unit CPU, or an application Specific Integrated circuit asic, or one or more Integrated circuits configured to implement embodiments of the present invention, or the like;
the memory 23 may include a high-speed RAM memory, and may further include a non-volatile memory (non-volatile memory) or the like, such as at least one disk memory;
wherein the memory stores a program, the processor may invoke the program stored in the memory, and the program is operable to:
detecting whether a demand for acquiring a live stream of a main broadcast client exists;
if the demand of acquiring the live stream of the anchor client exists, determining a pre-established target link uniquely corresponding to the anchor client, wherein the target link is a link between the edge node and the transcoding center node, which is established by responding to the received live stream of the anchor client;
and sending a live streaming transmission request to the edge node through the target link, wherein the live streaming transmission request is used for triggering the edge node to send the live streaming of the anchor client to the transcoding center node through the target link.
Alternatively, the detailed function and the extended function of the program may be described with reference to the following.
A live streaming transmission method provided in an embodiment of the present application is described in detail below from the perspective of a transcoding center node.
Fig. 3 is a flowchart of a live streaming transmission method according to an embodiment of the present application.
The method as shown in fig. 3, comprising:
s301, detecting whether a requirement for acquiring a live stream of a main broadcast client exists; if the request for acquiring the live stream of the anchor client exists, executing step S302;
in the embodiment of the application, the anchor client starts live broadcasting and generates a live broadcasting stream, and the anchor client sends the live broadcasting stream to an edge node corresponding to the anchor client in an edge node cluster.
The edge node in the edge node cluster corresponding to the anchor client may be an edge node in the edge node cluster whose position is closest to the position of the terminal to which the anchor client belongs.
The anchor client starts live broadcast and generates live broadcast stream, and after the live broadcast stream is sent to the edge node, the audience client can acquire the live broadcast stream from the edge node to watch the original audio and video data of the anchor.
As long as non-original audio and video data of a main broadcast requested to be watched by a viewer client exist, the transcoding center node detects the existence of a requirement for acquiring a live stream of the main broadcast client of the main broadcast; if the non-original audio and video data of the anchor do not exist, the transcoding central node does not detect the requirement of acquiring the live stream of the anchor client of the anchor. That is, as long as there is a viewer client viewing the non-original video data of the anchor, the transcoding central node will detect that there is a need to obtain the live stream of the anchor client of the anchor, and if there is no viewer client viewing the non-original video data of the anchor, the transcoding central node will not detect that there is a need to obtain the live stream of the anchor client of the anchor.
S302, a pre-established target link uniquely corresponding to the anchor client is determined, wherein the target link is a link between the edge node and a transcoding center node, and the link is established by responding to the received live stream of the anchor client;
in this embodiment of the present application, after the anchor starts live broadcast through the anchor client, a link uniquely corresponding to the anchor client is established first, where the link is a link between an edge node for receiving a live broadcast stream of the anchor client and a transcoding center node (for convenience of distinction, the link may be referred to as a target link temporarily).
After the anchor starts live broadcast through the anchor client, the anchor directly sends the live broadcast stream of the anchor client to an edge node for receiving the live broadcast stream of the anchor client, and once the edge node receives the live broadcast stream sent by the anchor client, the edge node establishes a link with a transcoding center node, wherein the link is the link uniquely corresponding to the anchor client.
And S303, sending a live streaming transmission request to the edge node through the target link, wherein the live streaming transmission request is used for triggering the edge node to send the live streaming of the anchor client to the transcoding center node through the target link.
When the transcoding center node detects that a demand for acquiring the live stream of the anchor client exists, a pre-established target link uniquely corresponding to the anchor client can be determined, and a live stream transmission request is sent to an edge node for receiving the live stream of the anchor client based on the target link. Correspondingly, after receiving the live streaming request, the edge node may be triggered by the live streaming request to send each frame of original audio and video data newly sent by the anchor client to the transcoding center node through the target link.
In the following, a live streaming method provided in an embodiment of the present application is described in detail from the perspective of a live streaming system in combination with the above commonality.
Fig. 4 is a schematic view of a live streaming transmission method according to an embodiment of the present application.
As shown in fig. 4, the method includes:
s401, starting live broadcast by a main broadcast client to generate live broadcast stream;
s402, the anchor client sends the live stream to an edge node;
s403, the edge node responds to the received live stream to establish a target link with the transcoding center node and stores link information of the anchor client, wherein the link information of the anchor client indicates that the target link is uniquely corresponding to the anchor client;
in this embodiment of the present application, the edge node may maintain a link information list, where the link information list records pre-established link information of each anchor client, and the link information of each anchor client records a target link uniquely corresponding to the anchor client.
For example, the link information of the anchor client 1 records a target link 1 uniquely corresponding to the anchor client 1, the link information of the anchor client 2 records a target link 2 uniquely corresponding to the anchor client 2, and the link information of the anchor client 3 records a target link 3 uniquely corresponding to the anchor client 3, where the target link 1, the target link 2, and the target link 3 are different from each other.
S404, the edge node sends the link information of the anchor client to the transcoding center node through the target link;
s405, the transcoding center node stores the link information of the anchor client;
in this embodiment, the transcoding center node also maintains a link information list, where the link information list maintained by the transcoding center node is a set of link information lists maintained by each edge node in the edge node cluster.
When the anchor client quits live broadcasting, the link between the edge node for receiving the live stream of the anchor client and the anchor client is disconnected, and correspondingly, the target link which is uniquely corresponding to the anchor client is disconnected between the edge node for receiving the live stream of the anchor client and the transcoding center node. At this time, the link information of the anchor client in the link information list maintained by the edge node is deleted, and the link information of the anchor client in the link information list maintained by the transcoding center node is deleted.
S406, if the transcoding center node has a requirement for acquiring the live stream of the anchor client, determining a pre-established target link uniquely corresponding to the anchor client according to the stored link information of the anchor client;
in the embodiment of the application, when detecting that there is a need for acquiring a live stream of a anchor client, a transcoding center node may query link information of the anchor client from a link information list maintained by the transcoding center node, and determine a target link uniquely corresponding to the anchor client from the link information of the anchor client.
S407, the transcoding center node sends a live broadcast stream transmission request to the edge node through the determined target link;
in the embodiment of the application, the live streaming request is used for triggering the edge node to send the live streaming of the anchor client to the transcoding center node through the determined target link.
S408, the edge node responds to the live stream transmission request and sends the live stream of the anchor client to the transcoding center node;
in the embodiment of the application, the live streaming request indicates an anchor client, and after receiving the live streaming request sent by the transcoding central node, the edge node can send each frame of original video data newly sent by the anchor client to the transcoding central node through a target link uniquely corresponding to the anchor client.
The anchor client side sends the live broadcast stream of the anchor client side to the edge node in a mode of sequentially sending each frame of generated original video data to the edge node in the live broadcast process.
S409, transcoding the live stream of the anchor client by the transcoding central node to obtain a target live stream;
s410, the transcoding center node sends the target live stream to a content distribution network;
s411, the content distribution network sends the target live stream to the audience client end which requests the target live stream.
In the embodiment of the application, after receiving the target live stream sent by the transcoding center node, the content distribution network can send the target live stream to the audience client requesting the target live stream, so that the audience client can watch the target live stream conveniently.
Fig. 5 is a schematic view of a live streaming transmission method according to an embodiment of the present application.
As shown in fig. 5, the method includes:
s501, starting live broadcast by a main broadcast client to generate live broadcast stream;
s502, the anchor client sends the live stream to an edge node;
s503, the edge node responds to the received live stream to establish a target link with the transcoding center node and stores link information of the anchor client, wherein the link information of the anchor client indicates that the target link is uniquely corresponding to the anchor client;
s504, the edge node transmits the live stream of the anchor client to the transcoding center node through the target link;
s505, after receiving the live stream of the anchor client, the transcoding center node stores the link information of the anchor client;
s506, if the transcoding central node detects that the requirement for acquiring the live stream of the anchor client does not exist, the transcoding central node sends a transmission pause request to the edge node through the target link;
in the embodiment of the application, a live stream is generated after a live client is started, the live stream is sent to an edge node, the edge node establishes a target link which is uniquely corresponding to the live client and is arranged between the edge node and a transcoding center node, the edge node sends the live stream of the live client to the transcoding center node through the target link, once the transcoding center node receives the live stream of the live client, the target link for sending the live client can be determined, and then link information of the live client is generated and stored. Once receiving the live stream of the anchor client, the transcoding center node detects whether a demand for acquiring the live stream of the anchor client exists currently; if the fact that the requirement for acquiring the live stream of the anchor client does not exist is detected, the transcoding central node sends a pause transmission request to an edge node for receiving the anchor client through a target link uniquely corresponding to the anchor client, the pause transmission request indicates that the anchor client exists, and the edge node receiving the pause transmission request stops transmitting the live stream of the anchor client to the transcoding central node. Further, if it is detected that there is no need to acquire the live stream of the anchor client, the transcoding center node may continue to receive the live stream of the anchor client sent by the edge node without processing.
In the embodiment of the application, the request for pausing transmission by the transcoding central node is used for triggering the edge node of the transcoding central node to stop transmitting the live stream of the anchor client to the transcoding central node.
S507, the edge node responds to the transmission suspension request and stops transmitting the live stream of the anchor client to the transcoding center node;
s508, if the transcoding central node detects that the demand of acquiring the live stream of the anchor client exists, determining a pre-established target link uniquely corresponding to the anchor client according to the stored link information of the anchor client;
in this embodiment of the application, if the transcoding central node detects that there is no need to acquire the live stream of the anchor client, the transcoding central node sends a pause transmission request to the edge node through the target link, and subsequently, if the transcoding central node detects that there is a need to acquire the live stream of the anchor client, the transcoding central node may determine, according to the stored link information of the anchor client, a target link that is pre-established and uniquely corresponds to the anchor client, and send a live stream transmission request to the edge node through the determined target link.
S509, the transcoding center node sends a live broadcast stream transmission request to the edge node through the determined target link;
s510, the edge node responds to a live stream transmission request and sends the live stream of the anchor client to the transcoding center node;
s511, the transcoding central node transcodes the live stream of the anchor client to obtain a target live stream;
s512, the transcoding center node sends the target live broadcast stream to a content distribution network;
s513, the content distribution network sends the target live stream to the audience client terminal requesting the target live stream.
In order to facilitate understanding of the live streaming transmission method provided in the embodiment of the present application, a method for an edge node in the live streaming transmission method to establish a target link between a live stream of an anchor client and a transcoding center node in response to a received live stream of the anchor client and store link information of the anchor client is described in detail, specifically please refer to fig. 6.
As shown in fig. 6, the method includes:
s601, the edge node responds to the received live stream of the anchor client and sends a link establishment request to a domain name resolution server, wherein the link establishment request carries an IP address of the edge node and a domain name of a transcoding center node;
s602, receiving an IP address of a target server returned by the resolution of the domain name resolution server on the IP address and the domain name, wherein the target server is a server with transcoding capacity in a transcoding center node;
in the embodiment of the present application, the target server is a server with transcoding capability in the transcoding center node, and an operator to which the server belongs is the same as an operator to which the edge node belongs.
And S603, establishing a target link with the target server and storing the link information of the anchor client.
Fig. 7 is a schematic structural diagram of a live streaming apparatus according to an embodiment of the present application.
As shown in fig. 7, the apparatus includes:
a detecting unit 71, configured to detect whether there is a need to acquire a live stream of the anchor client;
a target link determining unit 72, configured to determine a pre-established target link uniquely corresponding to the anchor client if there is a need to obtain a live stream of the anchor client, where the target link is a link between the edge node and the transcoding center node, where the edge node is established in response to the received live stream of the anchor client;
and the live streaming transmission unit 73 is configured to send a live streaming transmission request to the edge node through the target link, where the live streaming transmission request is used to trigger the edge node to send a live stream of the anchor client to the transcoding center node through the target link.
Further, the live stream transmission apparatus provided in this embodiment of the present application further includes a live stream sending unit, configured to send a target live stream to the content distribution network, where the target live stream is sent by the content distribution network to a viewer client that requests the target live stream, and the target live stream is a transcoded live stream of an anchor client.
In the embodiment of the present application, preferably, the establishing method of the target link includes:
the edge node responds to a received live stream of the anchor client to establish a target link with the transcoding center node and stores link information of the anchor client, wherein the link information of the anchor client indicates that the target link is uniquely corresponding to the anchor client;
and the edge node sends the link information of the anchor client to the transcoding center node through the target link so as to be stored by the transcoding center node.
In the embodiment of the present application, preferably, the establishing method of the target link includes:
the edge node responds to a received live stream of the anchor client to establish a target link with the transcoding center node and stores link information of the anchor client, wherein the link information of the anchor client indicates that the target link is uniquely corresponding to the anchor client;
the edge node transmits the live stream of the anchor client to the transcoding central node through the target link, and when the transcoding central node detects that the demand for acquiring the live stream of the anchor client does not exist, the transcoding central node transmits a pause transmission request to the edge node through the target link, wherein the pause transmission request is used for triggering the edge node to stop transmitting the live stream of the anchor client to the transcoding central node.
In this embodiment of the present application, preferably, the establishing, by the edge node, a target link with the transcoding center node in response to the received live stream of the anchor client, and storing link information of the anchor client includes: the edge node responds to the received live stream of the anchor client and sends a link establishment request to a domain name resolution server, wherein the link establishment request carries the IP address of the edge node and the domain name of the transcoding center node; receiving an IP address of a target server returned by a domain name resolution server for resolving the IP address and the domain name, wherein the target server is a server with transcoding capacity in a transcoding center node; and establishing a target link with the target server and storing link information of the anchor client.
Furthermore, an embodiment of the present application further provides a computer-readable storage medium, where computer-executable instructions are stored in the computer-readable storage medium, and the computer-executable instructions are used to execute the live streaming analysis method according to the foregoing embodiment.
For a detailed description of the program stored in the storage medium provided in the embodiments of the present application, reference may be made to the above embodiments, which are not described herein again.
When determining that a demand for acquiring a live stream of an anchor client exists, a transcoding center node can directly send a live stream transmission request to an edge node for receiving the live stream of the anchor client according to a pre-established target link uniquely corresponding to the anchor client, so as to trigger the edge node to send the live stream of the anchor client to the transcoding center node through the target link. According to the method and the system, all live streams of all anchor of the edge node cluster are not required to be sent to the transcoding center node, so that the occupation of link bandwidth can be reduced, and when the live streams of the anchor client side are required, the transcoding center node transmits the live streams based on the pre-established target link, so that the link establishment process is reduced, and the problem of delay waiting existing when the transcoding center node pulls the live streams in the edge node can be avoided.
The embodiments in the present description are described in a progressive manner, each embodiment focuses on differences from other embodiments, and the same and similar parts among the embodiments are referred to each other. The device disclosed by the embodiment corresponds to the method disclosed by the embodiment, so that the description is simple, and the relevant points can be referred to the method part for description.
Those of skill would further appreciate that the various illustrative elements and algorithm steps described in connection with the embodiments disclosed herein may be implemented as electronic hardware, computer software, or combinations of both, and that the various illustrative components and steps have been described above generally in terms of their functionality in order to clearly illustrate this interchangeability of hardware and software. Whether such functionality is implemented as hardware or software depends upon the particular application and design constraints imposed on the implementation. Skilled artisans may implement the described functionality in varying ways for each particular application, but such implementation decisions should not be interpreted as causing a departure from the scope of the present invention.
The steps of a method or algorithm described in connection with the embodiments disclosed herein may be embodied directly in hardware, in a software module executed by a processor, or in a combination of the two. A software module may reside in Random Access Memory (RAM), memory, Read Only Memory (ROM), electrically programmable ROM, electrically erasable programmable ROM, registers, hard disk, a removable disk, a CD-ROM, or any other form of storage medium known in the art.
The previous description of the disclosed embodiments is provided to enable any person skilled in the art to make or use the present invention. Various modifications to these embodiments will be readily apparent to those skilled in the art, and the generic principles defined herein may be applied to other embodiments without departing from the spirit or scope of the invention. Thus, the present invention is not intended to be limited to the embodiments shown herein but is to be accorded the widest scope consistent with the principles and novel features disclosed herein.

Claims (10)

1. A live broadcast stream transmission method is applied to a transcoding center node and comprises the following steps:
detecting whether a requirement for acquiring a live stream of a main broadcast client exists, if the requirement for acquiring the live stream of the main broadcast client exists, determining that the requirement for acquiring the live stream of the main broadcast client exists if a spectator client requests to watch non-original audio and video data of the main broadcast, and if the requirement for acquiring the live stream of the main broadcast client does not exist, determining that the requirement for acquiring the live stream of the main broadcast client does not exist;
if the demand of acquiring the live stream of the anchor client exists, determining a pre-established target link uniquely corresponding to the anchor client, wherein the target link is a link between an edge node and the transcoding center node, which is established by responding to the received live stream of the anchor client, and the target link is a link between the edge node and the transcoding center node, which is used for receiving the live stream of the anchor client;
sending a live streaming request to the edge node through the target link, wherein the live streaming request is used for triggering the edge node to send a live stream of the anchor client to the transcoding center node through the target link;
receiving the live stream of the anchor client sent by the edge node through the target link;
and transcoding the live stream of the anchor client to obtain a target live stream.
2. The method of claim 1, wherein the target link is established in a manner comprising:
the edge node responds to the received live stream of the anchor client to establish a target link with the transcoding center node and stores link information of the anchor client, wherein the link information of the anchor client indicates that the target link is only corresponding to the anchor client;
and the edge node sends the link information of the anchor client to the transcoding central node through the target link so as to be convenient for the transcoding central node to store.
3. The method of claim 1, wherein the target link is established in a manner comprising:
the edge node responds to the received live stream of the anchor client to establish a target link with the transcoding center node and stores link information of the anchor client, wherein the link information of the anchor client indicates that the target link is only corresponding to the anchor client;
and the edge node transmits the live stream of the anchor client to the transcoding central node through the target link, and when the transcoding central node detects that the demand for acquiring the live stream of the anchor client does not exist, the transcoding central node transmits a pause transmission request to the edge node through the target link, wherein the pause transmission request is used for triggering the edge node to stop transmitting the live stream of the anchor client to the transcoding central node.
4. The method of claim 2, further comprising:
and sending a target live stream to a content distribution network, and sending the target live stream to a viewer client requesting the target live stream by the content distribution network, wherein the target live stream is the transcoded live stream of the anchor client.
5. The method according to any one of claims 2-3, wherein the edge node establishes a target link with the transcoding hub node in response to the received live stream of the anchor client and stores link information of the anchor client, including:
the edge node responds to the received live stream of the anchor client and sends a link establishment request to a domain name resolution server, wherein the link establishment request carries the IP address of the edge node and the domain name of the transcoding center node;
receiving an IP address of a target server returned by a domain name resolution server for resolving the IP address and the domain name, wherein the target server is a server with transcoding capacity in the transcoding center node;
and establishing a target link with the target server and storing link information of the anchor client.
6. A live streaming apparatus, comprising:
the system comprises a detection unit, a data processing unit and a data processing unit, wherein the detection unit is used for detecting whether a requirement for acquiring a live stream of a main broadcast client exists or not, if the requirement for acquiring the live stream of the main broadcast client exists in a spectator client to request to watch non-original audio and video data of the main broadcast, the requirement for acquiring the live stream of the main broadcast client is determined to exist, and if the requirement for acquiring the live stream of the main broadcast client does not exist in the audience client to request to watch the non-original audio and video data of the main broadcast;
the target link determining unit is used for determining a pre-established target link uniquely corresponding to the anchor client if a requirement for acquiring the live stream of the anchor client exists, wherein the target link is a link between an edge node and the transcoding central node, which is established by responding to the received live stream of the anchor client, and the target link is a link between the edge node and the transcoding central node, which are used for receiving the live stream of the anchor client;
and the live stream transmission unit is used for sending a live stream transmission request to the edge node through the target link, wherein the live stream transmission request is used for triggering the edge node to send the live stream of the anchor client to the transcoding center node through the target link, receiving the live stream of the anchor client sent by the edge node through the target link, and transcoding the live stream of the anchor client to obtain a target live stream.
7. The apparatus of claim 6, further comprising a live stream sending unit configured to send a target live stream to a content distribution network, the target live stream being sent by the content distribution network to a viewer client requesting the target live stream, the target live stream being a transcoded live stream of the anchor client.
8. A server, comprising: at least one memory and at least one processor; the memory stores a program that the processor invokes, the program stored by the memory, the program being for implementing the live streaming method of any one of claims 1-5.
9. A storage medium having stored thereon computer-executable instructions for performing the live streaming method of any of claims 1-5.
10. A live streaming system, comprising:
the transcoding center node is used for detecting whether a demand of acquiring a live stream of the anchor client exists or not, if the demand of the audience client for watching the non-original audio and video data of the anchor exists, the demand of acquiring the live stream of the anchor client is determined to exist, and if the demand of the audience client for watching the non-original audio and video data of the anchor does not exist, the demand of acquiring the live stream of the anchor client does not exist; if the demand of acquiring the live stream of the anchor client exists, determining a pre-established target link uniquely corresponding to the anchor client, wherein the target link is a link between an edge node and the transcoding center node, which is established by responding to the received live stream of the anchor client, and the target link is a link between the edge node and the transcoding center node, which is used for receiving the live stream of the anchor client; sending a live streaming request to the edge node over the target link;
the edge node is used for responding to the live stream transmission request and sending the live stream of the anchor client to the transcoding center node through the target link;
the transcoding central node is further configured to receive a live stream of the anchor client sent by the edge node through the target link;
and transcoding the live stream of the anchor client to obtain a target live stream.
CN201910430598.0A 2019-05-22 2019-05-22 Live streaming transmission method, device, server, system and storage medium Active CN110213603B (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201910430598.0A CN110213603B (en) 2019-05-22 2019-05-22 Live streaming transmission method, device, server, system and storage medium

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201910430598.0A CN110213603B (en) 2019-05-22 2019-05-22 Live streaming transmission method, device, server, system and storage medium

Publications (2)

Publication Number Publication Date
CN110213603A CN110213603A (en) 2019-09-06
CN110213603B true CN110213603B (en) 2021-12-28

Family

ID=67788105

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201910430598.0A Active CN110213603B (en) 2019-05-22 2019-05-22 Live streaming transmission method, device, server, system and storage medium

Country Status (1)

Country Link
CN (1) CN110213603B (en)

Families Citing this family (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN111200562B (en) * 2019-12-03 2023-04-07 网宿科技股份有限公司 Flow guiding method, static father node, edge node and CDN (content delivery network)
CN111107386A (en) * 2019-12-27 2020-05-05 北京达佳互联信息技术有限公司 Live video playback method and device, electronic equipment, system and storage medium
CN111107387B (en) * 2019-12-30 2021-12-28 广州酷狗计算机科技有限公司 Video transcoding method and device and computer storage medium
CN111246239B (en) * 2020-02-12 2022-07-22 广州虎牙科技有限公司 Method, system, apparatus, device and storage medium for testing live programs
CN114760485B (en) * 2021-01-08 2023-09-26 深圳市酷看文化传播有限公司 Video carousel method, system and related equipment
CN115134632B (en) * 2021-03-25 2024-04-09 中国移动通信集团安徽有限公司 Video code rate control method, device, medium and content delivery network CDN system
CN113891114B (en) * 2021-11-18 2023-12-15 上海哔哩哔哩科技有限公司 Transcoding task scheduling method and device
CN114845141A (en) * 2022-04-18 2022-08-02 上海哔哩哔哩科技有限公司 Edge transcoding method and device

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN106507134A (en) * 2016-11-30 2017-03-15 深圳羚羊极速科技有限公司 A kind of method of streaming media server transcoding on demand
CN109194972A (en) * 2018-09-10 2019-01-11 广州酷狗计算机科技有限公司 Live stream acquisition methods, device, computer equipment and storage medium
CN109698963A (en) * 2018-12-29 2019-04-30 乐蜜有限公司 A kind of live broadcasting method, device, electronic equipment and readable storage medium storing program for executing

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN106507134A (en) * 2016-11-30 2017-03-15 深圳羚羊极速科技有限公司 A kind of method of streaming media server transcoding on demand
CN109194972A (en) * 2018-09-10 2019-01-11 广州酷狗计算机科技有限公司 Live stream acquisition methods, device, computer equipment and storage medium
CN109698963A (en) * 2018-12-29 2019-04-30 乐蜜有限公司 A kind of live broadcasting method, device, electronic equipment and readable storage medium storing program for executing

Also Published As

Publication number Publication date
CN110213603A (en) 2019-09-06

Similar Documents

Publication Publication Date Title
CN110213603B (en) Live streaming transmission method, device, server, system and storage medium
US10764623B2 (en) Method and system for media adaption
US8086685B2 (en) STB messaging system
JP4005363B2 (en) System and method for providing internet broadcasting data based on hierarchical structure
US20150365453A1 (en) Media projection method and device, control terminal and cloud server
EP3070935B1 (en) Apparatus, system, and method of controlling output of content data, and carrier means
US20150189382A1 (en) Multi-source assisted content delivering system
US9538247B2 (en) Method and system for image alteration
KR101501189B1 (en) Method and apparatus for fast channel change
US20150207715A1 (en) Receiving apparatus, transmitting apparatus, communication system, control method for receiving apparatus, control method for transmitting apparatus, and recording medium
US9794317B2 (en) Network system and network method
US11671336B2 (en) ABR control
EP3625966B1 (en) Communication process for immersive video
JP2008294784A (en) Method and system for measuring stream communication quality, and receiving terminal and router
US11882168B2 (en) Methods, systems, and media for delivering manifestless streaming media content
US10638202B1 (en) State synchronization and management for two-way connected consumer electronic devices
TWI573448B (en) Streaming connection management method and system
CN106713846B (en) Live connection establishing method and device
US20130258120A1 (en) Imaging apparatus that transmits media data to reception apparatus, method of processing information, and storage medium
CN109951717B (en) Rapid broadcasting method and device
CN113573114A (en) Screen projection method and device, electronic equipment and storage medium
US20150271530A1 (en) Video quality enhancement method and apparatus
CN112637258A (en) Data processing method and system
CN115119010B (en) Wheat connecting method, device, electronic equipment and storage medium
KR101528268B1 (en) System and method for streaming content to remote locations

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