CN113891175B - Live broadcast push flow method, device and system - Google Patents

Live broadcast push flow method, device and system Download PDF

Info

Publication number
CN113891175B
CN113891175B CN202111153002.0A CN202111153002A CN113891175B CN 113891175 B CN113891175 B CN 113891175B CN 202111153002 A CN202111153002 A CN 202111153002A CN 113891175 B CN113891175 B CN 113891175B
Authority
CN
China
Prior art keywords
video stream
information
target live
push
live video
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Active
Application number
CN202111153002.0A
Other languages
Chinese (zh)
Other versions
CN113891175A (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 CN202111153002.0A priority Critical patent/CN113891175B/en
Publication of CN113891175A publication Critical patent/CN113891175A/en
Application granted granted Critical
Publication of CN113891175B publication Critical patent/CN113891175B/en
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/60Network structure or processes for video distribution between server and client or between remote clients; Control signalling between clients, server and network components; Transmission of management data between server and client, e.g. sending from server to client commands for recording incoming content stream; Communication details between server and client 
    • H04N21/63Control signaling related to video distribution between client, server and network components; Network processes for video distribution between server and clients or between remote clients, e.g. transmitting basic layer and enhancement layers over different transmission paths, setting up a peer-to-peer communication via Internet between remote STB's; Communication protocols; Addressing
    • H04N21/647Control signaling between network components and server or clients; Network processes for video distribution between server and clients, e.g. controlling the quality of the video stream, by dropping packets, protecting content from unauthorised alteration within the network, monitoring of network load, bridging between two different networks, e.g. between IP and wireless
    • H04N21/64723Monitoring of network processes or resources, e.g. monitoring of network load
    • 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/235Processing of additional data, e.g. scrambling of additional data or processing content descriptors
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/40Client devices specifically adapted for the reception of or interaction with content, e.g. set-top-box [STB]; Operations thereof
    • H04N21/43Processing of content or additional data, e.g. demultiplexing additional data from a digital video stream; Elementary client operations, e.g. monitoring of home network or synchronising decoder's clock; Client middleware
    • H04N21/433Content storage operation, e.g. storage operation in response to a pause request, caching operations
    • H04N21/4331Caching operations, e.g. of an advertisement for later insertion during playback
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/40Client devices specifically adapted for the reception of or interaction with content, e.g. set-top-box [STB]; Operations thereof
    • H04N21/43Processing of content or additional data, e.g. demultiplexing additional data from a digital video stream; Elementary client operations, e.g. monitoring of home network or synchronising decoder's clock; Client middleware
    • H04N21/435Processing of additional data, e.g. decrypting of additional data, reconstructing software from modules extracted from the transport stream
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/40Client devices specifically adapted for the reception of or interaction with content, e.g. set-top-box [STB]; Operations thereof
    • H04N21/43Processing of content or additional data, e.g. demultiplexing additional data from a digital video stream; Elementary client operations, e.g. monitoring of home network or synchronising decoder's clock; Client middleware
    • H04N21/438Interfacing the downstream path of the transmission network originating from a server, e.g. retrieving encoded video stream packets from an IP network
    • H04N21/4383Accessing a communication channel

Landscapes

  • Engineering & Computer Science (AREA)
  • Multimedia (AREA)
  • Signal Processing (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Computer Security & Cryptography (AREA)
  • Databases & Information Systems (AREA)
  • Two-Way Televisions, Distribution Of Moving Picture Or The Like (AREA)

Abstract

The application provides a live broadcast plug flow method, a device and a system, wherein the live broadcast plug flow method is applied to a client and comprises the following steps: receiving live broadcast push stream information sent by a server, wherein the live broadcast push stream information carries first state information and push stream line information of a target live broadcast video stream; under the condition that the target live video stream reaches a first preset abnormal condition according to the first state information, acquiring target live video stream information in a specified time period from a local cache; determining second state information of the target live video stream according to the target live video stream information in the designated time period acquired from the local cache; and under the condition that the target live video stream reaches a second preset abnormal condition according to the second state information, switching the push line of the target live video stream according to the push line information. The manpower resource consumption is reduced, the active switching of the push line is realized, the efficiency of switching the push line is improved, and the quality of live broadcast push and the accuracy of switching the push line are improved.

Description

Live broadcast push flow method, device and system
Technical Field
The application relates to the technical field of computers, in particular to a live broadcast plug flow method. The application also relates to a live broadcast pushing device, a live broadcast pushing system, a computing device and a computer readable storage medium.
Background
With the continuous development of computer technology, network live broadcast is more and more exploded, and numerous live broadcast real-time services attract a large number of users due to original novel contents, so that the quality of the network live broadcast is optimized, and the user experience is improved to be the development direction of the live broadcast services.
In the live broadcast process of a user, the phenomenon of blocking of a video stream picture pushed out by live broadcast is often caused by the network quality deterioration of a push stream line. In the prior art, a technician typically switches a push line for a user in the background live broadcast, and then the user actively re-pushes the push line, so that the user can switch the live broadcast to the push line recommended by the technician. However, when the method solves the problem of poor network quality of the push flow line, the method consumes large manpower resources and has low response and solving efficiency. Therefore, there is a need for an effective solution to the above problems.
Disclosure of Invention
In view of the above, the embodiment of the application provides a live broadcast push method. The application also relates to a live broadcast plug flow device, a live broadcast plug flow system, a computing device and a computer readable storage medium, so as to solve the technical defects of high consumption and low efficiency in the prior art.
According to a first aspect of an embodiment of the present application, there is provided a live push method, applied to a client, including:
receiving live broadcast push stream information sent by a server, wherein the live broadcast push stream information carries first state information and push stream line information of a target live broadcast video stream, and the first state information is determined by the server according to the target live broadcast video stream in a specified time period;
under the condition that the target live video stream reaches a first preset abnormal condition according to the first state information, acquiring target live video stream information in the appointed time period from a local cache;
determining second state information of the target live video stream according to the target live video stream information in the designated time period acquired in the local cache;
and under the condition that the target live video stream reaches a second preset abnormal condition according to the second state information, switching the push line of the target live video stream according to the push line information.
According to a second aspect of the embodiment of the present application, there is provided a live push method, applied to a server, including:
determining first state information of a target live video stream in a designated time period according to the target live video stream sent by a client;
Generating push line information according to the first state information, and generating live broadcast push information based on the first state information and the push line information;
and sending the live broadcast push information to the client, wherein the live broadcast push information is used for switching the target live broadcast video stream to the push line by the client under the condition that the target live broadcast video stream is determined to be abnormal.
According to a third aspect of the embodiment of the present application, there is provided a live push device, applied to a client, including:
the receiving module is configured to receive live broadcast push stream information sent by a server, wherein the live broadcast push stream information carries first state information and push stream line information of a target live broadcast video stream, and the first state information is determined by the server according to the target live broadcast video stream in a specified time period;
the acquisition module is configured to acquire target live video stream information in the specified time period from a local cache under the condition that the target live video stream is determined to reach a first preset abnormal condition according to the first state information;
the first determining module is configured to determine second state information of the target live video stream according to the target live video stream information in the designated time period acquired in the local cache;
And the switching module is configured to switch the push line of the target live video stream according to the push line information under the condition that the target live video stream is determined to reach a second preset abnormal condition according to the second state information.
According to a fourth aspect of the embodiment of the present application, there is provided a live broadcast plug-flow device, applied to a server, including:
the second determining module is configured to determine first state information of a target live video stream in a designated time period according to the target live video stream sent by the client;
the generation module is configured to generate plug flow line information according to the first state information, and generate live broadcast plug flow information based on the first state information and the plug flow line information;
the first sending module is configured to send the live broadcast push information to the client, wherein the live broadcast push information is used for the client to switch the target live broadcast video stream to the push line under the condition that the target live broadcast video stream is determined to be abnormal.
According to a fifth aspect of an embodiment of the present application, there is provided a live push system, including:
the system comprises a server and a client;
the server side is configured to determine first state information of a target live video stream in a designated time period according to the target live video stream sent by the client side; generating plug flow line information according to the first state information; generating live broadcast plug flow information based on the first state information and the plug flow line information; transmitting the live broadcast push information to the client;
The client is configured to receive live broadcast push flow information sent by the server; under the condition that the target live video stream reaches a first preset abnormal condition according to the first state information, acquiring target live video stream information in the appointed time period from a local cache; determining second state information of the target live video stream according to the target live video stream information in the designated time period acquired in the local cache; and under the condition that the target live video stream reaches a second preset abnormal condition according to the second state information, switching the push line of the target live video stream according to the push line information.
According to a sixth 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 push method when executing the computer instructions.
According to a seventh 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 push method.
According to the live broadcast pushing method, live broadcast pushing information sent by a server side is received, the live broadcast pushing information carries first state information and pushing line information of a target live broadcast video stream, and the first state information is determined by the server side according to the target live broadcast video stream in a specified time period; under the condition that the target live video stream reaches a first preset abnormal condition according to the first state information, acquiring target live video stream information in the appointed time period from a local cache; determining second state information of the target live video stream according to the target live video stream information in the designated time period acquired in the local cache; and under the condition that the target live video stream reaches a second preset abnormal condition according to the second state information, switching the push line of the target live video stream according to the push line information. According to the live broadcast pushing method, on the basis that the target live broadcast video stream is determined to reach the first preset abnormal condition according to the first state information and the target live broadcast video stream is determined to reach the second preset abnormal condition according to the second state information, the client can automatically determine the pushing line of the target live broadcast video stream to be switched, and then the pushing line of the target live broadcast video stream is switched according to the pushing line information, so that the active switching of the pushing line can be realized without operation of a technician and a user, the efficiency of switching the pushing line is improved, and the quality of live broadcast pushing is optimized. And determining that the target live video stream reaches a first preset abnormal condition according to the first state information, determining that the target live video stream reaches a second preset abnormal condition according to the second state information, judging the target live video stream twice, and switching the push line only when the target live video stream simultaneously reaches the first preset abnormal condition and the second preset abnormal condition, so that the accuracy of switching the push line can be improved. In addition, under the condition of realizing active switching of the plug flow line, customer complaint response of customer service and developers can be reduced while user feedback is reduced, and human resource consumption is reduced.
Drawings
Fig. 1 is a flowchart of a live push method according to an embodiment of the present application;
fig. 2A is a schematic processing diagram of a live push method according to an embodiment of the present application;
fig. 2B is a process flow diagram of a live push method applied to live game according to an embodiment of the present application;
fig. 3 is a flowchart of another live push method according to an embodiment of the present application;
fig. 4 is a schematic structural diagram of a live broadcast pushing device according to an embodiment of the present application
Fig. 5 is a schematic structural diagram of another live broadcast plug-flow device according to an embodiment of the present application;
fig. 6A is a schematic structural diagram of a live push system according to an embodiment of the present application;
fig. 6B is a schematic process diagram of another live push method according to an embodiment of the present application;
FIG. 7 is a block diagram of a computing device according to one embodiment of the application.
Detailed Description
In the following description, numerous specific details are set forth in order to provide a thorough understanding of the present application. The present application may be embodied in many other forms than those herein described, and those skilled in the art will readily appreciate that the present application may be similarly embodied without departing from the spirit or essential characteristics thereof, and therefore the present application is not limited to the specific embodiments disclosed below.
The terminology used in the one or more embodiments of the 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 application. As used in one or more embodiments of the 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 refers to any or all possible combinations of one or more of the associated listed items.
It should be understood that, although the terms first, second, etc. may be used in one or more embodiments of the 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 may also be referred to as a second, and similarly, a second may also be referred to as a first, without departing from the scope of one or more embodiments of the application. The word "if" as used herein may be interpreted as "at … …" or "at … …" or "responsive to a determination", depending on the context.
In the present application, a live broadcast push method is provided, and the present application relates to a live broadcast push device, a live broadcast push system, a computing device, and a computer readable storage medium, which are described in detail in the following embodiments.
Fig. 1 shows a flowchart of a live broadcast push method according to an embodiment of the present application, which is applied to a client, and specifically includes the following steps:
step 102: and receiving live broadcast plug flow information sent by a server, wherein the live broadcast plug flow information carries first state information and plug flow line information of a target live broadcast video stream, and the first state information is determined by the server according to the target live broadcast video stream in a specified time period.
Specifically, live broadcast pushing refers to a process that a host broadcast starts live broadcast, compresses live broadcast content and transmits the compressed live broadcast content to a server side of a website, namely, video content is pushed to the server side; the live broadcast plug flow information refers to feedback information generated by the server side and used for evaluating the live broadcast plug flow of the client side; the target live video stream is video content generated by live broadcasting of a host at a client; the first state information refers to the result of the server to analyze the target live video stream, such as whether the target live video stream loses frames, the target live video loses frames, and the like; the push line information refers to whether the client needs to switch the push line and the information of the push line to be switched according to the first state information.
In practical application, when a host broadcasts live video content, namely a target live video stream, in a specified time period, the client transmits the live video content, namely the target live video stream, to the server, the server analyzes the target live video stream to obtain first state information, generates plug flow line information based on the first state information, and then combines the first state information and the plug flow line information into live plug flow information to be transmitted to the client, namely the client receives the live plug flow information transmitted by the server.
For example, the server receives a target live video stream within five minutes currently sent by the client, and analyzes the target live video stream to determine whether a frame loss condition exists: if the frame loss condition exists, the first state information is that the target live video stream loses frames, and then push stream line information is generated, wherein the push stream line information can comprise notification information of push stream line switching, recommended push stream line name, push stream address, network condition, bandwidth and other attribute information; if the frame loss condition does not exist, the first state information is that the target live video stream does not lose frames, and then the push line information is generated, which can include notification information of 'no need of switching push lines'. And then packaging the first state information and the push line information into live push information, and sending the live push information to the client. At this time, the client will receive live push information.
It should be noted that, before the client receives the live broadcast push information, the client needs to collect and store data of the target live broadcast video stream in the live broadcast process, and before a certain time is reached, the client requests the live broadcast push information from the server, that is, before the live broadcast push information sent by the server is received, the client further includes:
acquiring and storing target live video stream information in a first preset time period every interval;
and under the condition that the second preset time length is reached, requesting the live broadcast plug flow information from the server.
Specifically, the first preset duration is a preset acquisition duration, for example, 1 second, 0.5 second, 2 seconds, etc.; the second preset duration is a request duration, that is, an interval duration of the client requesting live broadcast push information from the server, for example, 1 minute, 2 minutes, 5 minutes, and the like.
In practical application, the client acquires (acquires) the target live video stream information of live broadcast push stream in the first preset time length every time, stores the acquired target live video stream information, and can be stored in a memory, namely a cached data queue, wherein the data queue is provided with a maximum length of the queue, and can be set, for example, the maximum length of the queue is 100, namely the data queue only caches the target live video stream information of the latest 100 seconds at most. And when the time interval reaches a second preset duration, the client requests live broadcast plug flow information from the server. Therefore, smooth live broadcast pushing flow can be ensured, and a foundation is laid for obtaining the target live broadcast video flow information in the designated time period from the cache.
For example, the first preset duration is 1 second, the second preset duration is 300 seconds, and then the client collects the target live video stream information within 1 second once every second, and stores the target live video stream information in a data queue in the memory, wherein the data queue only caches the target live video stream information of at most 300 seconds. When the time interval reaches 300 seconds, the client requests live push information from the server.
In addition, frame rate information of the target live video stream in the first preset time length can be acquired and stored every interval, such as network frame loss rate of live push stream, rendering frame loss rate of picture acquisition, coding frame loss rate of video frame coding and the like. For example, the client collects the network frame loss rate of live broadcast push stream within 1 second, the rendering frame loss rate of picture collection and the coding frame loss rate of video frame coding once every second, and the three frame loss rates are cached in a data queue in a memory.
Before the main broadcasting formally starts the live broadcasting, the configuration file of the live broadcasting needs to be obtained from the server, and then live broadcasting pushing is performed according to the configuration file, that is, before the target live broadcasting video stream information in the first preset time is collected and stored at each interval, the method further comprises:
Acquiring a live push stream configuration file from the server;
and starting the live push stream according to the live push stream configuration file.
Specifically, the live push configuration file refers to preset attribute information for performing live push, for example, a first preset duration, a second preset duration, a preset time period, a push line for starting live push, and the like.
In practical application, when a client is opened by a host, and a live broadcast starting button is clicked on a client interface, the client acquires a live broadcast push stream configuration file corresponding to the live broadcast from a server, and then the client performs live broadcast preparation according to the live broadcast push stream configuration file, and after a first preset time length, a second preset time length, a preset time period, a push stream line and the like are set, the live broadcast is started, and live broadcast push stream is performed. Thus, the method can ensure that the live broadcast push flow is orderly carried out, improves the efficiency and the stability of the live broadcast push flow,
step 104: and under the condition that the target live video stream reaches a first preset abnormal condition according to the first state information, acquiring the target live video stream information in the appointed time period from a local cache.
And further, analyzing the first state information on the basis of receiving the first state information and the push line information of the target live video stream, and acquiring the target live video stream information in a specified time period from a local cache under the condition that the target live video stream is determined to reach a first preset abnormal condition.
Specifically, the first preset abnormal condition refers to a condition that whether the quality of the target live video stream is qualified or not is judged based on the angle of the server, and if the frame loss number is greater than or equal to the preset frame number.
In practical application, the first state information can be compared with a first preset abnormal condition according to a certain rule, so as to judge whether the target live video stream reaches the first preset abnormal condition. If the target live video stream reaches a first preset abnormal condition, the live push stream is unqualified from the perspective of the server, namely the network quality of the push stream line is poor, so that the picture of the target live video stream is blocked. In order to avoid the error of the judgment of the server, the client is required to analyze the target live video stream, so that the target live video stream information in a specified time period is required to be obtained from the local cache.
For example, the first state information is the frame loss number of the target live video, the first preset abnormal condition is that the frame loss number is greater than or equal to a preset frame number, and the preset frame number is 5 frames. When the frame loss number of the target live video in the first state information is 7 frames, the 7 frames are larger than 5 frames, which means that the target live video stream reaches a first preset abnormal condition, and the target live video stream information in a specified time period needs to be acquired from the cache.
It should be noted that, when it is determined according to the first state information that the target live video stream does not reach the first preset abnormal condition, it is described that from the perspective of the server side, the live broadcast push stream is qualified, that is, the network quality of the push stream line is good, the picture of the target live video stream is smooth, at this time, the target live video stream information in the specified time period does not need to be acquired from the local cache, the operation does not need to be changed, and the current push stream line of the target live video stream is kept unchanged.
Step 106: and determining second state information of the target live video stream according to the target live video stream information in the designated time period acquired in the local cache.
On the basis that the target live video stream is determined to reach a first preset abnormal condition according to the first state information, and the target live video stream information in a specified time period is obtained from the local cache, further, the second state information of the target live video stream is determined according to the target live video stream information in the specified time period obtained from the local cache.
Specifically, the second state information refers to a result of the client analyzing the target live video stream information, such as a network condition, a rendering condition, an encoding condition, and the like of the target live video stream.
In practical application, on the basis that the target live video stream information in the specified time period is obtained from the local cache, the target live video stream information needs to be analyzed, and then the second state information of the target live video stream is obtained. The second state information includes network frame information, rendering frame information and encoding frame information, that is, the second state information of the target live video stream is determined according to the target live video stream information in the specified time period acquired in the local buffer memory, and the second state information includes at least one of the following:
according to the network transmission data of the target live video stream information in the specified time period acquired in the local cache, determining network frame loss information of the target live video stream;
according to the video data of the target live video stream information in the specified time period acquired in the local cache, determining rendering frame loss information of the target live video stream;
and determining the coding frame loss information of the target live video stream according to the audio data of the target live video stream information in the specified time period acquired in the local cache.
The network frame information refers to information related to frames of a target live video stream during transmission when a live broadcast is performed by a host, such as network frame loss number, network frame loss rate average value and the like; the frame rendering information refers to information related to frames when video pictures of the target live video stream are rendered, such as a rendering frame loss number, a rendering frame loss rate average value and the like; the encoded frame information refers to frame information related to encoding when playing the target live video stream, such as encoding frame loss number, encoding frame loss rate average value, and the like.
In practical application, the target live video stream information in the specified time period acquired from the local cache comprises at least one of network transmission data, video data and audio data, and the network transmission data can be processed and analyzed, namely, analyzed, so that the network frame information of the target live video stream is determined; the video data can be processed and analyzed, namely, analyzed, so that the rendering frame information of the target live video stream is determined; the audio data may be processed, i.e. analyzed, to determine the encoded frame information of the target live video stream. Therefore, the accuracy of the second state information of the target live video stream can be improved, and optimization of accelerating live push stream can be performed.
For example, acquiring target live video stream information within 300 seconds, analyzing network transmission data of the target live video stream information to obtain a network frame loss rate of each second of target live video stream, and further calculating a network frame loss rate average value of the target live video stream; analyzing the video data of the target live video stream information to obtain the rendering frame loss rate of the target live video stream of each second, and further calculating the rendering frame loss rate average value of the target live video stream; and analyzing the audio data of the target live video stream information to obtain the coding frame loss rate of the target live video stream of each second, and further calculating the coding frame loss rate average value of the target live video stream. The network frame loss rate average value, the rendering frame loss rate average value and the coding frame loss rate average value form second state information.
Step 108: and under the condition that the target live video stream reaches a second preset abnormal condition according to the second state information, switching the push line of the target live video stream according to the push line information.
On the basis of determining the second state information of the target live video stream according to the target live video stream information, further, judging whether the target live video stream reaches a second preset abnormal condition according to the second state information, and if so, switching a push stream line of the target live video stream according to the push stream line information.
Specifically, the second preset abnormal condition refers to a condition that whether the target live video stream is qualified or not based on the angle of the client, for example, the frame loss number is greater than or equal to a preset frame number, the frame loss rate average value is greater than a preset frame loss rate average value, the network frame loss rate is greater than or equal to a preset frame loss rate, and the like.
In practical application, after the second state information is determined, the second state information may be compared with a second preset abnormal condition according to a preset rule, so as to determine whether the target live video stream reaches the second preset abnormal condition. If the target live video stream reaches a second preset abnormal condition, the live push stream is unqualified from the perspective of the client, namely the network quality of the push stream line is poor, so that the picture of the target live video stream is blocked. At this time, the target push line needs to be obtained from the push line information, and then the target push line is used for live broadcast push, that is, the current push line of the target live broadcast video stream is switched to the target push line.
For example, the second state information is a network frame loss rate average value, and the second preset abnormal condition is that the network frame loss rate average value is greater than or equal to 40%. When the average value of the network frame loss rate of the target live video in the second state information is 45%, the 45% is greater than 40%, which means that the target live video stream reaches a second preset abnormal condition, at this time, the target push line needs to be determined from the push line information, and then the current push line of the target live video stream is switched to the target push line.
In one or more implementations of this embodiment, when it is determined that the target live video stream reaches a second preset abnormal condition according to the second state information, it is further required to determine whether the configuration of the client terminal allows switching of the push line, and if so, the push line may be switched. That is, when it is determined that the target live video stream reaches a second preset abnormal condition according to the second state information, a specific implementation process of switching a push line of the target live video stream according to the push line information may be as follows:
acquiring the state of a line change-over switch under the condition that the target live video stream is determined to reach a second preset abnormal condition according to the second state information;
And if the line change-over switch is in an on state, switching the push line of the target live video stream according to the push line information.
Specifically, the line switch refers to a master switch for actively cutting off and re-pushing by a client, and the state of the line switch is determined by a live push configuration file obtained by the client from a server, that is, the line switch is set to be on in the live push configuration file, the line switch is set to be on, the line switch is set to be off in the live push configuration file, and the line switch is set to be off.
In practical application, when the server side and the client side determine that the live broadcast push stream is unqualified, and when the target live broadcast video stream is determined to be unqualified, that is, when the target live broadcast video stream is determined to reach a second preset abnormal condition according to the second state information, the state of the line change switch needs to be determined first, if the line change switch is in an on state, the client side can switch the push stream line of the target live broadcast video stream, at the moment, the target push stream line is determined from the push stream line information, and then the current push stream line of the target live broadcast video stream is switched to the target push stream line. Therefore, smooth switching of the push stream line can be ensured, and the live broadcast push stream effect is further optimized.
In addition, the meaning of setting the line switch is that if the upper layer service of the client side has serious dependence on the bottom layer push state in the future, for example, the upper layer service is stopped once the bottom layer is cut off, then in order to avoid affecting the upper layer service as much as possible, a developer can modify the state of the line switch on line, and temporarily disable or start the active cut-off re-push function. That is, the adjustment of the state of the line switcher provides a developer with the ability to dynamically cut down other auxiliary functions in order to secure important business functions.
It should be noted that, the state of the line switch is determined, and the determination result is that the line switch is turned off, so that no matter whether the live broadcast push stream is qualified, that is, whether the target live broadcast video stream reaches the first preset abnormal condition and/or the second preset abnormal condition, the client side does not actively switch the push stream line of the target live broadcast video stream. And if the line change-over switch is in a closed state, keeping the current push line of the target live video stream unchanged.
For example, according to the second state information, it is determined that the target live video stream reaches a second preset abnormal condition, and at this time, the state of the line switcher needs to be acquired and determined first: if the line change-over switch is in an on state, the client acquires a target push line in push line information, and then uses the target push line to carry out live broadcast push or push a target live broadcast video stream; if the line change-over switch is in a closed state, the client uses the original push line to carry out live broadcast push or push the target live broadcast video stream, namely, the current push line of the target live broadcast video stream is kept unchanged.
In order to further optimize live broadcast push, when the target live broadcast video stream is determined to reach a second preset abnormal condition according to the second state information, the push lines of the target live broadcast video stream are switched according to the push line information, namely the push line information comprises push lines recommended by the server side, only one push line recommended by the server side can be provided, and at the moment, the client side directly switches the current push line of the target live broadcast video stream into the push line recommended by the server side; the push line recommended by the server may include a plurality of push lines, so that in order to facilitate the client to select an optimal push line, that is, a target line, from the plurality of push lines, the push line information further includes attribute information of each push line. That is, when the push line information includes at least one push line and attribute information of each push line in the at least one push line, a specific implementation process of switching the push line of the target live video stream according to the push line information is as follows:
determining a target push line with highest matching degree with the current push line of the target live video stream in the at least one push line according to the attribute information of each push line;
And switching the current push line of the target live video stream into the target push line.
Specifically, the attribute information includes information such as a bandwidth of a push line, a network transmission rate, a maximum transmission unit, a name, and the like, where the bandwidth refers to a working bandwidth, that is, a spectrum width of a frequency band, and a unit is hertz (Hz).
In practical application, under the condition that the target live video stream is determined to reach a second preset abnormal condition according to the second state information, acquiring each push line in the push line information and attribute information of each push line, comparing the attribute information of each push line with the current push line, determining the matching degree of each recommended line and the current push line, and if the attribute information comprises network transmission speed, comparing the difference value of the network transmission speed of each recommended line and the current push line, wherein the larger the difference value is, the higher the matching degree is; if the attribute information comprises bandwidths, comparing the difference value between the recommended lines and the current push line bandwidth, wherein the smaller the difference value is, the higher the matching degree is. And then determining the recommended line with the highest matching degree as a target recommended line, and further, switching the current push line of the target live video stream into the target push line. Therefore, live broadcast plug flow can be further optimized, and live broadcast efficiency is improved.
For example, the push line information includes push line 1, push line 2, attribute information of push line 1, and attribute information of push line 2. Assuming that the attribute information of the push line 1 is 25MHz in bandwidth, the attribute information of the push line 2 is 30MHz in bandwidth, if the bandwidth of the current push line is 25MHz, the difference between the bandwidth of the current push line and the bandwidth of the push line 1 is smaller than the difference between the bandwidth of the current push line and the bandwidth of the push line 2, and the matching degree between the current push line and the push line 1 is the highest, namely the push line 1 is the target push line. Assuming that the attribute information of the push line 1 is 10Mbps of the network transmission rate, the attribute information of the push line 2 is 15Mbps of the network transmission rate, if the network transmission rate of the current push line is 5Mbps, the difference between the bandwidth of the current push line and the network transmission rate of the push line 1 is smaller than the difference between the bandwidth of the current push line and the network transmission rate of the push line 2, and then the matching degree between the current push line and the push line 2 is the highest, namely the push line 2 is the target push line.
In addition, after the second state information is determined, the second state information is compared with a second preset abnormal condition according to a preset rule, so that whether the target live video stream reaches the second preset abnormal condition is judged. If the target live video stream does not reach the second preset abnormal condition, the live video stream is qualified from the perspective of the client, namely the quality of a push line is good, and the picture of the target live video stream is smooth. At this time, switching operation is not needed, and the current push line of the target live video stream is kept unchanged. Namely:
And under the condition that the target live video stream does not reach the second preset abnormal condition according to the second state information, keeping the current push line of the target live video stream unchanged.
For example, the second state information is a network frame loss number, and the second preset abnormal condition is that the network frame loss number is greater than or equal to a preset network frame loss number of 30 frames. When the network frame loss number of the target live video in the second state information is 20 frames, the target live video is smaller than 30, which means that the target live video does not reach the second preset abnormal condition, and the current push line of the target live video stream is kept unchanged.
And under the condition that the target live video stream does not reach the second preset abnormal condition according to the second state information, keeping the current push line of the target live video stream unchanged, and helping to keep the fluency of the target live video stream and further optimizing the live push.
After the client terminal switches the current push line of the target live video stream or keeps the current push line of the target live video stream, the operation information of switching or keeping the push line is also required to be sent to the server terminal, so that the client terminal can determine the live push condition of the client terminal according to the operation information, and when the client terminal requests the live push information next time, correct live push information, especially push line information, is fed back. That is, there is also a need:
Generating operation information according to the processing of the push line of the target live video stream, wherein the processing of the push line of the target live video stream comprises switching the push line of the target live video stream or keeping the current push line of the target live video stream unchanged;
and sending the operation information and the second state information to the server.
In practical application, in order to ensure smooth progress of live broadcast push flow and uniformity of data between a client and a server, the client needs to switch a push flow line of a target live broadcast video flow or keep a current push flow line of the target live broadcast video flow unchanged, operation information is generated, and then the operation information and second state information are sent to the server so as to improve efficiency of feeding back live broadcast push flow information next time by the server and further improve efficiency of live broadcast push flow.
For example, if the client switches the push line of the target live video stream according to the push line information, the switching operation information is generated according to the process of switching the push line, where the switching operation information may include: and the switched identifier and the switched push line send the switching operation information and the second state information to the server. As another example, if the client keeps the push line of the target live video stream unchanged, according to the processing of keeping the push line, the maintaining operation information is generated, where the maintaining operation information may include: and the maintained identification, and then the maintained operation information and the second state information are sent to the server.
In addition, in order to facilitate the server to determine the reason that the client refuses to switch the push line, that is, the reason that the current push line of the target live video stream is kept unchanged, the precondition that the client keeps the current push line of the target live video stream unchanged, that is, the target factor, is sent to the server, that is:
determining a target factor for keeping the current push line of the target live video stream unchanged, wherein the target factor comprises a line change-over switch in a closed state or determining that the target live video stream does not reach the second preset abnormal condition according to the second state information;
and sending the target factors to the server.
From the above, it can be seen that the precondition that the client keeps the current push line of the target live video stream unchanged, namely, the target factors are two kinds, respectively: the line change-over switch is in a closed state and determines that the target live video stream does not reach a second preset abnormal condition according to the second state information. Therefore, when the current push line of the target live video stream is kept unchanged, the target factor is that the line change switch is in a closed state, or the target live video stream is determined to not reach a second preset abnormal condition according to the second state information. And then the target factors are sent to the server side, and the server side is informed of the target factors.
It should be noted that, the client needs to send the second state information, the operation information, and the target factor to the server: the second state information includes at least one of network frame information, rendering frame information and encoding frame information, for example, the second state information, namely whether the network frame loss rate is abnormal, whether the rendering frame loss rate is abnormal and whether the encoding frame loss rate is abnormal, is sent to the server; the operation information comprises whether the client section switches the push line, such as switching the push line of the target live video stream, and such as keeping the current push line of the target live video stream unchanged; the target factor includes a reason that the client keeps the current push line of the target live video stream unchanged, for example, the line change switch is in a closed state, and for example, it is determined that the target live video stream does not reach a second preset abnormal condition according to the second state information.
Referring to fig. 2A, the live push method is described. Fig. 2A is a schematic processing diagram of a live push method according to an embodiment of the present application. Firstly, a client starts a live broadcast platform, then the client acquires a live broadcast plug flow configuration file from a server, and starts live broadcast plug flow according to the live broadcast plug flow configuration file. And then, the client acquires target live video stream information within 1 second every 1 second, adds the target live video stream information within 1 second into a data queue with the length of 300, wherein the target live video stream information is stored in the memory after 1 second and a first preset time length. When the time reaches 300 seconds, namely, every 300 seconds, the live broadcast plug flow information is obtained from the server through the interface A, wherein the 300 seconds are the second preset duration, and the live broadcast plug flow information comprises the first state information and the live broadcast plug flow information. Determining whether a target live video stream loses a frame or not according to the first state information, if the frame is not lost, judging whether to stop live pushing, if the live pushing is determined to be stopped, ending the live pushing, and if the live pushing is determined to be continued, continuing to acquire the target live video stream information within 1 second every 1 second and the following steps; if the frame is lost, acquiring and analyzing target live video stream information in approximately 300 seconds from the memory to obtain second state information. Judging whether the network frame loss rate is abnormal or not according to the second state information, if not, keeping the current push line of the target live video stream unchanged, sending the operation information keeping the push line of the target live video stream unchanged and the target factors to a server through an interface B, and then executing the steps of judging whether to stop live push and afterwards; if yes, the state of the line switch is obtained, whether the line switch is in an on state is judged, when the line switch is in the on state, the push line of the target live video stream is switched according to the push line information, the operation information of the push line of the target live video stream is sent to the server through the interface B, then the step of judging whether to stop live push and the later step is executed, and when the line switch is in the off state, the step of keeping the current push line of the target live video stream unchanged and the later step is executed.
According to the live broadcast pushing method, live broadcast pushing information sent by a server side is received, the live broadcast pushing information carries first state information and pushing line information of a target live broadcast video stream, and the first state information is determined by the server side according to the target live broadcast video stream in a specified time period; under the condition that the target live video stream reaches a first preset abnormal condition according to the first state information, acquiring target live video stream information in the appointed time period from a local cache; determining second state information of the target live video stream according to the target live video stream information in the designated time period acquired in the local cache; and under the condition that the target live video stream reaches a second preset abnormal condition according to the second state information, switching the push line of the target live video stream according to the push line information. According to the live broadcast pushing method, on the basis that the target live broadcast video stream is determined to reach the first preset abnormal condition according to the first state information and the target live broadcast video stream is determined to reach the second preset abnormal condition according to the second state information, the client can automatically determine the pushing line of the target live broadcast video stream to be switched, and then the pushing line of the target live broadcast video stream is switched according to the pushing line information, so that the active switching of the pushing line can be realized without operation of a technician and a user, the efficiency of switching the pushing line is improved, and the quality of live broadcast pushing is optimized. And determining that the target live video stream reaches a first preset abnormal condition according to the first state information, determining that the target live video stream reaches a second preset abnormal condition according to the second state information, judging the target live video stream twice, and switching the push line only when the target live video stream simultaneously reaches the first preset abnormal condition and the second preset abnormal condition, so that the accuracy of switching the push line can be improved. In addition, under the condition of realizing active switching of the plug flow line, customer complaint response of customer service and developers can be reduced while user feedback is reduced, and human resource consumption is reduced.
The live broadcast plug flow method provided by the application is further described by taking the application of the live broadcast plug flow method in game live broadcast as an example with reference to fig. 2B. Fig. 2B shows a process flow chart of a live broadcast push method applied to live broadcast of a game, which specifically includes the following steps:
step 202: and acquiring the live push configuration file from the server.
Step 204: and starting the live push stream of the live game according to the live push stream configuration file.
Step 206: and acquiring and storing target live video streams in the first preset time length every interval.
Step 208: and under the condition that the second preset time length is reached, requesting live broadcast plug flow information from the server.
Step 210: and receiving live broadcast plug flow information sent by the server.
The live broadcast pushing information carries first state information and pushing line information of a target live broadcast video stream, and the first state information is determined by a server according to the target live broadcast video stream in a specified time period.
Step 212: and under the condition that the target live video stream is determined to reach the first preset abnormal condition according to the first state information, acquiring target live video stream information in a specified time period from the local cache.
Step 214: and determining second state information of the target live video stream according to the target live video stream information in the designated time period acquired in the local cache.
Wherein the second state information includes network frame information, rendering frame information, and encoding frame information;
correspondingly, determining second state information of the target live video stream according to the target live video stream acquired in the local cache, wherein the second state information comprises at least one of the following:
according to network transmission data of the target live video stream information in the specified time period acquired in the local cache, determining network frame information of the target live video stream;
determining rendering frame information of the target live video stream according to video data of the target live video stream information in a specified time period acquired from the local cache;
and determining the coding frame information of the target live video stream according to the audio data of the target live video stream information in the specified time period acquired in the local cache.
Step 216: and under the condition that the target live video stream reaches the second preset abnormal condition according to the second state information, acquiring the state of the line change-over switch.
Step 218: and if the line change-over switch is in an on state, switching the push line of the target live video stream according to the push line information.
Optionally, the push line information includes at least one push line and attribute information of each push line in the at least one push line;
correspondingly, according to the push line information, switching the push line of the target live video stream, including:
determining a target push line with highest matching degree with the current push line of the target live video stream in at least one push line according to the attribute information of each push line;
and switching the current push line of the target live video stream into a target push line.
Step 220: if the line change-over switch is in a closed state, keeping the current push line of the target live video stream unchanged.
Step 222: and under the condition that the target live video stream does not reach the second preset abnormal condition according to the second state information, keeping the current push line of the target live video stream unchanged.
Step 224: and generating operation information according to the processing of the push line aiming at the target live video stream.
The processing of the push line aiming at the target live video stream comprises switching the push line of the target live video stream or keeping the current push line of the target live video stream unchanged.
Step 226: and sending the operation information and the second state information to the server.
Step 228: and determining a target factor for keeping the current push line of the target live video stream unchanged.
The target factors include that the line change-over switch is in a closed state, or that the target live video stream does not reach a second preset abnormal condition according to second state information.
Step 230: and sending the target factors to the server.
Execution returns to step 206.
Step 232: and ending the game live broadcast under the condition of receiving the live broadcast stop push stream.
The live broadcast pushing flow method applied to the game receives live broadcast pushing flow information sent by a server, wherein the live broadcast pushing flow information carries first state information and pushing flow line information of a target live broadcast video flow, and the first state information is determined by the server according to the target live broadcast video flow in a specified time period; under the condition that the target live video stream reaches a first preset abnormal condition according to the first state information, acquiring target live video stream information in the appointed time period from a local cache; determining second state information of the target live video stream according to the target live video stream information in the designated time period acquired in the local cache; and under the condition that the target live video stream reaches a second preset abnormal condition according to the second state information, switching the push line of the target live video stream according to the push line information. According to the live broadcast pushing method, on the basis that the target live broadcast video stream is determined to reach the first preset abnormal condition according to the first state information and the target live broadcast video stream is determined to reach the second preset abnormal condition according to the second state information, the client can automatically determine the pushing line of the target live broadcast video stream to be switched, and then the pushing line of the target live broadcast video stream is switched according to the pushing line information, so that the active switching of the pushing line can be realized without operation of a technician and a user, the efficiency of switching the pushing line is improved, and the quality of live broadcast pushing is optimized. And determining that the target live video stream reaches a first preset abnormal condition according to the first state information, determining that the target live video stream reaches a second preset abnormal condition according to the second state information, judging the target live video stream twice, and switching the push line only when the target live video stream simultaneously reaches the first preset abnormal condition and the second preset abnormal condition, so that the accuracy of switching the push line can be improved. In addition, under the condition of realizing active switching of the plug flow line, customer complaint response of customer service and developers can be reduced while user feedback is reduced, and human resource consumption is reduced.
Fig. 3 shows a flowchart of another live broadcast push method according to an embodiment of the present application, which is applied to a server, and specifically includes the following steps:
step 302: and determining first state information of the target live video stream according to the target live video stream in the appointed time period sent by the client.
Specifically, the target live video stream is video content generated by live broadcasting of a host at a client; the first state information refers to a result of the server analyzing the target live video stream, such as whether the target live video stream loses frames, whether the target live video loses frames, and the like.
In practical application, when a host broadcasts live broadcast at a client, the client transmits live broadcast video content, namely a target live broadcast video stream, to a server in a specified time period, and the server analyzes the target live broadcast video stream to obtain first state information.
Optionally, the determining the first state information of the target live video stream according to the target live video stream in the designated time period sent by the client may be implemented as follows:
analyzing the target live video stream within the appointed time period sent by the client to obtain video data;
Determining the actual video frame number of the target live video stream in a specified time period according to the video data;
acquiring a target video frame number of the target live video stream in a specified time period;
and determining first state information of the target live video stream according to the target video frame number and the actual video frame number.
In practical application, the server receives the target live VIDEO stream in the specified time period sent by the client through the real-time message transmission protocol (RTMP, real Time Messaging Protocol), obtains VIDEO data, such as an audio-VIDEO stream in a streaming media format (FLV, FLASH VIDEO), and then parses the VIDEO stream in a digital VIDEO compression format (h.264 format) from the VIDEO data, thereby obtaining the actual VIDEO frame number of the target live VIDEO stream in the specified time period. And then acquiring the target video frame number of the target live video stream in a specified time period. And comparing the actual video frame number with the target video frame number to obtain the frame loss number of the target live video stream, thereby determining the first state information of the target live video stream according to the frame loss number.
In addition, since the client continuously transmits the target live video stream to the server within the specified time period, in order to reduce redundant processing of the server and improve processing efficiency of the server, the server may count the video frames of the client that are received in total in the latest time period T at intervals of the same time interval T, for example, 10 seconds, and supposing that the video stream in the digital video compression format is parsed from the video data to obtain the video frames in each data packet, and record the video frames as C, the video frames of the client that are received in total in the latest time period T are n=Σ (C). Until a specified period is reached, the number of acquired video frames, i.e., the actual video frame number, is q=Σ (N). And then obtaining the frame rate of the video coding which is informed to the server side in the FLV head when the client side initially live-broadcast push stream, namely how many frames of video pictures should be in per second, namely fps, and calculating to obtain the video frame number which the client side should push normally in the specified time period (X), namely the target video frame number P=fps X. And comparing the target video frame number P with the actual video frame number Q, wherein if the P-Q is larger than the preset frame loss number, the first state information is "under the service side view angle, the client side push stream has the frame loss condition", or the first state information is "P-Q", and if the P-Q is smaller than or equal to the preset frame loss number, the first state information is "under the service side view angle, the client side push stream does not have the frame loss condition", or the first state information is "P-Q". The preset frame loss number can be any natural number, such as 0, 1, etc.
It should be noted that, the server may also count the video frames of the clients that are received in total in the latest time period T at intervals of the same time period T, for example, 10 seconds, and assume that the video frames in each data packet are obtained by parsing the video stream in the digital video compression format from the video data, and the video frames are denoted as C, and then the video frames of the clients that are received in total in the latest time period T are n=Σ (C). And then obtaining the frame rate of the video coding which is informed to the server side in the FLV head when the client side initially live-broadcast push stream, namely, how many frames of video pictures should be in per second, namely, fps, calculating the video frame number which should be pushed by the client side under normal conditions in the latest time period T, and recording as M=fps. Then, how many frames the video stream pushed by the client is totally reduced in the period T, namely, the initial frame loss number, is counted as d=m-N. And then the server accumulates the lost frames D of all the time periods T in the specified time period, such as 300 seconds, to obtain the total lost frame number of the video stream pushed to the server by the client in the latest specified time period, and the total lost frame number is recorded as E=Σ (D). If E is greater than the preset frame loss number, the first state information is "under the view angle of the service end," the frame loss condition exists in the client push stream, "or the first state information is" E, "if E is less than or equal to the preset frame loss number, the first state information is" under the view angle of the service end, "the frame loss condition does not exist in the client push stream," or the first state information is "E. The preset frame loss number can be any natural number, such as 0, 1, etc.
Step 304: and generating push line information according to the first state information, and generating live broadcast push information based on the first state information and the push line information.
After the first state information is determined, acquiring at least one push line and attribute information of each push line in the at least one push line under the condition that the target live video stream is determined to reach a first preset abnormal condition according to the first state information, wherein the at least one push line and the attribute information of each push line in the at least one push line form push line information, and the network transmission speed of the at least one push line is higher; and generating push line information without content under the condition that the target live video stream is determined to not reach a first preset abnormal condition according to the first state information. And then packaging the first state information and the push line information into live push information.
Step 306: and sending the live broadcast push information to the client, wherein the live broadcast push information is used for switching the target live broadcast video stream to the push line by the client under the condition that the target live broadcast video stream is determined to be abnormal.
And on the basis of generating live broadcast push information, the live broadcast push information is sent to a client, and then the client switches the target live broadcast video stream to the push line according to the live broadcast push information under the condition that the target live broadcast video stream is determined to be abnormal.
In practical application, after generating live broadcast push stream information carrying first state information and push stream line information, the server side sends the live broadcast push stream information to the client side. And then the client switches the target live video stream to the push line according to the live push information under the condition that the target live video stream is determined to be abnormal, namely: and the client acquires target live video stream information in the appointed time period from a local cache under the condition that the target live video stream is determined to reach a first preset abnormal condition according to the first state information, further determines second state information of the target live video stream according to the target live video stream information in the appointed time period acquired in the local cache, and switches a push stream line of the target live video stream according to the push stream line information under the condition that the target live video stream is determined to reach a second preset abnormal condition according to the second state information.
It should be noted that, when the client determines that the target live video stream reaches the first preset abnormal condition according to the first state information, the client obtains the target live video stream information in the specified time period from the local cache, further determines the second state information of the target live video stream according to the target live video stream information in the specified time period obtained in the local cache, and when it determines that the target live video stream reaches the second preset abnormal condition according to the second state information, switches the push line of the target live video stream according to the push line information, and the technical scheme of the live push method applied to the client described above belongs to the same concept, and details not described in detail in the technical scheme of the embodiment may refer to the description of the technical scheme of the live push method applied to the client described above.
In addition, the server may receive operation information and second state information sent by the client, where the operation information is generated by the client according to a process of a push line for the target live video stream, where the process of the push line for the target live video stream includes the client switching the push line of the target live video stream, or the client keeps the current push line of the target live video stream unchanged.
It should be noted that, the server may receive a target factor sent by the client to determine that the current push line of the target live video stream is kept unchanged, where the target factor includes that a line switch of the client is in a closed state, or determines that the target live video stream does not reach a second preset abnormal condition according to the second state information.
According to the live broadcast pushing method, the first state information of the target live broadcast video stream is determined through the server according to the target live broadcast video stream in the designated time period; generating plug flow line information according to the first state information; generating live broadcast plug flow information based on the first state information and the plug flow line information; and sending the live broadcast plug flow information to the client. Then the client receives live broadcast push stream information sent by the server; then, under the condition that the target live video stream does not reach a first preset abnormal condition according to the first state information, acquiring target live video stream information in the appointed time period from a local cache; then determining second state information of the target live video stream according to the target live video stream information in the designated time period acquired in the local cache; and finally, under the condition that the target live video stream does not reach a second preset abnormal condition according to the second state information, switching the push line of the target live video stream according to the push line information. On the basis that the target live video stream is determined to reach a first preset abnormal condition according to the first state information and the target live video stream is determined to reach a second preset abnormal condition according to the second state information, the client can automatically determine a push line of the target live video stream to be switched, and then the push line of the target live video stream is switched according to the push line information, so that the push line can be actively switched without operation of a technician and a user, the efficiency of switching the push line is improved, and the quality of live push is optimized. And determining that the target live video stream reaches a first preset abnormal condition according to the first state information, determining that the target live video stream reaches a second preset abnormal condition according to the second state information, judging the target live video stream twice, and switching the push line only when the target live video stream simultaneously reaches the first preset abnormal condition and the second preset abnormal condition, so that the accuracy of switching the push line can be improved. In addition, under the condition of realizing active switching of the plug flow line, customer complaint response of customer service and developers can be reduced while user feedback is reduced, and human resource consumption is reduced.
Corresponding to the live broadcast pushing method embodiment applied to the client, the application further provides a live broadcast pushing device embodiment, and fig. 4 shows a schematic structural diagram of the live broadcast pushing device according to an embodiment of the application. As shown in fig. 4, the apparatus, applied to a client, includes:
the receiving module 402 is configured to receive live broadcast push stream information sent by a server, where the live broadcast push stream information carries first state information and push stream line information of a target live broadcast video stream, and the first state information is obtained by analyzing the target live broadcast video stream in a specified time period sent by the client by the server;
the obtaining module 404 is configured to obtain, from a local cache, the target live video stream information in the specified time period when the target live video stream is determined to reach a first preset abnormal condition according to the first state information;
a first determining module 406, configured to analyze the target live video stream information in the specified time period acquired from the local cache, and determine second state information of the target live video stream;
and a switching module 408, configured to switch the push line of the target live video stream according to the push line information when the target live video stream is determined to reach a second preset abnormal condition according to the second state information.
In one or more implementations of the present embodiment, the switching module 408 is further configured to:
acquiring the state of a line change-over switch under the condition that the target live video stream is determined to reach a second preset abnormal condition according to the second state information;
and if the line change-over switch is in an on state, switching the push line of the target live video stream according to the push line information.
In one or more implementations of this embodiment, the push line information includes at least one push line and attribute information of each push line in the at least one push line;
the switching module 408 is further configured to:
determining a target push line with highest matching degree with the current push line of the target live video stream in the at least one push line according to the attribute information of each push line;
and switching the current push line of the target live video stream into the target push line.
In one or more implementations of the present embodiment, the apparatus further includes a first retention module configured to:
and if the line change-over switch is in a closed state, keeping the current push line of the target live video stream unchanged.
In one or more implementations of the present embodiment, the apparatus further includes a second holding module configured to:
and under the condition that the target live video stream does not reach the second preset abnormal condition according to the second state information, keeping the current push line of the target live video stream unchanged.
In one or more implementations of this embodiment, the apparatus further includes a second transmitting module configured to:
generating operation information according to the processing of the push line of the target live video stream, wherein the processing of the push line of the target live video stream comprises switching the push line of the target live video stream or keeping the current push line of the target live video stream unchanged;
and sending the operation information and the second state information to the server.
In one or more implementations of this embodiment, the apparatus further includes a third transmitting module configured to:
determining a target factor for keeping the current push line of the target live video stream unchanged, wherein the target factor comprises a line change-over switch in a closed state or determining that the target live video stream does not reach the second preset abnormal condition according to the second state information;
And sending the target factors to the server.
In one or more implementations of the present embodiment, the second state information includes network frame information, rendering frame information, and encoding frame information;
the first determining module 406 is further configured to at least one of:
analyzing the network transmission data of the target live video stream information in the designated time period acquired from the local cache, and determining the network frame information of the target live video stream;
analyzing the video data of the target live video stream information in the appointed time period acquired from the local cache, and determining the rendering frame information of the target live video stream;
and analyzing the audio data of the target live video stream information in the designated time period acquired from the local cache, and determining the coding frame information of the target live video stream.
In one or more implementations of the present embodiment, the apparatus further includes a request module configured to:
acquiring and storing target live video stream information in a first preset time period every interval;
and under the condition that the second preset time length is reached, requesting the live broadcast plug flow information from the server.
In one or more implementations of the present embodiment, the apparatus further includes an opening module configured to:
acquiring a live push stream configuration file from the server;
and starting the live push stream according to the live push stream configuration file.
The live broadcast pushing device provided by the application receives live broadcast pushing information sent by a server, wherein the live broadcast pushing information carries first state information and pushing line information of a target live broadcast video stream, and the first state information is determined by the server according to the target live broadcast video stream in a specified time period; under the condition that the target live video stream reaches a first preset abnormal condition according to the first state information, acquiring target live video stream information in the appointed time period from a local cache; determining second state information of the target live video stream according to the target live video stream information in the designated time period acquired in the local cache; and under the condition that the target live video stream reaches a second preset abnormal condition according to the second state information, switching the push line of the target live video stream according to the push line information. According to the live broadcast pushing method, on the basis that the target live broadcast video stream is determined to reach the first preset abnormal condition according to the first state information and the target live broadcast video stream is determined to reach the second preset abnormal condition according to the second state information, the client can automatically determine the pushing line of the target live broadcast video stream to be switched, and then the pushing line of the target live broadcast video stream is switched according to the pushing line information, so that the active switching of the pushing line can be realized without operation of a technician and a user, the efficiency of switching the pushing line is improved, and the quality of live broadcast pushing is optimized. And determining that the target live video stream reaches a first preset abnormal condition according to the first state information, determining that the target live video stream reaches a second preset abnormal condition according to the second state information, judging the target live video stream twice, and switching the push line only when the target live video stream simultaneously reaches the first preset abnormal condition and the second preset abnormal condition, so that the accuracy of switching the push line can be improved. In addition, under the condition of realizing active switching of the plug flow line, customer complaint response of customer service and developers can be reduced while user feedback is reduced, and human resource consumption is reduced.
The foregoing is a schematic solution of a live broadcast plug-flow device in this embodiment. It should be noted that, the technical solution of the live broadcast push device and the technical solution of the live broadcast push method applied to the client side belong to the same concept, and details of the technical solution of the live broadcast push device, which are not described in detail, can be referred to the description of the technical solution of the live broadcast push method applied to the client side.
Corresponding to the embodiment of the live broadcast pushing method applied to the server, the application also provides an embodiment of a live broadcast pushing device, and fig. 5 shows a schematic structural diagram of another live broadcast pushing device provided by an embodiment of the application. As shown in fig. 5, the device, applied to a server, includes:
a second determining module 502, configured to determine, according to a target live video stream within a specified time period sent by a client, first state information of the target live video stream;
a generating module 504 configured to generate push line information according to the first state information, and generate live push information based on the first state information and the push line information;
the first sending module 506 is configured to send the live broadcast push information to the client, where the live broadcast push information is used for the client to switch a push line of the target live broadcast video stream based on the live broadcast push information if it is determined that the target live broadcast video stream reaches a first preset abnormal condition and a second preset abnormal condition.
Optionally, the second determining module 502 is further configured to:
analyzing the target live video stream within the appointed time period sent by the client to obtain video data;
determining the actual video frame number of the target live video stream in a specified time period according to the video data;
acquiring a target video frame number of the target live video stream in a specified time period;
and determining first state information of the target live video stream according to the target video frame number and the actual video frame number.
According to the live broadcast pushing device, the first state information of the target live broadcast video stream is determined through the server according to the target live broadcast video stream in the designated time period; generating plug flow line information according to the first state information; generating live broadcast plug flow information based on the first state information and the plug flow line information; and sending the live broadcast plug flow information to the client. Then the client receives live broadcast push stream information sent by the server; then, under the condition that the target live video stream does not reach a first preset abnormal condition according to the first state information, acquiring target live video stream information in the appointed time period from a local cache; then determining second state information of the target live video stream according to the target live video stream information in the designated time period acquired in the local cache; and finally, under the condition that the target live video stream does not reach a second preset abnormal condition according to the second state information, switching the push line of the target live video stream according to the push line information. On the basis that the target live video stream is determined to reach a first preset abnormal condition according to the first state information and the target live video stream is determined to reach a second preset abnormal condition according to the second state information, the client can automatically determine a push line of the target live video stream to be switched, and then the push line of the target live video stream is switched according to the push line information, so that the push line can be actively switched without operation of a technician and a user, the efficiency of switching the push line is improved, and the quality of live push is optimized. And determining that the target live video stream reaches a first preset abnormal condition according to the first state information, determining that the target live video stream reaches a second preset abnormal condition according to the second state information, judging the target live video stream twice, and switching the push line only when the target live video stream simultaneously reaches the first preset abnormal condition and the second preset abnormal condition, so that the accuracy of switching the push line can be improved. In addition, under the condition of realizing active switching of the plug flow line, customer complaint response of customer service and developers can be reduced while user feedback is reduced, and human resource consumption is reduced.
The foregoing is a schematic solution of a live broadcast plug-flow device in this embodiment. It should be noted that, the technical solution of the live broadcast push device and the technical solution of the live broadcast push method applied to the server side belong to the same concept, and details of the technical solution of the live broadcast push device, which are not described in detail, can be referred to the description of the technical solution of the live broadcast push method applied to the server side.
Corresponding to the method embodiment, the application also provides a live broadcast plug flow system embodiment, and fig. 6A shows a schematic structural diagram of a live broadcast plug flow system according to an embodiment of the application. As shown in fig. 6A, the system includes:
a server 602 and a client 604;
the server 602 is configured to determine, according to a target live video stream within a specified time period sent by the client 604, first state information of the target live video stream; generating plug flow line information according to the first state information; generating live broadcast plug flow information based on the first state information and the plug flow line information; transmitting the live push information to the client 604;
the client 604 is configured to receive live push information sent by the server 602; under the condition that the target live video stream reaches a first preset abnormal condition according to the first state information, acquiring target live video stream information in the appointed time period from a local cache; determining second state information of the target live video stream according to the target live video stream information in the designated time period acquired in the local cache; and under the condition that the target live video stream reaches a second preset abnormal condition according to the second state information, switching the push line of the target live video stream according to the push line information.
Optionally, the server 602 is further configured to parse a target live video stream within a specified time period sent by the client 604 to obtain video data; determining the actual video frame number of the target live video stream in a specified time period according to the video data; acquiring a target video frame number of the target live video stream in a specified time period; and determining first state information of the target live video stream according to the target video frame number and the actual video frame number.
Optionally, the client 604 is further configured to obtain a state of a line switch when it is determined that the target live video stream reaches a second preset abnormal condition according to the second state information; and if the line change-over switch is in an on state, switching the push line of the target live video stream according to the push line information.
Optionally, the push line information includes at least one push line and attribute information of each push line in the at least one push line;
optionally, the client 604 is further configured to determine, according to the attribute information of each push line, a target push line with the highest matching degree with the current push line of the target live video stream in the at least one push line; and switching the current push line of the target live video stream into the target push line.
Optionally, the client 604 is further configured to keep the current push line of the target live video stream unchanged if the line switch is in an off state.
Optionally, the client 604 is further configured to keep the current push line of the target live video stream unchanged when it is determined that the target live video stream does not reach the second preset abnormal condition according to the second status information.
Optionally, the client 604 is further configured to generate operation information according to a process of a push line for the target live video stream, where the process of the push line for the target live video stream includes switching the push line of the target live video stream, or keeping the current push line of the target live video stream unchanged; and sending the operation information and the second state information to the server 602.
Optionally, the client 604 is further configured to determine a target factor that keeps the current push line of the target live video stream unchanged, where the target factor includes a line switch being in a closed state, or determine that the target live video stream does not reach the second preset abnormal condition according to the second state information; the target factors are sent to the server 602.
Optionally, the second state information includes network frame information, rendering frame information, and encoding frame information;
optionally, the client 604 is further configured to at least one of: analyzing the network transmission data of the target live video stream information in the designated time period acquired from the local cache, and determining the network frame information of the target live video stream; analyzing video stream data of the target live video stream information in the designated time period acquired from the local cache, and determining rendering frame information of the target live video stream; and analyzing the audio data of the target live video stream information in the designated time period acquired from the local cache, and determining the coding frame information of the target live video stream.
Optionally, the client 604 is further configured to collect and store target live video stream information within a first preset duration every interval; and when the second preset duration is reached, requesting the live push information from the server 602.
Optionally, the client 604 is further configured to obtain a live push profile from the server 602; and starting the live push stream according to the live push stream configuration file.
Referring to fig. 6B, the live push system is described. Fig. 6B is a schematic processing diagram of another live push method according to an embodiment of the present application. Firstly, a client starts live broadcast push stream and sends a target live broadcast video stream to a server. In addition, the client acquires the target live video stream information in 1 second every 1 second, adds the target live video stream information in 1 second into a data queue with the length of 300, and stores the data queue into the memory, and requests live broadcast push stream information from the server through the interface A every 300 seconds when the time reaches 300 seconds. After receiving a request of a client, the server analyzes a target live video stream within approximately 300 seconds, determines first state information of the target live video stream, generates push line information according to the first state information, generates live push information based on the first state information and the push line information, and then sends the live push information to the client. And after receiving the live broadcast push stream information, the client determines whether the target live broadcast video stream loses frames according to the first state information. And if the frame loss of the target live video stream is determined according to the first state information, acquiring and analyzing the target live video stream information within approximately 300 seconds, and obtaining second state information. Then determining whether the network frame loss rate is abnormal according to the second state information, if the network frame loss rate is abnormal according to the second state information, acquiring the state of a line switching switch, if the line switching switch is in an on state, switching a push line of the target live video stream according to push line information, and transmitting operation information of the push line of the target live video stream to a server through an interface B; if the line change-over switch is in a closed state, keeping the push line of the target live video stream unchanged, and sending the operation information and the target factors which keep the push line of the target live video stream unchanged to the server through the interface B. If the network frame loss rate is determined to be normal according to the second state information, keeping the push line of the target live video stream unchanged, and sending the operation information and the target factors which keep the push line of the target live video stream unchanged to the server through the interface B. If the target live video stream is determined not to be lost according to the first state information, continuing live streaming, and continuously collecting the target live video stream information within 1 second every 1 second and the following steps
According to the live broadcast pushing system, the first state information of the target live broadcast video stream is determined through the server according to the target live broadcast video stream in the designated time period; generating plug flow line information according to the first state information; generating live broadcast plug flow information based on the first state information and the plug flow line information; and sending the live broadcast plug flow information to the client. Then the client receives live broadcast push stream information sent by the server; then, under the condition that the target live video stream does not reach a first preset abnormal condition according to the first state information, acquiring target live video stream information in the appointed time period from a local cache; then determining second state information of the target live video stream according to the target live video stream information in the designated time period acquired in the local cache; and finally, under the condition that the target live video stream does not reach a second preset abnormal condition according to the second state information, switching the push line of the target live video stream according to the push line information. On the basis that the target live video stream is determined to reach a first preset abnormal condition according to the first state information and the target live video stream is determined to reach a second preset abnormal condition according to the second state information, the client can automatically determine a push line of the target live video stream to be switched, and then the push line of the target live video stream is switched according to the push line information, so that the push line can be actively switched without operation of a technician and a user, the efficiency of switching the push line is improved, and the quality of live push is optimized. And determining that the target live video stream reaches a first preset abnormal condition according to the first state information, determining that the target live video stream reaches a second preset abnormal condition according to the second state information, judging the target live video stream twice, and switching the push line only when the target live video stream simultaneously reaches the first preset abnormal condition and the second preset abnormal condition, so that the accuracy of switching the push line can be improved. In addition, under the condition of realizing active switching of the plug flow line, customer complaint response of customer service and developers can be reduced while user feedback is reduced, and human resource consumption is reduced.
The foregoing is a schematic solution of a live push system in this embodiment. It should be noted that, the technical solution of the live broadcast push system and the technical solution of the live broadcast push method belong to the same concept, and details of the technical solution of the live broadcast push system which are not described in detail can be referred to the description of the technical solution of the live broadcast push method.
Fig. 7 illustrates a block diagram of a computing device 700 provided in accordance with an embodiment of the present application. The components of computing device 700 include, but are not limited to, memory 710 and processor 720. Processor 720 is coupled to memory 710 via bus 730, and database 750 is used to store data.
Computing device 700 also includes access device 740, access device 740 enabling computing device 700 to communicate via one or more networks 760. Examples of such networks include public switched telephone networks (PSTN, public Switched Telephone Network), local area networks (LAN, local Area Network), wide area networks (WAN, wide Area Network), personal area networks (PAN, personal Area Network), or combinations of communication networks such as the internet. The access device 740 may include one or more of any type of network interface, wired or wireless, such as a network interface card (NIC, network Interface Controller), such as an IEEE802.11 wireless local area network (WLAN, wireless Local Area Network) wireless interface, a worldwide interoperability for microwave access (Wi-MAX, worldwide Interoperability for Microwave Acess) interface, an ethernet interface, a universal serial bus (USB, universal Serial Bus) interface, a cellular network interface, a bluetooth interface, a near field communication (NFC, near Field Communication) interface, and so forth.
In one embodiment of the application, the above-described components of computing device 700, as well as other components not shown in FIG. 7, may also be connected to each other, such as by a bus. It should be understood that the block diagram of the computing device illustrated in FIG. 7 is for exemplary purposes only and is not intended to limit the scope of the present application. Those skilled in the art may add or replace other components as desired.
Computing device 700 may be any type of stationary or mobile computing device including a mobile computer or mobile computing device (e.g., tablet, personal digital assistant, laptop, notebook, netbook, etc.), mobile phone (e.g., smart phone), wearable computing device (e.g., smart watch, smart glasses, etc.), or other type of mobile device, or a stationary computing device such as a desktop computer or PC. Computing device 700 may also be a mobile or stationary server.
Wherein, the steps of the live push method are implemented when the processor 720 executes the computer instructions.
The foregoing is a schematic illustration of a computing device of this embodiment. It should be noted that, the technical solution of the computing device and the technical solution of the live broadcast push method belong to the same concept, and details of the technical solution of the computing device, which are not described in detail, can be referred to the description of the technical solution of the live broadcast push method.
An embodiment of the application also provides a computer-readable storage medium storing computer instructions that, when executed by a processor, implement the steps of the live push method as described above.
The above is an exemplary version of a computer-readable storage medium of the present embodiment. It should be noted that, the technical solution of the storage medium and the technical solution of the live broadcast push method belong to the same concept, and details of the technical solution of the storage medium which are not described in detail can be referred to the description of the technical solution of the live broadcast push method.
The foregoing describes certain embodiments of the present application. Other embodiments are within the scope of the following claims. In some cases, the actions or steps recited in the claims can be performed in a different order than in the embodiments and still achieve desirable results. In addition, the processes depicted in the accompanying figures do not necessarily require the particular order shown, or sequential order, to achieve desirable results. In some embodiments, multitasking and parallel processing are also possible or may be advantageous.
The computer instructions include computer program code that may be in source code form, object code form, executable file or some intermediate form, etc. The computer readable medium may include: any entity or device capable of carrying the computer program code, a recording medium, a U disk, a removable hard disk, a magnetic disk, an optical disk, a computer Memory, a Read-Only Memory (ROM), a random access Memory (RAM, random Access Memory), an electrical carrier signal, a telecommunications signal, a software distribution medium, and so forth. It should be noted that the computer readable medium contains content that can be appropriately scaled according to the requirements of jurisdictions in which such content is subject to legislation and patent practice, such as in certain jurisdictions in which such content is subject to legislation and patent practice, the computer readable medium does not include electrical carrier signals and telecommunication signals.
It should be noted that, for the sake of simplicity of description, the foregoing method embodiments are all expressed as a series of combinations of actions, but it should be understood by those skilled in the art that the present application is not limited by the order of actions described, as some steps may be performed in other order or simultaneously in accordance with the present application. Further, those skilled in the art will appreciate that the embodiments described in the specification are all preferred embodiments, and that the acts and modules referred to are not necessarily all required for the present application.
In the foregoing embodiments, the descriptions of the embodiments are emphasized, and for parts of one embodiment that are not described in detail, reference may be made to the related descriptions of other embodiments.
The preferred embodiments of the application disclosed above are intended only to assist in the explanation of the application. Alternative embodiments are not intended to be exhaustive or to limit the application to the precise form disclosed. 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 the practical application, to thereby enable others skilled in the art to best understand and utilize the application. The application is limited only by the claims and the full scope and equivalents thereof.

Claims (17)

1. The live broadcast push method is characterized by being applied to a client and comprising the following steps:
receiving live broadcast push stream information sent by a server, wherein the live broadcast push stream information carries first state information and push stream line information of a target live broadcast video stream, the first state information is determined by the server according to the target live broadcast video stream in a specified time period, and the first state information refers to a result of analysis of the target live broadcast video stream by the server;
under the condition that the target live video stream reaches a first preset abnormal condition according to the first state information, acquiring target live video stream information in the specified time period from a local cache, wherein the first preset abnormal condition is a condition for judging whether the quality of the target live video stream is qualified or not based on the angle of the server side;
analyzing the target live video stream information in the appointed time period acquired in the local cache to obtain second state information of the target live video stream;
and under the condition that the target live video stream reaches a second preset abnormal condition according to the second state information, switching a push line of the target live video stream according to the push line information, wherein the second preset abnormal condition is a condition for judging whether the target live video stream is qualified or not based on the angle of the client.
2. The method according to claim 1, wherein the switching the push line of the target live video stream according to the push line information in the case that the target live video stream is determined to reach a second preset abnormal condition according to the second state information includes:
acquiring the state of a line change-over switch under the condition that the target live video stream is determined to reach a second preset abnormal condition according to the second state information;
and if the line change-over switch is in an on state, switching the push line of the target live video stream according to the push line information.
3. The method according to claim 1 or 2, wherein the push line information comprises at least one push line and attribute information of each of the at least one push line;
and switching the push line of the target live video stream according to the push line information, wherein the push line comprises the following steps:
determining a target push line with highest matching degree with the current push line of the target live video stream in the at least one push line according to the attribute information of each push line;
and switching the current push line of the target live video stream into the target push line.
4. The method as recited in claim 2, further comprising:
and if the line change-over switch is in a closed state, keeping the current push line of the target live video stream unchanged.
5. The method as recited in claim 1, further comprising:
and under the condition that the target live video stream does not reach the second preset abnormal condition according to the second state information, keeping the current push line of the target live video stream unchanged.
6. The method of any one of claims 1, 4 and 5, further comprising:
generating operation information according to the processing of the push line of the target live video stream, wherein the processing of the push line of the target live video stream comprises switching the push line of the target live video stream or keeping the current push line of the target live video stream unchanged;
and sending the operation information and the second state information to the server.
7. The method according to claim 4 or 5, further comprising:
determining a target factor for keeping the current push line of the target live video stream unchanged, wherein the target factor comprises a line change-over switch in a closed state or determining that the target live video stream does not reach the second preset abnormal condition according to the second state information;
And sending the target factors to the server.
8. The method according to claim 1 or 2, wherein the second status information comprises network frame information, rendering frame information and encoding frame information;
determining second state information of the target live video stream according to the target live video stream information in the specified time period acquired in the local cache, wherein the second state information comprises at least one of the following:
according to the network transmission data of the target live video stream information in the specified time period acquired in the local cache, determining network frame loss information of the target live video stream;
according to the video data of the target live video stream information in the specified time period acquired in the local cache, determining rendering frame loss information of the target live video stream;
and determining the coding frame loss information of the target live video stream according to the audio data of the target live video stream information in the specified time period acquired in the local cache.
9. The method according to claim 1 or 2, wherein before the receiving the live push information sent by the server, the method further includes:
acquiring and storing target live video stream information in a first preset time period every interval;
And under the condition that the second preset time length is reached, requesting the live broadcast plug flow information from the server.
10. The method of claim 9, wherein before the capturing and storing the target live video stream information within the first preset time period for each interval of the first preset time period, further comprises:
acquiring a live push stream configuration file from the server;
and starting the live push stream according to the live push stream configuration file.
11. The live broadcast plug flow method is characterized by being applied to a server and comprising the following steps:
analyzing a target live video stream in a designated time period sent by a client to obtain first state information of the target live video stream;
generating push line information according to the first state information, and generating live broadcast push information based on the first state information and the push line information;
and sending the live broadcast push stream information to the client so that the client obtains target live broadcast video stream information in the specified time period from a local cache under the condition that the target live broadcast video stream is determined to reach a first preset abnormal condition according to the first state information, analyzes the target live broadcast video stream information in the specified time period obtained in the local cache to obtain second state information of the target live broadcast video stream, and switches the target live broadcast video stream to a push stream line according to the push stream line information under the condition that the target live broadcast video stream is determined to reach a second preset abnormal condition according to the second state information, wherein the first preset abnormal condition refers to a condition that whether the quality of the target live broadcast video stream is qualified or not is judged based on the angle of the server, and the second preset abnormal condition refers to a condition that whether the target live broadcast video stream is qualified or not is judged based on the angle of the client.
12. The method of claim 11, wherein determining the first state information of the target live video stream from the target live video stream within a specified time period transmitted by the client comprises
Analyzing the target live video stream within the appointed time period sent by the client to obtain video data;
determining the actual video frame number of the target live video stream in a specified time period according to the video data;
acquiring a target video frame number of the target live video stream in a specified time period;
and determining first state information of the target live video stream according to the target video frame number and the actual video frame number.
13. The live broadcast pushing device is characterized by being applied to a client and comprising:
the receiving module is configured to receive live broadcast plug flow information sent by a server, wherein the live broadcast plug flow information carries first state information and plug flow line information of a target live broadcast video stream, the first state information is determined by the server according to the target live broadcast video stream in a specified time period, and the first state information refers to a result of analysis of the target live broadcast video stream by the server;
The acquisition module is configured to acquire target live video stream information in the specified time period from a local cache under the condition that the target live video stream is determined to reach a first preset abnormal condition according to the first state information, wherein the first preset abnormal condition is a condition that whether the quality of the target live video stream is qualified or not is judged based on the angle of the server side;
the first determining module is configured to analyze the target live video stream information in the specified time period acquired in the local cache to obtain second state information of the target live video stream;
the switching module is configured to switch the push line of the target live video stream according to the push line information under the condition that the target live video stream is determined to reach a second preset abnormal condition according to the second state information, wherein the second preset abnormal condition is a condition that whether the target live video stream is qualified or not is judged based on the angle of the client side.
14. The live broadcast plug flow device is characterized by being applied to a server and comprising:
the second determining module is configured to analyze the target live video stream in a specified time period sent by the client to obtain first state information of the target live video stream;
The generation module is configured to generate plug flow line information according to the first state information, and generate live broadcast plug flow information based on the first state information and the plug flow line information;
the first sending module is configured to send the live broadcast push stream information to the client, so that the client obtains target live broadcast video stream information in the specified time period from a local cache when the target live broadcast video stream is determined to reach a first preset abnormal condition according to the first state information, analyzes the target live broadcast video stream information in the specified time period obtained in the local cache to obtain second state information of the target live broadcast video stream, and switches the target live broadcast video stream to a push stream line according to the push stream line information when the target live broadcast video stream is determined to reach a second preset abnormal condition according to the second state information, wherein the first preset abnormal condition is a condition that whether the target live broadcast video stream quality is qualified or not is judged based on an angle of the server, and the second preset abnormal condition is a condition that whether the target live broadcast video stream is qualified or not is judged based on the angle of the client.
15. A live push system, comprising:
the system comprises a server and a client;
the server side is configured to determine first state information of a target live video stream according to the target live video stream in a specified time period sent by the client side, wherein the first state information refers to a result of analysis of the target live video stream by the server side; generating plug flow line information according to the first state information; generating live broadcast plug flow information based on the first state information and the plug flow line information; transmitting the live broadcast push information to the client;
the client is configured to receive live broadcast push flow information sent by the server; under the condition that the target live video stream reaches a first preset abnormal condition according to the first state information, acquiring target live video stream information in the specified time period from a local cache, wherein the first preset abnormal condition is a condition for judging whether the quality of the target live video stream is qualified or not based on the angle of the server side; analyzing the target live video stream information in the appointed time period acquired in the local cache to obtain second state information of the target live video stream; and under the condition that the target live video stream reaches a second preset abnormal condition according to the second state information, switching a push line of the target live video stream according to the push line information, wherein the second preset abnormal condition is a condition for judging whether the target live video stream is qualified or not based on the angle of the client.
16. A computing device comprising a memory, a processor, and computer instructions stored on the memory and executable on the processor, wherein the processor, when executing the computer instructions, performs the steps of the method of any one of claims 1-10 or 11-12.
17. A computer readable storage medium storing computer instructions which, when executed by a processor, implement the steps of the method of any one of claims 1-10 or 11-12.
CN202111153002.0A 2021-09-29 2021-09-29 Live broadcast push flow method, device and system Active CN113891175B (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202111153002.0A CN113891175B (en) 2021-09-29 2021-09-29 Live broadcast push flow method, device and system

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202111153002.0A CN113891175B (en) 2021-09-29 2021-09-29 Live broadcast push flow method, device and system

Publications (2)

Publication Number Publication Date
CN113891175A CN113891175A (en) 2022-01-04
CN113891175B true CN113891175B (en) 2023-09-12

Family

ID=79008225

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202111153002.0A Active CN113891175B (en) 2021-09-29 2021-09-29 Live broadcast push flow method, device and system

Country Status (1)

Country Link
CN (1) CN113891175B (en)

Families Citing this family (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN114390324A (en) * 2022-03-23 2022-04-22 阿里云计算有限公司 Video processing method and system and cloud rebroadcasting method
CN114827633B (en) * 2022-06-17 2022-09-13 浙江华创视讯科技有限公司 Media stream disaster tolerance method, device and related equipment
CN116419035B (en) * 2023-06-09 2023-08-22 深圳市华曦达科技股份有限公司 Video playing detection method, device, equipment and computer readable storage medium

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN108965918A (en) * 2018-07-19 2018-12-07 腾讯科技(深圳)有限公司 streaming media processing method, device, system and computer readable storage medium
CN112422241A (en) * 2020-11-09 2021-02-26 广州博冠信息科技有限公司 Data transmission method, device, storage medium and computer equipment
CN112752115A (en) * 2020-12-29 2021-05-04 广州博冠信息科技有限公司 Live broadcast data transmission method, device, equipment and medium

Family Cites Families (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7779140B2 (en) * 2008-03-14 2010-08-17 International Business Machines Corporation Method and system for switching media streams in a client system as directed by a control system

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN108965918A (en) * 2018-07-19 2018-12-07 腾讯科技(深圳)有限公司 streaming media processing method, device, system and computer readable storage medium
CN112422241A (en) * 2020-11-09 2021-02-26 广州博冠信息科技有限公司 Data transmission method, device, storage medium and computer equipment
CN112752115A (en) * 2020-12-29 2021-05-04 广州博冠信息科技有限公司 Live broadcast data transmission method, device, equipment and medium

Also Published As

Publication number Publication date
CN113891175A (en) 2022-01-04

Similar Documents

Publication Publication Date Title
CN113891175B (en) Live broadcast push flow method, device and system
TWI520590B (en) Media streaming method, device therewith and device for providing the media streaming
EP3780523B1 (en) Network traffic identification method and related device
CN106375783B (en) Method for quality-aware adaptive streaming over hypertext transfer protocol
CN113094239B (en) Method for determining reason of live broadcast abnormity and server
US20150372927A1 (en) Method, Device, and System for Acquiring Streaming Media Data
US10887363B1 (en) Streaming decision in the cloud
CN108810657B (en) Method and system for setting video cover
CN112399190B (en) Audio and video data acquisition method and device
CN113055692A (en) Data processing method and device
WO2013017165A1 (en) Shaping media traffic based on manifest file in http adaptive streaming
CN112073543B (en) Cloud video recording method and system and readable storage medium
CN114679604B (en) Resource processing method and device
CN112752113B (en) Method and device for determining abnormal factors of live broadcast server
CN113891114B (en) Transcoding task scheduling method and device
EP3993329A1 (en) Network data scheduling method and edge node
CN114466194A (en) Video coding adjusting method and device, storage medium and electronic equipment
US20120124633A1 (en) Wireless Video Streaming Quality Management for Bandwidth Constrained Cellular Network
CN113194134A (en) Node determination method and device
CN107920072B (en) Multimedia sharing method and system based on data characteristics
CN112584194A (en) Video code stream pushing method and device, computer equipment and storage medium
CN114866790B (en) Live stream scheduling method and device
CN111617466A (en) Method and device for determining coding format and method for realizing cloud game
CN105979284B (en) Mobile terminal video sharing method
Baik et al. VSync: Cloud based video streaming service for mobile devices

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