CN113923470B - Live stream processing method and device - Google Patents

Live stream processing method and device Download PDF

Info

Publication number
CN113923470B
CN113923470B CN202111407481.4A CN202111407481A CN113923470B CN 113923470 B CN113923470 B CN 113923470B CN 202111407481 A CN202111407481 A CN 202111407481A CN 113923470 B CN113923470 B CN 113923470B
Authority
CN
China
Prior art keywords
mixed
live stream
edge node
stream
live
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
CN202111407481.4A
Other languages
Chinese (zh)
Other versions
CN113923470A (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.)
Shanghai Bilibili Technology Co Ltd
Original Assignee
Shanghai Bilibili 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 Shanghai Bilibili Technology Co Ltd filed Critical Shanghai Bilibili Technology Co Ltd
Priority to CN202111407481.4A priority Critical patent/CN113923470B/en
Publication of CN113923470A publication Critical patent/CN113923470A/en
Application granted granted Critical
Publication of CN113923470B publication Critical patent/CN113923470B/en
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

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/236Assembling of a multiplex stream, e.g. transport stream, by combining a video stream with other content or additional data, e.g. inserting a URL [Uniform Resource Locator] into a video stream, multiplexing software data into a video stream; Remultiplexing of multiplex streams; Insertion of stuffing bits into the multiplex stream, e.g. to obtain a constant bit-rate; Assembling of a packetised elementary stream
    • H04N21/2365Multiplexing of several video streams
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/20Servers specifically adapted for the distribution of content, e.g. VOD servers; Operations thereof
    • H04N21/25Management operations performed by the server for facilitating the content distribution or administrating data related to end-users or client devices, e.g. end-user or client device authentication, learning user preferences for recommending movies
    • H04N21/262Content or additional data distribution scheduling, e.g. sending additional data at off-peak times, updating software modules, calculating the carousel transmission frequency, delaying a video stream transmission, generating play-lists

Abstract

The application provides a live stream processing method and a device, which are applied to a target edge node, wherein the live stream processing method comprises the following steps: receiving a live stream push command, and receiving a target live stream in response to the live stream push command; receiving a live stream mixed stream request, and determining a live stream to be mixed based on the live stream mixed stream request; and generating a target mixed live stream based on the target live stream and the live stream to be mixed. According to the live stream processing method, the target live stream is received in response to the received live stream push command, so that the target live stream can be conveniently processed at the edge node; the live stream to be mixed is determined according to the live stream pushing instruction, so that the live stream for mixed stream can be determined conveniently; the edge node generates the target live stream based on the target live stream and the live stream to be mixed, so that the edge node can directly push the mixed live stream, the reestablishment of the link transmission of the mixed live stream is avoided, the waiting time of a user is shortened, and the watching experience of the user is improved.

Description

