CN113923470A - Live stream processing method and device - Google Patents

Live stream processing method and device Download PDF

Info

Publication number
CN113923470A
CN113923470A CN202111407481.4A CN202111407481A CN113923470A CN 113923470 A CN113923470 A CN 113923470A CN 202111407481 A CN202111407481 A CN 202111407481A CN 113923470 A CN113923470 A CN 113923470A
Authority
CN
China
Prior art keywords
live stream
mixed
edge node
live
stream
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Granted
Application number
CN202111407481.4A
Other languages
Chinese (zh)
Other versions
CN113923470B (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

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/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 live stream processing device, which are applied to a target edge node, wherein the live stream processing method comprises the following steps: receiving a live stream push stream instruction, and receiving a target live stream in response to the live stream push stream instruction; receiving a live stream mixed flow request, and determining a to-be-mixed live stream based on the live stream mixed flow request; and generating a target mixed live stream based on the target live stream and the to-be-mixed live stream. The live stream processing method receives the target live stream in response to the received live stream push stream instruction, and is convenient for processing the target live stream at the edge node; determining to-be-mixed live stream according to the live stream plug-flow instruction, so as to conveniently determine live stream for mixed flow; the target live stream is generated on the basis of the target live stream and the to-be-mixed live stream at the edge node, so that the edge node can directly push the mixed live stream, the link is prevented from being reestablished to transmit the mixed live stream, 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 application also relates to a live stream processing device, 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 broadcasting and live broadcasting, in order to enable live broadcasting audiences to see live broadcasting pictures of main broadcasting of both parties of live broadcasting and live broadcasting, live broadcasting streams of both parties of live broadcasting and live broadcasting streams of both parties of live broadcasting need to be mixed and then sent to a watching client. The current common direct flow and mixed flow mode is as follows: the anchor of both sides pulls the live stream of the anchor of the other side to the local, then carries on two live stream mixed flows on the anchor live equipment, and then sends the mixed flow live stream to the audience client.
However, the above method is affected by the quality of the anchor device, a macaton problem may occur, and after the anchor end pushes the mixed flow data again, the audience client needs to establish a new link again to pull the new mixed flow data, which causes a waiting loading phenomenon in the process of watching the live online broadcast by the audience, and affects the watching experience of the user.
Therefore, how to realize mixed flow of live broadcast streams at edge nodes and improve the fluency of live broadcast viewing becomes a technical problem to be solved urgently by related technical personnel.
Disclosure of Invention
In view of this, an embodiment of the present application provides a live stream processing method. The application also relates to a live stream processing device, a computing device and a computer readable storage medium, which are used for solving the problems of unsmooth live picture, long loading time and the like in the prior art.
According to a first aspect of an embodiment of the present application, a live stream processing method is provided, including:
receiving a live stream push stream instruction, and receiving a target live stream in response to the live stream push stream instruction;
receiving a live stream mixed flow request, and determining a to-be-mixed live stream based on the live stream mixed flow request;
and generating a target mixed live stream based on the target live stream and the to-be-mixed live stream.
According to a second aspect of the embodiments of the present application, there is provided a live stream processing apparatus, including:
the receiving module is configured to receive a live stream push stream instruction and receive a target live stream in response to the live stream push stream instruction;
the determining module is configured to receive a live stream mixed flow request and determine a to-be-mixed live stream based on the live stream mixed flow request;
a generating module configured to generate a target mixed live stream based on the target live stream and the to-be-mixed live stream.
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 receives a live stream push stream instruction, and receives a target live stream in response to the live stream push stream instruction; receiving a live stream mixed flow request, and determining a to-be-mixed live stream based on the live stream mixed flow request; and generating a target mixed live stream based on the target live stream and the to-be-mixed live stream.
According to the embodiment of the application, the target live broadcast stream is received in response to the received live broadcast stream push instruction, so that the target live broadcast stream is conveniently processed at the edge node; determining to-be-mixed live stream according to the live stream plug-flow instruction, so as to conveniently determine live stream for mixed flow; the target live stream is generated on the basis of the target live stream and the to-be-mixed live stream at the edge node, so that the edge node can directly push the mixed live stream, the link is prevented from being reestablished to transmit the mixed live stream, 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 processing 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 processing 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 apparatus according to an embodiment of the present application;
fig. 5 is a block diagram of a computing device according to an 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 capable of implementation in many different ways than those herein set forth and of similar import by those skilled in the art without departing from the spirit of this application and is therefore not limited to the specific implementations disclosed below.
The terminology used in the one or more embodiments of the present application is for the purpose of describing particular embodiments only and is not intended to be limiting of the one or more embodiments of the present application. As used in one or more embodiments of the present application 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 is intended to encompass any and all possible combinations of one or more of the associated listed items.
It will be understood that, although the terms first, second, etc. may be used herein in one or more embodiments of the present application to describe various information, these information should not be limited by these terms. These terms are only used to distinguish one type of information from another. For example, a first aspect may be termed a second aspect, and, similarly, a second aspect may be termed a first aspect, 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 "when … …" or "in response to a determination", depending on the context.
First, the noun terms to which one or more embodiments of the present application relate are explained.
Connecting wheat: a live broadcasting mode is characterized in that two live broadcasting rooms are connected with a main broadcasting line for live broadcasting.
Edge nodes: the user side servers which are close to the user in physical distance are deployed at the edge of each city, and the transmission delay is low.
Mixing flow: and mixing the two audio and video data into one audio and video data.
Bandwidth cost: the general 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 instantaneous traffic of the allowed nodes.
BGP: BGP is the short name for Border Gateway Protocol, and is a routing Protocol used to connect to an independent system on the Internet, and a BGP node in the present application refers to a server that can convert a live streaming operator.
Live broadcast mode is common in live broadcast service, in which live broadcast is realized by connecting a main broadcast room with a live broadcast. At present, a common wheat-connecting implementation mode is that two anchor broadcasters pull data of the anchor broadcasters of the other party to the local, then two live stream mixed flows are carried out on the anchor live equipment, and then the mixed flows are uploaded to a cloud server again, at the moment, data watched by audiences are pictures of conversation of the two anchor broadcasters, but the implementation mode has a great defect that the performance of the anchor live equipment is uncontrollable, and the live wheat-connecting quality is uneven. And the audience needs to pull new live broadcast data again after the main broadcast pushes the mixed live broadcast data again. This process can result in waiting time for video loading on the viewer side and a significantly compromised viewing experience. The existing technical scheme of wheat connection is a technical scheme of re-pushing data by mixed flow at the main broadcasting side, and has the following defects that the quality of main broadcasting equipment directly determines the quality of wheat connection, and most of wheat connection is caused by the quality of main broadcasting equipment. 2. The anchor needs to push the mixed data again, and the audience needs to reestablish a new link to pull new data, which is not good for viewing experience. 3. Mixed flow operation is completed in the main broadcasting equipment, and the long wheat connecting time can affect the main broadcasting equipment and the main broadcasting experience.
According to the scheme, the mixed flow of the main broadcast video data is carried out by adopting the edge nodes, the participation of main broadcast end equipment is not needed, the mixed live broadcast stream obtained after the mixed flow succeeds seamlessly replaces the data which is being live broadcast by the main broadcast, and the phenomenon that audiences pull new data after wheat is connected can not be loaded and wait at present.
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 one by one.
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: receiving a live stream push stream instruction, and receiving a target live stream in response to the live stream push stream instruction.
The live stream plug-flow instruction refers to an instruction for plug-flowing the live stream generated by the anchor end to the 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 the push stream of the live stream.
In practical application, the anchor client responds to a received live stream push stream instruction, a target live stream generated by the anchor client in a live broadcast process is pushed to a target edge node, and the target edge node receives the target live stream sent by the anchor client, so that the push stream of the target live stream is completed; the anchor can push and stream the live data to the edge node closest to the anchor, and the audience pulls the live data from the edge node based on the watching requirement.
In a specific embodiment of the application, taking an anchor client a as an example, the anchor client a receives a live stream streaming instruction, determines an edge node identifier in the live stream streaming instruction in response to the live stream streaming instruction, 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 broadcasting process to an edge node a, and receiving the live stream 1 sent by the anchor client A by the edge node a.
By receiving the target live stream sent by the anchor client, further live stream processing operation is facilitated according to the target live stream in the edge node.
Step 104: receiving a live stream mixed flow request, and determining a to-be-mixed live stream based on the live stream mixed flow request.
The live stream mixed flow request refers to a request for combining a plurality of live streams into a mixed live stream; the mixed live stream refers to a live stream determined according to the live stream mixed stream request, for example, in a live wheat-connecting scene, a main broadcast end of each of two connected wheat parties after triggering wheat connection sends a wheat-connecting request containing main broadcast information corresponding to the wheat connection to an edge node corresponding to the main broadcast end, and the edge node generates a live stream mixed stream request based on the wheat-connecting request, so that the live streams of the two connected wheat parties are mixed.
In practical application, when the main broadcasting of different direct broadcasting rooms is connected with the wheat, the direct broadcasting streams generated by the two direct broadcasting rooms need to be mixed; the main broadcasting triggers a wheat connecting button to generate a mixed flow request of the live broadcasting flow; a live stream for live stream mixed flow can be determined based on the live stream mixed flow request, for example, a main broadcast A initiates a wheat connection with a main broadcast B, and the live stream mixed flow request; a live stream of anchor a and a live stream of 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 anchor client a as an example, anchor client a triggers a wheat connecting button with anchor client B to generate a live stream mixed flow request; and the edge node a receives the live stream mixed flow request and determines the live stream 2 pushed by the anchor client B according to the live stream mixed flow request.
Specifically, the method for determining the to-be-mixed live stream based on the live stream mixed flow request includes:
forwarding the live broadcast stream mixed flow request to a central server;
receiving an edge node identifier to be mixed returned by the central server based on the live streaming mixed flow request;
and determining the live stream to be mixed based on the edge node identifier to be mixed.
The central server is a server for recording stream pushing information, for example, in the process that the anchor client C pushes the live stream 3 to the edge node C, stream pushing data records are generated in the central server; in practical application, the central server can periodically scan all edge nodes to obtain the states of the edge nodes, so that the accuracy of data in the central server is ensured; the edge node identifier to be mixed refers to a node identifier of an edge node to be mixed, which is determined in the central server based on the mixed flow request of the live stream and corresponds to the mixed flow request of the live stream, for example, the edge node identifier to be mixed is an IP address of the edge node to be mixed; the to-be-mixed live stream refers to a live stream acquired from an edge node to be mixed.
Specifically, after receiving a live stream mixed flow request, the edge node forwards the live stream mixed flow request to the central server; the center server receives the direct stream mixed flow request, searches an edge node identifier corresponding to the direct stream mixed flow request in the center server based on the direct stream mixed flow request, takes the edge node identifier as a to-be-mixed edge node identifier and returns the edge node identifier to the edge node; and the edge node determines the live stream to be mixed based on the returned edge node identifier to be mixed.
In a specific embodiment of the present application, taking mixing of live streams corresponding to a anchor client a and an anchor client B as an example, an edge node a forwards a received live stream mixed flow request to a central server; the center server receives a direct stream mixed flow request, and searches an edge node identifier 'b' corresponding to the direct stream mixed flow request as an edge node identifier to be mixed based on the direct stream mixed flow request; and determining the live stream 2 to be mixed according to the edge node identifier 'B', namely the live stream 2 of the anchor client B.
By forwarding the live stream mixed flow request to the central server, the edge node identifier where the live stream for mixed flow is located is convenient to determine based on the stream pushing record recorded in the central server; and the data in the central server is continuously updated, so that the accuracy is higher, and the accuracy of determining the to-be-mixed live broadcast stream is improved.
In practical application, the method for receiving the edge node identifier to be mixed returned by the central server based on the live stream mixed flow request includes:
determining anchor information in the live streaming mixed flow request, and sending the anchor information to a central server;
and receiving the edge node identifier to be mixed returned by the central server based on the anchor information.
The anchor information refers to a field for uniquely identifying the anchor client, which edge node the anchor client pushes the live stream to can be found in the data recorded by the central server based on the anchor information of the anchor client, for example, if the anchor information is "anchor client D", the pushed stream data can be found in the central server according to the anchor information, the "anchor client D pushes the live stream 4 to the edge node D", and the identifier of the edge node to be mixed in the pushed stream 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 application, taking an edge node a as an example, the edge node a determines anchor information "anchor client B" in a mixed flow request of a live stream, and sends the anchor information to a central server; the central server searches an edge node identifier ' edge node B ' to be mixed corresponding to the anchor information ' anchor client B ' based on the anchor information and returns the edge node B ' to the edge node a; the edge node a receives the edge node identifier 'edge node b' to be mixed returned by the central server.
In practical application, the method for determining the live stream to be mixed based on the edge node identifier to be mixed comprises the following steps:
determining edge nodes to be mixed according to the edge node identifiers to be mixed;
and acquiring the to-be-mixed live stream from the to-be-mixed edge node.
The edge node to be mixed refers to an edge node containing a live stream to be mixed, for example, if the anchor client D pushes the live stream 4 to an edge node D, the edge node D may be determined based on the edge node identifier "edge node D", and the live stream 4 may be acquired 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 as an example, the edge node a receives an edge node identifier "edge node b" to be mixed, which is 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.
Specifically, in order to facilitate stream pushing of live streams in different areas, a plurality of different edge nodes can be set in different areas for stream pushing of live streams; however, in practical applications, 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 short, the live stream 1 of the anchor a and the live stream 2 of the anchor B are both pushed to the edge node a; at this time, the live stream does not need 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 a target edge node as a node a as an example, determining an edge node b to be mixed based on an edge node identifier "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 to-be-mixed live stream from the to-be-mixed edge node comprises the following steps:
under the condition that the edge node to be mixed is the target edge node, determining a live stream to be mixed in the target edge node;
and under the condition that the edge node to be mixed is not the target edge node, pulling the live stream to be mixed in the edge node to be mixed.
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, the direct broadcast stream to be mixed needs to be pulled to the target edge node from the determined edge node to be mixed, so that the target direct broadcast stream and the direct broadcast 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, determining that a target edge node is also the node a, and determining a live stream to be mixed in the node a.
In another specific embodiment of the present application, taking an edge node to be mixed as a node b as an example, determining a target edge node as a node a and determining an edge node to be mixed as a node b, and pulling a live stream to be mixed from the node b to the node a.
The step of receiving the live stream mixed flow request and determining the to-be-mixed live stream based on the live stream mixed flow request may be used when the to-be-mixed edge node and the target edge node are the same operator, and when the to-be-mixed edge node and the target edge node are not the same node and the to-be-mixed edge node and the target edge node are respectively located in different operators, the to-be-mixed live stream may be obtained by the following method.
The specific method for determining the to-be-mixed live stream based on the live stream mixed flow request comprises the following steps of:
forwarding the live broadcast stream mixed flow request to a central server;
receiving a transfer node identifier returned by the central server based on the live stream mixed flow request;
and determining the live stream to be mixed based on the transit node identification.
The transit node identifier refers to a field that can uniquely represent a transit node, for example, an IP address of the transit node; the relay node is a node that relays the live stream, for example, the live stream in the operator a is switched to the live stream in the operator B, and in practical application, the relay node may be a node server such as a BGP node that can implement conversion of an operator corresponding to the live stream data, and the application is not limited specifically.
In practical application, the specific method for receiving the transit node identifier returned by the central server based on the live stream mixed flow instruction comprises the following steps:
receiving an edge node identifier to be mixed returned by the central server based on the live stream mixed flow request;
determining the node attribute of the target edge node, and determining the edge node to be mixed and the node attribute of the edge node to be mixed based on the edge node identifier to be mixed;
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, sending a transit node query request to the central server;
and receiving the transit node identification returned based on the transit node query request.
The edge node identifier to be mixed refers to a field for uniquely identifying an edge node, for example, an IP address of the edge node to be mixed; the node attribute of the target edge node refers to operator information of an operator where the target edge node is located; the node attribute of the edge node to be mixed refers to operator information of an operator where the edge node to be mixed is located; the relay node query request refers to a request for querying a relay node for relaying the to-be-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 live broadcast stream, which affects the pulling of the live broadcast stream and further affects the mixed flow efficiency of the subsequent live broadcast stream; therefore, the transfer node can receive the live stream to be mixed, and the operator of the live stream to be mixed is converted to be consistent with the operator of the target live stream and then sent to the target edge node by the transfer node, so that the quality of the live stream for mixed flow is improved, and the efficiency of pulling the live stream is improved.
However, the method of using the transit node has a problem of high bandwidth cost; in order to reduce the bandwidth cost and further reduce the bandwidth cost of mixed flow at the edge node, 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, namely under the condition of different operators, determining all transfer nodes capable of transferring the live stream to be mixed by the operators to form a transfer node set; under the condition that a target edge node sends a request for pulling a to-be-mixed live stream, determining the current code rate of the to-be-mixed live stream, wherein the current code rate refers to the number of data bits of target live stream data transmitted in unit time; the current bandwidth of each transfer node in the transfer node set is determined, and the transfer node corresponding to the lowest current bandwidth is used as a target transfer node to transfer the to-be-mixed live broadcast stream, so that the peak bandwidth of the transfer node is ensured to be improved to the minimum, and the bandwidth cost of mixing streams at the edge node is reduced.
The central server records the related information of the target transfer node for transferring the to-be-mixed live stream, and can return the transfer node identification of the transfer node for transferring the to-be-mixed live stream to the target edge node after the central server receives the transfer node query request; and the target edge node receives the transit node identification of the target transit node returned by the central server based on the transit node query request.
In a specific embodiment of the application, taking an example that an edge node a receives a mixed flow request of a live stream, the edge node a forwards the received mixed flow request of the live stream to a central server, and the central server determines an edge node IP address of an edge node where a live stream B to be mixed flows corresponding to anchor information is located based on the anchor information in the mixed flow request of the live stream, and returns the edge node IP address to the edge node a; the edge node a comprises a live stream A 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 sending a transfer node query request to the central server because the node attributes of the edge node a and the edge node B are inconsistent, determining that the transfer node n transfers the live stream B to be mixed in the edge node B, and receiving a transfer node identifier of the transfer node n returned by the central server.
In practical application, the specific method for determining the live stream to be mixed based on the transit node identifier comprises the following steps:
determining a target transit node in a transit node set based on the transit node identifier, wherein the transit node set is determined according to the target edge node and the edge node to be mixed;
and acquiring the to-be-mixed live stream from the target transit node.
The target transit node is a transit node for carrying out carrier transit on the to-be-mixed live stream.
Specifically, the target transfer node receives a to-be-mixed live stream pushed by the to-be-mixed flow edge node, transfers the to-be-mixed live stream, and the target edge node acquires the to-be-mixed live stream at the target transfer node.
In a preferred embodiment provided by the present application, a anchor a pushes a live stream 1 to an edge node a, an anchor B pushes a live stream 2 to an edge node B, and the anchor a sends a request for connecting to a wheat to the anchor B to the edge node a, that is, a request for mixing the live stream 1 and the live stream 2; the edge node a and the edge node B respectively carry out live broadcast stream mixed flow, and because the operators of the anchor A and the anchor B are different, the edge node a needs to pass through a transfer node when pulling the live broadcast stream 2 in the edge node B, and similarly, the edge node B needs to pass through a transfer node when pulling the live broadcast stream 1 in the edge node a, at the moment, in order to further reduce the bandwidth peak value, a transfer node set consisting of all transfer nodes capable of transferring the live broadcast stream 1 and the live broadcast stream 2 is determined, the current bandwidth of each transfer node in the transfer node set is obtained, and the transfer node corresponding to the lowest current bandwidth is taken as the transfer node 1; determining the current code rate of a live stream 1 and the current code rate of a live stream 2, wherein the current code rate of the live stream 1 is greater than the current code rate of the live stream 2, a transfer node 1 is adopted to transfer the live stream 1, the current bandwidth of the transfer node 1 is increased by the current code rate of the live stream 1, then a transfer node 2 corresponding to the lowest current bandwidth is determined in a transfer node set, the transfer node 2 is used as a transfer node for transferring the live stream 2, and in practical application, the transfer node 1 and the transfer node 2 may be the same transfer node; by the mode, the peak bandwidth can be further reduced, and the mixed flow cost of the edge node is further reduced.
The edge node identifier to be mixed is determined based on the live broadcast stream mixed flow request, the live broadcast stream to be mixed is obtained from the edge node to be mixed determined according to the edge node identifier to be mixed, and the follow-up edge node can further process the live broadcast stream to be mixed.
Step 106: and generating a target mixed live stream based on the target live stream and the to-be-mixed live stream.
Specifically, after the target live stream and the to-be-mixed live stream are determined, the target mixed live stream can be obtained by performing mixed flow based on the target live stream and the to-be-mixed live stream.
In practical application, the method for generating the target mixed live stream based on the target live stream and the to-be-mixed live stream comprises the following steps:
and merging the target live stream and the to-be-mixed live stream to obtain a target mixed live stream.
The target mixed live stream refers to a live stream obtained according to the target live stream and the to-be-mixed live stream.
Specifically, video data and audio data in a target live stream and a to-be-mixed live stream are synchronized and combined to obtain a target mixed live stream, that is, two live streams are combined into one live stream, wherein the target live stream in the target mixed live stream and the video and audio of the to-be-mixed live stream are simultaneously displayed in 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 anchor a and a to-be-mixed live stream 2 corresponding to an anchor B to obtain a target mixed live stream capable of simultaneously displaying videos and audios of the anchor a and the anchor B.
In practical application, after generating a target mixed live stream based on the target live stream and the to-be-mixed live stream, 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 identification, and pushing the target mixed live stream to the client to be played.
The mixed live stream acquisition instruction is an instruction for acquiring a target mixed live stream; the client identification refers to a field which can uniquely identify the client; the client to be played refers to a client playing the target mixed live stream.
Specifically, after the edge node generates the target mixed live stream, the edge node can respond to a live data pull request of the client to determine a target client for pulling the live data, send the target mixed live stream to the target client, and display the target mixed live stream by the target client.
In practical application, a client where a viewer is located watches live broadcast by establishing a link with an edge node, and a live broadcast room anchor may initiate a live broadcast request with other anchors in the live broadcast watching process to generate a live broadcast stream mixed flow request; based on the live stream of live stream mixed flow request at edge node mixed flow company wheat both sides, after obtaining mixed live stream, with mixed live stream through spectator watch live when the link send to spectator's client can, thereby avoid anchor client to carry out the mixed flow back to live stream, need carry out the problem of pushing stream again to mixed live stream, thereby further avoided anchor client's pushing stream again to new edge node, lead to spectator client need establish again with the new edge node between the connection just can watch the problem of mixed live stream content, promote spectator watch live efficiency and the fluency of live picture.
In a specific embodiment of the present application, taking a mixed live stream Q as an example, an edge node generates the mixed live stream Q based on a live stream 1 of an anchor client a and a live stream 2 of a live client B; receiving an acquisition instruction of the mixed live stream Q, determining a client identifier in response to the acquisition instruction, determining an audience client U for watching the live broadcast of the anchor client A based on the client identifier, and sending the mixed live stream Q to the audience client U.
In the above embodiments, all the examples are the initiators of mixed flow requests of live broadcast streams, for example, the initiator of live broadcast microphone, and the processing on the receiver of live broadcast microphone may be to obtain a target mixed flow live broadcast stream generated by an edge node, or to generate a new target mixed flow live broadcast stream at the edge node by using a processing mode consistent with the initiator; the specific processing manner is not specifically limited in the present application, and may be set based on actual requirements.
In a specific embodiment of the present application, taking an example that an anchor client B receives a wheat connection request sent by an anchor client a, the anchor client B sends a live stream 2 generated by live broadcast to an edge node B; the method comprises the steps that a anchor client b forwards a received wheat connecting request to an edge node b, the edge node b receives an edge node identifier returned by a central server based on the wheat connecting request, specifically, an edge node identifier 'edge node a' corresponding to an anchor message is determined according to an anchor message 'anchor A' in the wheat connecting request, the edge node a is determined based on the edge node identifier, and direct broadcast stream 1 is pulled from the edge node a; the edge node B merges the live stream 1 and the live stream 2 to obtain a mixed live stream corresponding to the anchor client B, and the mixed live stream can be pushed to the audience client of the anchor client B.
The live stream push method comprises the steps of receiving a live stream push instruction, and responding to the live stream push instruction to receive a target live stream; receiving a live stream mixed flow request, and determining a to-be-mixed live stream based on the live stream mixed flow request; and generating a target mixed live stream based on the target live stream and the to-be-mixed live stream. This application embodiment has realized pulling the live stream that needs the mixed flow through the edge node that receives the plug flow to carry out the mixed flow by edge node to the live stream, be convenient for with the mixed live stream direct routing that the mixed flow obtained to watch live audience's end, avoided and just can watch live problem at the new transmission connection of reestablishment after the mixed live stream of generation, promoted the smoothness and the experience sense that the user watched live.
The following describes the live stream processing method further by taking an application of the live stream processing method provided by the present application to an edge node a and an edge node b as an example, with reference to fig. 2. Fig. 2 shows a processing 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 instruction 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 stream instruction, and determining an edge node a based on the edge node identifier; the live stream 1 is pushed to the edge node a.
Step 204: and the anchor client B receives the live stream push instruction 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 stream instruction, and determining an edge node b based on the edge node identifier; the live stream 2 is pushed to the edge node b.
Step 206: and the anchor client A triggers a wheat connecting request with the anchor client B and sends the wheat connecting request to the edge node a.
Specifically, the anchor client a generates a wheat connecting request based on wheat connecting with the anchor client B, and sends the wheat connecting request to the edge node a receiving the live stream 1.
Step 208: and 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 direct call request includes the anchor information "anchor B", and the anchor information "anchor B" is sent to the central server.
Step 210: the central server determines an edge node identifier based on the anchor information and returns the edge node identifier to the edge node a.
Specifically, the central server determines an edge node identifier "B" corresponding to the "anchor B" in a push stream data table of the central server based on the anchor information "anchor B", and returns the edge node identifier "B" to the edge node a.
Step 212: the edge node a determines an edge node b based on the edge node identification, and pulls the direct broadcast stream 2 from the edge node b.
Step 214: the edge node a merges the live stream 1 and the live stream 2 to obtain a mixed live stream M.
Specifically, a live stream 1 corresponding to the anchor client a and a live stream 2 corresponding to the anchor client B in the edge node a are merged to obtain a mixed live stream M.
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; and determining a target client based on the client identification, and sending the mixed live stream to the audience client C.
Step 218: and the anchor client A receives the live stream 2 pushed by the edge node a and displays the live stream 1 and the live stream 2 simultaneously.
Step 220: and the anchor client B sends the received wheat connecting request triggered by the anchor client A to the edge node B.
Step 222: and the edge node b determines the anchor information in the wheat connecting request and sends the anchor information to the central server.
Specifically, the anchor information "anchor a" contained in the wheat-connecting request is determined and sent to the central server.
Step 224: and the central server determines the edge node identification based on the anchor information and returns the edge node identification to the edge node b.
Specifically, the central server determines an edge node identifier "a" corresponding to the "anchor a" in a push stream 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: and the edge node b determines an edge node a based on the edge node identification, and pulls the direct broadcast stream 1 from the edge node a.
Step 228: and the edge node b merges the live stream 2 and the live stream 1 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 anchor 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 this embodiment is applied to the edge node a and the edge node B, respectively, that is, the mixed live stream generated at the edge node a can be pushed to the watching client of the anchor client a, and the mixed live stream generated at the edge node B can be pushed to the watching client of the anchor client B, that is, the two edge nodes respectively mix the live streams, so that the edge nodes corresponding to the two anchor clients can push different mixed live streams, and a user can watch different live streaming pictures in different live broadcasting rooms, thereby obtaining a better mixed flow effect of the live streams.
The following describes the live stream processing method further by taking an application of the live stream processing method provided by the present application to an edge node a as an example, with reference to fig. 3. Fig. 3 shows a processing 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 instruction 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 stream instruction, and determining an edge node a based on the edge node identifier; the live stream 1 is pushed to the edge node a.
Step 304: and the anchor client B receives the live stream push instruction 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 stream instruction, and determining an edge node a based on the edge node identifier; the live stream 2 is pushed to the edge node a.
Step 306: and the anchor client A triggers a wheat connecting request with the anchor client B and sends the wheat connecting request to the edge node a.
Specifically, the anchor client a generates a wheat connecting request based on wheat connecting with the anchor client B, and sends the wheat connecting request to the edge node a receiving the live stream 1.
Step 308: and 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 direct call request includes the anchor information "anchor B", and the anchor information "anchor B" is sent to the central server.
Step 310: the central server determines an edge node identifier based on the anchor information and returns the edge node identifier to the edge node a.
Specifically, the central server determines an edge node identifier "a" corresponding to the "anchor B" in a push stream 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 identifier, determines the live stream 2 from the edge node a, and combines the live stream 1 and the live stream 2 to obtain a mixed live stream.
Specifically, a live stream 1 corresponding to the anchor client a and a live stream 2 corresponding to the anchor client B in the edge node a are merged 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; a target client is determined based on the client identification and the mixed live stream is sent to the viewer client.
Step 316: and the anchor client A receives the live stream 2 pushed by the edge node a and displays the live stream 1 and the live stream 2 simultaneously.
Step 318: and the anchor client B receives the live stream 1 pushed by the edge node a and displays the live stream 1 and the live stream 2 simultaneously.
The live stream processing method in this embodiment is applied to an edge node a, where the edge node a receives live streams of a main broadcast client a and a main broadcast client B, respectively, and the edge node a sends a mixed live stream obtained by mixing streams to an audience client watching the main broadcast client a and an audience client watching the main broadcast client B, so that the mixing streams and the push streams of the edge node are convenient to implement, and pictures of a user watching the mixed live stream in different live broadcast rooms are completely consistent. In practical application, different mixed flow 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 foregoing method embodiment, the present application further provides an embodiment of a live stream processing apparatus, and fig. 4 shows a schematic structural diagram of a live stream processing apparatus provided in 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 mixed flow request and determine a to-be-mixed live stream based on the live stream mixed flow request;
a generating module 406 configured to generate a target mixed live stream based on the target live stream and the to-be-mixed live stream.
In a specific embodiment of the present application, the receiving module 402 is further configured to:
and receiving a target live stream sent by the anchor client.
Optionally, the determining module 404 is further configured to:
forwarding the live broadcast stream mixed flow request to a central server;
receiving an edge node identifier to be mixed returned by the central server based on the live streaming mixed flow request;
and determining the live stream to be mixed based on the edge node identifier to be mixed.
Optionally, the determining module 404 is further configured to:
determining anchor information in the live streaming mixed flow request, and sending the anchor information to a central server;
and receiving the edge node identifier to be mixed returned by the central server based on the anchor information.
Optionally, the determining module 404 is further configured to:
determining edge nodes to be mixed according to the edge node identifiers to be mixed;
and acquiring the to-be-mixed live stream from the to-be-mixed edge node.
Optionally, the determining module 404 is further configured to:
and judging whether the edge node to be mixed is the target edge node.
Optionally, the determining module 404 is further configured to:
under the condition that the edge node to be mixed is the target edge node, determining a live stream to be mixed in the target edge node;
and under the condition that the edge node to be mixed is not the target edge node, pulling the live stream to be mixed in the edge node to be mixed.
Optionally, the determining module 404 is further configured to:
forwarding the live broadcast stream mixed flow request to a central server;
receiving a transfer node identifier returned by the central server based on the live stream mixed flow request;
and determining the live stream 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 the central server based on the live stream mixed flow request;
determining the node attribute of the target edge node, and determining the edge node to be mixed and the node attribute of the edge node to be mixed based on the edge node identifier to be mixed;
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, sending a transit node query request to the central server;
and receiving the transit node identification returned based on the transit 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 identifier, wherein the transit node set is determined according to the target edge node and the edge node to be mixed;
and acquiring the to-be-mixed live stream from the target transit node.
Optionally, the generating module 406 is further configured to:
and merging the target live stream and the to-be-mixed live stream to obtain a target mixed live stream.
Optionally, the apparatus further comprises a receiving submodule 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 identification, and pushing the target mixed live stream to the client to be played.
The live stream processing device receives a live stream push stream instruction through a receiving module, and receives a target live stream in response to the live stream push stream instruction; the determining module receives a direct broadcast stream mixed flow request and determines a direct broadcast stream to be mixed based on the direct broadcast stream mixed flow request; and the generation module is used for generating a target mixed live stream based on the target live stream and the to-be-mixed live stream. The live stream processing device in a specific embodiment of the application realizes that a target live stream is received in response to a received live stream push stream instruction, and is convenient for processing the target live stream at an edge node; determining to-be-mixed live stream according to the live stream plug-flow instruction, so as to conveniently determine live stream for mixed flow; the target live stream is generated on the basis of the target live stream and the to-be-mixed live stream at the edge node, so that the edge node can directly push the mixed live stream, the link is prevented from being reestablished to transmit the mixed live stream, the waiting time of a user is shortened, and the watching experience of the user is improved.
The above is a schematic scheme of a live stream processing apparatus of the present 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 that are not described in detail in the technical solution of the live stream processing apparatus 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 according to 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 store 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, e.g., a Network Interface Card (NIC), wired or wireless, 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 application, the above-described components of computing device 500 and 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 architecture shown in FIG. 5 is for purposes of example only and is not limiting as to 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., smartphone), wearable computing device (e.g., smartwatch, smartglasses, 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 above is an illustrative scheme of a computing device of the present 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 that are not described in detail in the technical solution of the computing device can all be referred to in the description of the technical solution of the live stream processing method.
An embodiment of the present application further provides a computer readable storage medium, which stores computer instructions, and the computer instructions, when executed by a processor, implement the steps of the live stream processing method as described above.
The above is an illustrative scheme of a computer-readable storage medium of the present embodiment. It should be noted that the technical solution of the storage medium belongs to the same concept as the technical solution of the above live stream processing method, and details that are not described in detail in the technical solution of the storage medium can be referred to the description of the technical solution of the above live stream processing method.
The foregoing description of specific embodiments of the present application has been presented. Other embodiments are within the scope of the following claims. In some cases, the actions or steps recited in the claims may be performed in a different order than in the embodiments and still achieve desirable results. In addition, the processes depicted in the accompanying figures do not necessarily require the particular order shown, or sequential order, to achieve desirable results. In some embodiments, multitasking and parallel processing may also be possible or may be advantageous.
The computer instructions comprise computer program code which may be in the form of source code, object code, an executable file or some intermediate form, or the like. The computer-readable medium may include: any entity or device capable of carrying the computer program code, recording medium, usb disk, removable hard disk, magnetic disk, optical disk, computer Memory, Read-Only Memory (ROM), Random Access Memory (RAM), electrical carrier wave signals, telecommunications signals, software distribution medium, and the like. It should be noted that the computer readable medium may contain content that is subject to appropriate increase or decrease as required by legislation and patent practice in jurisdictions, for example, in some jurisdictions, computer readable media does not include electrical carrier signals and telecommunications signals as is required by legislation and patent practice.
It should be noted that, for the sake of simplicity, the above-mentioned method embodiments are described as a series of acts or combinations, but those skilled in the art should understand that the present application is not limited by the described order of acts, as some steps may be performed in other orders or simultaneously according to the present application. Further, those skilled in the art should also appreciate that the embodiments described in the specification are preferred embodiments and that the acts and modules referred to are not necessarily required in this application.
In the above embodiments, the descriptions of the respective embodiments have respective emphasis, and for parts that are not described in detail in a certain embodiment, reference may be made to related descriptions of other embodiments.
The preferred embodiments of the present application disclosed above are intended only to aid in the explanation of the application. Alternative embodiments are not exhaustive and do not limit the invention to the precise embodiments described. Obviously, many modifications and variations are possible in light of the above teaching. The embodiments were chosen and described in order to best explain the principles of the application and its practical applications, to thereby enable others skilled in the art to best understand and utilize the application. The application is limited only by the claims and their full scope and equivalents.

Claims (15)

1. A live stream processing method is applied to a target edge node and comprises the following steps:
receiving a live stream push stream instruction, and receiving a target live stream in response to the live stream push stream instruction;
receiving a live stream mixed flow request, and determining a to-be-mixed live stream based on the live stream mixed flow request;
and generating a target mixed live stream based on the target live stream and the to-be-mixed live stream.
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 a target live stream sent by the anchor client.
3. The live stream processing method of claim 1, wherein determining a live stream to be mixed based on the live stream mixed flow request comprises:
forwarding the live broadcast stream mixed flow request to a central server;
receiving an edge node identifier to be mixed returned by the central server based on the live streaming mixed flow request;
and determining the live stream to be mixed based on the edge node identifier to be mixed.
4. The live stream processing method according to claim 3, wherein receiving the edge node identifier to be mixed returned by the central server based on the live stream mixed flow request comprises:
determining anchor information in the live streaming mixed flow request, and sending the anchor information to a central server;
and receiving the edge node identifier to be mixed returned by the central server based on the anchor information.
5. The live stream processing method of claim 3, wherein determining the live stream to be mixed based on the edge node identification to be mixed comprises:
determining edge nodes to be mixed according to the edge node identifiers to be mixed;
and acquiring the to-be-mixed live stream from the to-be-mixed edge node.
6. The live streaming processing method of claim 5, wherein after determining the edge node to be mixed according to the edge node to be mixed identifier, the method further comprises:
and judging whether the edge node to be mixed is the target edge node.
7. The live stream processing method according to claim 6, wherein obtaining the live stream to be mixed from the edge node to be mixed includes:
under the condition that the edge node to be mixed is the target edge node, determining a live stream to be mixed in the target edge node;
and under the condition that the edge node to be mixed is not the target edge node, pulling the live stream to be mixed in the edge node to be mixed.
8. The live stream processing method of claim 1, wherein determining a live stream to be mixed based on the live stream mixed flow request comprises:
forwarding the live broadcast stream mixed flow request to a central server;
receiving a transfer node identifier returned by the central server based on the live stream mixed flow request;
and determining the live stream to be mixed based on the transit node identification.
9. The live stream processing method according to claim 8, wherein receiving a transit node identifier returned by a central server based on the live stream mixed flow request includes:
receiving an edge node identifier to be mixed returned by the central server based on the live stream mixed flow request;
determining the node attribute of the target edge node, and determining the edge node to be mixed and the node attribute of the edge node to be mixed based on the edge node identifier to be mixed;
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, sending a transit node query request to the central server;
and receiving the transit node identification returned based on the transit node query request.
10. The live stream processing method of claim 9, wherein determining the live stream to be mixed based on the transit node identifier comprises:
determining a target transit node in a transit node set based on the transit node identifier, wherein the transit node set is determined according to the target edge node and the edge node to be mixed;
and acquiring the to-be-mixed live stream from the target transit node.
11. The live stream processing method according to any one of claims 1 to 10, wherein generating a target mixed live stream based on the target live stream and the to-be-mixed live stream includes:
and merging the target live stream and the to-be-mixed live stream to obtain a target mixed live stream.
12. The live stream processing method according to any one of claims 1 to 10, wherein after generating a target mixed live stream based on the target live stream and the to-be-mixed live stream, the method further comprises:
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 identification, and pushing the target mixed live stream to the client to be played.
13. A live stream processing apparatus, comprising:
the receiving module is configured to receive a live stream push stream instruction and receive a target live stream in response to the live stream push stream instruction;
the determining module is configured to receive a live stream mixed flow request and determine a to-be-mixed live stream based on the live stream mixed flow request;
a generating module configured to generate a target mixed live stream based on the target live stream and the to-be-mixed live stream.
14. A computing device comprising a memory, a processor, and computer instructions stored on the memory and executable on the processor, wherein the processor implements the steps of the method of any one of claims 1-12 when executing the computer instructions.
15. A computer-readable storage medium storing computer instructions, which when executed by a processor, perform the steps of the method of any one of claims 1 to 12.
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 true CN113923470A (en) 2022-01-11
CN113923470B 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)

