CN117641066A - Live broadcast source returning method and system - Google Patents

Live broadcast source returning method and system Download PDF

Info

Publication number
CN117641066A
CN117641066A CN202311715412.9A CN202311715412A CN117641066A CN 117641066 A CN117641066 A CN 117641066A CN 202311715412 A CN202311715412 A CN 202311715412A CN 117641066 A CN117641066 A CN 117641066A
Authority
CN
China
Prior art keywords
live broadcast
live
stream
instruction
node
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Pending
Application number
CN202311715412.9A
Other languages
Chinese (zh)
Inventor
杨廷龙
刘勇江
张建锋
杨成进
蔡尚志
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
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 CN202311715412.9A priority Critical patent/CN117641066A/en
Publication of CN117641066A publication Critical patent/CN117641066A/en
Pending legal-status Critical Current

Links

Landscapes

  • Two-Way Televisions, Distribution Of Moving Picture Or The Like (AREA)

Abstract

The application discloses a live broadcast source returning method and a system, which are applied to a source returning link, wherein the source returning link comprises a push flow node, at least one edge node and at least one user terminal, and the method comprises the following steps: the push node encapsulates the push node according to a self-defined transmission protocol format according to the source return request to obtain a live broadcast instruction; the push node transmits the live broadcast instruction and the live broadcast stream to the edge node; the edge node receives the live broadcast instruction and the live broadcast stream, and discards or reserves the live broadcast stream according to the live broadcast instruction; and the edge node sequentially transmits the live broadcast instruction and the processed live broadcast stream according to the source return link until the processed live broadcast stream is transmitted to the user side so as to be played by the user side. The live broadcast command is set according to the live broadcast stream information, when the live broadcast stream is transmitted to the corresponding edge node according to the source return link, the live broadcast stream can be discarded or reserved, the processed live broadcast stream accords with the actual live broadcast, useless frames are not required to be transmitted, and the bandwidth is saved.

Description