Live stream processing method and device
Technical Field
The application relates to the technical field of Internet, in particular to a live stream processing method. The present application also relates to a live stream processing apparatus, a computing device, and a computer-readable storage medium.
Background
With the continuous development of computer technology, watching live broadcast becomes an entertainment activity for many users; in live broadcast link, in order for a live broadcast audience to see live broadcast pictures of a host of both links, it is necessary to mix live broadcast streams of both links and send the mixed stream to a viewing client. The current common live stream mixed stream mode is as follows: and the two-side anchor pulls the live stream of the opposite anchor locally, then carries out mixed stream of the two live streams on the anchor live device, and then sends the mixed stream live stream to the audience client.
However, the above manner is affected by the quality of the anchor device, the problem of the continuous mcarton may occur, and after the anchor terminal re-pushes the mixed stream data, the client terminal of the audience needs to re-establish a new link to pull the new mixed stream data, which causes the phenomenon of waiting loading in the process of watching continuous mcarton by the audience, and affects the watching experience of the user.
Therefore, how to realize live stream mixed stream at the edge node and improve the smoothness of live viewing becomes a technical problem to be solved by related technicians.
Disclosure of Invention
In view of this, the embodiment of the application provides a live stream processing method. The application relates to a live stream processing device, a computing device and a computer readable storage medium simultaneously, so as to solve the problems of live picture blocking, long loading time and the like in the prior art.
According to a first aspect of an embodiment of the present application, there is provided a live stream processing method, including:
receiving a live stream push command, and receiving a target live stream in response to the live stream push command;
receiving a live stream mixed stream request, and determining a live stream to be mixed based on the live stream mixed stream request;
and generating a target mixed live stream based on the target live stream and the live stream to be mixed.
According to a second aspect of an embodiment of the present application, there is provided a live stream processing apparatus, including:
the receiving module is configured to receive a live stream push command and receive a target live stream in response to the live stream push command;
the determining module is configured to receive a live stream mixed stream request and determine a live stream to be mixed based on the live stream mixed stream request;
and the generation module is configured to generate a target mixed live stream based on the target live stream and the live stream to be mixed.
According to a third aspect of embodiments of the present application, there is provided a computing device comprising a memory, a processor and computer instructions stored on the memory and executable on the processor, the processor implementing the steps of the live stream processing method when executing the computer instructions.
According to a fourth aspect of embodiments of the present application, there is provided a computer readable storage medium storing computer instructions which, when executed by a processor, implement the steps of the live stream processing method.
The live stream processing method provided by the application receives a live stream push command and responds to the live stream push command to receive a target live stream; receiving a live stream mixed stream request, and determining a live stream to be mixed based on the live stream mixed stream request; and generating a target mixed live stream based on the target live stream and the live stream to be mixed.
According to the embodiment of the application, the target live stream is received in response to the received live stream push command, so that the target live stream is conveniently processed at the edge node; the live stream to be mixed is determined according to the live stream pushing instruction, so that the live stream for mixed stream can be determined conveniently; the edge node generates the target live stream based on the target live stream and the live stream to be mixed, so that the edge node can directly push the mixed live stream, the reestablishment of the link transmission of the mixed live stream is avoided, the waiting time of a user is shortened, and the watching experience of the user is improved.
Drawings
Fig. 1 is a flowchart of a live stream processing method according to an embodiment of the present application;
fig. 2 is a schematic process flow diagram of a live stream processing method applied to an edge node a and an edge node b according to an embodiment of the present application;
fig. 3 is a schematic process flow diagram of a live stream processing method applied to an edge node a according to an embodiment of the present application;
fig. 4 is a schematic structural diagram of a live stream processing device according to an embodiment of the present application;
FIG. 5 is a block diagram of a computing device according to one embodiment of the present application.
Detailed Description
In the following description, numerous specific details are set forth in order to provide a thorough understanding of the present application. This application is, however, susceptible of embodiment in many other ways than those herein described and similar generalizations can be made by those skilled in the art without departing from the spirit of the application and the application is therefore not limited to the specific embodiments disclosed below.
The terminology used in one or more embodiments of the application is for the purpose of describing particular embodiments only and is not intended to be limiting of one or more embodiments of the application. As used in this application in one or more embodiments and the appended claims, the singular forms "a," "an," and "the" are intended to include the plural forms as well, unless the context clearly indicates otherwise. It should also be understood that the term "and/or" as used in one or more embodiments of the present application refers to any or all possible combinations including one or more of the associated listed items.
It should be understood that, although the terms first, second, etc. may be used in one or more embodiments of the present application to describe various information, these information should not be limited to these terms. These terms are only used to distinguish one type of information from another. For example, a first may also be referred to as a second, and similarly, a second may also be referred to as a first, without departing from the scope of one or more embodiments of the present application. The word "if" as used herein may be interpreted as "at … …" or "at … …" or "responsive to a determination", depending on the context.
First, terms related to one or more embodiments of the present application will be explained.
Wheat connecting: a live broadcast mode is characterized in that a main broadcast of two live broadcast rooms is connected with live broadcast in a live broadcast mode.
Edge node: the user side server which is close to the user physically is deployed at the edge of each city, and the transmission delay is low.
Mixed flow: two audio and video data are mixed into one audio and video data.
Bandwidth cost: the service provider charges according to the bandwidth peak value of the server, and the effect of reducing the bandwidth cost can be achieved by reducing the bandwidth peak value.
Peak bandwidth: refers to the maximum value of the allowed node instantaneous traffic.
BGP: BGP is a short for border gateway protocol Border Gateway Protocol, which is a routing protocol used to connect to an independent system on the Internet, and BGP nodes in this application refer to servers of the convertible live stream operators.
The live broadcasting mode of the live inter-cast link wheat is very common in live broadcasting business. The current universal communication implementation mode is that the two-side anchor pulls the data of the opposite anchor to the local and then carries out two-live-stream mixed flow on the anchor live broadcast equipment and then uploads the two-live-stream mixed flow to the cloud server again, at the moment, the data watched by the audience is the picture of the conversation of the two anchors, but the implementation mode has a great defect that the performance of the anchor equipment is uncontrollable, so that the quality of the live broadcast communication is uneven. And the audience needs to re-pull new live broadcast data after the host pushes the data after the continuous-flow data are re-pushed. This process may lead to video loading latency at the viewer's end, which may significantly detract from the viewing experience. The existing technical scheme for connecting wheat adopts mixed flow at the side of a host to re-push data and has the following defect 1. The quality of the host is directly determined by the quality of the wheat, and most of the wheat connecting is caused by the quality of the host. 2. The anchor needs to push the mixed data again, and the audience needs to reestablish a new link to pull the new data, which is bad for the watching experience. 3. The mixed flow operation is completed in the anchor device, and the long wheat connecting time can affect the anchor device and also affect the anchor experience.
According to the scheme, the edge node is adopted to conduct mixed streaming of the video data of the anchor, the anchor terminal equipment is not needed to participate, the mixed live streaming obtained after the mixed streaming is successful seamlessly replaces the data being live broadcast by the anchor, and the phenomenon of loading waiting at present is avoided when a spectator pulls the data after new wheat connection.
In the present application, a live stream processing method is provided, and the present application relates to a live stream processing apparatus, a computing device, and a computer readable storage medium, which are described in detail in the following embodiments.
Fig. 1 shows a flowchart of a live stream processing method according to an embodiment of the present application, which specifically includes the following steps:
step 102: and receiving a live stream push command, and receiving a target live stream in response to the live stream push command.
The live stream pushing instruction refers to an instruction for pushing live streams generated by a main broadcasting end to an edge node; the target live stream refers to a live stream pushed to the edge node. The edge node refers to a node server for receiving live stream push stream.
In practical application, a main broadcasting client responds to a received live broadcasting stream pushing instruction, a target live broadcasting stream generated by the main broadcasting client in a live broadcasting process is pushed to a target edge node, and the target edge node receives the target live broadcasting stream sent by the main broadcasting client, so that the pushing of the target live broadcasting stream is completed; the anchor may push live data to the edge node closest thereto, where the viewer pulls the direct data based on viewing needs.
In a specific embodiment of the application, taking a hosting client a as an example, the hosting client a receives a live stream push command, determines an edge node identifier in the live stream push command in response to the live stream push command, and determines an edge node a based on the edge node identifier; and pushing the live stream 1 generated by the anchor client A in the live broadcast process to an edge node a, wherein the edge node a receives the live stream 1 sent by the anchor client A.
And receiving the target live stream sent by the anchor client, so that the subsequent further live stream processing operation is convenient according to the target live stream in the edge node.
Step 104: and receiving a live stream mixed stream request, and determining a live stream to be mixed based on the live stream mixed stream request.
The live stream mixed stream request refers to a request for combining a plurality of live streams into one mixed live stream; the live stream to be mixed refers to a live stream determined according to a live stream mixed stream request, for example, in a live broadcast continuous-wheat scene, after triggering continuous-wheat, a host end of both continuous-wheat parties sends a continuous-wheat request containing the host information corresponding to continuous-wheat to an edge node corresponding to the host end, and the edge node generates a live stream mixed stream request based on the continuous-wheat request, so that the live streams of both continuous-wheat parties are mixed.
In practical application, when the main broadcasting of different live broadcasting rooms carries out wheat linking, the live broadcasting streams generated by the two live broadcasting rooms need to be mixed; the anchor triggers a wheat connecting button to generate a live stream mixed stream request; a live stream for the live stream mixed stream may be determined based on the live stream mixed stream request, e.g., a host a initiates a link with a host B, the live stream mixed stream request; the live stream of the anchor a and the live stream of the anchor B for the mixed stream may be determined based on the live stream mixed stream request.
In a specific embodiment of the present application, taking a host client a as an example, the host client a triggers a link button with the host client B to generate a live stream mixed stream request; and the edge node a receives the live stream mixed stream request and determines the live stream 2 pushed by the anchor client B according to the live stream mixed stream request.
The method for determining the live stream to be mixed based on the live stream mixed stream request specifically comprises the following steps:
forwarding the live stream mixed stream request to a central server;
receiving an edge node identification to be mixed returned by the center server based on the live stream mixed stream request;
and determining the live streams to be mixed based on the identification of the edge node to be mixed.
The central server is a server for recording push information, for example, in the process that the anchor client C pushes the live stream 3 to the edge node C, push data records are generated in the central server; in practical application, the central server periodically scans all edge nodes to obtain the states of the edge nodes, so that the accuracy of data in the central server is ensured; the to-be-mixed edge node identifier refers to a node identifier of an edge node to be mixed, which is determined in the central server based on the live stream mixed stream request and corresponds to the live stream mixed stream request, for example, the to-be-mixed edge node identifier is an IP address of the to-be-mixed edge node; the live stream to be mixed refers to a live stream obtained from an edge node to be mixed.
Specifically, after receiving the live stream mixed stream request, the edge node forwards the live stream mixed stream request to a central server; the method comprises the steps that a center server receives a live stream mixed stream request, searches an edge node identifier corresponding to the live stream mixed stream request in the center server based on the live stream mixed stream request, serves as an edge node identifier to be mixed, and returns to an edge node; the edge node determines the live streams to be mixed based on the returned edge node identification to be mixed.
In a specific embodiment of the present application, taking mixing of live streams corresponding to a hosting client a and a hosting client B as an example, an edge node a forwards a received live stream mixed stream request to a central server; the method comprises the steps that a center server receives a live stream mixed stream request, and searches an edge node identifier 'b' corresponding to the live stream mixed stream request based on the live stream mixed stream request to serve as an edge node identifier to be mixed; and determining the live stream to be mixed, namely the live stream 2, according to the to-be-mixed edge node identifier 'B', namely determining the live stream 2 of the anchor client B.
The live stream mixed stream request is forwarded to the center server, so that the edge node identification of the live stream for mixed stream is conveniently determined based on the push stream record recorded in the center server; and the data in the central server is continuously updated, so that the accuracy is higher, and the accuracy of determining the live streams to be mixed is improved.
In practical application, the method for receiving the to-be-mixed edge node identifier returned by the center server based on the live stream mixed stream request comprises the following steps:
determining anchor information in the live stream mixed stream request, and sending the anchor information to a central server;
and receiving an edge node identifier to be mixed returned by the center server based on the anchor information.
The anchor information refers to a field for uniquely identifying an anchor client, and based on the anchor information of the anchor client, it can be found in the data recorded by the central server which edge node the anchor client pushes the live stream to, for example, the anchor information is "anchor client D", and according to the anchor information, it can find out that the push data "anchor client D pushes the live stream 4 to the edge node D" in the central server, and the edge node identifier to be mixed in the push data, that is, the IP address of the edge node to be mixed is returned to the edge node.
In a specific embodiment of the present application, taking an edge node a as an example, the edge node a determines anchor information "anchor client B" in a live stream mixed stream request, and sends the anchor information to a central server; the center server searches an edge node identifier (edge node B) to be mixed corresponding to anchor information (anchor client B) based on anchor information and returns the edge node identifier to the edge node a; the edge node a receives the edge node identification 'edge node b' to be mixed returned by the central server.
In practical application, the method for determining the live streams to be mixed based on the edge node identification to be mixed comprises the following steps:
determining an edge node to be mixed according to the edge node identification to be mixed;
and acquiring the live streams to be mixed from the edge nodes to be mixed.
The edge node to be mixed refers to an edge node containing live streams to be mixed, for example, the anchor client D pushes the live stream 4 to the edge node D, and based on the edge node identifier "edge node D", the edge node D may be determined, and the live stream 4 may be obtained from the edge node D.
In a specific embodiment of the present application, taking an edge node to be mixed as an edge node b, an edge node a receives an edge node identifier "edge node b" to be mixed returned by a central server; determining an edge node to be mixed, namely an edge node b, according to the edge node b; and acquiring the live stream to be mixed in the edge node b, namely acquiring the live stream 2 in the edge node b.
In practical application, after determining the edge node to be mixed according to the edge node identifier to be mixed, the method further includes:
and judging whether the edge node to be mixed is the target edge node or not.
Specifically, in order to facilitate the push of live streams in different areas, a plurality of different edge nodes can be set in different areas for the push of live streams; however, in practical application, if the anchor a and the anchor B are in the same area or the distance between the anchor a and the anchor B is relatively short, both the live stream 1 of the anchor a and the live stream 2 of the anchor B are pushed to the edge node a; at this time, the live stream is not required to be acquired from other edge nodes, and the live stream processing is directly performed based on the live stream received by the edge nodes.
In a specific embodiment of the present application, taking the target edge node as the node a as an example, determining the edge node b to be mixed based on the edge node b to be mixed, and determining that the edge node b to be mixed and the target edge node a are not the same node.
In practical application, the method for acquiring the live streams to be mixed from the edge node to be mixed comprises the following steps:
determining a live stream to be mixed in the target edge node under the condition that the edge node to be mixed is the target edge node;
and pulling the live stream to be mixed in the edge node to be mixed under the condition that the edge node to be mixed is not the target edge node.
Specifically, under the condition that the edge node to be mixed and the target edge node are the same node, directly determining the live stream to be mixed in the target edge node; under the condition that the edge node to be mixed and the target edge node are not the same node, pulling the live stream to be mixed from the determined edge node to be mixed to the target edge node, so that the target live stream and the live stream to be mixed can be conveniently processed by the subsequent target edge node.
In a specific embodiment of the present application, taking an edge node to be mixed as a node a as an example, determining that the edge node to be mixed is the node a, and determining that the target edge node is also the node a, then determining that the live stream to be mixed is in the node a.
In another embodiment of the present application, taking the edge node to be mixed as the node b as an example, determining that the target edge node is the node a and determining that the edge node to be mixed is the node b, pulling the live stream to be mixed from the node b to the node a.
The step of receiving the live stream mixed stream request and determining the live stream to be mixed based on the live stream mixed stream request can be used in the case that the edge node to be mixed and the target edge node are the same operator, and if the edge node to be mixed and the target edge node are different nodes and the edge node to be mixed and the target edge node are respectively in different operators, the method can be adopted to obtain the live stream to be mixed.
The specific method for determining the live stream to be mixed based on the live stream mixed stream request comprises the following steps:
forwarding the live stream mixed stream request to a central server;
receiving a transfer node identifier returned by the center server based on the live stream mixed stream request;
and determining the live streams to be mixed based on the transit node identification.
Wherein, the transit node identifier refers to a field which can uniquely represent the transit node, such as an IP address of the transit node; the transit node refers to a node that transit a live stream, for example, switches the live stream in the operator a to a live stream in the operator B, and in practical application, the transit node may be a node server, such as a BGP node, that can implement conversion of an operator corresponding to live stream data, which is not specifically limited in this application.
In practical application, the specific method for receiving the transit node identification returned by the center server based on the live stream mixed stream instruction comprises the following steps:
receiving an edge node identifier to be mixed returned by a center server based on the live stream mixed stream request;
determining node attributes of the target edge nodes, and determining edge nodes to be mixed and node attributes of the edge nodes to be mixed based on the identification of the edge nodes to be mixed;
transmitting a transit node query request to the center server under the condition that the node attribute of the edge node to be mixed is inconsistent with the node attribute of the target edge node;
and receiving a transfer node identification returned based on the transfer node query request.
Wherein, the edge node identification to be mixed refers to a field for uniquely identifying the edge node, for example, an IP address of the edge node to be mixed; the node attribute of the target edge node refers to the operator information of the operator where the target edge node is located; the node attribute of the edge node to be mixed refers to the operator information of the operator where the edge node to be mixed is located; the transit node query request refers to a request to query a transit node that is to transit the mixed live stream.
Specifically, under the condition that the target edge node and the edge node to be mixed are in different operators, the target edge node may have problems of large delay, unstable data and the like when the edge node to be mixed pulls the direct-cast stream, so that the pulling of the direct-cast stream is influenced, and the mixed stream efficiency of the subsequent direct-cast stream is further influenced; therefore, the transit node can receive the live streams to be mixed, and the transit node can send the live streams to the target edge node after converting the operators of the live streams to be mixed into operators consistent with the operators of the target live streams, so that the quality of the live streams for mixed streams is improved, and the efficiency of pulling the direct streams is improved.
However, the manner of adopting the transit node has the problem of higher bandwidth cost; in order to reduce the bandwidth cost and further reduce the bandwidth cost of mixed flows at the edge nodes, under the condition that the node attribute of the edge nodes to be mixed is inconsistent with the node attribute of the target edge node, namely under the condition of different operators, determining all transit nodes capable of carrying out operator transit on the live streams to be mixed to form a transit node set; under the condition that a target edge node sends out a request for pulling the live stream to be mixed, determining the current code rate of the live stream to be mixed, wherein the current code rate refers to the data bit number of the target live stream data to be transmitted in unit time; and determining the current bandwidth of each transit node in the transit node set, and carrying out transit on the live streams to be mixed by taking the transit node corresponding to the lowest current bandwidth as a target transit node, thereby ensuring that the peak bandwidth of the transit node is lifted to the minimum, and further reducing the bandwidth cost of carrying out mixed streams at the edge node.
The center server records the related information of the target transfer node for transferring the live stream to be mixed, and after receiving the request of inquiring the transfer node, the center server can return the transfer node identification of the transfer node for transferring the live stream to be mixed to the target edge node; the target edge node receives the transfer node identification of the target transfer node returned by the central server based on the transfer node query request.
In a specific embodiment of the application, taking an example that an edge node a receives a live stream mixed stream request, the edge node a forwards the received live stream mixed stream request to a central server, and the central server determines an edge node IP address of an edge node where a live stream B of a to-be-mixed stream corresponding to main broadcasting information is located based on main broadcasting information in the live stream mixed stream request, and returns the edge node IP address to the edge node a; the edge node a contains a live stream A of a stream to be mixed, the node attribute of the edge node a is determined to be 'operator 1', and the edge node B and the node attribute 'operator 2' of the edge node B are determined according to the IP address of the edge node; and if the node attributes of the edge node a and the edge node B are inconsistent, sending a transit node query request to the central server, determining that the transit node n transit the live stream B of the to-be-mixed stream in the edge node B, and receiving a transit node identifier of the transit node n returned by the central server.
In practical application, the specific method for determining the live streams to be mixed based on the transit node identification comprises the following steps:
determining a target transit node in a transit node set based on the transit node identification, wherein the transit node set is determined according to the target edge node and the edge node to be mixed;
and acquiring the live streams to be mixed from the target transfer node.
The target transit node refers to a transit node for transit of operators to the mixed live stream.
Specifically, the target transfer node receives the live streams to be mixed pushed by the edge node of the streams to be mixed, transfers the live streams to be mixed, and obtains the live streams to be mixed at the target transfer node.
In a preferred embodiment provided in the application, a host a pushes a live stream 1 to an edge node a, a host B pushes a live stream 2 to an edge node B, and the host a sends a request for linking with the host B to the edge node a, namely a request for mixing the live stream 1 and the live stream 2; the edge node a and the edge node B respectively conduct live stream mixed flow, and because operators where the anchor A and the anchor B are located are different, the edge node a needs to pass through a transit node when pulling the live stream 2 in the edge node B, and similarly, the edge node B also needs to pass through a transit node when pulling the live stream 1 in the edge node a, at the moment, in order to further reduce the bandwidth peak value, all transit nodes capable of transit the live stream 1 and the live stream 2 are determined to form a transit node set, the current bandwidth of each transit node in the transit node set is acquired, and the transit node corresponding to the lowest current bandwidth is taken as the transit node 1; determining the current code rate of the live stream 1 and the current code rate of the live stream 2, and because the current code rate of the live stream 1 is larger than the current code rate of the live stream 2, adopting the transit node 1 to transit the live stream 1, after increasing the current bandwidth of the transit node 1 by the current code rate of the live stream 1, determining the transit node 2 corresponding to the lowest current bandwidth in the transit node set, wherein the transit node 2 is to serve as the transit node for transit of the live stream 2, and in practical application, the transit node 1 and the transit node 2 may be the same transit node; by the method, the peak bandwidth can be further reduced, and the mixed flow cost of the edge node is further reduced.
And determining an edge node identifier to be mixed based on the live stream mixed stream request, and acquiring the live stream to be mixed from the edge node to be mixed determined according to the edge node identifier to be mixed, so that the subsequent edge node can carry out further processing on the live stream to be mixed.
Step 106: and generating a target mixed live stream based on the target live stream and the live stream to be mixed.
Specifically, after the target live stream and the live stream to be mixed are determined, the target mixed live stream can be obtained by mixing the streams based on the target live stream and the live stream to be mixed.
In an actual application, the method for generating the target mixed live stream based on the target live stream and the live stream to be mixed comprises the following steps:
and merging the target live streams and the live streams to be mixed to obtain target mixed live streams.
The target mixed live stream refers to a live stream obtained according to the target live stream and a live stream to be mixed.
Specifically, synchronizing and combining the target live stream and video data and audio data in the live stream to be mixed to obtain the target mixed live stream, namely combining the two live streams into one live stream, wherein the target live stream in the target mixed live stream and the video and audio of the live stream to be mixed are simultaneously displayed according to the same time sequence.
In a specific embodiment of the present application, taking an edge node a as an example, the edge node a merges video data and audio data in a target live stream 1 corresponding to a host a and a to-be-mixed live stream 2 corresponding to a host B, so as to obtain a target mixed live stream capable of displaying video and audio of the host a and the host B simultaneously.
In an actual application, after generating the target mixed live stream based on the target live stream and the live stream to be mixed, the method further includes:
receiving a mixed live stream acquisition instruction, and determining a client identifier in the mixed live stream acquisition instruction;
and determining a client to be played based on the client identifier, and pushing the target mixed live stream to the client to be played.
The mixed live stream acquisition instruction refers to an instruction for acquiring a target mixed live stream; the client identifier refers to a field that can uniquely identify the client; the client to be played refers to a client for playing the target mixed live stream.
Specifically, after the edge node generates the target mixed live stream, the target client for pulling the direct-broadcast data can be determined in response to the live-broadcast data pulling request of the client, the target mixed live stream is sent to the target client, and the target client displays the target mixed live stream.
In practical application, a client where a viewer is located watches live broadcast by establishing a link with an edge node, and in the process of watching live broadcast, a host in a live broadcast room may initiate a wheat connection request with other host, so as to generate a live broadcast stream mixed stream request; based on the live stream mixed stream request, the live streams of both sides are mixed stream and are connected with the wheat at the edge node, after the mixed live stream is obtained, the mixed live stream is transmitted to the client of the audience through the link when the audience watches live, so that the problem that the mixed live stream needs to be re-pushed after the live stream is mixed by the anchor client is avoided, the problem that the mixed live stream content can be watched only after the connection between the anchor client and the new edge node instruction is established again due to the re-pushing of the anchor client is further avoided, and the live broadcast watching efficiency and the smoothness of live broadcast pictures of the audience are improved.
In a specific embodiment of the present application, taking the mixed live stream Q as an example, the edge node generates the mixed live stream Q based on the live stream 1 of the main broadcasting client a and the live stream 2 of the live broadcasting client B; and receiving an acquisition instruction for the mixed live stream Q, determining a client identifier in response to the acquisition instruction, determining a viewer client U for watching live broadcast of the anchor client A based on the client identifier, and transmitting the mixed live stream Q to the viewer client U.
In the foregoing embodiments, the senders listed in the foregoing embodiments are all senders of a live-stream mixed-stream request, for example, the senders of live-stream and link, and the processing for the receivers of live-stream and link may be obtaining a target mixed-stream live-stream generated by an edge node, or using a new target mixed-stream live-stream generated by a processing mode consistent with that of the senders at the edge node; the specific processing mode is not specifically limited in this application, and may be set based on actual requirements.
In a specific embodiment of the present application, taking an example that the anchor client B receives a wheat linking request sent by the anchor client a, the anchor client B sends a live broadcast stream 2 generated by live broadcast to the edge node B; the anchor client b forwards the received wheat connecting request to the edge node b, the edge node b receives an edge node identifier returned by the center server based on the wheat connecting request, specifically, determines an edge node identifier (edge node a) corresponding to an anchor message according to the anchor message (anchor A) in the wheat connecting request, determines the edge node a based on the edge node identifier, and pulls the live stream 1 in the edge node a; and merging the live stream 1 and the live stream 2 by the edge node B to obtain a mixed live stream corresponding to the anchor client B, and pushing the mixed live stream to the audience client of the anchor client B.
According to the live stream pushing method, a live stream pushing instruction is received, and a target live stream is received in response to the live stream pushing instruction; receiving a live stream mixed stream request, and determining a live stream to be mixed based on the live stream mixed stream request; and generating a target mixed live stream based on the target live stream and the live stream to be mixed. According to the embodiment of the application, the live broadcast stream requiring mixed stream is pulled through the edge node receiving the push stream, the mixed stream obtained by the mixed stream is conveniently and directly sent to the audience end watching live broadcast by the edge node, the problem that the live broadcast can be watched only by reestablishing new transmission connection after the mixed live broadcast stream is generated is avoided, and smoothness and experience of watching the live broadcast by a user are improved.
The live stream processing method is further described below by taking an application of the live stream processing method provided in the application to an edge node a and an edge node b as an example in combination with fig. 2. Fig. 2 shows a process flow diagram of a live stream processing method applied to an edge node a and an edge node b according to an embodiment of the present application, which specifically includes the following steps:
Step 202: and the anchor client A receives the live stream push command and sends the live stream 1 corresponding to the anchor client A to the edge node a.
Specifically, determining an edge node identifier "a" in the live stream push instruction, and determining the edge node a based on the edge node identifier; and pushing the live stream 1 to the edge node a.
Step 204: and the anchor client B receives the live stream push command and sends the live stream 2 corresponding to the anchor client B to the edge node B.
Specifically, determining an edge node identifier 'b' in the live stream push instruction, and determining the edge node b based on the edge node identifier; and pushing the live stream 2 to the edge node b.
Step 206: the anchor client A triggers a wheat linking request with the anchor client B and sends the wheat linking request to the edge node a.
Specifically, the anchor client a generates a wheat linking request based on the wheat linking with the anchor client B, and sends the wheat linking request to the edge node a receiving the live stream 1.
Step 208: the edge node a determines the anchor information in the wheat connecting request and sends the anchor information to the central server.
Specifically, it is determined that the wheat linking request includes the anchor information "anchor B", and the anchor information "anchor B" is sent to the center server.
Step 210: the central server determines an edge node identification based on the anchor information and returns the edge node identification to the edge node a.
Specifically, the central server determines an edge node identifier "B" corresponding to "anchor B" in the push data table of the central server based on anchor information "anchor B", and returns the edge node identifier "B" to the edge node a.
Step 212: edge node a determines edge node b based on the edge node identity and pulls direct broadcast stream 2 from edge node b.
Step 214: and the edge node a merges the live streams 1 and the live streams 2 to obtain a mixed live stream M.
Specifically, the mixed live stream M is obtained by merging the live stream 1 corresponding to the anchor client a and the live stream 2 corresponding to the anchor client B in the edge node a.
Step 216: and the edge node a receives the mixed live stream acquisition instruction and pushes the mixed live stream to the audience client C.
Specifically, a mixed live stream acquisition instruction is received, and a client identifier in the mixed live stream acquisition instruction is determined; a target client is determined based on the client identification and the mixed live stream is sent to the viewer client C.
Step 218: and the main broadcasting client side A receives the live broadcasting stream 2 pushed by the edge node a and displays the live broadcasting stream 1 and the live broadcasting stream 2 simultaneously.
Step 220: and the anchor client B sends the received wheat linking request triggered by the anchor client A to the edge node B.
Step 222: the edge node b determines the anchor information in the wheat linking request and sends the anchor information to the central server.
Specifically, the anchor information "anchor a" contained in the link request is determined and the anchor information "anchor a" is sent to the center server.
Step 224: the central server determines an edge node identity based on the anchor information and returns the edge node identity to the edge node b.
Specifically, the central server determines an edge node identifier "a" corresponding to the anchor a "in the push data table of the central server based on the anchor information" anchor a ", and returns the edge node identifier" a "to the edge node b.
Step 226: edge node b determines edge node a based on the edge node identification and pulls live stream 1 from edge node a.
Step 228: and merging the live streams 2 and 1 by the edge node b to obtain a mixed live stream N.
Step 230: and the edge node b receives the mixed live stream acquisition instruction and pushes the mixed live stream N to the audience client D.
Step 232: and the main broadcasting client B receives the live stream 1 pushed by the edge node B and displays the live stream 1 and the live stream 2 simultaneously.
The live stream processing method in the embodiment is respectively applied to the edge node a and the edge node B, namely, the mixed live stream generated at the edge node a can be pushed to the watching client of the watching host client A, the mixed live stream generated at the edge node B can be pushed to the watching client of the watching host client B, namely, the two edge nodes respectively carry out mixed stream on the live stream, so that different mixed live streams are pushed by the edge nodes corresponding to the two host clients, and different continuous wheat pictures can be seen by a user during different live broadcasting, thereby obtaining better live stream mixed stream effect.
The live stream processing method provided in the present application is taken as an example in the application of the live stream processing method at the edge node a, and is further described below with reference to fig. 3. Fig. 3 shows a process flow diagram of a live stream processing method applied to an edge node a according to an embodiment of the present application, which specifically includes the following steps:
step 302: and the anchor client A receives the live stream push command and sends the live stream 1 corresponding to the anchor client A to the edge node a.
Specifically, determining an edge node identifier "a" in the live stream push instruction, and determining the edge node a based on the edge node identifier; and pushing the live stream 1 to the edge node a.
Step 304: and the anchor client B receives the live stream push command and sends the live stream 2 corresponding to the anchor client B to the edge node a.
Specifically, determining an edge node identifier "a" in the live stream push instruction, and determining the edge node a based on the edge node identifier; and pushing the live stream 2 to the edge node a.
Step 306: the anchor client A triggers a wheat linking request with the anchor client B and sends the wheat linking request to the edge node a.
Specifically, the anchor client a generates a wheat linking request based on the wheat linking with the anchor client B, and sends the wheat linking request to the edge node a receiving the live stream 1.
Step 308: the edge node a determines the anchor information in the wheat connecting request and sends the anchor information to the central server.
Specifically, it is determined that the wheat linking request includes the anchor information "anchor B", and the anchor information "anchor B" is sent to the center server.
Step 310: the central server determines an edge node identification based on the anchor information and returns the edge node identification to the edge node a.
Specifically, the central server determines an edge node identifier "a" corresponding to the anchor B in the push data table of the central server based on the anchor information "anchor B", and returns the edge node identifier "a" to the edge node a.
Step 312: the edge node a determines the edge node a based on the edge node identification, and determines the live stream 2 from the edge node a, and combines the live stream 1 and the live stream 2 to obtain the mixed live stream.
Specifically, the live stream 1 corresponding to the anchor client a and the live stream 2 corresponding to the anchor client B in the edge node a are combined to obtain a mixed live stream.
Step 314: and the edge node a receives the mixed live stream acquisition instruction and pushes the mixed live stream to the audience client.
Specifically, a mixed live stream acquisition instruction is received, and a client identifier in the mixed live stream acquisition instruction is determined; and determining a target client based on the client identification, and transmitting the mixed live stream to the audience client.
Step 316: and the main broadcasting client side A receives the live broadcasting stream 2 pushed by the edge node a and displays the live broadcasting stream 1 and the live broadcasting stream 2 simultaneously.
Step 318: and the main broadcasting client B receives the live broadcasting stream 1 pushed by the edge node a and displays the live broadcasting stream 1 and the live broadcasting stream 2 simultaneously.
The live stream processing method in the embodiment is applied to the edge node a, the edge node a receives live streams of the anchor client A and the anchor client B respectively, and the edge node a sends the mixed live streams obtained by the mixed streams to the audience client for watching the anchor client A and the audience client for watching the anchor client B, so that the mixed streams and the push streams of the edge node are convenient to realize, and pictures of users watching the mixed live streams in different live broadcasting rooms are completely consistent. In practical application, different mixed-stream tasks can be established in the edge node a based on requirements, and a mixed live stream corresponding to the anchor client A and a mixed live stream corresponding to the anchor client B are respectively generated.
Corresponding to the method embodiment, the present application further provides a live stream processing device embodiment, and fig. 4 shows a schematic structural diagram of a live stream processing device according to an embodiment of the present application. As shown in fig. 4, the apparatus includes:
a receiving module 402 configured to receive a live stream push instruction and receive a target live stream in response to the live stream push instruction;
a determining module 404 configured to receive a live stream mix request and determine a live stream to be mixed based on the live stream mix request;
a generating module 406 is configured to generate a target mixed live stream based on the target live stream and the live stream to be mixed.
In a specific embodiment of the present application, the receiving module 402 is further configured to:
and receiving the target live stream sent by the anchor client.
Optionally, the determining module 404 is further configured to:
forwarding the live stream mixed stream request to a central server;
receiving an edge node identification to be mixed returned by the center server based on the live stream mixed stream request;
and determining the live streams to be mixed based on the identification of the edge node to be mixed.
Optionally, the determining module 404 is further configured to:
Determining anchor information in the live stream mixed stream request, and sending the anchor information to a central server;
and receiving an edge node identifier to be mixed returned by the center server based on the anchor information.
Optionally, the determining module 404 is further configured to:
determining an edge node to be mixed according to the edge node identification to be mixed;
and acquiring the live streams to be mixed from the edge nodes to be mixed.
Optionally, the determining module 404 is further configured to:
and judging whether the edge node to be mixed is the target edge node or not.
Optionally, the determining module 404 is further configured to:
determining a live stream to be mixed in the target edge node under the condition that the edge node to be mixed is the target edge node;
and pulling the live stream to be mixed in the edge node to be mixed under the condition that the edge node to be mixed is not the target edge node.
Optionally, the determining module 404 is further configured to:
forwarding the live stream mixed stream request to a central server;
receiving a transfer node identifier returned by the center server based on the live stream mixed stream request;
And determining the live streams to be mixed based on the transit node identification.
Optionally, the determining module 404 is further configured to:
receiving an edge node identifier to be mixed returned by a center server based on the live stream mixed stream request;
determining node attributes of the target edge nodes, and determining edge nodes to be mixed and node attributes of the edge nodes to be mixed based on the identification of the edge nodes to be mixed;
transmitting a transit node query request to the center server under the condition that the node attribute of the edge node to be mixed is inconsistent with the node attribute of the target edge node;
and receiving a transfer node identification returned based on the transfer node query request.
Optionally, the determining module 404 is further configured to:
determining a target transit node in a transit node set based on the transit node identification, wherein the transit node set is determined according to the target edge node and the edge node to be mixed;
and acquiring the live streams to be mixed from the target transfer node.
Optionally, the generating module 406 is further configured to:
and merging the target live streams and the live streams to be mixed to obtain target mixed live streams.
Optionally, the apparatus further comprises a receiving sub-module configured to:
receiving a mixed live stream acquisition instruction, and determining a client identifier in the mixed live stream acquisition instruction;
and determining a client to be played based on the client identifier, and pushing the target mixed live stream to the client to be played.
According to the live stream processing device, a live stream pushing instruction is received through a receiving module, and a target live stream is received in response to the live stream pushing instruction; the determining module is used for receiving the live stream mixed stream request and determining live streams to be mixed based on the live stream mixed stream request; and the generation module is used for generating a target mixed live stream based on the target live stream and the live stream to be mixed. The live stream processing device in the specific embodiment of the application realizes that the target live stream is received in response to the received live stream push command, so that the target live stream is conveniently processed at the edge node; the live stream to be mixed is determined according to the live stream pushing instruction, so that the live stream for mixed stream can be determined conveniently; the edge node generates the target live stream based on the target live stream and the live stream to be mixed, so that the edge node can directly push the mixed live stream, the reestablishment of the link transmission of the mixed live stream is avoided, the waiting time of a user is shortened, and the watching experience of the user is improved.
The foregoing is a schematic solution of a live stream processing apparatus of this embodiment. It should be noted that, the technical solution of the live stream processing apparatus and the technical solution of the live stream processing method belong to the same concept, and details of the technical solution of the live stream processing apparatus, which are not described in detail, can be referred to the description of the technical solution of the live stream processing method.
Fig. 5 illustrates a block diagram of a computing device 500, provided in accordance with an embodiment of the present application. The components of the computing device 500 include, but are not limited to, a memory 510 and a processor 520. Processor 520 is coupled to memory 510 via bus 530 and database 550 is used to hold data.
Computing device 500 also includes access device 540, access device 540 enabling computing device 500 to communicate via one or more networks 560. Examples of such networks include the Public Switched Telephone Network (PSTN), a Local Area Network (LAN), a Wide Area Network (WAN), a Personal Area Network (PAN), or a combination of communication networks such as the internet. The access device 540 may include one or more of any type of network interface, wired or wireless (e.g., a Network Interface Card (NIC)), such as an IEEE802.11 Wireless Local Area Network (WLAN) wireless interface, a worldwide interoperability for microwave access (Wi-MAX) interface, an ethernet interface, a Universal Serial Bus (USB) interface, a cellular network interface, a bluetooth interface, a Near Field Communication (NFC) interface, and so forth.
In one embodiment of the present application, the above-described components of computing device 500, as well as other components not shown in FIG. 5, may also be connected to each other, such as by a bus. It should be understood that the block diagram of the computing device illustrated in FIG. 5 is for exemplary purposes only and is not intended to limit the scope of the present application. Those skilled in the art may add or replace other components as desired.
Computing device 500 may be any type of stationary or mobile computing device, including a mobile computer or mobile computing device (e.g., tablet, personal digital assistant, laptop, notebook, netbook, etc.), mobile phone (e.g., smart phone), wearable computing device (e.g., smart watch, smart glasses, etc.), or other type of mobile device, or a stationary computing device such as a desktop computer or PC. Computing device 500 may also be a mobile or stationary server.
Wherein the processor 520 implements the steps of the live stream processing method when executing the computer instructions.
The foregoing is a schematic illustration of a computing device of this embodiment. It should be noted that, the technical solution of the computing device and the technical solution of the live stream processing method belong to the same concept, and details of the technical solution of the computing device, which are not described in detail, can be referred to the description of the technical solution of the live stream processing method.
An embodiment of the present application also provides a computer readable storage medium storing computer instructions which, when executed by a processor, implement the steps of the live stream processing method as described above.
The above is an exemplary version of a computer-readable storage medium of the present embodiment. It should be noted that, the technical solution of the storage medium and the technical solution of the live stream processing method belong to the same concept, and details of the technical solution of the storage medium which are not described in detail can be referred to the description of the technical solution of the live stream processing method.
The foregoing describes specific embodiments of the present application. Other embodiments are within the scope of the following claims. In some cases, the actions or steps recited in the claims can be performed in a different order than in the embodiments and still achieve desirable results. In addition, the processes depicted in the accompanying figures do not necessarily require the particular order shown, or sequential order, to achieve desirable results. In some embodiments, multitasking and parallel processing are also possible or may be advantageous.
The computer instructions include computer program code that may be in source code form, object code form, executable file or some intermediate form, etc. The computer readable medium may include: any entity or device capable of carrying the computer program code, a recording medium, a U disk, a removable hard disk, a magnetic disk, an optical disk, a computer Memory, a Read-Only Memory (ROM), a random access Memory (RAM, random Access Memory), an electrical carrier signal, a telecommunications signal, a software distribution medium, and so forth. It should be noted that the computer readable medium contains content that can be appropriately scaled according to the requirements of jurisdictions in which such content is subject to legislation and patent practice, such as in certain jurisdictions in which such content is subject to legislation and patent practice, the computer readable medium does not include electrical carrier signals and telecommunication signals.
It should be noted that, for the sake of simplicity of description, the foregoing method embodiments are all expressed as a series of combinations of actions, but it should be understood by those skilled in the art that the present application is not limited by the order of actions described, as some steps may be performed in other order or simultaneously in accordance with the present application. Further, those skilled in the art will also appreciate that the embodiments described in the specification are all preferred embodiments, and that the acts and modules referred to are not necessarily all necessary for the present application.
In the foregoing embodiments, the descriptions of the embodiments are emphasized, and for parts of one embodiment that are not described in detail, reference may be made to the related descriptions of other embodiments.
The above-disclosed preferred embodiments of the present application are provided only as an aid to the elucidation of the present application. Alternative embodiments are not intended to be exhaustive or to limit the invention to the precise form disclosed. Obviously, many modifications and variations are possible in light of the teaching of this application. The embodiments were chosen and described in order to best explain the principles of the invention and the practical application, to thereby enable others skilled in the art to best understand and utilize the invention. This application is to be limited only by the claims and the full scope and equivalents thereof.

