CN113891114B - Transcoding task scheduling method and device - Google Patents

Transcoding task scheduling method and device Download PDF

Info

Publication number
CN113891114B
CN113891114B CN202111368187.7A CN202111368187A CN113891114B CN 113891114 B CN113891114 B CN 113891114B CN 202111368187 A CN202111368187 A CN 202111368187A CN 113891114 B CN113891114 B CN 113891114B
Authority
CN
China
Prior art keywords
cluster
target
push
stream
live broadcast
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
CN202111368187.7A
Other languages
Chinese (zh)
Other versions
CN113891114A (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 CN202111368187.7A priority Critical patent/CN113891114B/en
Publication of CN113891114A publication Critical patent/CN113891114A/en
Application granted granted Critical
Publication of CN113891114B publication Critical patent/CN113891114B/en
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/20Servers specifically adapted for the distribution of content, e.g. VOD servers; Operations thereof
    • H04N21/23Processing of content or additional data; Elementary server operations; Server middleware
    • H04N21/234Processing of video elementary streams, e.g. splicing of video streams, manipulating MPEG-4 scene graphs
    • H04N21/2343Processing of video elementary streams, e.g. splicing of video streams, manipulating MPEG-4 scene graphs involving reformatting operations of video signals for distribution or compliance with end-user requests or end-user device requirements
    • H04N21/234309Processing of video elementary streams, e.g. splicing of video streams, manipulating MPEG-4 scene graphs involving reformatting operations of video signals for distribution or compliance with end-user requests or end-user device requirements by transcoding between formats or standards, e.g. from MPEG-2 to MPEG-4 or from Quicktime to Realvideo

Abstract

The application provides a transcoding task scheduling method and a device, wherein the transcoding task scheduling method comprises the following steps: receiving a target live broadcast message, and determining a target push stream cluster and a target live broadcast stream corresponding to the target live broadcast message; determining push cluster attribute information based on the target push cluster, wherein the push cluster attribute information comprises cluster type information and a cluster available resource value; and determining a target transcoding cluster of the target live stream according to the cluster type information and the cluster available resource value. According to the method and the device, the target live broadcast message is received to determine the live stream to be transcoded and the cluster storing the live stream to be transcoded, so that the task to be transcoded can be determined conveniently under the condition that the cluster type is not considered; and determining a cluster for transcoding the live stream to be transcoded according to the attribute information of the push cluster, so that a target transcoding cluster for transcoding the live stream to be transcoded is determined based on the actual processing condition of the push cluster, and the transcoding efficiency is improved.

Description

Transcoding task scheduling method and device
Technical Field
The application relates to the technical field of Internet, in particular to a transcoding task scheduling method. The application also relates to a transcoding task scheduling device, a computing device and a computer readable storage medium.
Background
Currently, a central transcoding mode or an edge node transcoding mode is mostly adopted for transcoding the live stream; the central transcoding means that the anchor pushes audio and video data to the edge node, then the edge node pushes all received audio and video data to the central cluster, and the central cluster uniformly transcodes the audio and video data; the edge node transcodes the live stream directly by the edge node receiving the live stream, so that the edge node transcodes the live stream more conveniently and has higher transcoding efficiency.
However, the transcoding speed is slower only by adopting the central transcoding mode, and if the central transcoding is problematic, all live streams to be transcoded cannot be transcoded and watched; the method only adopts the mode of edge node transcoding, and when the transcoding resources of the edge node are insufficient, the live stream cannot be transcoded in time; in addition, the main cast plug flow has uncertainty, and whether the live cast plug flow is plugged to the edge node or the central cluster cannot be determined in time.
Therefore, how to obtain a scheduling method capable of flexibly scheduling edge node transcoding or central cluster transcoding and how to improve transcoding efficiency is a technical problem to be solved by those skilled in the art.
Disclosure of Invention
In view of this, the embodiment of the application provides a transcoding task scheduling method. The application also relates to a transcoding task scheduling device, a computing device and a computer readable storage medium, so as to solve the problems of low transcoding efficiency, high transcoding cost and the like in the prior art.
According to a first aspect of an embodiment of the present application, there is provided a transcoding task scheduling method, including:
receiving a target live broadcast message, and determining a target push stream cluster and a target live broadcast stream corresponding to the target live broadcast message;
determining push cluster attribute information based on the target push cluster, wherein the push cluster attribute information comprises cluster type information and a cluster available resource value;
and determining a target transcoding cluster of the target live stream according to the cluster type information and the cluster available resource value.
According to a second aspect of an embodiment of the present application, there is provided a transcoding task scheduling device, including:
the receiving module is configured to receive the target live broadcast message and determine a target push stream cluster and a target live broadcast stream corresponding to the target live broadcast message;
the first determining module is configured to determine push cluster attribute information based on the target push cluster, wherein the push cluster attribute information comprises cluster type information and a cluster available resource value;
And a second determining module configured to determine a target transcoding cluster of the target live stream according to the cluster type information and the cluster available resource value.
According to a third aspect of embodiments of the present application, there is provided a computing device comprising a memory, a processor and computer instructions stored on the memory and executable on the processor, the processor implementing the steps of the transcoding task scheduling method when executing the computer instructions.
According to a fourth aspect of embodiments of the present application, there is provided a computer readable storage medium storing computer instructions which, when executed by a processor, implement the steps of the transcoding task scheduling method.
The method for scheduling the transcoding task receives the target live broadcast message and determines a target push stream cluster and a target live broadcast stream corresponding to the target live broadcast message; determining push cluster attribute information based on the target push cluster, wherein the push cluster attribute information comprises cluster type information and a cluster available resource value; and determining a target transcoding cluster of the target live stream according to the cluster type information and the cluster available resource value.
The embodiment of the application realizes the determination of the live stream to be transcoded and the cluster storing the live stream to be transcoded by receiving the target live message, thereby being convenient for determining the task to be transcoded under the condition of not considering the cluster type; and determining a cluster for transcoding the live stream to be transcoded according to the attribute information of the cluster storing the live stream to be transcoded, so that a target transcoding cluster for transcoding the live stream to be transcoded is determined based on the actual situation of the transcoding cluster, and the transcoding efficiency is improved.
Drawings
FIG. 1 is a flow chart of a method for scheduling transcoding tasks according to an embodiment of the present application;
fig. 2 is a process flow diagram of a transcoding task scheduling method applied to an edge node a according to an embodiment of the present application;
fig. 3 is a schematic structural diagram of a transcoding task scheduler according to an embodiment of the present application;
FIG. 4 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.
First, terms related to one or more embodiments of the present application will be explained.
Transcoding: the video code stream which is already compressed and coded is converted into another video code stream so as to adapt to different network bandwidths, different terminal processing capacities and different user demands.
Edge transcoding: transcoding is directly carried out on an edge server of the anchor pushing live data.
Center transcoding: in correspondence with the edge transcoding, the live stream on the edge server is pushed to a central cluster for specialized transcoding.
The current mainstream live broadcast architecture is generally a mode that all live broadcast streams of a main broadcast are pushed to a central cluster and then unified transcoding is needed, the mode is simple to operate, but the combination with edge transcoding is lacking, and the following problems exist:
1. center transcoding can have a single point of problem that if the center cluster has a problem, it can result in all live streams to be transcoded being not viewable.
2. The bandwidth costs incurred by all live streams being pushed to the central cluster are high.
3. The transcoding task cannot be performed at the first time, and the time for transcoding to the central cluster is longer than the edge transcoding.
Adding edge transcoding can solve the above problems, however, the scheduling decisions of edge transcoding and center transcoding have the following problems:
1. Edge clusters may be resource starved, which is tuned to central transcoding at this time.
2. There is uncertainty in the push scheduling of the anchor, and the anchor may push directly to the central cluster without passing through the edge cluster, or may push to the edge cluster.
The method for dispatching the transcoding task can dispatch the central transcoding and the edge transcoding. The situation that the resource of the edge cluster is in shortage or the anchor directly pushes to the central cluster by bypassing the edge cluster can be solved.
In the present application, a transcoding task scheduling method is provided, and the present application relates to a transcoding task scheduling device, a computing device, and a computer-readable storage medium, which are described in detail in the following embodiments one by one.
Fig. 1 shows a flowchart of a method for scheduling transcoding tasks according to an embodiment of the present application, which specifically includes the following steps:
step 102: and receiving the target live broadcast message, and determining a target push stream cluster and a target live broadcast stream corresponding to the target live broadcast message.
The live broadcast message refers to record data generated when the client pushes streams to the edge node, specifically, live broadcast stream pushing requests of the live broadcast streams between the edge node and the center node are monitored, and after the live broadcast pushing requests are monitored, live broadcast messages corresponding to the live broadcast stream pushing requests are generated according to the live broadcast stream pushing requests, for example, live broadcast opening messages are generated based on the live broadcast pushing requests sent by the client to the edge node A; the live broadcast message may include an edge open broadcast message and a center open broadcast message, wherein the edge open broadcast message refers to a live broadcast message generated by an edge cluster receiving push stream, the center open broadcast message refers to a live broadcast message generated by a center cluster receiving push stream, the edge open broadcast message and the center open broadcast message are uniformly regarded as live broadcast messages, and the edge attribute and the center attribute of the open broadcast message are saved in a mode of recording cluster identification when the live broadcast message is recorded, regardless of the edge attribute and the center attribute of the open broadcast message; the target push cluster refers to a push cluster for receiving a target live stream pushed by a target client, wherein the push cluster refers to a node set composed of nodes, for example, an edge cluster composed of edge nodes belonging to a G area, a center area composed of center nodes belonging to an H area and the like, wherein the edge cluster comprises at least one edge node, and the center cluster comprises at least one center node; the target live stream refers to a target live stream generated in a target client live process.
Specifically, the anchor client side pushes the target live stream to the target push cluster, generates a target live stream message and sends the target live stream message to the scheduling server; the scheduling server receives the target live broadcast message, and can determine a target push stream cluster and a target live broadcast stream corresponding to the target live broadcast message according to the target live broadcast message.
In a specific embodiment of the application, taking a singing live stream as an example, a main broadcasting client side pushes the singing live stream generated by a singing live broadcasting room to an edge node cluster to generate a singing live broadcasting message; the scheduling server receives the singing live broadcast message and determines the edge node cluster and the singing live stream based on the singing live broadcast message.
In practical application, in order to facilitate processing of live broadcast messages received by the scheduling server, the live broadcast messages may be stored in a delay queue preset in the scheduling server, that is, the method for specifically receiving the target live broadcast message includes:
and receiving the target live broadcast message based on a preset delay queue.
The preset delay queue is a queue for storing the received live broadcast message; in the process of adding the live broadcast message to the preset delay queue, the push cluster identification of the push cluster and the live broadcast stream identification of the pushed live broadcast stream in the push process are only recorded without considering whether the target push cluster is a center attribute or an edge attribute;
In practical application, there are situations that different live broadcast messages for the same live broadcast stream are received, for example, live broadcast messages of live broadcast stream 1 pushed to an edge node and live broadcast messages of live broadcast stream 1 pushed to a center node are received, at this time, different live broadcast messages for the same live broadcast stream can be combined into one live broadcast message, for example, when live broadcast message a of live broadcast stream 1 pushed to an edge node is received first and stored in a delay queue, and then when live broadcast message b of live broadcast stream 1 pushed to a center node is received, only the edge node recorded in the delay queue is modified to the center node, and the live broadcast message b is not required to be recorded to the delay queue, so that the combination of the live broadcast messages is realized; in practical application, many live broadcast messages may be received in a short time, and the live broadcast messages are combined in the manner described above, that is, a final node to which the live broadcast stream is pushed is determined, so that the subsequent more stable transcoding of the live broadcast stream is facilitated.
In practical application, a host can start live broadcast at any time and end live broadcast at any time, and the host can push a live broadcast stream to a central cluster or to an edge node, so that the stability of the live broadcast stream is not high; by setting a preset delay queue in the scheduling server and storing the received live broadcast messages in the preset delay queue, obtaining the combined stable live broadcast messages in the preset delay queue as target open-cast messages, for example, if the preset delay queue receives the live broadcast messages 1 generated by pushing the live broadcast stream 1 to the edge node, the live broadcast messages 1 are stored in the preset delay queue, and then the live broadcast messages 2 generated by pushing the live broadcast stream 1 to the center cluster are received in a short time interval, at this time, the edge node in the live broadcast messages 1 is modified into the center cluster based on the live broadcast messages 2, and the live broadcast messages 2 are not stored in the preset delay queue, so that the live broadcast messages are combined.
In a specific embodiment of the present application, taking a live broadcast message M as an example, a host client pushes a singing live broadcast stream to an edge node cluster to generate a singing live broadcast message; and the scheduling server receives the singing live broadcast message and stores the singing live broadcast message into a preset delay queue.
In an actual application, before receiving the target live broadcast message based on a preset delay queue, the method further includes:
receiving at least one live broadcast message, wherein each live broadcast message comprises a push stream cluster identifier and a live broadcast stream identifier;
and adding the at least one live broadcast message to a preset delay queue.
Specifically, at least one live broadcast message is generated based on the push stream of the anchor client, wherein each live broadcast message comprises a push stream cluster identifier and a live broadcast stream identifier, the push stream cluster identifier refers to a field capable of uniquely representing a target edge node cluster, and the live broadcast stream identifier refers to a field capable of uniquely representing a target live broadcast stream, for example, the singing live broadcast message comprises a push stream cluster identifier '1' and a live broadcast stream identifier 'a'; the push stream of different live clients generates a plurality of live messages, namely at least one live message; and the scheduling server stores the received at least one live broadcast message into a preset delay queue.
In a specific embodiment of the present application, taking a host client a and a host client B as examples, the host client a pushes the live stream a to the edge node cluster 1 to generate a live message 1; after the anchor client A infers the live stream a to the edge node cluster 1, the anchor client B infers the live stream B to the center cluster 2 to generate a live message 2; the scheduling server sequentially receives the live broadcast message 1 and the live broadcast message 2, and adds the live broadcast message 1 and the live broadcast message 2 to a preset delay queue according to the receiving order.
In practical application, after the live broadcast message is added to the preset delay queue, the target live broadcast message needs to be acquired from the preset delay queue, and the method for determining the target live broadcast message in the preset delay queue specifically comprises the following steps:
traversing the storage time length of each live message in the preset delay queue;
and taking the live broadcast message with the stored time length being longer than a preset time length threshold value as a target live broadcast message.
The storage time length refers to the total time length of the live broadcast message in the preset delay queue, for example, the storage time of the live broadcast message 1 in the preset queue is 3 seconds; the preset duration threshold is a preset duration, and may be set based on actual requirements, for example, the preset duration threshold is 20 seconds, and in practical application, the preset duration threshold may be adjusted based on a time spent pushing live streams of the edge node to the central cluster as a reference.
By adding the live broadcast messages into the preset delay queue and storing the preset duration threshold, the live broadcast messages in the preset delay queue are subjected to memory alignment, namely, the phenomenon that the same live broadcast stream is transcoded for multiple times when a plurality of concurrent broadcast messages are received is avoided, and the transcoding efficiency is influenced.
Specifically, when the live broadcast message is added to a preset delay queue, recording the storage time length of the live broadcast message in the preset delay queue; and establishing an independent thread to consume the preset delay queue, namely traversing the storage time length corresponding to each live broadcast message in the preset delay queue, taking the live broadcast message with the storage time length corresponding to the live broadcast message exceeding the preset time length threshold as a target live broadcast message under the condition that the storage time length corresponding to the live broadcast message exceeds the preset time length threshold, and taking out the target live broadcast message from the preset delay queue.
In a specific embodiment of the present application, taking a preset delay queue Q as an example, the preset delay queue Q includes a live broadcast message set { live broadcast message 1, live broadcast message 2..live broadcast message n }; traversing the storage time length corresponding to each live broadcast message in the preset delay queue Q, and comparing the storage time length corresponding to each live broadcast message with a preset time length threshold value for 20 seconds; and determining that the storage time length 21 seconds corresponding to the live broadcast message 3 exceeds the preset time length by 20 seconds, and taking the live broadcast message 3 as a target live broadcast message.
Traversing the storage time length corresponding to each live broadcast message in the preset delay queue, determining the storage time length exceeding a preset time length threshold, and taking out the corresponding live broadcast message from the preset delay queue, so that the live broadcast stream corresponding to the target live broadcast message taken out is a relatively stable live broadcast stream, namely, a relatively stable live broadcast stream is pushed in a period of time; and the pushing process of pushing to the edge node or the central cluster is recorded in a preset delay queue in a live broadcast message mode, so that the two types of pushing can be conveniently and uniformly processed at the same time, and the processing efficiency is improved.
In practical application, the live broadcast message added to the preset delay queue may delete the live broadcast message corresponding to the instruction from the preset delay queue when receiving the instruction for stopping the live broadcast stream push or other instruction for stopping the live broadcast stream push, for example, receive the instruction for stopping the live broadcast call, determine the target live broadcast message based on the instruction for stopping the live broadcast call, and delete the target live broadcast message from the preset delay queue.
In practical application, the method for specifically determining the target push stream cluster and the target live stream corresponding to the target live broadcast message comprises the following steps:
determining a push stream cluster identifier and a live stream identifier in the target live broadcast message;
And determining a target push cluster based on the push cluster identifier, and determining a target live stream based on the live stream identifier.
Specifically, the target live broadcast message includes a plug-flow cluster identifier, for example, an identifier "1" of an edge node cluster, an identifier "3" of a center cluster, and the like, and a live broadcast stream identifier, for example, an identifier "5" of a live broadcast stream 5; according to the push cluster identification, a target push cluster corresponding to the target live broadcast message can be determined; and determining the target live stream corresponding to the target live message according to the live stream identification.
In a specific embodiment of the present application, taking a live game message as an example, determining a push cluster identifier "4" and a live broadcast stream identifier "b" in the live game message; and determining a push cluster corresponding to the game live message as a central cluster 4 based on the push cluster identifier 4, and determining a live stream corresponding to the game live message as a live stream b based on the live stream identifier b.
By determining the target push clusters and the target live streams based on the received target live messages, subsequent determination of clusters of transcoded target live streams based on the target push clusters is facilitated.
Step 104: and determining push cluster attribute information based on the target push cluster, wherein the push cluster attribute information comprises cluster type information and a cluster available resource value.
The plug flow cluster attribute information refers to information related to the plug flow clusters, which consists of cluster type information and cluster available resource values; the cluster type information refers to cluster type information, such as a center cluster type, an edge cluster type, and the like; the cluster available resource value refers to the total amount of resources currently available for transcoding tasks in the cluster resources.
Specifically, determining a plug flow cluster identifier of a target plug flow cluster, and acquiring plug flow cluster attribute information corresponding to the plug flow cluster identifier from a cluster attribute information table corresponding to the target plug flow cluster based on the plug flow cluster identifier.
In a specific embodiment of the present application, taking the edge node cluster 1 as an example, based on the push cluster identifier "1" of the edge node cluster 1, the push cluster attribute information corresponding to the push cluster identifier "1" of the edge node cluster 1 is obtained in the cluster attribute information table corresponding to the edge node cluster 1.
In practical application, the specific method for determining the plug-flow cluster attribute information based on the target plug-flow cluster comprises the following steps:
determining cluster type information according to the push cluster identifier;
collecting a cluster available resource value corresponding to the target plug flow cluster;
and the cluster type information and the cluster available resource value form plug-flow cluster attribute information.
Specifically, the push cluster identifier may be a name of a push cluster, for example, an edge node cluster 1, a center cluster 6, or the like, or may be a label of the push cluster, for example, an identifier "1" of the edge node 1, and an identifier "5" of the center cluster; when the push cluster identifier is a push cluster name, the cluster type information can be directly determined based on the push cluster identifier, for example, the cluster type information of the edge node cluster 1 is an edge cluster type; or when the push cluster is identified as a push cluster label, the cluster type attribute value corresponding to the label can be determined in the cluster data table based on the label, so as to determine the cluster type information.
In a specific embodiment of the present application, taking the push cluster identifier 5 as an example, determining a cluster type attribute value "center cluster" corresponding to the push cluster identifier "5" in a cluster data table according to the push cluster identifier "5"; and determining the cluster type information as a central cluster type based on the cluster type attribute value.
In practical application, the current resource use condition of the target push cluster, namely the cluster available resource value, is stored in the resource log corresponding to the target push cluster; by determining the available resource value of the cluster, whether the target push cluster is available for live stream transcoding or not can be determined conveniently based on the numerical value of the available resource value of the cluster.
The push cluster attribute information is determined through the target push cluster, so that the type of the push cluster and the resource use condition are conveniently determined based on the determined push cluster attribute information, and the clusters which can be used for transcoding the target live stream are conveniently determined or scheduled.
Step 106: and determining a target transcoding cluster of the target live stream according to the cluster type information and the cluster available resource value.
After the cluster type information and the cluster available resource value of the target push cluster are determined, whether the target push cluster can process the transcoding task of the target live stream or not can be determined according to the cluster type information and the cluster available resource value.
The target transcoding cluster refers to a cluster for performing transcoding operation on a target instruction.
The specific method for determining the target transcoding cluster of the target live stream according to the cluster type information and the cluster available resource value comprises the following steps:
taking the target plug flow cluster as a target transcoding cluster of the target live stream under the condition that the cluster type information is a central cluster type;
and under the condition that the cluster type information is an edge cluster type, determining a cluster available resource value of the target push cluster, and determining a target transcoding cluster of the target live stream based on the cluster available resource value.
Specifically, the type of the target push cluster can be judged to be a center cluster type or an edge cluster type according to the cluster type information; under the condition that the type of the target push cluster is determined to be the center cluster type, the target push cluster can directly transcode the target live stream; in the case that the type of the target push cluster is determined to be the edge cluster type, a cluster resource available value of the target push cluster needs to be determined, and a target transcoding cluster capable of transcoding the target live stream is determined based on the cluster resource available value.
In a specific embodiment of the present application, taking the central cluster a as an example, if the cluster type information of the central cluster a is determined to be "central cluster type", the central cluster a that receives the target live stream is taken as the target transcoding cluster for transcoding the target live stream.
In another embodiment of the present application, taking the edge node cluster b as an example, determining cluster type information "edge cluster type" of the edge node cluster b, determining a current available cluster resource value of the edge node cluster b, and determining a target transcoding cluster for transcoding the target live stream based on the available cluster resource value.
In practical application, in the case that the cluster type information of the target push cluster is an edge cluster type, a target transcoding cluster for transcoding the target live stream needs to be further determined based on a cluster available resource value, and specifically, the method for determining the target transcoding cluster of the target live stream corresponding to the target live stream based on the cluster available resource value includes:
Under the condition that the available resource value of the cluster is larger than a preset available resource value, taking the target push cluster as a target transcoding cluster of the target live stream;
and under the condition that the available resource value of the cluster is smaller than or equal to a preset available resource value, a live stream pushing instruction is sent to the target push cluster, so that the target push cluster pushes the target live stream to a current push cluster of a central cluster type.
The preset available resource value refers to a preset resource value threshold, and when the available resource value of the cluster is larger than the preset available resource value, the target push cluster is determined to be sufficient in resources and can receive the transcoding task of the target live stream, and when the available resource value of the cluster is smaller than or equal to the preset available resource value, the target push cluster is determined to be incapable of receiving the transcoding task of the target live stream; the live stream push instruction refers to an instruction for pushing a target live stream in the edge node cluster to a current push cluster of a central cluster type.
Specifically, whether the target push cluster can receive a transcoding task for the target live stream is determined by judging whether the cluster available resource value of the target push cluster of the edge cluster type is larger than a preset available resource value; and under the condition that the available resource value of the target push cluster is not required, the target push cluster can be pushed to the current push cluster of the central cluster type, so that the cluster for transcoding the target live stream is determined.
In a specific embodiment of the present application, an edge node cluster a is used to obtain that a cluster available resource value of the edge node cluster a is 10 and is smaller than a preset available resource value 20, and then a scheduling server sends a live stream forwarding instruction to the edge node cluster a, so that the live stream a received by the edge node cluster a is forwarded to a central cluster c.
In practical application, in the process of receiving a live stream pushing instruction and pushing the live stream of the edge node cluster to the center cluster in response to the instruction, a live stream message is generated and stored in a preset delay queue; specifically, after the live stream push command is sent to the target push cluster, the method further includes:
and receiving a current live broadcast message, and adding the current live broadcast message to the preset delay queue, wherein the current live broadcast message is generated based on the current push cluster of which the target live broadcast stream is pushed to a center cluster type.
The current live message refers to a live message generated in the live stream pushing process.
In a specific embodiment of the present application, taking an edge node cluster b as an example, the edge node cluster b receives a live stream forwarding instruction, determines a center cluster e of a center cluster type in response to the live stream forwarding instruction, and forwards a live stream 3 corresponding to the edge node cluster b to the center cluster e to generate a live stream message; and the scheduling server receives the live broadcast message and stores the live broadcast message into a preset delay queue.
In practical application, before adding the target live broadcast message into the preset delay queue, whether the target live broadcast message corresponding to the target live broadcast stream exists in the preset delay queue or not can be judged based on the target live broadcast message; if not, adding the target live broadcast message into a preset delay queue; if yes, the target live broadcast message is ignored, and the push stream cluster identification in the target live broadcast message is recorded to a preset delay queue.
In a specific embodiment of the present application, taking live broadcast message 1 as an example, live broadcast message 1 includes push stream cluster identifier a and live stream identifier 1; the edge node cluster a corresponding to the push cluster identifier a receives the live stream push instruction, pushes the live stream 1 corresponding to the live stream identifier 1 to the edge node cluster b, and generates a live stream message 2; the scheduling server receives the live broadcast message 2, compares the live broadcast message 2 with live broadcast messages in a preset delay queue, determines that the live broadcast message 1 and the live broadcast message 2 are both live broadcast streams 1 corresponding to each other, modifies a push cluster identifier a in the live broadcast message 1 into a push cluster identifier b, and does not add the live broadcast message 2 to the preset delay queue.
In an actual application, after the current live broadcast message is added to the preset delay queue, the method further includes:
Acquiring the current live broadcast message under the condition that the storage time of the current live broadcast message in the preset delay queue exceeds a preset time threshold;
determining a current plug-flow cluster corresponding to the current live broadcast message based on the current live broadcast message;
and taking the current plug-flow cluster of the center cluster type as a target transcoding cluster of the target live stream.
Specifically, a current live broadcast message is generated by acquiring a push stream based on a target push stream cluster in a preset delay queue, and the current push stream cluster is determined based on an inference cluster identifier in the current live broadcast message; because the current push cluster is a cluster of a central cluster type, the current push cluster can transcode the target live stream received by the current push cluster, namely a transcoding task for transcoding the target live stream can be received.
According to the transcoding task scheduling method, a target live broadcast message is received, and a target push stream cluster and a target live broadcast stream corresponding to the target live broadcast message are determined; determining push cluster attribute information based on the target push cluster, wherein the push cluster attribute information comprises cluster type information and a cluster available resource value; and determining a target transcoding cluster of the target live stream according to the cluster type information and the cluster available resource value. According to the method and the device, the target live broadcast message is received to determine the live stream to be transcoded and the cluster storing the live stream to be transcoded, so that the task to be transcoded can be determined conveniently under the condition that the cluster type is not considered; and determining a cluster for transcoding the live stream to be transcoded according to the attribute information of the cluster storing the live stream to be transcoded, so that a target transcoding cluster for transcoding the live stream to be transcoded is determined based on the actual situation of the transcoding cluster, and the transcoding efficiency is improved.
The following describes, with reference to fig. 2, an example of application of the transcoding task scheduling method provided by the present application to the edge node cluster a, where the transcoding task scheduling method is further described. Fig. 2 is a process flow diagram of a transcoding task scheduling method applied to an edge node a according to an embodiment of the present application; the method specifically comprises the following steps:
step 202: and receiving the live broadcast message and adding the live broadcast message to a preset delay queue.
In a specific embodiment of the present application, taking an edge node cluster a as an example, a hosting client pushes a live stream 1 to the edge node cluster a to generate a live broadcast message 1, where the live broadcast message 1 includes a push cluster identifier "a" and a live stream identifier "1"; the scheduling server receives the live broadcast message 1 and adds the live broadcast message 1 to a preset delay queue.
Step 204: traversing a preset delay queue, determining target live broadcast messages in the preset delay queue, and determining target push stream clusters and target live broadcast streams corresponding to the target live broadcast messages.
In a specific embodiment of the present application, the above example is used to traverse the storage duration corresponding to each live message in the preset delay queue; and under the condition that the storage time length 21 seconds corresponding to the live broadcast message 1 is greater than the preset time length threshold value 21 seconds, taking out the live broadcast message 1 from the preset queue.
Step 206: and judging whether the target live stream corresponding to the target live message can be transcoded only by the central cluster, if so, executing step 208, and if not, executing step 210.
In practical application, there may be a case that a part of live streams generated in the live broadcasting room can only be transcoded by the central cluster, in this case, the live streams can be transcoded directly by the central cluster, and further judgment can be performed on the live streams which can be transcoded by the central cluster and also by the edge cluster.
In a specific embodiment of the present application, following the above example, if it is determined that the live stream 1 corresponding to the live message 1 may not be transcoded only by the central cluster, then step 210 is continuously performed.
Step 208: and judging whether the cluster type of the target plug flow cluster corresponding to the target live broadcast message is an edge cluster type, if so, executing step 212, and if not, executing step 210.
In a specific embodiment of the present application, along the above example, cluster type information "edge cluster type" of the edge node cluster a is obtained, and based on the cluster type information, it is determined that the edge node cluster a corresponding to the target live broadcast message is the edge cluster type, and step 212 is continuously executed.
Step 210: determining a current push cluster, and judging whether the current push cluster contains the target live stream, if yes, executing step 214, and if not, executing step 216.
In a specific embodiment of the present application, in the above example, when the edge node cluster a cannot process the transcoding task of the live stream 1, a central cluster is allocated to the live stream 1 to receive the transcoding task of the live stream 1; if it is determined that the live stream 1 is not included in the central cluster, step 216 is performed.
Step 212: judging whether the cluster available resource value of the target push cluster corresponding to the target live broadcast message is larger than a preset available resource value, if so, executing step 218, and if not, executing step 210.
In a specific embodiment of the present application, along the above example, the current available resource value 10 of the edge node cluster a is obtained, and the current available resource value 10 of the edge node cluster a is compared with the preset available resource value 20 to determine that the available resource value of the cluster of the edge node cluster a is smaller than the preset available resource value, and step 210 is continuously executed.
Step 214: and receiving a transcoding task aiming at the target live stream by the current push stream cluster, and transcoding the target live stream.
In a specific embodiment of the present application, if the center cluster does not include the live stream 1 in the above example, the live stream pushing instruction is sent to the edge node cluster a, and the edge node cluster a pushes the live stream 1 to the center cluster in response to the live stream pushing instruction, so as to generate a current live broadcast message; the scheduling server receives the current live broadcast message and stores the current live broadcast message into a preset delay queue; and acquiring the current live broadcast message in a preset delay queue, and determining that the center cluster is used for transcoding the live broadcast stream 1 based on the current live broadcast message.
Step 216: and sending a live stream push instruction to the target push cluster.
In a specific embodiment of the present application, following the above example, a central cluster is allocated to the live stream 1 under the condition that the edge node a cannot receive the transcoding task of the live stream 1, and if it is determined that the central cluster does not include the live stream 1, a live stream push instruction is generated and sent to the edge node cluster a.
Step 218: and transcoding the target live stream by the target push stream cluster aiming at the transcoding task of the target live stream.
According to the transcoding task scheduling method, the live stream 1 to be transcoded and the edge node cluster a storing the live stream to be transcoded are determined by receiving the target live message, so that the task to be transcoded of the live stream 1 can be determined conveniently under the condition that the cluster type is not considered; and determining a target transcoding cluster for transcoding the live stream 1 to be transcoded according to the attribute information of the edge node cluster a, so as to determine the transcoding cluster for transcoding the live stream 1 to be transcoded based on the actual condition of the cluster, and further improve the transcoding efficiency.
Corresponding to the method embodiment, the application also provides an embodiment of a transcoding task scheduling device, and fig. 3 shows a schematic structural diagram of the transcoding task scheduling device according to an embodiment of the application. As shown in fig. 3, the apparatus includes:
A receiving module 302, configured to receive a target live broadcast message, and determine a target push stream cluster and a target live broadcast stream corresponding to the target live broadcast message;
a first determining module 304 configured to determine push cluster attribute information based on the target push cluster, where the push cluster attribute information includes cluster type information and a cluster available resource value;
a second determining module 306 is configured to determine a target transcoding cluster of the target live stream based on the cluster type information and the cluster available resource value.
In one embodiment of the present application, the receiving module 302 is further configured to:
and receiving the target live broadcast message based on a preset delay queue.
Optionally, the receiving module 302 is further configured to:
receiving at least one live broadcast message, wherein each live broadcast message comprises a push stream cluster identifier and a live broadcast stream identifier;
and adding the at least one live broadcast message to a preset delay queue.
Optionally, the receiving module 302 is further configured to:
traversing the storage time length of each live message in the preset delay queue;
and taking the live broadcast message with the stored time length being longer than a preset time length threshold value as a target live broadcast message.
Optionally, the receiving module 302 is further configured to:
determining a push stream cluster identifier and a live stream identifier in the target live broadcast message;
and determining a target push cluster based on the push cluster identifier, and determining a target live stream based on the live stream identifier.
Optionally, the first determining module 304 is further configured to:
determining cluster type information according to the push cluster identifier;
collecting a cluster available resource value corresponding to the target plug flow cluster;
and the cluster type information and the cluster available resource value form plug-flow cluster attribute information.
Optionally, the second determining module 306 is further configured to:
taking the target plug flow cluster as a target transcoding cluster of the target live stream under the condition that the cluster type information is a central cluster type;
and under the condition that the cluster type information is an edge cluster type, determining a cluster available resource value of the target push cluster, and determining a target transcoding cluster of the target live stream based on the cluster available resource value.
Optionally, the second determining module 306 is further configured to: :
under the condition that the available resource value of the cluster is larger than a preset available resource value, taking the target push cluster as a target transcoding cluster of the target live stream;
And under the condition that the available resource value of the cluster is smaller than or equal to a preset available resource value, a live stream pushing instruction is sent to the target push cluster, so that the target push cluster pushes the target live stream to a current push cluster of a central cluster type.
Optionally, the second determining module 306 is further configured to:
and receiving a current live broadcast message, and adding the current live broadcast message to the preset delay queue, wherein the current live broadcast message is generated based on the current push cluster of which the target live broadcast stream is pushed to a center cluster type.
Optionally, the second determining module 306 is further configured to:
acquiring the current live broadcast message under the condition that the storage time of the current live broadcast message in the preset delay queue exceeds a preset time threshold;
determining a current plug-flow cluster corresponding to the current live broadcast message based on the current live broadcast message;
and taking the current plug-flow cluster of the center cluster type as a target transcoding cluster of the target live stream.
The transcoding task scheduling processing device comprises a receiving module, a target live broadcast message receiving module and a target push stream cluster and a target live broadcast stream corresponding to the target live broadcast message determining module; the first determining module is used for determining push cluster attribute information based on the target push cluster, wherein the push cluster attribute information comprises cluster type information and a cluster available resource value; and the second determining module is used for determining a target transcoding cluster of the target live stream according to the cluster type information and the cluster available resource value. According to the transcoding task scheduling processing device, the target live broadcast message is received to determine the live stream to be transcoded and the cluster storing the live stream to be transcoded, so that the task to be transcoded can be determined conveniently under the condition that the cluster type is not considered; and determining a cluster for transcoding the live stream to be transcoded according to the attribute information of the cluster storing the live stream to be transcoded, so that a target transcoding cluster for transcoding the live stream to be transcoded is determined based on the actual situation of the transcoding cluster, and the transcoding efficiency is improved.
The foregoing is a schematic solution of a transcoding task scheduling device of this embodiment. It should be noted that, the technical solution of the transcoding task scheduling device and the technical solution of the above transcoding task scheduling method belong to the same concept, and details of the technical solution of the transcoding task scheduling device, which are not described in detail, can be referred to the description of the technical solution of the above transcoding task scheduling method.
Fig. 4 illustrates a block diagram of a computing device 400 provided in accordance with an embodiment of the present application. The components of the computing device 400 include, but are not limited to, a memory 410 and a processor 420. Processor 420 is coupled to memory 410 via bus 430 and database 450 is used to hold data.
Computing device 400 also includes access device 440, access device 440 enabling computing device 400 to communicate via one or more networks 460. Examples of such networks include the Public Switched Telephone Network (PSTN), a Local Area Network (LAN), a Wide Area Network (WAN), a Personal Area Network (PAN), or a combination of communication networks such as the internet. The access device 440 may include one or more of any type of network interface, wired or wireless (e.g., a Network Interface Card (NIC)), such as an IEEE802.11 Wireless Local Area Network (WLAN) wireless interface, a worldwide interoperability for microwave access (Wi-MAX) interface, an ethernet interface, a Universal Serial Bus (USB) interface, a cellular network interface, a bluetooth interface, a Near Field Communication (NFC) interface, and so forth.
In one embodiment of the application, the above-described components of computing device 400, as well as other components not shown in FIG. 4, 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. 4 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 400 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 400 may also be a mobile or stationary server.
Wherein the processor 420 implements the steps of the transcoding task scheduling method when executing the computer instructions.
The foregoing is a schematic illustration of a computing device of this embodiment. It should be noted that, the technical solution of the computing device and the technical solution of the above-mentioned transcoding task scheduling 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 above-mentioned transcoding task scheduling 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 a transcoding task scheduling method as previously described.
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 above-mentioned transcoding task scheduling 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 above-mentioned transcoding task scheduling 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 (11)

1. A method for scheduling transcoding tasks, comprising:
receiving a target live broadcast message, and determining a target push stream cluster and a target live broadcast stream corresponding to the target live broadcast message;
determining push cluster attribute information based on the target push cluster, wherein the push cluster attribute information comprises cluster type information of the target push cluster and a cluster available resource value of the target push cluster;
taking the target plug flow cluster as a target transcoding cluster of the target live stream under the condition that the cluster type information is a central cluster type; and under the condition that the cluster type information is of an edge cluster type, determining a cluster available resource value of the target push cluster, taking the target push cluster as a target transcoding cluster of the target live stream under the condition that the cluster available resource value is larger than a preset available resource value, and sending a live stream push instruction to the target push cluster under the condition that the cluster available resource value is smaller than or equal to the preset available resource value, so that the target push cluster pushes the target live stream to a current push cluster of a central cluster type, and taking the current push cluster as a target transcoding cluster of the target live stream.
2. The transcoding task scheduling method of claim 1, wherein receiving the target live message comprises:
and receiving the target live broadcast message based on a preset delay queue.
3. The transcoding task scheduling method of claim 2, further comprising, before receiving the target live message based on a preset delay queue:
receiving at least one live broadcast message, wherein each live broadcast message comprises a push stream cluster identifier and a live broadcast stream identifier;
and adding the at least one live broadcast message to a preset delay queue.
4. The transcoding task scheduling method of claim 2, wherein receiving the target live message based on a preset delay queue comprises:
traversing the storage time length of each live message in the preset delay queue;
and taking the live broadcast message with the stored time length being longer than a preset time length threshold value as a target live broadcast message.
5. The method for scheduling transcoding tasks of claim 1, wherein determining a target push cluster and a target live stream corresponding to the target live message comprises:
determining a push stream cluster identifier and a live stream identifier in the target live broadcast message;
And determining a target push cluster based on the push cluster identifier, and determining a target live stream based on the live stream identifier.
6. The method of transcoding task scheduling of claim 5, wherein determining plug cluster attribute information based on the target plug cluster comprises:
determining cluster type information according to the push cluster identifier;
collecting a cluster available resource value corresponding to the target plug flow cluster;
and the cluster type information and the cluster available resource value form plug-flow cluster attribute information.
7. The method for scheduling transcoding tasks as claimed in claim 1, further comprising, after sending a live stream push command to the target push cluster:
and receiving a current live broadcast message, and adding the current live broadcast message to a preset delay queue, wherein the current live broadcast message is generated based on the current push cluster of which the target live broadcast stream is pushed to a center cluster type.
8. The transcoding task scheduling method of claim 7, further comprising, after adding the current live message to the preset delay queue:
acquiring the current live broadcast message under the condition that the storage time of the current live broadcast message in the preset delay queue exceeds a preset time threshold;
Determining a current plug-flow cluster corresponding to the current live broadcast message based on the current live broadcast message;
and taking the current plug-flow cluster of the center cluster type as a target transcoding cluster of the target live stream.
9. A transcoding task scheduler, comprising:
the receiving module is configured to receive the target live broadcast message and determine a target push stream cluster and a target live broadcast stream corresponding to the target live broadcast message;
the first determining module is configured to determine push cluster attribute information based on the target push cluster, wherein the push cluster attribute information comprises cluster type information of the target push cluster and a cluster available resource value of the target push cluster;
the second determining module is configured to take the target push stream cluster as a target transcoding cluster of the target live stream under the condition that the cluster type information is a central cluster type; determining a cluster available resource value of the target plug-flow cluster under the condition that the cluster type information is an edge cluster type; under the condition that the available resource value of the cluster is larger than a preset available resource value, taking the target push cluster as a target transcoding cluster of the target live stream; and under the condition that the available resource value of the cluster is smaller than or equal to a preset available resource value, a live stream pushing instruction is sent to the target push cluster, so that the target push cluster pushes the target live stream to a current push cluster of a central cluster type.
10. 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-8.
11. 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-8.
CN202111368187.7A 2021-11-18 2021-11-18 Transcoding task scheduling method and device Active CN113891114B (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202111368187.7A CN113891114B (en) 2021-11-18 2021-11-18 Transcoding task scheduling method and device

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202111368187.7A CN113891114B (en) 2021-11-18 2021-11-18 Transcoding task scheduling method and device

Publications (2)

Publication Number Publication Date
CN113891114A CN113891114A (en) 2022-01-04
CN113891114B true CN113891114B (en) 2023-12-15

Family

ID=79018245

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202111368187.7A Active CN113891114B (en) 2021-11-18 2021-11-18 Transcoding task scheduling method and device

Country Status (1)

Country Link
CN (1) CN113891114B (en)

Families Citing this family (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN114679593B (en) * 2022-02-09 2023-09-22 上海哔哩哔哩科技有限公司 Live broadcast transcoding processing method, device and system
CN114679604B (en) * 2022-04-11 2023-12-19 上海哔哩哔哩科技有限公司 Resource processing method and device
CN115278281A (en) * 2022-07-20 2022-11-01 上海哔哩哔哩科技有限公司 Live broadcast quality guarantee method and device, computing equipment and storage medium

Citations (12)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101626385A (en) * 2009-08-10 2010-01-13 中兴通讯股份有限公司 Media service method and media service system
CN103686207A (en) * 2013-12-04 2014-03-26 乐视网信息技术(北京)股份有限公司 Transcoding task scheduling method and system
CN104717517A (en) * 2015-03-31 2015-06-17 北京奇艺世纪科技有限公司 Scheduling method and scheduling device for video transcoding task
CN105516347A (en) * 2015-12-31 2016-04-20 浙江大华***工程有限公司 Method and device for load balance allocation of streaming media server
CN105871808A (en) * 2015-12-14 2016-08-17 乐视云计算有限公司 Method and device for transcoding live video
CN106488263A (en) * 2016-10-24 2017-03-08 北京小米移动软件有限公司 Push the method and device of live broadcast stream media data
CN107295110A (en) * 2017-08-16 2017-10-24 网宿科技股份有限公司 Processing method, fringe node, service server and the system of calculating task
CN109951716A (en) * 2019-03-26 2019-06-28 北京达佳互联信息技术有限公司 A kind of main broadcaster's dispatching method, device, electronic equipment and readable storage medium storing program for executing
CN110213603A (en) * 2019-05-22 2019-09-06 腾讯科技(深圳)有限公司 A kind of live stream transmission method, device, server, system and storage medium
CN110719318A (en) * 2019-09-06 2020-01-21 上海陆家嘴国际金融资产交易市场股份有限公司 Message processing method and system
CN111262906A (en) * 2020-01-08 2020-06-09 中山大学 Method for unloading mobile user terminal task under distributed edge computing service system
CN113038191A (en) * 2021-02-26 2021-06-25 北京百度网讯科技有限公司 Live stream scheduling method and device, electronic equipment and readable storage medium

Patent Citations (12)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101626385A (en) * 2009-08-10 2010-01-13 中兴通讯股份有限公司 Media service method and media service system
CN103686207A (en) * 2013-12-04 2014-03-26 乐视网信息技术(北京)股份有限公司 Transcoding task scheduling method and system
CN104717517A (en) * 2015-03-31 2015-06-17 北京奇艺世纪科技有限公司 Scheduling method and scheduling device for video transcoding task
CN105871808A (en) * 2015-12-14 2016-08-17 乐视云计算有限公司 Method and device for transcoding live video
CN105516347A (en) * 2015-12-31 2016-04-20 浙江大华***工程有限公司 Method and device for load balance allocation of streaming media server
CN106488263A (en) * 2016-10-24 2017-03-08 北京小米移动软件有限公司 Push the method and device of live broadcast stream media data
CN107295110A (en) * 2017-08-16 2017-10-24 网宿科技股份有限公司 Processing method, fringe node, service server and the system of calculating task
CN109951716A (en) * 2019-03-26 2019-06-28 北京达佳互联信息技术有限公司 A kind of main broadcaster's dispatching method, device, electronic equipment and readable storage medium storing program for executing
CN110213603A (en) * 2019-05-22 2019-09-06 腾讯科技(深圳)有限公司 A kind of live stream transmission method, device, server, system and storage medium
CN110719318A (en) * 2019-09-06 2020-01-21 上海陆家嘴国际金融资产交易市场股份有限公司 Message processing method and system
CN111262906A (en) * 2020-01-08 2020-06-09 中山大学 Method for unloading mobile user terminal task under distributed edge computing service system
CN113038191A (en) * 2021-02-26 2021-06-25 北京百度网讯科技有限公司 Live stream scheduling method and device, electronic equipment and readable storage medium

Also Published As

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

Similar Documents

Publication Publication Date Title
CN113891114B (en) Transcoding task scheduling method and device
CN109819021B (en) Business background and method for asynchronously processing business request
EP3255849A1 (en) Multi-channel communications for sending push notifications to mobile devices
CN112486074B (en) Data processing system, method and device
CN113891175B (en) Live broadcast push flow method, device and system
US11210014B2 (en) Method and apparatus for processing I/O information of data, method and apparatus for analyzing I/O information of data, and related devices
CN112600878B (en) Data transmission method and device
CN114679604B (en) Resource processing method and device
CN112003976B (en) Hard-coding and hard-decoding test method and device
CN111541555A (en) Group chat optimization method and related product
CN111240858A (en) Event scheduling method and component
CN114064275A (en) Data processing method and device
CN112752113A (en) Method and device for determining abnormal factors of live broadcast server
CN115599744A (en) File transcoding method and device, storage medium and electronic device
CN111539281B (en) Distributed face recognition method and system
CN111417001B (en) Video transmission method, device, server and storage medium
CN114866790B (en) Live stream scheduling method and device
CN111833478A (en) Data processing method, device, terminal and storage medium
CN112860431B (en) Connection method, system, equipment and storage medium of micro service node
CN114501053A (en) Live stream acquisition method and device
CN114745564A (en) Service scheduling method and device
CN112596933A (en) Micro-service system based on message event communication
CN115242735B (en) Real-time voice stream slice analysis method, system and computer equipment
CN117076057B (en) AI service request scheduling method, device, equipment and medium
CN113747100B (en) Audio and video call method and device, storage medium and electronic equipment

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