Live broadcast source returning method and system
Technical Field
The application relates to the technical field of live broadcasting, in particular to a live broadcasting source returning method and system.
Background
In the live broadcast service, a host broadcast performs live broadcast in a live broadcast room, a live broadcast stream is pushed to an edge node for transcoding and the like, and when a user side views, the live broadcast stream is pulled from a CDN (Content Delivery Network ) back to the edge node for viewing.
Different service scenes such as a conventional live broadcast scene, a chat room and the like exist during live broadcast, and the prior art aims at the different service scenes, namely, audio and video data are provided for a CDN and then provided for a user to watch. However, for the user side (the user watching live broadcast), for example, the user pays attention to only audio data in the chat scene, the video data sent to the user side by the CDN is unnecessary, and the video data causes waste of bandwidth cost, such as outgoing bandwidth and return source bandwidth inside the CDN cluster, and bandwidth sent to the user side by the CDN. Therefore, a live feed back method is needed to solve the problem of bandwidth waste.
Disclosure of Invention
In view of the foregoing, embodiments of the present application are presented to provide a live feed back method and system that overcomes or at least partially solves the foregoing problems.
According to a first aspect of an embodiment of the present application, a live broadcast source return method is provided and applied to a source return link, where the source return link includes a push node, at least one edge node and at least one user terminal, and the method includes:
the push node encapsulates the push node according to a self-defined transmission protocol format according to the source return request to obtain a live broadcast instruction; setting a live broadcast instruction according to live broadcast stream information; the custom transmission protocol format comprises a frame identification of the live stream;
the push node transmits the live broadcast instruction and the live broadcast stream to the edge node;
the edge node receives the live broadcast instruction and the live broadcast stream, and discards or reserves the live broadcast stream according to the live broadcast instruction;
and the edge node sequentially transmits the live broadcast instruction and the processed live broadcast stream according to the source return link until the processed live broadcast stream is transmitted to the user side so as to be played by the user side.
Optionally, the step of encapsulating the push node according to the source return request and the custom transmission protocol format to obtain the live broadcast instruction further includes:
the push node acquires live stream information according to the source return request;
and the push node encapsulates the live broadcast instruction according to the live broadcast stream information and the custom transmission protocol format to obtain the live broadcast instruction.
Optionally, the live instruction includes a frame identification of the live stream; the frame identification of the live stream comprises a video frame identification and/or an audio frame identification;
the pushing node encapsulates the live broadcast instruction according to the live broadcast stream information and the custom transmission protocol format, and the method further comprises the following steps:
if the live stream information comprises video frames, the push stream node sets a video frame identifier as a first identifier value according to a user-defined transmission protocol format; otherwise, setting the video frame identifier as a second identifier value;
if the live stream information comprises the audio frame, the push node sets an audio frame identifier as a third identifier value according to a user-defined transmission protocol format; otherwise, the audio frame identifier is set to a fourth identifier value.
Optionally, the live broadcast instruction is obtained by encapsulation according to a custom transmission protocol format specifically comprises: and adding a live broadcast instruction containing the frame identification of the live broadcast stream into the data packet according to the real-time message transmission protocol.
Optionally, the edge node receives the live broadcast instruction and the live broadcast stream, and discarding or reserving the live broadcast stream according to the live broadcast instruction further includes:
the edge node judges whether the live broadcast instruction accords with a preset identification condition or not;
if the video frame and the audio frame in the live stream do not meet the preset identification conditions, the video frame and the audio frame in the live stream are reserved.
Alternatively, the process may be carried out in a single-stage,
the edge node judging whether the live broadcast instruction meets the preset identification condition further comprises:
the edge node judges whether the video frame identification of the live broadcast instruction is a second identification value and whether the audio frame identification is a third identification value;
if yes, discarding video frames in the live stream, and reserving audio frames in the live stream;
or,
the edge node judges whether the video frame identification of the live broadcast instruction is a first identification value and whether the audio frame identification is a fourth identification value;
if yes, discarding the audio frames in the live stream, and reserving the video frames in the live stream;
or,
the edge node judges whether the video frame identification of the live broadcast instruction is a first identification value and whether the audio frame identification is a third identification value;
if yes, the video frames and the audio frames in the live stream are reserved.
Optionally, the back source link comprises a plurality of edge nodes;
the push node transmits the live broadcast instruction and the live broadcast stream to the edge node; the edge node receives the live broadcast instruction and the live broadcast stream, and discards or reserves the live broadcast stream according to the live broadcast instruction; the edge node sequentially transmits the live broadcast instruction and the processed live broadcast stream according to the source return link until the processed live broadcast stream is transmitted to the user side, so that the user side plays the live broadcast stream further comprises:
and the push node transmits the live broadcast instruction and the live broadcast stream to the first edge node of the source return link, the first edge node records the live broadcast instruction, discards or reserves the live broadcast stream according to the live broadcast instruction, sequentially transmits the live broadcast instruction and the processed live broadcast stream to the next edge node of the first edge node according to the source return link, and the next edge node repeatedly executes the operations until the processed live broadcast stream is transmitted to the user side for playing by the user side.
Optionally, the method further comprises:
in the source returning process, if the live stream information is updated, the push node acquires the updated live stream information;
and the push stream node encapsulates the updated live stream information according to a custom transmission protocol format to obtain a live stream instruction.
According to a second aspect of an embodiment of the present application, a live feed back system is provided, where the feed back system includes a push node, at least one edge node, and at least one user terminal:
the plug flow node is used for: according to the source return request, a live broadcast instruction is obtained through encapsulation according to a custom transmission protocol format; setting a live broadcast instruction according to live broadcast stream information; the custom transmission protocol format comprises a frame identification of the live stream;
the plug-flow node is also configured to: transmitting the live broadcast instruction and the live broadcast stream to an edge node;
the edge node is used for: receiving a live broadcast instruction and a live broadcast stream, and discarding or reserving the live broadcast stream according to the live broadcast instruction;
the edge node is also for: and sequentially transmitting the live broadcast instruction and the processed live broadcast stream according to the source return link until the processed live broadcast stream is transmitted to the user side so as to be played by the user side.
According to a third aspect of embodiments of the present application, there is provided a computing device comprising: the device comprises a processor, a memory, a communication interface and a communication bus, wherein the processor, the memory and the communication interface complete communication with each other through the communication bus;
the memory is used for storing at least one executable instruction, and the executable instruction enables the processor to execute the operation corresponding to the live broadcast source-returning method.
According to a fourth aspect of embodiments of the present application, there is provided a computer storage medium, where at least one executable instruction is stored, where the executable instruction causes a processor to perform operations corresponding to the live-feed back method described above.
According to the live broadcast source returning method and system, when the source is returned, the push node packages according to the live broadcast stream information and the customized transmission protocol format to obtain the live broadcast instruction, the live broadcast instruction and the live broadcast stream are transmitted to the corresponding edge node according to the source returning link, the edge node can discard or reserve the live broadcast stream according to the live broadcast instruction and the live broadcast stream information, and the processed live broadcast stream can be ensured to be consistent with the actual live broadcast, so that the transmission of useless live broadcast streams is avoided, and the bandwidth cost is saved.
The foregoing description is only an overview of the technical solutions of the present application, and may be implemented according to the content of the specification in order to make the technical means of the present application more clearly understood, and in order to make the above-mentioned and other objects, features and advantages of the present application more clearly understood, the following detailed description of the present application will be given.
Drawings
Various other advantages and benefits will become apparent to those of ordinary skill in the art upon reading the following detailed description of the preferred embodiments. The drawings are only for purposes of illustrating the preferred embodiments and are not to be construed as limiting the application. Also, like reference numerals are used to designate like parts throughout the figures. In the drawings:
FIG. 1 illustrates a flow chart of a live feed back method according to one embodiment of the present application;
FIG. 2 illustrates a flow chart of a live feed back method according to another embodiment of the present application;
FIG. 3 illustrates a schematic diagram of a live feed back system according to one embodiment of the present application;
FIG. 4 illustrates a structural schematic diagram of a computing device according to one embodiment of the present application.
Detailed Description
Exemplary embodiments of the present application will be described in more detail below with reference to the accompanying drawings. While exemplary embodiments of the present application are shown in the drawings, it should be understood that the present application may be embodied in various forms and should not be limited to the embodiments set forth herein. Rather, these embodiments are provided so that this disclosure will be thorough and complete, and will fully convey the scope of the disclosure to those skilled in the art.
First, terms related to one or more embodiments of the present application will be explained.
CDN: content Delivery Network, a content distribution network. A novel content service system based on an IP network enables an access user to access available edge servers nearby and obtain required content by strategically constructing and deploying widely distributed edge servers and assisting in related load balancing and central platform scheduling strategies. CDN delivery systems can adopt tree-like structures, and the load capacity of the whole system is improved by layering and port multiplexing. And the CDN node at the edge side close to the user acquires the real-time media stream or the static file from the source station through layer-by-layer source returning according to the decision of the scheduling system, and provides service for the user.
Pushing flow: and acquiring audio and video data of the anchor terminal, encoding and packaging by using a transmission protocol, and transmitting to a server, wherein the server is a source station in the CDN architecture.
And (3) drawing: and the user side pulls the direct-broadcasting media stream to the local through the designated back source address.
RTMP protocol: real Time Message Protocol, a real-time information transmission protocol, an application layer protocol, is used to solve the problems of Multiplexing (Multiplexing) and packetization (packetization) of multimedia data transmission streams. RTMP is a TCP-based protocol that maintains persistent connections and allows low latency communications, can divide streams into multiple segments, and dynamically negotiates size between clients and servers.
And (5) returning to the source center: the CDN is provided with services that return the address of the source. When a CDN receives a request, it needs to request back to the origin center to obtain the address of the retrieval origin.
Clustering: multiple CDN machines are provided for service in the same region, and multiple CDN machines in the same region are called a cluster.
Fig. 1 shows a flowchart of a live feed back method according to an embodiment of the present application, as shown in fig. 1, the method includes the following steps:
step S101, the push node encapsulates and obtains a live broadcast instruction according to a self-defined transmission protocol format according to the source return request.
The embodiment is applied to a back source link, and the back source link comprises a push node, at least one edge node and at least one user terminal. The back source request is a request for acquiring the live stream, which is sent by a downlink edge node corresponding to the user terminal, so as to pull the stream to the user terminal for viewing. The downstream edge node sends a source return request, the push node receives the source return request sent by the downstream edge node, and the push node encapsulates the live broadcast instruction according to the source return request.
Here, when the live broadcast instruction is encapsulated, the live broadcast instruction is encapsulated according to a custom transmission protocol format, for example, an RTMP real-time message transmission protocol may be adopted by the transmission protocol, the custom transmission protocol format adds, in a data packet, the live broadcast instruction encapsulating the frame identifier including the live broadcast stream, for example, a custom amf0 instruction avRequired, and the RTMP body data packet includes the following fields: the first field in rtmp body is command, type is string, value is avRequired; the second field is the transaction transmissionid; the third field may contain a frame identification of the live stream, such as a video frame identification videoRequired, an audio frame identification audioRequired. The value of the instruction, the frame identifier of the live stream, etc. are illustrated, and specifically set according to the implementation, and are not limited herein.
Before the live broadcast instruction is packaged, live broadcast stream information is acquired based on push stream of a main broadcasting end. The live broadcast stream information is related to a service scene of a host, if the current service scene of the host is a conventional live broadcast, the live broadcast stream information comprises video frames and audio frames, and if the current service scene of the host is a chat room, the live broadcast stream information only comprises the audio frames. The live stream information may be determined according to a service scenario, live stream, etc. of the anchor.
After the live stream information is acquired, according to the live stream information, a live broadcast instruction can be obtained through encapsulation according to a custom transmission protocol format, if the live stream information comprises video frames, a video frame identifier video required is set to be a first identification value true according to the custom transmission protocol format; otherwise, the video frame identifier video required is set to a second identifier value false. If the live stream information comprises an audio frame, setting an audio frame identifier audioRequired as a third identification value true according to a custom transmission protocol format; otherwise, the audio frame identification audioRequired is set to a fourth identification value false. The first identification value, the second identification value, the third identification value, the fourth identification value can also adopt different values such as 1, 0 and the like, or a frame identification can also be set for the frame identification of the live broadcast stream, and different identification values respectively correspond to different service scenes, for example, a represents conventional live broadcast, b represents chat and the like, which is exemplified and not limited herein.
And step S102, the push node transmits the live broadcast instruction and the live broadcast stream to the edge node.
In order to facilitate the user side to watch, the CDN cluster provides a plurality of downstream edge nodes, so that the user side can conveniently pull back and watch from the nearest downstream edge node. If the user side obtains the live stream through the downlink edge node Z of the back source link, after the push node packages the live stream command, the live stream command and the live stream can be transmitted to the edge node Z according to the back source link.
And step S103, the edge node receives the live broadcast instruction and the live broadcast stream, and discards or reserves the live broadcast stream according to the live broadcast instruction.
After the edge node Z receives the live broadcast instruction and the live broadcast stream, the node Z can discard or reserve each frame data in the live broadcast stream according to the live broadcast instruction, and only the needed frame data is transmitted, so that the waste of bandwidth is avoided. If the live broadcast command is not in accordance with the preset identification condition, it is indicated that the setting of the frame identification of the live broadcast stream may have errors, and the live broadcast command cannot correspond to the service scene of the host broadcast, and at this time, video frames and audio frames in the live broadcast stream are reserved to ensure normal play of the live broadcast. If the video frame identification of the live broadcast instruction is a second identification value and the audio frame identification is a third identification value, if the video frame identification of the live broadcast instruction is a third identification value, the live broadcast stream information is indicated to not comprise video frames and only comprise audio frames, the service scene of the anchor is chat, the video frames in the live broadcast stream are discarded, and the audio frames in the live broadcast stream are reserved; or the edge node judges whether the video frame identification of the live broadcast instruction is a first identification value and whether the audio frame identification is a fourth identification value; if yes, the live stream information is indicated to comprise video frames and not comprise audio frames, the main broadcasting service scene is a pure video scene, the audio frames in the live stream are discarded, and the video frames in the live stream are reserved; or the edge node judges whether the video frame identification of the live broadcast instruction is a first identification value and whether the audio frame identification is a third identification value; if yes, the live stream information is indicated to comprise video frames and audio frames, the service scene of the main broadcasting is conventional live broadcast, and the video frames and the audio frames in the live stream are reserved. The foregoing is illustrative, and is not limited thereto, depending on the implementation.
Further, for discarding processing, the edge node may determine video frame data and audio frame data in the live stream by analyzing the live stream, and discard the video frame data or the audio frame data correspondingly according to the frame identifier of the live stream.
Step S104, the edge node transmits the live broadcast instruction and the processed live broadcast stream in sequence according to the source return link until the processed live broadcast stream is transmitted to the user side for playing by the user side.
After the edge node Z processes the live stream, the live command and the processed live stream can be transmitted to the user side according to the source return link.
Further, when the back source link includes a plurality of edge nodes, and when the CDN cluster includes a plurality of downlink edge nodes, the downlink edge nodes, such as a, back source from node X, node X back source from node Y, node Y back source from node Z, and node Z is a push point, and according to the above, the back source link a- > X- > Y- > Z can be obtained. The back source address may be obtained from the back source center. After the Z node processes the live stream, according to the next edge node Y node that affects the live stream that is sequentially transmitted to the Z node, the Y node performs the processing as in step S103 according to the processing of the Z node, and then transmits the live stream instruction and the processed live stream to the X node and the a node until the processed live stream is transmitted to the user side, and the user side plays the live stream. Here, each edge node processes the live stream to prevent the last edge node from not processing correctly, and processes the live stream again, so as to reduce the bandwidth waste in the subsequent transmission, and if processed, the live stream does not need to be discarded.
According to the live broadcast source returning method, when the source is returned, the live broadcast command is obtained through encapsulation of the push stream node according to the live broadcast stream information according to the custom transmission protocol format, the live broadcast command and the live broadcast stream are transmitted to the corresponding edge node according to the source returning link, the edge node can discard or reserve the live broadcast stream according to the live broadcast command according to the live broadcast stream information, and the processed live broadcast stream can be ensured to be consistent with actual live broadcast, so that transmission of useless live broadcast streams is avoided, and bandwidth cost is saved.
Fig. 2 shows a flowchart of a live feed back method according to an embodiment of the present application, as shown in fig. 2, the method includes the following steps:
step S201, the push node encapsulates and obtains a live broadcast instruction according to a self-defined transmission protocol format according to the source return request.
According to the received back source request, the push stream node can package and obtain a live broadcast instruction according to a RTMP real-time message transmission protocol in a custom transmission protocol format in a data table of a RTMP body, the live broadcast instruction adopts an amf0 instruction, the live broadcast instruction comprises frame identifiers of live broadcast streams, different service scenes of a main broadcast can be distinguished through the frame identifiers of different live broadcast streams, and frame data effective for a user side is determined according to the generated live broadcast streams.
The RTMP protocol uses ports such as 1935 for plaintext transmission on the TCP protocol, and the live broadcast command is extended on the basis of the RTMP protocol and carries the frame identification of the live broadcast stream so as to discard frame data which has no meaning in the live broadcast stream. The live instruction refers to the description of step S101, and will not be described in detail here.
Step S202, the push node transmits the live broadcast instruction and the live broadcast stream to the edge node.
And the push node transmits the live broadcast instruction and the live broadcast stream to the edge node according to the source return link by using a stream0 channel.
In step S203, the edge node receives the live broadcast command and the live broadcast stream, and discards or reserves the live broadcast stream according to the live broadcast command.
And after receiving the live broadcast instruction and the live broadcast stream, the edge node records the live broadcast instruction and discards frame data without meaning in the live broadcast stream according to the live broadcast instruction. The discarding process is specifically described with reference to step S103.
After processing, the live broadcast instruction and the processed live broadcast stream can be sequentially transmitted to the next edge node according to the source return link, and the next edge node also performs discarding or retaining processing on the live broadcast stream according to the live broadcast instruction.
Step S204, in the process of returning to the source, if the live stream information is updated, the push node acquires the updated live stream information, and encapsulates the live stream information according to the updated live stream information and a custom transmission protocol format to obtain a live broadcast instruction.
In the source returning process, if the service scene of the anchor is switched, for example, when switching from normal live broadcast to chat, the live stream transmitted to the user end also needs to be changed correspondingly, for example, video frame data without meaning is removed. Specifically, when the service scene of the anchor is switched, the push node can acquire updated live stream information, and according to the updated live stream information, a new live broadcast instruction is obtained by repackaging according to a custom transmission protocol format, such as an RTMP real-time message transmission protocol. The frame identification of the live stream in the new live command corresponds to the updated live stream information.
In step S205, the push node transmits the live broadcast instruction and the live broadcast stream to the first edge node of the source return link, the first edge node records the live broadcast instruction, discards or retains the live broadcast stream according to the live broadcast instruction, the live broadcast instruction and the processed live broadcast stream are sequentially transmitted to the next edge node of the first edge node according to the source return link, and the next edge node repeatedly executes the above operations until the processed live broadcast stream is transmitted to the user side for playing by the user side.
And the push node transmits the updated live broadcast instruction and the live broadcast stream acquired after updating to each edge node according to the source return link, for example, the live broadcast instruction is firstly transmitted to the first edge node of the source return link, the first edge node records the updated live broadcast instruction, the new live broadcast stream is discarded or reserved according to the updated live broadcast instruction, and the processed live broadcast stream corresponds to the updated live broadcast instruction and corresponds to the service scene of the host. And sequentially transmitting the live broadcast instruction and the processed live broadcast stream to the next edge node of the edge node according to the source return link, and repeatedly executing the operations by the next edge node until the processed live broadcast stream is transmitted to the user side, and playing the processed live broadcast stream by the user side.
According to the live broadcast source returning method, in the whole source returning process, when a business scene of a main broadcasting changes, a push stream node acquires an updated live broadcast stream, a new live broadcast command is packaged according to updated live broadcast stream information, the live broadcast command and the live broadcast stream are transmitted to an edge node of a source returning link, the edge node discards or reserves frame data in the live broadcast stream according to the live broadcast command, the processed live broadcast stream is finally transmitted to a user side, only frame data corresponding to the business scene of the main broadcasting is reserved in the live broadcast stream obtained by the user side, no useless frame data are transmitted, and bandwidth cost is reduced.
Fig. 3 shows a schematic structural diagram of a live feed back system according to an embodiment of the present application. As shown in fig. 3, the system includes: a push node 310, at least one edge node 320, and at least one client 330.
The push node 310 is configured to: according to the source return request, a live broadcast instruction is obtained through encapsulation according to a custom transmission protocol format; setting a live broadcast instruction according to live broadcast stream information; the custom transmission protocol format comprises a frame identification of the live stream;
the push node 310 is also configured to: transmitting the live instruction and live stream to the edge node 320;
the edge node 320 is configured to: receiving a live broadcast instruction and a live broadcast stream, and discarding or reserving the live broadcast stream according to the live broadcast instruction;
the edge node 320 is also configured to: and sequentially transmitting the live broadcast instruction and the processed live broadcast stream according to the source return link until the processed live broadcast stream is transmitted to the user side 330 for the user side 330 to play.
Optionally, the plug-flow node 310 is further configured to:
acquiring live stream information according to the source return request; and according to the live stream information, encapsulating according to a custom transmission protocol format to obtain a live instruction.
Optionally, the live instruction includes a frame identification of the live stream; the frame identification of the live stream comprises a video frame identification and/or an audio frame identification;
the push node 310 is also configured to:
if the live stream information comprises video frames, the push stream node sets a video frame identifier as a first identifier value according to a user-defined transmission protocol format; otherwise, setting the video frame identifier as a second identifier value;
if the live stream information comprises the audio frame, the push node sets an audio frame identifier as a third identifier value according to a user-defined transmission protocol format; otherwise, the audio frame identifier is set to a fourth identifier value.
Optionally, the plug-flow node 310 is further configured to:
and adding a live broadcast instruction containing the frame identification of the live broadcast stream into the data packet according to the real-time message transmission protocol.
Optionally, the edge node 320 is further configured to:
judging whether the live broadcast instruction accords with a preset identification condition or not;
if the video frame and the audio frame in the live stream do not meet the preset identification conditions, the video frame and the audio frame in the live stream are reserved.
Optionally, the edge node 320 is further configured to:
judging whether the video frame identification of the live broadcast instruction is a second identification value or not and whether the audio frame identification is a third identification value or not;
if yes, discarding video frames in the live stream, and reserving audio frames in the live stream;
or,
judging whether the video frame identification of the live broadcast instruction is a first identification value or not and whether the audio frame identification is a fourth identification value or not;
if yes, discarding the audio frames in the live stream, and reserving the video frames in the live stream;
or,
judging whether the video frame identification of the live broadcast instruction is a first identification value or not and whether the audio frame identification is a third identification value or not;
if yes, the video frames and the audio frames in the live stream are reserved.
Optionally, the back source link comprises a plurality of edge nodes;
the push node 310 is also configured to: transmitting the live instruction and live stream to the first edge node 320 of the back source link;
the first edge node 320 is configured to: and recording the live broadcast instruction, discarding or reserving the live broadcast stream according to the live broadcast instruction, sequentially transmitting the live broadcast instruction and the processed live broadcast stream to the next edge node 320 of the first edge node according to the source return link, and repeatedly executing the operations by the next edge node until the processed live broadcast stream is transmitted to the user side 330 for being played by the user side 330.
Optionally, the plug-flow node 310 is further configured to: in the source returning process, if the live stream information is updated, acquiring updated live stream information; and according to the updated live stream information, encapsulating according to a custom transmission protocol format to obtain a live instruction.
The above descriptions of the modules refer to the corresponding descriptions in the method embodiments, and are not repeated herein.
According to the live broadcast source returning system, when the live broadcast source is returned, the push stream node packages according to the live broadcast stream information according to the custom transmission protocol format to obtain the live broadcast instruction, the live broadcast instruction and the live broadcast stream are transmitted to the corresponding edge node according to the source returning link, the edge node can discard or reserve the live broadcast stream according to the live broadcast instruction according to the live broadcast stream information, and the processed live broadcast stream can be ensured to be consistent with the actual live broadcast, so that the transmission of useless live broadcast streams is avoided, and the bandwidth cost is saved.
The application also provides a nonvolatile computer storage medium, and the computer storage medium stores at least one executable instruction, wherein the executable instruction can execute the live broadcast source returning method in any method embodiment.
FIG. 4 illustrates a schematic diagram of a computing device, according to an embodiment of the application, the particular embodiments of which are not limiting on the particular implementation of the computing device.
As shown in fig. 4, the computing device may include: a processor 402, a communication interface (Communications Interface) 404, a memory 406, and a communication bus 408.
Wherein:
processor 402, communication interface 404, and memory 406 communicate with each other via communication bus 408.
A communication interface 404 for communicating with network elements of other devices, such as clients or other servers.
The processor 402 is configured to execute the program 410, and may specifically perform relevant steps in the live-feed back method embodiment described above.
In particular, program 410 may include program code including computer-operating instructions.
The processor 402 may be a central processing unit CPU, or a specific integrated circuit ASIC (Application Specific Integrated Circuit), or one or more integrated circuits configured to implement the present application. The one or more processors included by the computing device may be the same type of processor, such as one or more CPUs; but may also be different types of processors such as one or more CPUs and one or more ASICs.
Memory 406 for storing programs 410. Memory 406 may comprise high-speed RAM memory or may also include non-volatile memory (non-volatile memory), such as at least one disk memory.
Program 410 may be specifically configured to cause processor 402 to perform the live feed back method of any of the method embodiments described above. The specific implementation of each step in the procedure 410 may refer to the corresponding step and corresponding description in the unit in the live broadcast source return embodiment, which are not described herein. It will be clear to those skilled in the art that, for convenience and brevity of description, specific working procedures of the apparatus and modules described above may refer to corresponding procedure descriptions in the foregoing method embodiments, which are not repeated herein.
The algorithms or displays presented herein are not inherently related to any particular computer, virtual system, or other apparatus. Various general-purpose systems may also be used with the teachings herein. The required structure for a construction of such a system is apparent from the description above. In addition, the present application is not directed to any particular programming language. It should be appreciated that the teachings of the present application described herein may be implemented in a variety of programming languages, and that the foregoing descriptions of specific languages are provided for disclosure of preferred embodiments of the present application.
In the description provided herein, numerous specific details are set forth. However, it is understood that embodiments of the present application may be practiced without these specific details. In some instances, well-known methods, structures and techniques have not been shown in detail in order not to obscure an understanding of this description.
Similarly, it should be appreciated that in the foregoing description of exemplary embodiments of the application, various features of the application are sometimes grouped together in a single embodiment, figure, or description thereof for the purpose of streamlining the application and aiding in the understanding of one or more of the various inventive aspects. However, the disclosed method should not be construed as reflecting the intention that: i.e., the claimed application requires more features than are expressly recited in each claim. Rather, as the following claims reflect, inventive aspects lie in less than all features of a single foregoing disclosed embodiment. Thus, the claims following the detailed description are hereby expressly incorporated into this detailed description, with each claim standing on its own as a separate embodiment of this application.
Those skilled in the art will appreciate that the modules in the apparatus of the embodiments may be adaptively changed and disposed in one or more apparatuses different from the embodiments. The modules or units or components of the embodiments may be combined into one module or unit or component and, furthermore, they may be divided into a plurality of sub-modules or sub-units or sub-components. Any combination of all features disclosed in this specification (including any accompanying claims, abstract and drawings), and all of the processes or units of any method or apparatus so disclosed, may be used in combination, except insofar as at least some of such features and/or processes or units are mutually exclusive. Each feature disclosed in this specification (including any accompanying claims, abstract and drawings), may be replaced by alternative features serving the same, equivalent or similar purpose, unless expressly stated otherwise.
Furthermore, those skilled in the art will appreciate that while some embodiments herein include some features but not others included in other embodiments, combinations of features of different embodiments are meant to be within the scope of the present application and form different embodiments. For example, in the following claims, any of the claimed embodiments can be used in any combination.
Various component embodiments of the present application may be implemented in hardware, or in software modules running on one or more processors, or in a combination thereof. Those skilled in the art will appreciate that microprocessors or Digital Signal Processors (DSPs) may be used in practice to implement some or all of the functionality of some or all of the components according to the present application. The present application may also be embodied as an apparatus or device program (e.g., computer program and computer program product) for performing a portion or all of the methods described herein. Such a program embodying the present application may be stored on a computer readable medium, or may have the form of one or more signals. Such signals may be downloaded from an internet website, provided on a carrier signal, or provided in any other form.
It should be noted that the above-mentioned embodiments illustrate rather than limit the application, and that those skilled in the art will be able to design alternative embodiments without departing from the scope of the appended claims. In the claims, any reference signs placed between parentheses shall not be construed as limiting the claim. The word "comprising" does not exclude the presence of elements or steps not listed in a claim. The word "a" or "an" preceding an element does not exclude the presence of a plurality of such elements. The application may be implemented by means of hardware comprising several distinct elements, and by means of a suitably programmed computer. In the unit claims enumerating several means, several of these means may be embodied by one and the same item of hardware. The use of the words first, second, third, etc. do not denote any order. These words may be interpreted as names. The steps in the above embodiments should not be construed as limiting the order of execution unless specifically stated.

