CN114979677B - Video live broadcast method, device and computer readable storage medium - Google Patents

Video live broadcast method, device and computer readable storage medium Download PDF

Info

Publication number
CN114979677B
CN114979677B CN202110204618.XA CN202110204618A CN114979677B CN 114979677 B CN114979677 B CN 114979677B CN 202110204618 A CN202110204618 A CN 202110204618A CN 114979677 B CN114979677 B CN 114979677B
Authority
CN
China
Prior art keywords
platform
video stream
client
primary
indication information
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
CN202110204618.XA
Other languages
Chinese (zh)
Other versions
CN114979677A (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.)
China United Network Communications Group Co Ltd
Original Assignee
China United Network Communications Group 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 China United Network Communications Group Co Ltd filed Critical China United Network Communications Group Co Ltd
Priority to CN202110204618.XA priority Critical patent/CN114979677B/en
Publication of CN114979677A publication Critical patent/CN114979677A/en
Application granted granted Critical
Publication of CN114979677B publication Critical patent/CN114979677B/en
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/20Servers specifically adapted for the distribution of content, e.g. VOD servers; Operations thereof
    • H04N21/21Server components or server architectures
    • H04N21/218Source of audio or video content, e.g. local disk arrays
    • H04N21/2187Live feed
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/20Servers specifically adapted for the distribution of content, e.g. VOD servers; Operations thereof
    • H04N21/21Server components or server architectures
    • H04N21/222Secondary servers, e.g. proxy server, cable television Head-end
    • H04N21/2223Secondary servers, e.g. proxy server, cable television Head-end being a public access point, e.g. for downloading to or uploading from clients

Abstract

The embodiment of the application provides a video live broadcast method and device. The method comprises the following steps: a first platform in the at least one secondary platform receives a video stream from a host client, the host client being a host client within a service area of the first platform, and the first platform being a platform for which the primary platform is allocated from the at least one secondary platform; the first platform distributes the video stream to a viewer client of the video stream. Based on the method, the secondary platform is deployed on the edge cloud, and can be accessed into the primary platform through a private line of a network operator, so that the link quality is stable. Therefore, in the uplink transmission of the video stream, the part of links with unstable quality is shortened, and the transmission hops are reduced, so that the problem of unstable quality of live video is relieved.

Description