Cited By (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN114679589A (en) * 2022-02-07 2022-06-28 上海哔哩哔哩科技有限公司 Dynamic adjustment method and device for direct seeding mixed flow service
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
CN115460431A (en) * 2022-09-23 2022-12-09 北京爱奇艺科技有限公司 Media stream live broadcasting method, system, computer equipment and storage medium
CN117499688A (en) * 2023-12-29 2024-02-02 淘宝(中国)软件有限公司 Method, equipment and storage medium for processing audio and video confluence in live broadcast continuous wheat

Citations (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN107071584A (en) * 2017-03-14 2017-08-18 北京潘达互娱科技有限公司 Live even wheat method and device
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
CN109168018A (en) * 2018-10-17 2019-01-08 北京潘达互娱科技有限公司 Company's wheat converging system, method, apparatus and own server in a kind of live streaming
CN110446054A (en) * 2018-05-03 2019-11-12 腾讯科技(深圳)有限公司 A kind of live stream transmission method, device, relevant device and system
CN111464759A (en) * 2020-03-26 2020-07-28 广州虎牙科技有限公司 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
CN113271470A (en) * 2021-05-17 2021-08-17 广州繁星互娱信息科技有限公司 Live broadcast wheat connecting method, device, terminal, server and storage medium
CN113542895A (en) * 2021-07-07 2021-10-22 北京字节跳动网络技术有限公司 Live broadcast method and device, computer equipment and storage medium

Patent Citations (10)

* 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
CN107071584A (en) * 2017-03-14 2017-08-18 北京潘达互娱科技有限公司 Live even wheat method and device
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
CN110446054A (en) * 2018-05-03 2019-11-12 腾讯科技(深圳)有限公司 A kind of live stream transmission method, device, relevant device and system
CN109168018A (en) * 2018-10-17 2019-01-08 北京潘达互娱科技有限公司 Company's wheat converging system, method, apparatus and own server in a kind of live streaming
CN111464759A (en) * 2020-03-26 2020-07-28 广州虎牙科技有限公司 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
CN113271470A (en) * 2021-05-17 2021-08-17 广州繁星互娱信息科技有限公司 Live broadcast wheat connecting method, device, terminal, server and storage medium
CN113542895A (en) * 2021-07-07 2021-10-22 北京字节跳动网络技术有限公司 Live broadcast method and device, computer equipment and storage medium

Cited By (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN114679589A (en) * 2022-02-07 2022-06-28 上海哔哩哔哩科技有限公司 Dynamic adjustment method and device for direct seeding mixed flow service
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
CN115460431A (en) * 2022-09-23 2022-12-09 北京爱奇艺科技有限公司 Media stream live broadcasting method, system, computer equipment and storage medium
CN115460431B (en) * 2022-09-23 2023-10-10 北京爱奇艺科技有限公司 Media stream live broadcast method, system, computer device and storage medium
CN117499688A (en) * 2023-12-29 2024-02-02 淘宝(中国)软件有限公司 Method, equipment and storage medium for processing audio and video confluence in live broadcast continuous wheat
CN117499688B (en) * 2023-12-29 2024-05-03 淘宝(中国)软件有限公司 Method, equipment and storage medium for processing audio and video confluence in live broadcast continuous wheat

Also Published As

Publication number Publication date
CN113923470B (en) 2023-07-25

Similar Documents

Publication Publication Date Title
CN113923470B (en) Live stream processing method and device
US9591262B2 (en) Flow-control based switched group video chat and real-time interactive broadcast
CN108055496B (en) Live broadcasting method and system for video conference
US20060085823A1 (en) Media communications method and apparatus
EP3996355B1 (en) Method for transferring media stream and user equipment
WO2016110169A1 (en) Display processing method and device
CN109586929B (en) Conference content transmission method and device, electronic equipment and storage medium
WO2015154608A1 (en) Method, system and apparatus for sharing video conference material
US20200358832A1 (en) Dynamically controlling relay communication links during a communication session
CN112738540A (en) Multi-device live broadcast switching method, device and system, electronic device and readable storage medium
WO2015180446A1 (en) System and method for maintaining connection channel in multi-device interworking service
CN112788053A (en) Real-time communication method, device, server, system and storage medium
WO2014012384A1 (en) Communication data transmitting method, system and receiving device
CN110996039B (en) Electronic whiteboard sharing method, system and computer-readable storage medium
CN115002083B (en) Method, equipment and storage medium for transmitting real-time streaming media data
CN115379279A (en) Multi-screen linkage interaction method, device and system, storage medium and electronic equipment
KR20160073667A (en) Method and system for providing chatting service and chatting server
CN114339296A (en) Method and device for transmitting media stream and media system
CN114363651A (en) Live stream processing method and device
US20210227005A1 (en) Multi-user instant messaging method, system, apparatus, and electronic device
CN114760490A (en) Video stream processing method and device
CN112019791A (en) Multi-party audio and video call method and system based on education examination
KR101691124B1 (en) System and method for providing multi-sharing of multimedia
CN114095480B (en) KTV live broadcast wheat connecting method, device and system
CN113727183B (en) Live push method, apparatus, device, storage medium and computer program product

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