Claims (11)

1. A live feed back method applied to a feed back link, wherein the feed back link comprises a push node, at least one edge node and at least one user side, and the method comprises the following steps:
the push node encapsulates the push node according to a self-defined transmission protocol format according to a source return request to obtain a live broadcast instruction; the live broadcast instruction is set according to live broadcast stream information; the custom transmission protocol format comprises a frame identifier of a live stream;
the push node transmits the live broadcast instruction and the live broadcast stream to the edge node;
the edge node receives the live broadcast instruction and the live broadcast stream, and discards or reserves the live broadcast stream according to the live broadcast instruction;
and the edge node sequentially transmits the live broadcast instruction and the processed live broadcast stream according to a source return link until the processed live broadcast stream is transmitted to the user side so as to be played by the user side.
2. The method of claim 1, wherein the encapsulating, by the push node, the live instruction according to the source-back request and the custom transmission protocol format further comprises:
the push node acquires live stream information according to the source return request;
and the push node encapsulates the live broadcast stream information according to a custom transmission protocol format to obtain a live broadcast instruction.
3. The method of claim 2, wherein the live instruction comprises a frame identification of a live stream; the frame identification of the live stream comprises a video frame identification and/or an audio frame identification;
the push node encapsulates the live broadcast command according to the live broadcast stream information and a custom transmission protocol format, and the method further comprises the following steps:
if the live stream information comprises video frames, the push node sets a video frame identifier as a first identifier value according to a user-defined transmission protocol format; otherwise, setting the video frame identifier as a second identifier value;
if the live stream information comprises an audio frame, the push node sets an audio frame identifier as a third identifier value according to a user-defined transmission protocol format; otherwise, the audio frame identifier is set to a fourth identifier value.
4. A method according to any one of claims 1-3, wherein the encapsulating the live instruction according to the custom transport protocol format is specifically: and adding a live broadcast instruction containing the frame identification of the live broadcast stream into the data packet according to the real-time message transmission protocol.
5. The method of any of claims 1-4, wherein the edge node receiving the live instruction and the live stream, discarding or retaining the live stream according to the live instruction further comprises:
the edge node judges whether the live broadcast instruction accords with a preset identification condition or not;
and if the preset identification condition is not met, reserving video frames and audio frames in the live stream.
6. The method of claim 5, wherein the edge node determining whether the live instruction meets a preset identification condition further comprises:
the edge node judges whether the video frame identification of the live broadcast instruction is a second identification value and whether the audio frame identification is a third identification value;
if yes, discarding the video frames in the live stream, and reserving the audio frames in the live stream;
or,
the edge node judges whether the video frame identification of the live broadcast instruction is a first identification value and whether the audio frame identification is a fourth identification value;
if yes, discarding the audio frames in the live stream, and reserving the video frames in the live stream;
or,
the edge node judges whether the video frame identification of the live broadcast instruction is a first identification value and whether the audio frame identification is a third identification value;
if yes, reserving video frames and audio frames in the live stream.
7. The method of any of claims 1-6, wherein the back-source link comprises a plurality of edge nodes;
the push node transmits the live broadcast instruction and the live broadcast stream to the edge node; the edge node receives the live broadcast instruction and the live broadcast stream, and discards or reserves the live broadcast stream according to the live broadcast instruction; the edge node transmits the live broadcast instruction and the processed live broadcast stream in sequence according to a source return link until the processed live broadcast stream is transmitted to the user side, so that the user side plays the live broadcast stream further comprises:
the push stream node transmits the live broadcast instruction and the live broadcast stream to a first edge node of a source return link, the first edge node records the live broadcast instruction, discards or reserves the live broadcast stream according to the live broadcast instruction, the live broadcast instruction and the processed live broadcast stream are sequentially transmitted to a next edge node of the first edge node according to the source return link, and the next edge node repeatedly executes the operations until the processed live broadcast stream is transmitted to a user side for playing by the user side.
8. The method of any of claims 1-7, wherein the method further comprises:
in the process of source returning, if the live stream information is updated, the push node acquires the updated live stream information;
and the push node encapsulates and obtains the live broadcast instruction according to the updated live broadcast stream information and the custom transmission protocol format.
9. The live broadcast source returning system comprises a push stream node, at least one edge node and at least one user side:
the push node is used for: according to the source return request, a live broadcast instruction is obtained through encapsulation according to a custom transmission protocol format; the live broadcast instruction is set according to live broadcast stream information; the custom transmission protocol format comprises a frame identifier of a live stream;
the push node is further configured to: transmitting the live broadcast instruction and live broadcast stream to the edge node;
the edge node is configured to: receiving the live broadcast instruction and the live broadcast stream, and discarding or reserving the live broadcast stream according to the live broadcast instruction;
the edge node is further configured to: and sequentially transmitting the live broadcast instruction and the processed live broadcast stream according to a source return link until the processed live broadcast stream is transmitted to the user side so as to be played by the user side.
10. A computing device, comprising: the device comprises a processor, a memory, a communication interface and a communication bus, wherein the processor, the memory and the communication interface complete communication with each other through the communication bus;
the memory is configured to store at least one executable instruction, where the executable instruction causes the processor to perform operations corresponding to the live-broadcast back-to-source method according to any one of claims 1-8.
11. A computer storage medium having stored therein at least one executable instruction for causing a processor to perform operations corresponding to the live feed back method of any of claims 1-8.
CN202311715412.9A 2023-12-13 2023-12-13 Live broadcast source returning method and system Pending CN117641066A (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202311715412.9A CN117641066A (en) 2023-12-13 2023-12-13 Live broadcast source returning method and system

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202311715412.9A CN117641066A (en) 2023-12-13 2023-12-13 Live broadcast source returning method and system

Publications (1)

Publication Number Publication Date
CN117641066A true CN117641066A (en) 2024-03-01

Family

ID=90021499

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202311715412.9A Pending CN117641066A (en) 2023-12-13 2023-12-13 Live broadcast source returning method and system

Country Status (1)

Country Link
CN (1) CN117641066A (en)

Similar Documents

Publication Publication Date Title
CN108494817B (en) Data transmission method, related device and system
CN110149262B (en) Method and device for processing signaling message and storage medium
CN110502259B (en) Server version upgrading method, video networking system, electronic equipment and storage medium
CN104396263A (en) Methods and systems for real-time transmuxing of streaming media content
CN108200447A (en) Live data transmission method, device, electronic equipment, server and storage medium
CN112953850B (en) Data transmission method and device, computer readable medium and electronic equipment
CN113115120B (en) Video slicing method and device, electronic equipment and storage medium
US6735220B1 (en) Using a centralized server to coordinate assignment of identifiers in a distributed system
WO2021238259A1 (en) Data transmission method, apparatus and device, and computer-readable storage medium
AU2004316014B2 (en) Method and arrangement for state memory management
CN113573003A (en) Weak network-based audio and video real-time communication method, device and equipment
EP3096525A1 (en) Communication apparatus, communication data generation method, and communication data processing method
CN110602555B (en) Video transcoding method and device
CN110086773B (en) Audio and video data processing method and system
CN117641066A (en) Live broadcast source returning method and system
CN110557669B (en) Video data display method and device
CN110224853B (en) Control system
CN110324578B (en) Monitoring video processing method, device and storage medium
CN109859824B (en) Pathological image remote display method and device
CN109451030B (en) Method and system for downloading video network file
CN110874267A (en) Polling scheduling method, device, storage medium and equipment
CN114679574B (en) Monitoring data distribution method and monitoring data distribution device
CN110572708A (en) Method for receiving RTP multiplexing stream with high performance
CN115942000B (en) H.264 format video stream transcoding method, device, equipment and medium
CN109859826A (en) A kind of pathological image loading method and device

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