Video live broadcast method, device and computer readable storage medium
Technical Field
The present disclosure relates to the field of communications, and more particularly, to a live video broadcast method and apparatus.
Background
Under the push of the fifth generation (5th generation,5G) communication technology, live video enters a new and rapidly developing state. In general, a video stream one-time push method is adopted in a video live broadcast process, a video stream of a main broadcasting client is pushed to a live broadcast server of an area or provincial core cloud, and then the live broadcast server pushes the video stream to a plurality of watching side clients.
However, the quality of current live video is not stable yet. In the live video broadcast process, the problems of, for example, play blocking, video picture screen display, larger time delay, low video definition, asynchronous audio and video play, unclear voice, intermittent and the like easily occur, and the viewer experience is poor.
Disclosure of Invention
The embodiment of the application provides a video live broadcast method and device for relieving the problem of unstable video live broadcast quality, so that user experience of a viewer is improved.
In a first aspect, the present application provides a live video broadcasting method, applied to a communication system including a primary platform and at least one secondary platform, where the at least one secondary platform is deployed in an edge cloud, the at least one secondary platform belongs to at least one network operator, each secondary platform in the at least one secondary platform accesses the primary platform through a dedicated line of the network operator, and the primary platform is converged with dedicated line access of the at least one network operator; the method comprises the following steps:
a first platform of the at least one secondary platform receives a video stream from a host client, the host client being a host client within a service area of the secondary platform, and the first platform being a platform of the primary platform allocated from the at least one secondary platform for the host client;
The first platform distributes the video stream to a viewer client of the video stream.
Based on the scheme, the first platform receives the video stream from the anchor client, and distributes the video stream to the viewer client. Therefore, in the uplink transmission of the video stream, the part of links with unstable quality is shortened, and the transmission hops are reduced, so that the problem of unstable quality of live video is relieved.
Optionally, the first platform distributes the video stream to a viewer client of the video stream, including: the first platform distributes the video stream to a viewer client of the video stream within a service area of the first platform; and/or
The first platform sends the video stream to the primary platform for distribution by the primary platform to a viewer client of the video stream outside of the service area of the first platform.
In a second aspect, the present application provides a live video broadcasting method, applied to a communication system including a primary platform and at least one secondary platform, where the at least one secondary platform is deployed in an edge cloud, the at least one secondary platform belongs to at least one network operator, each secondary platform in the at least one secondary platform accesses the primary platform through a private line of the network operator, and the primary platform is converged and accessed by the private line of the at least one network operator; the method further comprises the steps of:
The primary platform receives a video stream from a first platform, wherein the video stream is sent to the first platform by a host client, and the first platform is a platform distributed by the primary platform from the at least one secondary platform for the host client;
the primary platform distributes the video stream to a viewer client of the video stream.
Based on the scheme, the primary platform receives the video stream from the first platform, and as each secondary platform in at least one secondary platform is connected to the primary platform through the private line of the network operator, the data transmission from the first platform to the primary platform is relatively stable, so that the problem of unstable live video quality can be relieved.
Optionally, the primary platform distributes the video stream to a viewer client of the video stream, including: the primary platform sends the video stream to a client side of a watching side of the video stream in a service area; and/or
The primary platform sends the video stream to a next-stage distribution platform for forwarding the video stream by the next-stage distribution platform to a viewer client of the video stream outside a service area of the primary platform.
Optionally, the method further comprises: the primary platform determining the first platform for the anchor client from the at least one secondary platform according to an internet protocol (internet protocol, IP) address of the anchor client;
the primary platform sends first indication information to the anchor client, wherein the first indication information is used for indicating the first platform.
Optionally, the method further comprises:
the primary platform determines a standby secondary platform for the anchor client;
and the primary platform sends second indication information to the anchor client, wherein the second indication information is used for indicating the standby secondary platform.
In a third aspect, the present application provides a live video broadcasting method, applied to a communication system including a primary platform and at least one secondary platform, where the at least one secondary platform is deployed in an edge cloud, the at least one secondary platform belongs to at least one network operator, each secondary platform in the at least one secondary platform accesses the primary platform through a dedicated line of the network operator, and the primary platform aggregates dedicated line accesses of the at least one network operator;
The method comprises the following steps:
the method comprises the steps that a host client receives indication information from a primary platform, wherein the indication information is used for indicating a secondary platform distributed for the host client;
and the anchor client transmits the video stream to the secondary platform indicated by the indication information.
Based on the scheme, the primary platform can distribute the secondary platform (such as the first platform) closest to the position of the anchor client to the anchor client according to the IP address information of the anchor client, and the anchor client sends the video stream to the first platform distributed by the primary platform, so that in the uplink transmission of the video stream, the part of links with unstable quality is shortened, the transmission hop number is reduced, and the problem of unstable quality of video live broadcast caused by the fact that the transmission hop number is multiple is solved.
In a fourth aspect, a video live device is provided, comprising a module or unit for implementing the video live method described in any one of the first to third aspects and the first to third aspects. It will be understood that each module or unit may implement a corresponding function by executing a computer program.
In a fifth aspect, a live video apparatus is provided, comprising a processor configured to perform the live video method of any of the first to third aspects and the first to third aspects.
The apparatus may also include a memory to store instructions and data. The memory is coupled to the processor, and the processor, when executing instructions stored in the memory, may implement the methods described in the first to third aspects above. The apparatus may also include a communication interface for the apparatus to communicate with other devices, which may be, for example, a transceiver, circuit, bus, module, or other type of communication interface.
In a sixth aspect, there is provided a computer readable storage medium comprising instructions which, when run on a computer, cause the computer to implement the method of any one of the first to third aspects and the first to third aspects.
In a seventh aspect, there is provided a computer program product comprising: a computer program (which may also be referred to as code, or instructions) which, when executed, causes a computer to perform the method of any of the first to third aspects and the first to third aspects.
It should be understood that, the fourth to seventh aspects of the present application correspond to the technical solutions of the first to third aspects of the present application, and the advantages obtained by each aspect and the corresponding possible embodiments are similar, and are not repeated.
Drawings
Fig. 1 is a network architecture of a live video method according to an embodiment of the present application;
fig. 2 is a schematic diagram of a specific application scenario suitable for the video live broadcast method provided in the embodiment of the present application;
fig. 3 is a schematic flowchart of a live video method provided in an embodiment of the present application;
fig. 4 is a business interaction flow chart of a hosting client provided in an embodiment of the present application;
fig. 5 is a business interaction flow chart of a viewer client provided in an embodiment of the present application;
FIG. 6 is a flow chart of TCP interactions from a hosting client to a primary platform provided by an embodiment of the present application;
fig. 7 is a schematic block diagram of a live video device provided in an embodiment of the present application;
fig. 8 is a schematic block diagram of a live video device provided in an embodiment of the present application.
Detailed Description
The technical solutions in the present application will be described below with reference to the accompanying drawings.
With the development of 5G communication technology, the quality requirement of users on live video is also higher and higher. For example, in video conference, online video education, live video broadcast of an e-commerce platform, and the like, users want to receive video with clear, smooth and clear voice in a small amount of time.
In general, a video live broadcasting method is that a video stream is pushed to a live broadcasting server by a main broadcasting client, and then is distributed to a client of a viewer by the live broadcasting server. Wherein, the live broadcast server is generally deployed based on a physical machine, and one to two live broadcast servers are generally deployed in one province. For a hosting client, the direction from the hosting client to the live server belongs to the upstream direction of the live broadcast, and typically, the bandwidth in the upstream direction is smaller than the bandwidth in the downstream direction. Since the data flow from the anchor client to the viewer client is relatively large and belongs to the live upstream direction, any failure and quality problem of the link from the anchor client to the live server will affect all the viewer clients. In addition, the data transmission from the anchor client to the live broadcast server belongs to air interface transmission, the distance of the air interface transmission is long, the routing is needed, and the hop count of forwarding is also more. Therefore, the uplink quality of the anchor client is affected by insufficient uplink bandwidth, more transmission hops, unstable quality such as time delay, jitter, packet loss and the like, so that the quality of the live video is poor.
The embodiment of the application provides a video live broadcast method, wherein a secondary platform is deployed on a convergence edge cloud, a host client can send a video stream to the secondary platform, then the secondary platform sends the video stream to a watching side client in a service area of the secondary platform, or the secondary platform sends the video stream to a primary platform, and then the primary platform distributes the video stream to the watching side client. The data transmission from the secondary platform to the primary platform is through a dedicated line of a network operator, so that the main failure risk of the uplink is gathered to the link between the anchor client and the secondary platform. The secondary platform is close to the anchor client, so that the uplink with unstable quality is shortened, the number of transmission hops is reduced, the problems of time delay, jitter, packet loss and the like are also reduced to a certain extent due to the shortening of the unstable link, and video streams from different live clients are shunted to different secondary platforms, so that the problem of insufficient uplink bandwidth is solved. Therefore, the problem of unstable quality of live video can be relieved, and user experience is further improved.
In order to facilitate understanding of the embodiments of the present application, a communication system suitable for the live video method of the embodiments of the present application will be described in detail with reference to fig. 1. As shown in fig. 1, the communication system 100 may include: a primary platform 110, at least one secondary platform 121, 122, and 123, a anchor client 130, and at least one viewer client 141, 142, and 143.
The secondary platforms 121 to 123 are all next-stage platforms of the primary platform 110, and may be deployed in an edge cloud, and are closer to the anchor client 130 than the primary platform 110. The secondary platforms 121 to 123 may access the primary platform 110 through a private line of a network operator to achieve data interaction. The secondary platforms 121, 122 and 123 may be secondary platforms in the same converged edge cloud pool or secondary platforms in different converged edge cloud pools. For example, secondary platforms 121 and 122 may be secondary platforms within the same converged edge cloud pool, and secondary platform 122 may be a standby secondary platform for secondary platform 121. The secondary platform 123 may be a secondary platform in the converged edge cloud pool, or may be a secondary platform in another converged edge cloud pool. The embodiments of the present application are not limited in this regard.
The anchor client 130 may implement data interaction in a service area of a secondary platform (e.g., the secondary platform 121) through a mobile network, a fixed network, and the like.
The viewer client 141 may also be within the service area of the secondary platform 121, so the secondary platform 121 may directly send the video stream pushed by the anchor client 130 to the viewer client 141. The viewer client 142 may not be within the service area of the secondary platform 121, but within the service area of the secondary platform 123, so the secondary platform 121 may push the video stream to the secondary platform 123, which in turn, may send the video stream to the viewer client 142 by the secondary platform 123. The viewer client 143 may not be within the service area of any of the secondary platforms 121 to 123, but within the service area of the primary platform 110. The secondary platform 121 may push the video stream to the primary platform 110, which is then sent by the primary platform 110 to the viewer client 143.
It can be seen that the primary platform and the secondary platform can be used in combination to provide services for live video, and thus can be collectively referred to as a live video server.
In this embodiment of the present application, a two-stage video stream processing platform, i.e., the above-mentioned first-stage platform and second-stage platform, may also be set up for processing video streams. Wherein the secondary platform can be used for video stream preprocessing, pushing and distributing. The primary platform can be used for video live broadcast service scheduling, video stream preprocessing, pushing and distributing. The primary platform can monitor the link state and quality from the local end to the secondary platform, such as indexes of time delay, packet loss, jitter, video stream rate and the like, and if a problem is found, relevant warning information can be sent to an operator for processing.
Among other things, video stream preprocessing may include streaming control, rendering processing, video stream caching, video stream compression, video stream encoding format conversion, video stream duplication distribution, and so forth. For example, the director control refers to cutting off a certain segment or inserting a certain segment during live broadcast. Rendering refers to computing fragmented information as a picture whose pixels form a plane or as a continuous animation. Video stream compression means that video data of a non-moving image portion can be compressed to a large extent to reduce the amount of data transmission. The live video service schedule may include service management, user account management, general management.
It should be appreciated that the data interaction process between the primary platform, the secondary platform, the anchor client, and the viewer client is briefly described above in connection with fig. 1. However, these descriptions are merely examples for the convenience of understanding and should not be construed as limiting the present application in any way. The number of secondary platforms under the primary platform, the number of anchor clients, the number of watching clients and the like are not limited. In addition, the client of the watching side can be located in the service area of the secondary platform, can be located outside the service area of the secondary platform, and can be located in the service area of the primary platform, and can be located outside the service area of the primary platform. The embodiments of the present application are not limited in this regard. For ease of understanding, fig. 2 provides a schematic diagram of a network architecture suitable for deploying the communication system shown in fig. 1 described above. As shown in fig. 2, the network architecture 200 may include a municipality convergence edge cloud 210, an internet data center (internet data center, IDC) three wire machine room 220, and a provincial core cloud 230.
The secondary platform (such as the secondary platform 121, 122 or 123 shown in fig. 1) may be disposed in the ground convergent edge cloud 210, and the primary platform (such as the primary platform 110 shown in fig. 1) may be disposed in the IDC three-wire machine room 220. The ground city convergence edge cloud 210 belongs to an operator cloud resource, and an operator can deploy a private line, so that a secondary platform deployed on the ground city convergence edge cloud 210 can be accessed to a primary platform deployed on the IDC three-wire machine room 220 through the private line.
In addition to the above-mentioned secondary platform, the city convergence edge cloud 210 may further be configured with computing nodes, a multi-service gateway user plane (MSG-U), a User Plane (UP), and so on. The computing node is used for providing computing, memory, network and storage resources, and the computing node bears lightweight edge cloud service applications of various upper-layer service applications. The MSG-U is used for uniformly accessing all the services through the mobile network and the fixed network at the sink node.
The mobile network data may include data accessed through a mobile network terminal. The mobile data may be accessed to the UP, and thus to the MSG-U, by the UP, for example, through a base station, an internet protocol (internet protocol, IP) radio access network (IP radio access network, IP RAN) access ring, etc. The fixed network data may include data accessed through fixed network terminals, which may include broadband users, interactive internet television (internet protocol television, IPTV) users, private line users, and virtual private network (virtual private network, VPN) users, for example. The fixed network data may be accessed to the MSG-U, for example, through a Switch (SW).
The fixed network terminal refers to a terminal using a fixed network access network, and may include a broadband access device and a private line access device for wired communication, for example. The broadband access device may be an optical line terminal (optical line terminal, OLT) and the dedicated line access device may be a router or a switch.
A mobile network terminal refers to a terminal using a mobile network access network, such as a mobile phone, a tablet computer (pad), etc.
Illustratively, after the video stream of the anchor client of the mobile network passes through the access network device (e.g., a base station) and the ip ran access layer and the ip ran convergence layer, the UP sends the video stream to the MSG-U, and the MSG-U forwards the video stream to the secondary platform for processing.
Illustratively, a video stream of a anchor client of a fixed network may be sent to the MSG-U through a switch. For example, the broadband optical line terminal is connected to the OLT through the broadband network, the set-top box is connected to the OLT through the IPTV, and the OLT sends the video stream to the MSG-U through the SW. Customer premises equipment (customer premise equipment, CPE) sends the video stream to the MSG-U either through a dedicated line access SW, or through a VPN access SW.
The CPE is a mobile signal access device that receives mobile signals and forwards them out as wireless fidelity (wireless fidelity, wiFi) signals. VPN is used to establish a private network over a public network for encrypted communications.
The network operator deploys lightweight edge clouds at the sink nodes, and opens infrastructure as a service (infrastructure as a service, iaaS) and platform as a service (platform as a service, paaS) capabilities of the edge clouds to third parties, and various applications, such as video live broadcast applications, are deployed at the edge clouds by the third parties, so that users can access the application content of the third parties nearby.
The secondary platform sends the video stream to a Core Router (CR) via an MSG-U, and the core router sends the video stream to a SW deployed in an IDC three-wire machine room, and then the SW forwards the video stream to the primary platform. The provincial core cloud 230 may be deployed with management nodes, control Planes (CPs), and orchestrators. The management node is used for managing the computing nodes in the whole province. The scheduler is configured to generate control messages according to the quality of service (quality of service, qoS) to guarantee QoS priority of the data link transmitting the video stream.
The above-mentioned management nodes and computing nodes may be collectively referred to as a network operator convergence layer edge cloud management platform.
For convenience of distinguishing and understanding, each node included in the video live broadcast server side formed by the primary platform and the secondary platform is shown by a dotted line frame in fig. 2, and each node on cloud resources deployed by a network operator is shown by a solid line frame. The messages between the nodes may include control messages and forwarding messages, wherein the control messages may be generated by CPs, and are shown in dashed lines in the figure; the forwarding message may be generated by UP, shown in solid lines in the figure.
It should be understood that the content included in the city convergent edge cloud, the IDC three-wire machine room, and the provincial core cloud provided in the embodiments of the present application is only exemplarily described in connection with fig. 2, and the city convergent edge cloud, the IDC three-wire machine room, and the provincial core cloud may further include more or fewer modules with other functions. The embodiment of the present application is not particularly limited thereto.
Before describing embodiments of the present application, the terms referred to in the present application will be briefly described.
1. Infrastructure as a service (IaaS): a cloud computing infrastructure is provided that includes a server, a storage, a network, and an operating system. The user does not need to purchase servers, software, database space or network facilities, but only needs to purchase outsourcing services of the resources as required. For providing virtual machines or other resources as services to users.
2. Platform as a service (PaaS): providing a foundation for SaaS. Is a computing platform for providing development and execution platforms as services to users, such as virtual servers and operating systems.
3. Software as a service (software as a service, saaS): is software deployed on the internet. After authorization by SaaS, the user may subscribe on demand, i.e., a "pay for use" mode.
In the embodiment of the application, the first-level platform and the second-level platform are built based on an IT architecture of IaaS+PaaS, and a virtual machine and a container environment are provided for an Internet company (OTT) to deploy the first-level platform and the second-level platform.
4. OTT: refers to the development of various video and data service businesses based on the open internet by internet companies. Such services may be provided by third parties outside the network operator, and users may experience the service through various terminals anytime and anywhere.
5. Converging an edge cloud pool: and the network operator integrates server resources of a plurality of connected aggregation edge clouds adjacent in geographic position to form an aggregation edge cloud pool. The nodes of each convergent edge cloud in the same convergent edge cloud pool are nodes in a metropolitan area network. The nodes in the same convergent edge cloud pool are communicated through an intelligent metropolitan area network, and all server resources in the same convergent edge cloud pool are integrated for overall arrangement and unified scheduling.
6. Quality of service (QoS): is a technique that may provide differential (i.e., different) service levels for different types of traffic flows. The QoS can provide more preferential service grade for the service flows sensitive to bandwidth, time delay jitter, packet loss rate and the like, so that the service can meet the normal and high-performance use demands of users.
For easy understanding, the live video method provided in the embodiment of the present application will be described in detail below with reference to fig. 3. It should be appreciated that the method shown in fig. 3 may be applied in an architecture as shown in fig. 1 and 2.
Fig. 3 is a schematic flowchart of a live video method 300 according to an embodiment of the present application. As shown in fig. 3, the method 300 may include steps 310 through 320.
In step 310, the anchor client transmits the video stream.
In the embodiment of the application, the anchor client may send the video stream to a nearby secondary platform. For ease of distinction and explanation, the secondary platform in the vicinity of the anchor client described above is referred to herein as the first platform.
The first platform may be, for example, a secondary platform selected by the primary platform for the anchor client that is proximate to the anchor client. Illustratively, the primary platform may select a secondary platform for the anchor client from the at least one secondary platform according to an internet protocol (internet protocol, IP) address of the anchor client. The selected first platform is close to the position of the anchor client where the mobile network and the fixed network are accessed in a unified manner, and the anchor client is located in the service range of the first platform. In step 310, the first platform receives a video stream from a hosting client accordingly.
Optionally, before step 310, the method 300 further comprises: the primary platform may send first indication information to the anchor client, where the first indication information is used to indicate the first platform. Accordingly, the anchor client receives the first indication information from the primary platform.
Illustratively, the primary platform assigns a first platform to the anchor client based on the IP address of the anchor client. The first indication information may comprise, for example, an IP address of the first platform.
In step 320, the first platform distributes the video stream to a viewer client of the video stream.
The first platform can directly distribute the video stream to the client of the watching side of the video stream, and can also preprocess the video stream, and the first platform distributes the preprocessed video stream to the client of the watching side of the video stream. The video stream preprocessing has been described in detail in the foregoing, and for brevity, will not be described in detail herein.
It should be noted that the number of clients on the viewer of the video stream may be one or more. There may be a variety of situations depending on where the viewer client is located. A first possible scenario is that one or more viewer clients of the video stream are within a service area of the first platform; a second possibility is that one or more viewer clients of the video stream are outside the service area of the first platform but within the service area of the other secondary platform (e.g. denoted as second platform for ease of distinction and illustration); a third possible scenario is that one or more viewer clients of the video stream are not within the service area of any of the secondary platforms below the primary platform.
It should be appreciated that the first platform and the second platform are both within the service area of the primary platform.
It should also be understood that the three possible cases listed above may exist alone, may exist in part simultaneously, and may exist in whole simultaneously. The embodiments of the present application are not limited in this regard. For any one of the viewer clients, the video stream can be pushed based on the processing manner provided below, as long as the service scope of the viewer client is determined.
In a first possible scenario, the first platform may distribute the video stream to the viewer client within the service area of the first platform, as the viewer client is within the service area of the first platform. In other words, a video stream received by a viewer client that is within the service area of the first platform may not be pushed to the primary platform. Therefore, the transmission link of the video stream can be greatly shortened, the transmission hop count is reduced, and the problem of unstable quality of live video can be relieved.
In a second possible scenario, the first platform may distribute the video stream to the viewer client via the second platform, as the viewer client is outside the service area of the first platform and within the service area of the second platform.
In one example, the first platform and the second platform may be secondary platforms in different metropolitan area networks, the first platform may send the video stream to the primary platform, and the primary platform may send the video stream received from the first platform to the second platform, which in turn distributes the video stream to the viewer client in its service area.
As another example, the first platform and the second platform may also be secondary platforms in the same metropolitan area network, and the first platform may forward the video stream to the second platform through the metropolitan area network, and further distribute the video stream to the viewer client in its service area through the second platform.
It should be noted that the second platform may be one or more.
Optionally, the first platform may preprocess the received video stream. That is, the first platform may pre-process the video stream before sending the video stream out.
In a third possible scenario, since the viewer client is not within the service area of any of the secondary platforms below the primary platform, the first platform may push the video stream to the primary platform to distribute the video stream through the primary platform to the viewer client of the video stream within its service area.
It should be noted that, depending on the location of the client of the viewer, there are various situations in which the primary platform distributes the video stream to the client of the viewer. A first possible scenario is that one or more viewer clients are within a primary platform service area; a second possible scenario is that one or more viewer clients are outside the primary platform service area.
In a first possible scenario, if the viewer client is within the primary platform service area, the primary platform may distribute the video stream directly to the viewer client within the primary platform service area.
In a second possible scenario, if the viewer client is outside the primary platform service area, the primary platform sends the video stream to the next-stage distribution platform, which may distribute the video stream to one or more viewer clients outside the primary platform service area.
It should be understood that the two possible cases listed above may exist alone or may exist simultaneously. The embodiments of the present application are not limited in this regard. For any one of the viewer clients, the video stream can be pushed based on the processing manner provided below, as long as the service scope of the viewer client is determined.
Based on the scheme, the first platform receives the video stream from the anchor client, and distributes the video stream to the viewer client. Therefore, in the uplink transmission of the video stream, the part of links with unstable quality is shortened, and the transmission hops are reduced, so that the problem of unstable quality of live video is relieved.
In order to improve the reliability of the video live broadcast service, a scheme for disaster recovery protection of video live broadcast is also provided in the embodiment of the application. And enabling disaster recovery protection by the anchor client under the condition that the primary platform is detected to be unreachable to the distributed secondary platform route.
Optionally, the method further comprises: the primary platform sends second indication information to the anchor client, the second indication information being usable to indicate the standby secondary platform assigned to the anchor client.
In one possible design, the communication system may further include one or more backup secondary platforms. And each converging edge cloud pool can be provided with a secondary platform and a standby secondary platform for disaster recovery protection.
In another possible design, any one of the secondary platforms in the communication system may serve as a backup secondary platform for the other secondary platform. For example, the secondary platforms in the same converged edge cloud pool can be standby secondary platforms.
Illustratively, the primary platform may allocate a standby secondary platform for the anchor client from the same converged edge cloud pool as the first platform based on the IP address of the anchor client. The primary platform is a standby secondary platform allocated to the anchor client and can be understood as a standby secondary platform of the first platform. The primary platform may send second indication information to the anchor client to indicate the backup secondary platform based on the backup secondary platform assigned to the anchor client. For example, the second indication information may carry an IP address of the standby secondary platform.
It should be understood that the first indication information and the second indication information may be sent in the same message, or may be sent in different messages, which is not limited in the embodiment of the present application.
Illustratively, when a hosting client performs a business registration at a primary platform, the primary platform may send a secondary platform list to the hosting client, which list may be used to indicate the secondary platform serving the hosting client. Therefore, the list may further include, in addition to the IP address of the secondary platform (such as the first platform) where the client is located, the IP addresses of other secondary platforms that belong to a converged edge cloud pool with the first platform.
The anchor client may determine the backup secondary platform based on the IP address of the backup secondary platform. In this way, when the first platform fails, the anchor client can detect that the route of the first platform is not reachable, and can switch to the standby secondary platform to send the video stream to the standby secondary platform. The standby secondary platform may continue to provide live video services to the anchor client.
It will be appreciated that the standby secondary platform may also forward the video stream after receiving the video stream based on the manner provided in step 320 above, and will not be described here again for brevity.
It should be appreciated that the primary platform may be one or more standby secondary platforms allocated to the anchor client. In the case of multiple standby secondary platforms being allocated, the anchor client may decide by itself to which standby secondary platform to switch. For example, it is determined which standby secondary platform to switch to according to factors such as link quality between the anchor client and each standby secondary platform, transmission hop count, and the like.
It should also be appreciated that switching the video stream to the standby secondary platform is only one possible implementation of disaster recovery protection. In another implementation, the video stream may also be switched directly to the primary platform. The primary platform may also continue to provide live video services to the anchor client.
In addition, in the live video broadcast process, the anchor client may also detect the link quality of the first platform and the standby secondary platform (for example, the secondary platform indicated in the list) at regular time, for example, indexes such as test delay, packet loss, etc., and mark the access quality of each secondary platform in the list according to the latest test result. When the secondary platform where the client is located fails, the client performs secondary authentication to the secondary platform with the best marked access quality according to the existing detection result and establishes a service session, then the live video stream is pushed to the secondary platform with the best link quality, and then the secondary platform pushes the video stream to the primary platform, so that flexible and reliable disaster recovery protection of the live video service is realized.
It should be noted that, the anchor client should have a link bandwidth adaptive function, that is, under the condition that the link bandwidth changes or congestion occurs, the anchor client may automatically switch to the video coding format that is most matched with the link bandwidth, and configure reasonable resolution and frame rate parameter values, so as to implement the adaptive code rate switching function.
Based on the disaster recovery protection scheme, the anchor client can select other platforms, such as a standby secondary platform or a primary platform, to continue to provide the video live broadcast service under the condition that the first platform route distributed by the primary platform is not reachable, so that the service is ensured not to be interrupted, and the reliability of the video live broadcast service is improved.
In addition, the embodiment of the application also provides video live QoS guarantee.
In the embodiment of the application, in the process of sending the video stream by the anchor client, the anchor client can also detect the link quality and monitor the quality of each link (including a wireless link or a fixed network link) of the anchor and the viewer in real time, so as to actively push the link quality assurance prompt to the anchor client according to the link quality analysis, such as time delay increase, packet loss increase, jitter increase and the like.
The anchor client can detect the link quality from the home terminal to the first platform; the anchor client can detect the link quality from the home terminal to the primary platform; the anchor client may also detect the link quality from the home terminal to the standby secondary platform.
The viewer client may also detect the link quality from the home terminal to the primary platform.
For example, if the client of the anchor side discovers a link quality problem, or the client of the anchor side actively proposes a service guarantee application, the client of the anchor side may pop up a window interface for prompting the user to provide a QoS guarantee service, and the user may perform QoS guarantee for the link of the client of the anchor side after clicking confirmation. Likewise, the client of the viewer can actively apply for the service and guarantee the QoS for the link of the client of the viewer. And after QoS guarantee is finished, performance statistical data before and after the guarantee can be provided for comparison analysis.
Illustratively, the anchor client may report the link information to the primary platform according to the link information of the network access, for example, the link information may be wireless 5G/4G access or broadband access. If the client is accessed through the 5G/4G network, the information reported by the anchor client to the primary platform can also comprise information such as reference signal received power (reference signal receiving power, RSRP), signal-to-interference plus noise ratio (signal to interference plus noise ratio, SINR), wireless cell identification and the like, and the primary platform analyzes and processes according to the information.
The primary platform analyzes information reported by the anchor client, and if the anchor client accesses through a 5G/4G network and interacts with an operator capability opening platform, the primary platform judges whether a wireless cell where the anchor client is located meets a condition for opening QoS guarantee (for example, the cell where the anchor client is located is a normal working cell, and a physical resource block (physical resource block, PRB) wireless resource utilization rate is in a range of a guaranteeing interval), qoS guarantee can be started, such as guaranteeing parameters of an international mobile subscriber integrated service digital network (integrated service digital network, ISDN)/public switched telephone network (public switched telephone network, PSTN) number (mobile subscriber international ISDN/PSTN number, MSISDN), a 5G QoS identifier (5G QoS identifier,5QI), a QoS measurement value (QoS class identifier, QCI) based on the client. If the client is accessed through the fixed network broadband network, the QoS guarantee, such as the guarantee of the internet protocol (internet protocol, IP) address and the source IP address based on the destination of the live data stream, can be directly started.
For ease of understanding, fig. 4 shows an authentication flow diagram of a hosting client. As shown in fig. 4, the flowchart may include steps 410 through 450.
In step 410, the anchor client obtains the IP address of the primary platform by resolving the OTT domain name.
In step 420, the anchor client registers with the primary platform according to the IP address of the primary platform, and the primary platform authenticates and authorizes the anchor client.
The host client may send a user name and a password to the primary platform for registration, and after the registration is completed, the host client may send the user name and the password used in registration to the primary platform, and the primary platform authenticates the identity of the host client, and after the authentication is passed, the primary platform opens rights for the host client to access the primary platform, the secondary platform (such as the first platform) and other standby secondary platforms, so that the live client may perform the following steps.
In step 430, the primary platform sends first indication information to the anchor client, where the first indication is used to indicate the first platform.
The primary platform may allocate a first platform to the anchor client based on the IP address of the anchor client.
In step 440, the primary platform sends second indication information to the anchor client, the second indication information indicating the standby secondary platform.
The primary platform may further allocate a standby secondary platform to the anchor client based on the IP address of the anchor client.
It should be understood that the figures are merely examples, and that step 430 and step 440 are shown separately. The first indication information and the second indication information may be carried in the same message, so that step 430 and step 440 may be combined into one step. The first indication information and the second indication information may also be carried in different messages, so that step 430 and step 440 may also be separate steps. The embodiments of the present application are not limited in this regard.
In step 450, the anchor client performs a secondary authentication with the first platform.
The anchor client may determine the first platform based on the first indication information, and perform secondary authentication with the first platform.
The second authentication process may be, for example, that the anchor client sends a user name and a password to the first platform, the first platform sends the user name and the password to the first platform, and the first platform confirms the user name and the password and sends an authentication result to the first platform. After the authentication is passed, the anchor client establishes a service session with the first platform, and the anchor client transmits a video stream to the first platform.
Optionally, before the anchor client authenticates to the first platform, it detects that the first platform route is not reachable, and the anchor client may send a video stream to the primary platform.
Optionally, before the anchor client authenticates to the first platform, it is detected that the first platform route is not reachable, and the anchor client may select one standby secondary platform from the one or more standby secondary platforms, and the anchor client performs secondary authentication to the standby secondary platform. The authentication process from the anchor client to the standby secondary platform is similar to the authentication process to the first platform and will not be described again here.
After the anchor client performs the secondary authentication, the anchor client transmits the video stream to the target platform.
The target platform can be a first platform, a standby secondary platform or a primary platform.
Fig. 5 shows an authentication flow diagram of a viewer client. As shown in fig. 5, the flowchart includes steps 510 to 520.
In step 510, the viewer client obtains the IP address of the live video distribution platform through OTT domain name resolution.
The video live broadcast distribution platform can be a first platform, a standby secondary platform or a primary platform.
Illustratively, if the viewer client is to receive the video stream from the first platform, the viewer client parses the OTT domain name to obtain the IP address of the first platform.
In step 520, the viewer client authenticates to the target platform.
Alternatively, the viewer client may authenticate to the first platform.
For example, the viewer client may send the user name and the password to the first platform, the first platform sends the user name and the password to the first platform, the first platform confirms the user name and the password, and the first platform sends the authentication result to the first platform. After passing the authentication, the client of the watching side establishes a service session with the first platform, and receives the video stream from the first platform.
Optionally, the viewer client may also authenticate to the primary platform.
Illustratively, the viewer client may send a user name and password to the primary platform, which authenticates the user name and password. After the authentication is passed, the client side of the watching side establishes a service session with the primary platform, and receives the video stream from the primary platform.
Optionally, the client of the viewer may also perform authentication on the standby secondary platform, and the authentication process is similar to that of the first platform, which is not described herein.
The authentication procedure of the anchor client and the viewer client described above in connection with fig. 4 and 5 may be performed before the procedure shown in fig. 3. After authentication of each client is completed, each client can receive the live video service provided by the live video service terminal.
In the embodiment of the application, a transmission control protocol (transmission control protocol, TCP) is adopted from a host client to a viewer client to perform video stream interaction, and one TCP interaction flow from the host client to a live broadcast server is split into two independent TCP interaction flows from the host client to a secondary platform and then from the secondary platform to a primary platform.
Fig. 6 shows a flowchart of TCP interactions provided by an embodiment of the present application.
As shown in fig. 6, the manner of pushing live video streams once is a current manner of live video, in which a host client pushes video streams to a live server, and then the live server distributes the video streams to a viewer client. In this embodiment, the primary TCP interaction flow from the anchor client to the live server is split into 2 new live video TCP interaction flows, namely, the primary TCP interaction flow 1 from the anchor client to the secondary platform and the primary TCP interaction flow 2 from the secondary platform to the primary platform shown in fig. 6.
The new live video TCP interaction procedure has the following advantages over the original TCP interaction procedure.
First, by splitting the TCP interaction flow into the TCP interaction flow 1 and the TCP interaction flow 2, the effect of splitting the TCP interaction flow transmission control protocol acknowledgement character (transmission control protocol acknowledgement, TCP ACK) can be achieved. In the TCP slow start stage, the speed of the arrival of a downlink TCP ACK message is increased, the speed of the growth of an uplink TCP sliding window is increased, the transmission rate of an upstream video stream of a host client is increased, and the live video flow is enabled to climb faster by greatly shortening the TCP sliding window adjustment period for the TCP interaction flow 1 from the host client to the secondary platform.
Secondly, by splitting the TCP interaction flow into the TCP interaction flow 1 and the TCP interaction flow 2, since the TCP interaction flow 1 adopts wireless air interface transmission and the TCP interaction flow 2 adopts private line transmission, the network quality of the section of the TCP interaction flow 1 is weak and unstable, and the section of the TCP interaction flow 1 can be independently divided from the anchor client to the secondary platform access network to perform TCP flow interaction, so that unnecessary uplink data retransmission caused by packet loss and overtime due to more transmission hops and network equipment problems is reduced. In addition, by parameter adjustment of the anchor client (such as properly reducing a timer of TCP data packet transmission overtime of the anchor client) and starting a TCP fast retransmission mechanism, the effect of fast retransmission even if packet loss, overtime and disorder occur from the anchor client to the secondary platform is achieved.
Third, through TCP interaction flow splitting, the chance of TCP out-of-order rearrangement (re-ordering out-of-order TCP data packets sent by an upper network) caused by more transmission hops is reduced, and the video stream processing speed is increased.
Fourth, after the TCP interactive process is split, a secondary platform is deployed at a position close to the anchor client, the secondary platform is deployed in an edge cloud, the edge cloud belongs to an operator cloud resource, the advantages of powerful calculation, storage and network resource of the secondary platform can be exerted, the video stream sent by the anchor client is preprocessed, the influence of network quality fluctuation on the playing effect of the live video stream can be stabilized (for example, the phenomenon of blocking caused by network jitter can be effectively reduced by adding a certain number of frame buffers), the upper network bandwidth resource can be saved maximally, and rich service types (for example, video live broadcast services with different definitions) can be provided.
Fifthly, the convergence edge cloud is a junction of mobile network, broadband and private line services, the position is the network position which is closest to the anchor client and supports full services, the secondary platform is deployed to pretreat live video streams in various access modes nearby, and the maximum resource sharing and resource multiplexing benefits can be obtained.
Fig. 7 is a schematic block diagram of a live video device provided in an embodiment of the present application. As shown in fig. 7, the live video device 700 may include: a processing unit 710 and a transceiver unit 720.
In one possible design, the video live device may correspond to the first platform in the above method embodiments, or may be a component (e.g., an integrated circuit, a chip, etc.) of the first platform. The transceiver unit 720 is configured to receive a video stream from a hosting client, where the hosting client is a hosting client in a service area of the first platform, and the first platform is a platform allocated by the primary platform from the at least one secondary platform to the hosting client; and is further configured to distribute the video stream to a viewer client of the video stream.
Optionally, the transceiver unit 720 is further configured to distribute the video stream to a viewer client of the video stream in a service area of the first platform; and/or pushing the video stream to the primary platform for distribution by the primary platform to a viewer client of the video stream outside of the service area of the first platform.
Optionally, the processing unit 710 may be configured to pre-process the received video stream.
In one possible design, the video live device may correspond to the primary platform in the method embodiments above, or may be a component (e.g., integrated circuit, chip, etc.) of the primary platform. Wherein the transceiver unit 720 is configured to receive a video stream from a first platform, where the video stream is a video stream sent to the first platform by a hosting client, and the first platform is a platform allocated by the primary platform from the at least one secondary platform for the hosting client; and may also be used to distribute the video stream to a viewer client of the video stream.
Optionally, the transceiver unit 720 may be further configured to send the video stream to a client of a viewer of the video stream in a service area; and/or sending the video stream to a next level distribution platform so as to forward the video stream to a viewer client of the video stream outside a service area of the next level distribution platform.
Optionally, the processing unit 710 may be configured to determine the first platform for the anchor client from the at least one secondary platform according to an IP address of the anchor client.
The transceiver unit 720 is further configured to send first indication information to the anchor client, where the first indication information is used to indicate the first platform.
Optionally, the processing unit 710 may be further configured to determine a standby secondary platform for the anchor client.
The transceiver unit 720 may be further configured to send second indication information to the anchor client, where the second indication information is used to indicate the standby secondary platform.
In one possible design, the video live device may correspond to the hosting client in the method embodiments above, or may be a component (e.g., integrated circuit, chip, etc.) of the hosting client. The transceiver unit 720 is configured to receive indication information from the primary platform, where the indication information is used to indicate a secondary platform allocated to the anchor client; and the method can also be used for sending the video stream to the secondary platform indicated by the indication information.
It should be understood that the division of the units in the embodiments of the present application is illustrative, and is merely a logic function division, and there may be another division manner in actual implementation. In addition, each functional unit in the embodiments of the present application may be integrated in one processor, or may exist alone physically, or two or more units may be integrated in one module. The integrated units may be implemented in hardware or in software functional units.
Fig. 8 is another schematic block diagram of a live video device provided in an embodiment of the present application. The device can be used for realizing the function of the video live broadcasting method in the method. Wherein the device may be a system-on-chip. In the embodiment of the application, the chip system may be formed by a chip, and may also include a chip and other discrete devices.
As shown in fig. 8, the apparatus 800 may include at least one processor 810 configured to implement the functions of the first platform, the first-level platform, or the anchor client in the method provided in the embodiments of the present application. Reference is made specifically to the detailed description in the method examples, and details are not described here.
The apparatus 800 may also include at least one memory 820 for storing program instructions and/or data. The memory 820 is coupled to the processor 810. The coupling in the embodiments of the present application is an indirect coupling or communication connection between devices, units, or modules, which may be in electrical, mechanical, or other forms for information interaction between the devices, units, or modules. Processor 810 may operate in conjunction with memory 820. Processor 810 may execute program instructions stored in memory 820. At least one of the at least one memory may be included in the processor.
The apparatus 800 may also include a communication interface 830 for communicating with other devices over a transmission medium so that an apparatus for use in the apparatus 800 may communicate with other devices. The communication interface 830 may be, for example, a transceiver, an interface, a bus, a circuit, or a device capable of implementing a transceiving function. The processor 810 may utilize the communication interface 830 to transceive data and/or information and is used to implement the methods performed by the first platform, or primary platform, or the presenter client described in the corresponding embodiments of fig. 3-5.
The specific connection medium between the processor 810, the memory 820, and the communication interface 830 is not limited in the embodiments of the present application. The present embodiment is illustrated in fig. 8 as being coupled between processor 810, memory 820, and communication interface 830 via bus 840. The bus 840 is shown in bold lines in fig. 8, and the manner in which other components are connected is illustrated schematically and not by way of limitation. The buses may be classified as address buses, data buses, control buses, etc. For ease of illustration, only one thick line is shown in fig. 8, but not only one bus or one type of bus.
The application also provides a video live broadcast system, which comprises the primary platform, at least one secondary platform, a host client and a viewer client.
The present application also provides a computer program product comprising: a computer program (which may also be referred to as code, or instructions) which, when executed, causes a computer to perform the method of any of the embodiments shown in figures 3 to 6.
The present application also provides a computer-readable storage medium storing a computer program (which may also be referred to as code, or instructions). The computer program, when executed, causes the computer to perform the method of any of the embodiments shown in fig. 3-6.
It should be appreciated that the processor in the embodiments of the present application may be an integrated circuit chip with signal processing capabilities. In implementation, the steps of the above method embodiments may be implemented by integrated logic circuits of hardware in a processor or instructions in software form. The processor may be a general purpose processor, a digital signal processor (digital signal processor, DSP), an application specific integrated circuit (application specific integrated circuit, ASIC), a field programmable gate array (field programmable gate array, FPGA) or other programmable logic device, discrete gate or transistor logic device, discrete hardware components. The disclosed methods, steps, and logic blocks in the embodiments of the present application may be implemented or performed. A general purpose processor may be a microprocessor or the processor may be any conventional processor or the like. The steps of a method disclosed in connection with the embodiments of the present application may be embodied directly in hardware, in a decoded processor, or in a combination of hardware and software modules in a decoded processor. The software modules may be located in a random access memory, flash memory, read only memory, programmable read only memory, or electrically erasable programmable memory, registers, etc. as well known in the art. The storage medium is located in a memory, and the processor reads the information in the memory and, in combination with its hardware, performs the steps of the above method.
It should also be appreciated that the memory in embodiments of the present application may be either volatile memory or nonvolatile memory, or may include both volatile and nonvolatile memory. The nonvolatile memory may be a read-only memory (ROM), a Programmable ROM (PROM), an Erasable PROM (EPROM), an electrically Erasable EPROM (EEPROM), or a flash memory. The volatile memory may be random access memory (random access memory, RAM) which acts as an external cache. By way of example, and not limitation, many forms of RAM are available, such as Static RAM (SRAM), dynamic RAM (DRAM), synchronous DRAM (SDRAM), double data rate SDRAM (DDR SDRAM), enhanced SDRAM (ESDRAM), synchronous DRAM (SLDRAM), and direct memory bus RAM (DR RAM). It should be noted that the memory of the systems and methods described herein is intended to comprise, without being limited to, these and any other suitable types of memory.
The terms "unit," "module," and the like as used in this specification may be used to refer to a computer-related entity, either hardware, firmware, a combination of hardware and software, or software in execution.
Those of ordinary skill in the art will appreciate that the various illustrative logical blocks (illustrative logical block) and steps (steps) described in connection with the embodiments disclosed herein can be implemented as electronic hardware, or combinations of computer software and electronic hardware. Whether such functionality is implemented as hardware or software depends upon the particular application and design constraints imposed on the solution. Skilled artisans may implement the described functionality in varying ways for each particular application, but such implementation decisions should not be interpreted as causing a departure from the scope of the present application. In the several embodiments provided in this application, it should be understood that the disclosed apparatus, device, and method may be implemented in other manners. For example, the apparatus embodiments described above are merely illustrative, e.g., the division of the units is merely a logical function division, and there may be additional divisions when actually implemented, e.g., multiple units or components may be combined or integrated into another system, or some features may be omitted or not performed. Alternatively, the coupling or direct coupling or communication connection shown or discussed with each other may be an indirect coupling or communication connection via some interfaces, devices or units, which may be in electrical, mechanical or other form.
The units described as separate units may or may not be physically separate, and units shown as units may or may not be physical units, may be located in one place, or may be distributed on a plurality of network units. Some or all of the units may be selected according to actual needs to achieve the purpose of the solution of this embodiment.
In addition, each functional unit in each embodiment of the present application may be integrated in one processing unit, or each unit may exist alone physically, or two or more units may be integrated in one unit.
In the above-described embodiments, the functions of the respective functional units may be implemented in whole or in part by software, hardware, firmware, or any combination thereof. When implemented in software, may be implemented in whole or in part in the form of a computer program product. The computer program product includes one or more computer instructions (programs). When the computer program instructions (program) are loaded and executed on a computer, the processes or functions described in accordance with the embodiments of the present application are fully or partially produced. The computer may be a general purpose computer, a special purpose computer, a computer network, or other programmable apparatus. The computer instructions may be stored in or transmitted from one computer-readable storage medium to another, for example, by wired (e.g., coaxial cable, optical fiber, digital Subscriber Line (DSL)), or wireless (e.g., infrared, wireless, microwave, etc.). The computer readable storage medium may be any available medium that can be accessed by a computer or a data storage device such as a server, data center, etc. that contains an integration of one or more available media. The usable medium may be a magnetic medium (e.g., a floppy disk, a hard disk, a magnetic tape), an optical medium (e.g., a DVD), or a semiconductor medium (e.g., a Solid State Disk (SSD)), or the like.
The functions, if implemented in the form of software functional units and sold or used as a stand-alone product, may be stored in a computer-readable storage medium. Based on such understanding, the technical solution of the present application may be embodied essentially or in a part contributing to the prior art or in a part of the technical solution, in the form of a software product stored in a storage medium, including several instructions for causing a computer device (which may be a personal computer, a server, or a network device, etc.) to perform all or part of the steps of the methods described in the embodiments of the present application. And the aforementioned storage medium includes: a U-disk, a removable hard disk, a read-only memory (ROM), a random access memory (random access memory, RAM), a magnetic disk, or an optical disk, or other various media capable of storing program codes.
The foregoing is merely specific embodiments of the present application, but the scope of the present application is not limited thereto, and any person skilled in the art can easily think about changes or substitutions within the technical scope of the present application, and the changes and substitutions are intended to be covered by the scope of the present application. Therefore, the protection scope of the present application shall be subject to the protection scope of the claims.