Claims (10)

1. The live stream processing method is characterized by being applied to a target edge node and comprising the following steps of:
receiving a live stream push command, and receiving a target live stream in response to the live stream push command;
receiving a live stream mixed stream request, forwarding the live stream mixed stream request to a central server, receiving an edge node identifier to be mixed returned by the central server based on the live stream mixed stream request, and determining an edge node to be mixed according to the edge node identifier to be mixed;
determining whether the target edge node and the edge node to be mixed are the same operator according to the node attribute of the target edge node and the node attribute of the edge node to be mixed;
transmitting a transit node query request to the center server under the condition that the target edge node and the to-be-mixed edge node are not the same operator, receiving a transit node identifier returned by the center server based on the transit node query request, and determining to-be-mixed live streams based on the transit node identifier, wherein a transit node corresponding to the transit node identifier is used for converting an operator corresponding to live stream data;
Acquiring a live stream to be mixed from the edge node to be mixed under the condition that the target edge node and the edge node to be mixed are of the same operator;
and generating a target mixed live stream based on the target live stream and the live stream to be mixed.
2. The live stream processing method of claim 1, wherein receiving a target live stream in response to the live stream push instruction comprises:
and receiving the target live stream sent by the anchor client.
3. The method of processing live streams of claim 1, wherein receiving the to-be-mixed edge node identifier returned by the central server based on the live stream mixed stream request comprises:
determining anchor information in the live stream mixed stream request, and sending the anchor information to a central server;
and receiving an edge node identifier to be mixed returned by the center server based on the anchor information.
4. The live stream processing method according to claim 1, wherein, in the case that the target edge node and the edge node to be mixed are the same operator, acquiring the live stream to be mixed from the edge node to be mixed includes:
Judging whether the edge node to be mixed is the target edge node or not under the condition that the target edge node and the edge node to be mixed are the same operator;
determining a live stream to be mixed in the target edge node under the condition that the edge node to be mixed is the target edge node;
and pulling the live stream to be mixed in the edge node to be mixed under the condition that the edge node to be mixed is not the target edge node.
5. The live stream processing method of claim 1, wherein determining a live stream to be mixed based on the transit node identification comprises:
determining a target transit node in a transit node set based on the transit node identification, wherein the transit node set is determined according to the target edge node and the edge node to be mixed;
and acquiring the live streams to be mixed from the target transfer node.
6. The live stream processing method according to any one of claims 1 to 5, wherein generating a target mixed live stream based on the target live stream and the live stream to be mixed comprises:
and merging the target live streams and the live streams to be mixed to obtain target mixed live streams.
7. The live stream processing method according to any one of claims 1 to 5, further comprising, after generating a target mixed live stream based on the target live stream and the live stream to be mixed:
receiving a mixed live stream acquisition instruction, and determining a client identifier in the mixed live stream acquisition instruction;
and determining a client to be played based on the client identifier, and pushing the target mixed live stream to the client to be played.
8. A live stream processing apparatus, comprising:
the receiving module is configured to receive a live stream push command and receive a target live stream in response to the live stream push command;
the determining module is configured to receive a live stream mixed stream request, forward the live stream mixed stream request to a central server, receive an edge node identifier to be mixed returned by the central server based on the live stream mixed stream request, and determine an edge node to be mixed according to the edge node identifier to be mixed;
determining whether the target edge node and the edge node to be mixed are the same operator according to the node attribute of the target edge node and the node attribute of the edge node to be mixed;
Transmitting a transit node query request to the center server under the condition that the target edge node and the to-be-mixed edge node are not the same operator, receiving a transit node identifier returned by the center server based on the transit node query request, and determining to-be-mixed live streams based on the transit node identifier, wherein a transit node corresponding to the transit node identifier is used for converting an operator corresponding to live stream data;
acquiring a live stream to be mixed from the edge node to be mixed under the condition that the target edge node and the edge node to be mixed are of the same operator;
and the generation module is configured to generate a target mixed live stream based on the target live stream and the live stream to be mixed.
9. A computing device comprising a memory, a processor, and computer instructions stored on the memory and executable on the processor, wherein the processor, when executing the computer instructions, performs the steps of the method of any one of claims 1-7.
10. A computer readable storage medium storing computer instructions which, when executed by a processor, implement the steps of the method of any one of claims 1-7.
CN202111407481.4A 2021-11-24 2021-11-24 Live stream processing method and device Active CN113923470B (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202111407481.4A CN113923470B (en) 2021-11-24 2021-11-24 Live stream processing method and device

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202111407481.4A CN113923470B (en) 2021-11-24 2021-11-24 Live stream processing method and device

Publications (2)

Publication Number Publication Date
CN113923470A CN113923470A (en) 2022-01-11
CN113923470B true CN113923470B (en) 2023-07-25

Family

ID=79248051

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202111407481.4A Active CN113923470B (en) 2021-11-24 2021-11-24 Live stream processing method and device

Country Status (1)

Country Link
CN (1) CN113923470B (en)

Families Citing this family (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN114679589B (en) * 2022-02-07 2023-11-17 上海哔哩哔哩科技有限公司 Live mixed-flow service dynamic adjustment method and device
CN114928749A (en) * 2022-04-14 2022-08-19 上海哔哩哔哩科技有限公司 Live stream switching method, system and device
CN115022665A (en) * 2022-06-27 2022-09-06 咪咕视讯科技有限公司 Live broadcast making method and device, multimedia processing equipment and multimedia processing system
CN115460431B (en) * 2022-09-23 2023-10-10 北京爱奇艺科技有限公司 Media stream live broadcast method, system, computer device and storage medium
CN117499688B (en) * 2023-12-29 2024-05-03 淘宝(中国)软件有限公司 Method, equipment and storage medium for processing audio and video confluence in live broadcast continuous wheat

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN108200443A (en) * 2017-12-29 2018-06-22 北京奇虎科技有限公司 The distribution method and device of a kind of live TV stream
CN108347622A (en) * 2018-03-06 2018-07-31 腾讯科技(深圳)有限公司 Multi-medium data method for pushing, device, storage medium and equipment
CN108574666A (en) * 2017-03-09 2018-09-25 贵州白山云科技有限公司 A kind of data stream scheduling method, device and system

Family Cites Families (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN107071584B (en) * 2017-03-14 2019-12-24 北京潘达互娱科技有限公司 Live broadcast wheat connecting method and device
CN110446054B (en) * 2018-05-03 2021-06-15 腾讯科技(深圳)有限公司 Live stream transmission method, device, node, system and storage medium
CN109168018A (en) * 2018-10-17 2019-01-08 北京潘达互娱科技有限公司 Company's wheat converging system, method, apparatus and own server in a kind of live streaming
CN111464759B (en) * 2020-03-26 2022-03-18 广州虎牙科技有限公司 Live broadcast directing method, device, storage medium and equipment
CN112738638A (en) * 2020-12-25 2021-04-30 北京百度网讯科技有限公司 Live wheat-connecting method, device, equipment, storage medium and product
CN113271470B (en) * 2021-05-17 2023-05-23 广州繁星互娱信息科技有限公司 Live broadcast wheat connecting method, device, terminal, server and storage medium
CN113542895B (en) * 2021-07-07 2023-04-07 北京字节跳动网络技术有限公司 Live broadcast method and device, computer equipment and storage medium

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN108574666A (en) * 2017-03-09 2018-09-25 贵州白山云科技有限公司 A kind of data stream scheduling method, device and system
CN108200443A (en) * 2017-12-29 2018-06-22 北京奇虎科技有限公司 The distribution method and device of a kind of live TV stream
CN108347622A (en) * 2018-03-06 2018-07-31 腾讯科技(深圳)有限公司 Multi-medium data method for pushing, device, storage medium and equipment

Also Published As

Publication number Publication date
CN113923470A (en) 2022-01-11

Similar Documents

Publication Publication Date Title
CN113923470B (en) Live stream processing method and device
CN108055496B (en) Live broadcasting method and system for video conference
RU2374771C2 (en) Method and system for provision of group interactive communication services (chat)
US20060085823A1 (en) Media communications method and apparatus
US9282448B2 (en) Method, system and apparatus for providing streaming media service
US8560641B2 (en) Enhanced multimedia capabilities in video conferencing
US20120056971A1 (en) Virtual Presence Via Mobile
US20060179110A1 (en) Duplicating digital streams for digital conferencing using switching technologies
CN109495713B (en) Video conference control method and device based on video networking
CN108259813A (en) Multi-functional biography screen device, system and method
CN111427527A (en) Screen projection method, device, equipment and computer readable storage medium
CN112738540A (en) Multi-device live broadcast switching method, device and system, electronic device and readable storage medium
CN114679604A (en) Resource processing method and device
CN111131759B (en) Real-time multimedia transmission system and use method thereof
CN107547517B (en) Audio and video program recording method, network equipment and computer device
CN112543301A (en) Intelligent conference system based on IMS and implementation method thereof
US20140043430A1 (en) Apparatus and method for providing group communication service
WO2014012384A1 (en) Communication data transmitting method, system and receiving device
CN114501053B (en) Live stream acquisition method and device
CN115002083B (en) Method, equipment and storage medium for transmitting real-time streaming media data
CN115002497B (en) Live broadcast source-returning scheduling method and system and source-returning server
CN115379279A (en) Multi-screen linkage interaction method, device and system, storage medium and electronic equipment
CN114339296A (en) Method and device for transmitting media stream and media system
KR100466830B1 (en) Contents conversion method for terminal dependent messaging service on wireless internet
CN113453081A (en) Video transmission method, system, related equipment and storage medium

Legal Events

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