Claims (9)

1. The video live broadcasting method is characterized by being applied to a communication system comprising a primary platform and at least one secondary platform, wherein the at least one secondary platform is deployed on an edge cloud, the at least one secondary platform belongs to at least one network operator, each secondary platform in the at least one secondary platform is accessed to the primary platform through a private line of the network operator, and the primary platform is converged with the private line access of the at least one network operator;
the communication system also comprises at least one standby secondary platform, and any secondary platform in the communication system is used as a standby secondary platform of other secondary platforms;
the method comprises the following steps:
a first platform of the at least one secondary platform receives a video stream from a host client, the host client being a host client within a service area of the first platform, and the first platform being a platform for the host client to be distributed by the primary platform from the at least one secondary platform;
the first platform distributes the video stream to a viewer client of the video stream;
the anchor client sends second indication information to the anchor client when the first platform route is detected to be unreachable, wherein the second indication information is used for indicating the standby secondary platform distributed to the anchor client; the second indication information carries the IP address of the standby secondary platform;
The anchor client sends a video stream to a standby secondary platform indicated by the second indication information;
the standby secondary platform distributes the video stream to a viewer client of the video stream.
2. The method of claim 1, wherein the first platform distributes the video stream to a viewer client of the video stream, comprising:
the first platform distributes the video stream to a viewer client of the video stream within a service area of the first platform; and/or
The first platform pushes the video stream to the primary platform for distribution by the primary platform to a viewer client of the video stream outside of the service area of the first platform.
3. The video live broadcasting method is characterized by being applied to a communication system comprising a primary platform and at least one secondary platform, wherein the at least one secondary platform is deployed on an edge cloud, the at least one secondary platform belongs to at least one network operator, each secondary platform in the at least one secondary platform is accessed to the primary platform through a private line of the network operator, and the primary platform is converged and accessed by the private line of the at least one network operator;
The communication system also comprises at least one standby secondary platform, and any secondary platform in the communication system is used as a standby secondary platform of other secondary platforms;
the method comprises the following steps:
the primary platform receives a video stream from a first platform, wherein the video stream is sent to the first platform by a host client, and the first platform is a platform distributed by the primary platform from the at least one secondary platform for the host client;
the primary platform distributes the video stream to a viewer client of the video stream;
the anchor client sends second indication information to the anchor client when the first platform route is detected to be unreachable, wherein the second indication information is used for indicating the standby secondary platform distributed to the anchor client; the second indication information carries the IP address of the standby secondary platform;
the anchor client sends a video stream to a standby secondary platform indicated by the second indication information;
the standby secondary platform distributes the video stream to a viewer client of the video stream.
4. The method of claim 3, wherein the primary platform distributes the video stream to a viewer client of the video stream, comprising:
the primary platform sends the video stream to a client side of a watching side of the video stream in a service area; and/or
The primary platform sends the video stream to a next-stage distribution platform for forwarding the video stream by the next-stage distribution platform to a viewer client of the video stream outside a service area of the primary platform.
5. The method of claim 3 or 4, wherein the method further comprises:
the primary platform determines the first platform for the anchor client from the at least one secondary platform according to the Internet Protocol (IP) address of the anchor client;
the primary platform sends first indication information to the anchor client, wherein the first indication information is used for indicating the first platform.
6. The video live broadcasting method is characterized by being applied to a communication system comprising a primary platform and at least one secondary platform, wherein the at least one secondary platform is deployed on an edge cloud, the at least one secondary platform belongs to at least one network operator, each secondary platform in the at least one secondary platform is accessed to the primary platform through a private line of the network operator, and the primary platform is converged with the private line access of the at least one network operator;
The communication system also comprises at least one standby secondary platform, and any secondary platform in the communication system is used as a standby secondary platform of other secondary platforms;
the method comprises the following steps:
the anchor client receives indication information from the primary platform, wherein the indication information is used for indicating a secondary platform distributed to the anchor client;
the anchor client sends a video stream to a secondary platform indicated by the indication information;
the secondary platform distributes the video stream to a viewer client of the video stream;
the anchor client receives second indication information from the primary platform under the condition that the second-level platform routing is not reachable, wherein the second indication information is used for indicating the standby second-level platform distributed to the anchor client; the second indication information carries the IP address of the standby secondary platform;
the anchor client sends a video stream to a standby secondary platform indicated by the second indication information;
the standby secondary platform distributes the video stream to a viewer client of the video stream.
7. A live video device comprising means for implementing the method according to any of claims 1 to 6.
8. A live video device comprising a processor for performing the method of any of claims 1 to 6.
9. A computer readable storage medium comprising instructions which, when run on a computer, cause the computer to perform the method of any one of claims 1 to 6.
CN202110204618.XA 2021-02-24 2021-02-24 Video live broadcast method, device and computer readable storage medium Active CN114979677B (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202110204618.XA CN114979677B (en) 2021-02-24 2021-02-24 Video live broadcast method, device and computer readable storage medium

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202110204618.XA CN114979677B (en) 2021-02-24 2021-02-24 Video live broadcast method, device and computer readable storage medium

Publications (2)

Publication Number Publication Date
CN114979677A CN114979677A (en) 2022-08-30
CN114979677B true CN114979677B (en) 2023-05-09

Family

ID=82973126

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202110204618.XA Active CN114979677B (en) 2021-02-24 2021-02-24 Video live broadcast method, device and computer readable storage medium

Country Status (1)

Country Link
CN (1) CN114979677B (en)

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN105872640A (en) * 2015-12-07 2016-08-17 乐视云计算有限公司 Live broadcast video obtaining method, device and system
CN108200444A (en) * 2017-12-29 2018-06-22 北京奇虎科技有限公司 A kind of methods, devices and systems of net cast
CN109005415A (en) * 2018-07-26 2018-12-14 阿里巴巴集团控股有限公司 A kind of network direct broadcasting control method, apparatus and system
CN109688417A (en) * 2018-12-12 2019-04-26 广州虎牙信息科技有限公司 A kind of data distribution systems, method, apparatus, TV box and storage medium
CN110012300A (en) * 2018-01-04 2019-07-12 华为技术有限公司 Net cast method and device

Family Cites Families (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR102284044B1 (en) * 2015-09-10 2021-07-30 삼성전자주식회사 Method and apparatus for estimating a position in a wireless system

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN105872640A (en) * 2015-12-07 2016-08-17 乐视云计算有限公司 Live broadcast video obtaining method, device and system
CN108200444A (en) * 2017-12-29 2018-06-22 北京奇虎科技有限公司 A kind of methods, devices and systems of net cast
CN110012300A (en) * 2018-01-04 2019-07-12 华为技术有限公司 Net cast method and device
CN109005415A (en) * 2018-07-26 2018-12-14 阿里巴巴集团控股有限公司 A kind of network direct broadcasting control method, apparatus and system
CN109688417A (en) * 2018-12-12 2019-04-26 广州虎牙信息科技有限公司 A kind of data distribution systems, method, apparatus, TV box and storage medium

Also Published As

Publication number Publication date
CN114979677A (en) 2022-08-30

Similar Documents

Publication Publication Date Title
US11477550B2 (en) Apparatus and methods for enhancing quality of experience for data services over high-capacity wireless networks
US11412320B2 (en) Apparatus and methods for selective data network access
US11902805B2 (en) Communication method and communications apparatus
US20210112379A1 (en) Communication method and communications apparatus
US10750362B2 (en) Apparatus and method of automatically provisioning a femtocell
US20220078806A1 (en) Methods and apparatus for wireless data traffic management in wireline backhaul systems
US11228946B2 (en) Communication method and device
WO2012073404A1 (en) Quality-of-service management system and method
CN110035005B (en) Data processing method and device
JP2022511163A (en) Systems and methods for dynamically switching data transmission from cellular networks to unidirectional point-to-multipoint networks
WO2009086771A1 (en) Method and network element device for realizing video service in wireless communication system
US11653376B2 (en) Channel allocation
CN113079548A (en) Communication method and device
CN114651449A (en) Method and device for adjusting streaming media parameter dynamic adaptive network
CN109347844B (en) Method and device for accessing equipment to Internet
US7881309B2 (en) Controlling service stream
US20140043430A1 (en) Apparatus and method for providing group communication service
CN112099871B (en) Service quality configuration method and device
CN114979677B (en) Video live broadcast method, device and computer readable storage medium
EP1796415A2 (en) QOS control apparatus in multi-cell network system and method thereof
CN112165416B (en) Networking and communication method and device
EP3982598A1 (en) Method and apparatus for sending and receiving message, and communication system
CN110113553B (en) Method and device for processing video telephone
CN109257660B (en) Communication method and device based on video network
CN111131912B (en) Communication method, broadcasting method, communication device and broadcasting device

Legal Events

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