CN114979677A - Video live broadcast method and device - Google Patents

Video live broadcast method and device Download PDF

Info

Publication number
CN114979677A
CN114979677A CN202110204618.XA CN202110204618A CN114979677A CN 114979677 A CN114979677 A CN 114979677A CN 202110204618 A CN202110204618 A CN 202110204618A CN 114979677 A CN114979677 A CN 114979677A
Authority
CN
China
Prior art keywords
platform
video stream
client
primary
anchor client
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Granted
Application number
CN202110204618.XA
Other languages
Chinese (zh)
Other versions
CN114979677B (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 main broadcasting client, wherein the main broadcasting client is a main broadcasting client in a service area of the first platform, and the first platform is a platform distributed by the primary platform for the main broadcasting client 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, a secondary platform is deployed in the edge cloud, and the secondary platform can be accessed to the primary platform through a special line of a network operator, so that the link quality is stable. Therefore, in the uplink transmission of the video stream, the part of the link with unstable quality is shortened, and the transmission hop count is reduced, thereby relieving the problem of unstable quality of the live video.

Description

Video live broadcast method and device
Technical Field
The present application relates to the field of communications, and in particular, to a method and an apparatus for live video broadcast.
Background
Under the push of the fifth generation (5th generation, 5G) communication technology, live video enters a new and rapidly-developed state. Generally, a video live broadcast process is realized by adopting a video stream one-time conversion and push mode, a video stream of a main broadcast client is pushed to a live broadcast server of a regional or provincial core cloud, and then the video stream is pushed to a plurality of viewer clients by the live broadcast server.
However, the current live video quality is not stable. In the process of live video broadcasting, problems such as playing blockage, video picture screen splash, large delay, low video definition, asynchronous audio and video playing, unclear voice, discontinuity and the like easily occur, and the experience of a watching party is poor.
Disclosure of Invention
The embodiment of the application provides a live video broadcasting method and device, which aim to relieve the problem of unstable live video quality and improve the user experience of a viewer.
In a first aspect, the present application provides a live video broadcasting method, which is 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 to which the secondary platform belongs, and the primary platform is converged with the 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 anchor client, the anchor client being an anchor client located within a service area of the secondary platform, and the first platform being a platform allocated by the primary platform from the at least one secondary platform for the anchor 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, distributes the video stream to the viewer client, is closer to the anchor client relative to the first-stage platform due to the fact that the first platform is deployed in the edge cloud, and can be accessed to the first-stage platform through a private line of a network operator, and link quality is stable. Therefore, in the uplink transmission of the video stream, the part of the link with unstable quality is shortened, and the transmission hop count is reduced, thereby relieving the problem of unstable quality of the live video.
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 viewer clients of the video stream outside the service area of the first platform.
In a second aspect, the present application provides a live video broadcasting method, which is 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 and accessed by the dedicated line of the at least one network operator; the method further 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 an anchor client, and the first platform is a platform distributed for the anchor client from the at least one secondary platform;
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 each secondary platform in at least one secondary platform is accessed to the primary platform through a private line of a network operator, so that data transmission from the first platform to the primary platform is relatively stable, and the problem of unstable video live broadcast quality can be solved.
Optionally, the distributing, by the primary platform, the video stream to a viewer client of the video stream includes: the primary platform sends the video stream to a viewer client of the video stream in a service area; and/or
And the primary platform sends the video stream to a next-level distribution platform so as to forward the video stream to a client of a viewer of the video stream outside the service area of the primary platform through the next-level distribution platform.
Optionally, the method further comprises: the primary platform determines the first platform for the anchor client from the at least one secondary platform according to an Internet Protocol (IP) address of the anchor client;
and 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, which is 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 the dedicated line access of the at least one network operator;
the method comprises the following steps:
the method comprises the steps that an anchor client receives indication information from a primary platform, wherein the indication information is used for indicating a secondary platform distributed for the anchor client;
and the anchor client sends the video stream to the secondary platform indicated by the indication information.
Based on the scheme, the primary platform can distribute the secondary platform (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 the part of links with unstable quality in the uplink transmission of the video stream is shortened, the transmission hop count is reduced, and the problem of unstable video live broadcast quality caused by more transmission hop counts is solved.
In a fourth aspect, a video live broadcasting device is provided, which includes means or units for implementing the video live broadcasting method described in any one of the first to third aspects and the first to third aspects. It should be understood that the respective modules or units may implement the respective functions by executing the computer program.
In a fifth aspect, a video live broadcasting device is provided, which includes a processor configured to execute the video live broadcasting method described in any one 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 may implement the method described in the first to third aspects when executing the instructions stored in the memory. 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.
A sixth aspect provides a computer-readable storage medium comprising instructions which, when executed on a computer, cause the computer to carry out the method recited in any one of the first to third aspects and the first to third aspects.
In a seventh aspect, a computer program product is provided, the 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 advantageous effects obtained by the various aspects and the corresponding possible implementations are similar and will not be described again.
Drawings
Fig. 1 is a network architecture of a video live broadcast method according to an embodiment of the present application;
fig. 2 is a schematic diagram of a specific application scenario applicable to a video live broadcast method provided in an embodiment of the present application;
fig. 3 is a schematic flow chart of a video live broadcast method provided by an embodiment of the present application;
FIG. 4 is a flow chart of business interaction of an anchor client provided by an embodiment of the present application;
FIG. 5 is a flow chart of a business interaction of a viewer client provided by an embodiment of the present application;
fig. 6 is a flowchart of TCP interaction from a anchor client to a primary platform according to an embodiment of the present application;
fig. 7 is a schematic block diagram of a video live broadcasting device provided in an embodiment of the present application;
fig. 8 is a schematic block diagram of a video live device provided by an embodiment of the present application.
Detailed Description
The technical solution 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 higher and higher. For example, in the process of live video broadcasting such as video conferencing, online video education, live broadcasting of e-commerce platforms, and the like, a user wants to receive video with clear image quality, smoothness, and clear voice in a short time.
In general, a video live broadcast method is that a main broadcast client pushes a video stream to a live broadcast server, and then the live broadcast server distributes the video stream to a viewer client. 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 the anchor client, the direction from the anchor client to the live server belongs to the upstream direction of the live broadcast, and generally, the bandwidth in the upstream direction is smaller than the bandwidth in the downstream direction. Since the data stream from the anchor client to the viewer client occupies a large proportion and belongs to the upstream direction of live broadcast, any fault and quality problem of the link from the anchor client to the live broadcast server can affect all the viewer clients. In addition, data transmission from the anchor client to the live broadcast server belongs to air interface transmission, the distance of air interface transmission is long, the number of routes required is large, and the number of forwarded hops is large. Therefore, the quality of the uplink of the anchor client is affected by the quality instability such as insufficient uplink bandwidth, more transmission hops, 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 in a convergence edge cloud, an anchor client can send a video stream to the secondary platform, and then the secondary platform sends the video stream to a viewer 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 viewer client. Wherein, because the data transmission from the secondary platform to the primary platform is through the dedicated line transmission of the network operator, the main failure risk of the uplink is also gathered to the link from the anchor client to the secondary platform. And because the secondary platform is close to the main broadcasting client, the uplink with unstable quality is shortened, the transmission hop count is reduced, the problems of time delay, jitter, packet loss and the like are reduced to a certain extent due to the shortening of the unstable link, and the video streams from different live broadcasting clients are distributed to different secondary platforms, so that the problem of insufficient uplink bandwidth is solved. Therefore, the problem of unstable video live broadcast quality can be alleviated overall, and the user experience is further improved.
For facilitating understanding of the embodiment of the present application, a communication system suitable for a live video method according to the embodiment of the present application is first described in detail with reference to fig. 1. As shown in fig. 1, the communication system 100 may include: primary platform 110, at least one secondary platform 121, 122, and 123, anchor client 130, and at least one viewer client 141, 142, and 143.
The secondary platforms 121 to 123 are all the next-level platforms of the primary platform 110, and may be deployed in an edge cloud, 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 dedicated line of a network operator to implement data interaction. The secondary platforms 121, 122, and 123 may be secondary platforms in the same aggregation edge cloud pool, or may be secondary platforms in different aggregation 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 backup secondary platform for secondary platform 121. The secondary platform 123 may be a secondary platform in the convergence edge cloud pool, or may be a secondary platform in another convergence edge cloud pool. The embodiments of the present application do not limit this.
The anchor client 130 can implement data interaction through a mobile network, a fixed network and the like in a service area of a secondary platform (such as the secondary platform 121).
The viewer client 141 may also be in the service area of the secondary platform 121, so the secondary platform 121 can directly send the video stream pushed by the anchor client 130 to the viewer client 141. The viewer client 142 may not be in the service area of the secondary platform 121 but in the service area of the secondary platform 123, so the secondary platform 121 may push the video stream to the secondary platform 123, and the secondary platform 123 issues the video stream to the viewer client 142. The viewer client 143 may not be within the service area of any of the secondary platforms 121 through 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, and the primary platform 110 sends the video stream 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 therefore can be collectively referred to as a live video server.
In this embodiment of the present application, a two-stage video stream processing platform, that is, the above-mentioned one-stage platform and the two-stage platform, may also be set for processing a video stream. Wherein, the secondary platform can be used for video stream preprocessing, pushing and distribution. The primary platform can be used for video live broadcast service scheduling, video stream preprocessing, pushing and distributing. The primary platform monitors the link state and quality from the local end to the secondary platform, such as time delay, packet loss, jitter, video stream rate and other indexes, and if a problem is found, related warning information can be sent to an operator for processing.
The video stream preprocessing can include director control, rendering processing, video stream caching, video stream compression, video stream coding format conversion, video stream copy and distribution and the like. For example, director control refers to cutting off certain segments or inserting certain segments during live broadcasting. The rendering process refers to calculating the fragmented information into pictures or continuous animations with pixels forming a plane. Video stream compression means that video data of a non-moving image portion can be compressed by a large margin to reduce the amount of data transmission. The video live broadcast service scheduling can comprise service management, user account management and general management.
It should be understood that the data interaction process between the primary platform, the secondary platform, the anchor client, and the viewer client is briefly described above in conjunction with fig. 1. However, these descriptions are merely examples for convenience of understanding and should not be construed as limiting the present application in any way. The embodiment of the application does not limit the number of secondary platforms, the number of anchor clients, the number of viewer clients and the like under the primary platform. In addition, the client of the viewer can be located in the service area of the secondary platform, or outside the service area of the secondary platform, and in the service area of the primary platform, or outside the service area of the primary platform. The embodiments of the present application do not limit this. For ease of understanding, fig. 2 provides a schematic illustration of a network architecture suitable for deploying the communication system described above and shown in fig. 1. As shown in fig. 2, the network architecture 200 may include a metro convergence edge cloud 210, an Internet Data Center (IDC) three-wire room 220, and a provincial core cloud 230.
Wherein, a secondary platform (e.g., the secondary platform 121, 122, or 123 shown in fig. 1) may be deployed in the city aggregation edge cloud 210, and a primary platform (e.g., the primary platform 110 shown in fig. 1) may be deployed in the IDC three-wire machine room 220. The local aggregation edge cloud 210 belongs to an operator cloud resource, and an operator can deploy a dedicated line, so that a secondary platform deployed in the local aggregation edge cloud 210 can be accessed to a primary platform deployed in the IDC three-wire machine room 220 through the dedicated line.
In addition to the above-described secondary platform, the aggregation edge cloud 210 in the city may also deploy a computing node, a multi-service gateway user plane (MSG-U), a User Plane (UP), and the like. The computing nodes are used for providing computing, memory, network and storage resources, and bear light-weight edge cloud service applications of various upper-layer service applications. The MSG-U is used for uniformly accessing all services through the mobile network and the fixed network at the aggregation node.
The mobile network data may include data accessed through a mobile network terminal. The mobile network data may access UP through a base station, an Internet Protocol (IP) radio access network (IP RAN) access ring, and the like, for example, and then access MSG-U from UP. The fixed network data may include data accessed through a fixed network terminal, and the fixed network terminal users may include, for example, broadband users, Internet Protocol Television (IPTV) users, private line users, Virtual Private Network (VPN) users, and the like. The fixed network data can access the MSG-U through a Switch (SW), for example.
The fixed network terminal refers to a terminal using a fixed network access network, and may include, for example, a broadband access device and a dedicated access device for wired communication. The broadband access device may be an Optical Line Terminal (OLT), and the private line access device may be a router or a switch.
The mobile network terminal refers to a terminal accessing a network using a mobile network, such as a mobile phone, a tablet computer (pad), and the like.
Illustratively, after a video stream of a mobile network anchor client passes through an access network device (e.g., a base station) through an IPRAN access layer and an IPRAN convergence layer, a UP sends the video stream to an MSG-U, and the MSG-U forwards the video stream to a secondary platform for processing.
Illustratively, the video stream of the anchor client of the fixed network may be sent to the MSG-U through the switch. For example, the broadband optical line terminal is accessed to the OLT through the broadband network, the set-top box is accessed to the OLT through the IPTV, and the OLT sends the video stream to the MSG-U through the SW. The Customer Premise Equipment (CPE) accesses the SW through a dedicated line, or accesses the SW through a VPN, and the SW transmits the video stream to the MSG-U.
The CPE is a mobile signal access device that receives a mobile signal and forwards the mobile signal with a wireless fidelity (WiFi) signal. The VPN is used to establish a private network over a public network for encrypted communication.
A network operator deploys a lightweight edge cloud at a sink node, opens infrastructure as a service (IaaS) and platform as a service (PaaS) capabilities of the edge cloud to a third party, and deploys various applications, such as a video live broadcast application, at the edge cloud by the third party, so that a user can access application content of the third party nearby.
The secondary platform sends the video stream to a Core Router (CR) through the MSG-U, and the core router sends the video stream to a SW deployed in an IDC three-wire computer room and forwards the video stream to the primary platform through the SW. The provincial core cloud 230 may be deployed with a management node, a Control Plane (CP), and a orchestrator. The management node is used for managing the computing nodes of the province. The orchestrator is configured to generate a control packet according to quality of service (QoS) to guarantee QoS priority of a data link that transmits a video stream.
The management node and the computing node can be collectively referred to as a network operator convergence layer edge cloud management platform.
For the sake of distinction and understanding, in fig. 2, each node included in the live video service end composed of the primary platform and the secondary platform is shown by a dashed box, and each node on the cloud resource deployed by the network operator is shown by a solid box. The messages between the nodes may include control messages and forwarding messages, wherein the control messages may be generated by the CP and are shown by dotted lines in the figure; the forwarding packets may be generated by a UP, shown in solid lines in the figure.
It should be understood that the contents of the city convergence edge cloud, the IDC three-wire machine room, and the provincial core cloud provided in the embodiments of the present application are only exemplary descriptions made in conjunction with fig. 2, and the city convergence edge cloud, the IDC three-wire machine room, and the provincial core cloud may further include more or less modules with other functions. The embodiment of the present application is not particularly limited to this.
Before describing embodiments of the present application, a brief description of the terms referred to in the present application will be given.
1. Infrastructure as a service (IaaS): a cloud computing infrastructure is provided that includes servers, storage, networks, and operating systems. The user does not need to purchase servers, software, database space or network facilities, but only needs to purchase outsourcing services of the resources according to the needs. For providing virtual machines or other resources as services to users.
2. Platform as a service (PaaS): providing a foundation for the SaaS. Is a computing platform that provides development and execution platforms as services to users, such as virtual servers and operating systems.
3. Software as a service (SaaS): is software deployed on the internet. After authorization by SaaS, the user can subscribe, i.e., "pay for use" mode, as needed.
In the embodiment of the application, the primary platform and the secondary platform are built based on an IT (information technology) framework of IaaS + PaaS, and a virtual machine and a container environment are provided for an internet company (over the top, OTT) to deploy the primary platform and the secondary platform.
4. OTT: it means that the internet company develops various video and data service services based on the open internet. Such services may be provided by third parties other than the network operator, and the user may experience the service anywhere and anytime through various terminals.
5. Converging an edge cloud pool: and the network operator integrates the server resources of a plurality of connected aggregation edge clouds adjacent to each other in the geographic position to form an aggregation edge cloud pool. And the nodes of the convergent edge clouds in the same convergent edge cloud pool are nodes in a metropolitan area network. And the nodes in the same convergence edge cloud pool are communicated with each other through an intelligent metropolitan area network, and all server resources in the same convergence edge cloud pool are integrated to carry out overall arrangement and unified scheduling.
6. Quality of service (QoS): is a technique that can provide differential (i.e., different) service levels for different types of traffic streams. Through QoS, a service level with higher priority can be provided for service flows which are sensitive to bandwidth, time delay jitter, packet loss rate and the like, so that the service can meet the requirements of normal and high-performance use of users.
For convenience of understanding, the video live broadcast method provided by the embodiment of the present application will be described in detail below with reference to fig. 3. It should be understood that the method shown in fig. 3 may be applied in architectures such as those shown in fig. 1 and 2.
Fig. 3 is a schematic flow chart of a video live broadcasting 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 sends a video stream.
In the embodiment of the application, the anchor client can send the video stream to a nearby secondary platform. For ease of differentiation and explanation, the secondary platform in the vicinity of the anchor client 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 among the at least one secondary platform according to an Internet Protocol (IP) address of the anchor client. Therefore, the selected first platform is close to the position of the mobile network and fixed network multi-service unified access of the anchor client, and the anchor client is positioned in the service range of the first platform. In step 310, the first platform receives a video stream from the anchor client, accordingly.
Optionally, before step 310, the method 300 further comprises: the primary platform may send first indication information to the anchor client, the first indication information indicating the first platform. Accordingly, the anchor client receives first indication information from the primary platform.
Illustratively, the primary platform assigns the anchor client a first platform based on the IP address of the anchor client. The first indication 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 may directly distribute the video stream to the viewer client of the video stream, or may pre-process the video stream, and the first platform distributes the pre-processed video stream to the viewer client of the video stream. The video stream preprocessing has been described in detail above, and for brevity, will not be described again here.
It should be noted that the number of the viewer clients of the video stream may be one or more. There may be a variety of situations depending on where the viewer's client is located. A first possible scenario is that one or more viewer clients of the video stream are within the service area of the first platform; a second possible scenario 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 other secondary platforms (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 under that primary platform.
It should be understood that the first platform and the second platform are both within the service area of the primary platform.
It is also understood that the three possible scenarios listed above may exist individually, some may exist concurrently, or all may exist concurrently. The embodiments of the present application do not limit this. For any viewer client, once the service scope of the client is determined, the video stream can be pushed based on the processing method provided below.
In a first possible scenario, the first platform may distribute the video stream to the viewer clients within the service area of the first platform, since the viewer clients are 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 video live broadcast quality can be solved.
In a second possible scenario, the first platform may distribute the video stream to the viewer client through the second platform, since the viewer client is outside the service area of the first platform and within the service area of the second platform.
For 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, and then distribute the video stream to the viewer clients in its service area through the second platform.
For 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 then distribute the video stream to the viewer clients in the service area through the second platform.
One or more second platforms may be provided.
Optionally, the first platform may pre-process the received video stream. That is, the first platform may pre-process the video stream before sending it out.
In a third possible scenario, since the viewer client is not within the service area of any of the secondary platforms under 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 there are many situations in which the primary platform distributes the video stream to the viewer client according to the location of the viewer client. A first possible scenario is where one or more viewer clients are within a primary platform service area; a second possible scenario is where 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 case, if the viewer client is outside the service area of the first-level platform, the first-level platform sends the video stream to the next-level distribution platform, and the next-level distribution platform may distribute the video stream to one or more viewer clients outside the service area of the first-level platform.
It is to be understood that the two possibilities listed above may exist separately or simultaneously. The embodiments of the present application do not limit this. For any viewer client, once the service scope of the client is determined, the video stream can be pushed based on the processing method provided below.
Based on the scheme, the first platform receives the video stream from the anchor client, distributes the video stream to the viewer client, is closer to the anchor client relative to the first-stage platform due to the fact that the first platform is deployed in the edge cloud, and can be accessed to the first-stage platform through a private line of a network operator, and link quality is stable. Therefore, in the uplink transmission of the video stream, the part of the link with unstable quality is shortened, and the transmission hop count is reduced, thereby relieving the problem of unstable quality of the live video.
In order to improve the reliability of the live video service, the embodiment of the application also provides a scheme for disaster recovery protection of live video. The anchor client can start disaster recovery protection when detecting that the primary platform is inaccessible for the secondary platform route allocated by the primary platform.
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 backup secondary platform assigned to the anchor client.
In one possible design, the communication system may also include one or more alternate secondary platforms. Each convergence edge cloud pool can be deployed with a secondary platform and a standby secondary platform for disaster recovery protection.
In another possible design, any one secondary platform in the communication system may serve as a backup secondary platform for other secondary platforms. For example, the secondary platforms in the same aggregation edge cloud pool may be standby secondary platforms for each other.
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 according to the IP address of the anchor client. The standby secondary platform allocated by the primary platform for the anchor client can also 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 allocated for 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 carried in the same message for transmission, or may be carried in different messages for transmission, which is not limited in this embodiment of the application.
For example, when the anchor client performs service registration on the primary platform, the primary platform may send a secondary platform list to the anchor client, where the list may be used to indicate the secondary platforms serving the anchor client. Therefore, the list may 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 the same converged edge cloud pool as the first platform.
The anchor client may determine the standby secondary platform based on the IP address of the standby secondary platform. Therefore, when the first platform fails, the anchor client can detect that the first platform route 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 can continue to provide the live video service for the anchor client.
It is understood that after receiving the video stream, the standby secondary platform may also forward the video stream based on the manner provided in step 320, and for brevity, the description is omitted here.
It should be understood that one primary platform may be allocated one or more backup secondary platforms for the anchor client. In the case where multiple standby secondary platforms are allocated, the anchor client may decide on its own which standby secondary platform to switch to. For example, the backup secondary platform to which to switch to is determined according to factors such as link quality between the anchor client and each backup secondary platform, and the number of transmission hops.
It should also be appreciated that switching the video stream to a 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 link quality of the first platform and the standby secondary platform (for example, the secondary platform indicated in the list), such as indexes of test delay, packet loss, and the like, at regular time, and mark access quality of each secondary platform in the list according to the latest test result. When the secondary platform where the client is located has a fault, the client performs secondary authentication and establishes a service session to the secondary platform with the best marked access quality according to the existing detection result, then pushes the live broadcast video stream to the secondary platform with the best link quality, and then pushes the video stream to the primary platform by the secondary platform, thereby realizing flexible and reliable disaster recovery protection of the live video service.
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 best matches the anchor client, and configure reasonable resolution and frame rate parameter values, thereby implementing an adaptive code rate switching function.
Based on the above disaster recovery protection scheme, the anchor client can select other platforms, such as a standby secondary platform or a primary platform, to continue providing the live video service under the condition that the first platform route allocated by the primary platform for the anchor client is inaccessible, so that the service is not interrupted, and the reliability of the live video service is improved.
In addition, the embodiment of the application also provides the QoS guarantee of the live video.
In the embodiment of the application, in the process of sending the video stream by the anchor client, the anchor client may further 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 a link quality guarantee prompt to the anchor client according to link quality analysis, such as conditions of time delay increase, packet loss increase, jitter increase, and the like.
The anchor client can detect the link quality from the local terminal to the first platform; the anchor client can detect the link quality from the local 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.
Illustratively, if the anchor client finds the link quality problem or the anchor client actively proposes a service guarantee application, the anchor client may pop up a window interface to prompt the user that the QoS guarantee service can be provided, and the user may perform QoS guarantee for the link of the anchor client after clicking confirmation. Similarly, the client of the viewer can also actively propose a service application guarantee to guarantee the QoS for the link of the client of the viewer. After QoS guarantee is completed, performance statistical data before and after guarantee can be provided for comparative 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 a 5G/4G network, the information reported by the anchor client to the primary platform can also include Reference Signal Receiving Power (RSRP), signal to interference plus noise ratio (SINR), identification of the wireless cell and other information, and the primary platform analyzes and processes the information according to the information.
The primary platform analyzes the information reported by the anchor client, if the anchor client is accessed through a 5G/4G network, and through interaction with the operator capability open platform, the primary platform judges whether the wireless cell where the anchor client is located meets the condition of starting QoS guarantee (for example, the cell where the anchor is located is a cell which normally works, and the utilization rate of Physical Resource Block (PRB) wireless resources is within the scope of a guarantee-able interval), QoS provisioning may be initiated, such as provisioning of a client-based Integrated Services Digital Network (ISDN)/Public Switched Telephone Network (PSTN) number (MSISDN), 5G QoS identifier (5G QoS identifier, 5QI), QoS metric (QCI) parameter. If the client is accessed through a fixed network broadband network, the QoS guarantee can be directly started, such as the guarantee of an Internet Protocol (IP) address and a source IP address based on a live data stream destination.
For ease of understanding, fig. 4 shows an authentication flow diagram for an anchor 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 domain name of OTT.
In step 420, the anchor client registers to the primary platform according to the IP address of the primary platform, and the primary platform authenticates and authorizes the anchor client.
For example, the anchor client may send a user name and a password to the primary platform for registration, after the registration is completed, the anchor client may send the user name and the password used in the registration to the primary platform, the primary platform authenticates the identity of the anchor client, and after the authentication is passed, the primary platform opens, for the anchor client, a right 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 according to 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 according to 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 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 step 430 and step 440 may also be two separate steps. The embodiments of the present application do not limit this.
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 then perform secondary authentication with the first platform.
The second authentication may be, for example, the anchor client sending a user name and a password to the first platform, the first platform sending the user name and the password to the primary platform, the primary platform confirming the user name and the password, and sending the 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 sends a video stream to the first platform.
Optionally, before the anchor client authenticates to the first platform, the anchor client may send the video stream to the primary platform when detecting that the first platform route is not reachable.
Optionally, before the anchor client authenticates to the first platform, it is detected that the first platform route is not reachable, 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 is not described herein again.
And after the anchor client performs secondary authentication, the anchor client sends the video stream to the target platform.
The target platform may 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 an IP address of the live video distribution platform through domain name resolution of OTT.
The video live broadcast distribution platform can be a first platform, a standby secondary platform or a primary platform.
Illustratively, if the viewer client wants to receive a 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.
Optionally, the viewer client may authenticate to the first platform.
For example, the viewer client may send a user name and a password to the first platform, the first platform sends the user name and the password to the primary platform, the primary platform confirms the user name and the password, and the primary platform sends the authentication result to the first platform. And after the authentication is passed, the client of the viewer 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 username and password to the primary platform, which authenticates the username and password. And after the authentication is passed, the client of the viewer establishes a service session with the primary platform and receives the video stream from the primary platform.
Optionally, the viewer client may also perform authentication on the standby secondary platform, and the authentication process is similar to that of the first platform and is not described here again.
The authentication process of the anchor client and the viewer client described above in connection with fig. 4 and 5 may be performed before the process shown in fig. 3. After the authentication of each client is completed, each client can receive the live video service provided by the live video service end.
In the embodiment of the application, a Transmission Control Protocol (TCP) is adopted from the anchor client to the viewer client for video stream interaction, and one TCP interaction flow from the anchor client to the live broadcast server is split into two independent TCP interaction flows from the anchor client to the secondary platform and then from the secondary platform to the primary platform.
Fig. 6 shows a flowchart of TCP interaction provided by an embodiment of the present application.
As shown in fig. 6, the live video stream is pushed once in a common live video mode at present, and the anchor client pushes the video stream to the live server, and then the live server distributes the video stream to the viewer client. In the embodiment of the present application, a primary TCP interaction flow from a anchor client to a live broadcast server is split into 2 new video live broadcast TCP interaction flows, that is, a primary TCP interaction flow 1 from the anchor client to a secondary platform and a primary TCP interaction flow 2 from the secondary platform to a primary platform shown in fig. 6.
Compared with the original TCP interactive flow, the new video live broadcast TCP interactive flow has the following advantages.
First, by splitting the TCP interaction flow into a TCP interaction flow 1 and a TCP interaction flow 2, an effect of splitting a transmission control protocol acknowledgement character (TCP ACK) of the TCP interaction flow can be achieved. In a TCP slow start stage, the speed of increasing an uplink TCP sliding window is increased by increasing the speed of arriving a downlink TCP ACK message, the transmission rate of an uplink video stream of a main broadcast client is increased, and for a TCP interaction flow 1 from the main broadcast client to a secondary platform, the live broadcast video flow rate can climb faster by greatly shortening the adjustment period of the TCP sliding window.
Secondly, by splitting the TCP interaction flow into a TCP interaction flow 1 and a TCP interaction flow 2, since the TCP interaction flow 1 uses wireless air interface transmission and the TCP interaction flow 2 uses dedicated 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 separately split from the anchor client to the secondary platform access network for TCP flow interaction, thereby reducing unnecessary uplink data retransmission caused by packet loss and timeout due to more transmission hops and network equipment problems. In addition, through parameter adjustment of the anchor client (for example, appropriately reducing a timer for TCP data packet transmission timeout of the anchor client) and starting a TCP fast retransmission mechanism, the effect of fast retransmission can be achieved even if packet loss, timeout and disorder occur from the anchor client to the secondary platform.
Thirdly, by means of TCP interaction flow splitting, the opportunity of TCP out-of-order rearrangement (reordering 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.
Fourthly, after the TCP interaction flow is split, a secondary platform is deployed at a position close to the anchor client, the secondary platform is deployed at an edge cloud, the edge cloud belongs to the cloud resource of an operator, the advantages of the secondary platform in computing, storage and network resources can be brought into play, 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, "blocking" caused by network jitter can be effectively reduced by adding a certain number of frame buffers), the bandwidth resources of an upper network can be saved to the maximum degree, and abundant service types (for example, video live broadcast services with different definitions) can be provided.
And fifthly, the convergence edge cloud is an intersection point of mobile network, broadband and private line services, the position is a network position which is closest to the anchor client and supports the full services, and a secondary platform is deployed to preprocess live video streams in various access modes nearby, so that the maximum resource sharing and resource multiplexing benefits can be obtained.
Fig. 7 is a schematic block diagram of a video live device provided by an embodiment of the present application. As shown in fig. 7, the video live device 700 may include: a processing unit 710 and a transceiving unit 720.
In one possible design, the video live device may correspond to the first platform in the above method embodiments, and may also be a component (e.g., an integrated circuit, a chip, etc.) of the first platform. Wherein the transceiving unit 720 is operable to receive a video stream from a anchor client, the anchor client being an anchor client located within a service area of the first platform, and the first platform being a platform allocated by the primary platform for the anchor client from the at least one secondary platform; and also for distributing the video stream to a viewer client of the video stream.
Optionally, the transceiving unit 720 is further configured to distribute the video stream to a viewer client of the video stream within 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 the service area of the first platform.
Optionally, the processing unit 710 may be used to pre-process the received video stream.
In one possible design, the video live device may correspond to the primary platform in the above method embodiment, and may also be a component (e.g., an integrated circuit, a chip, etc.) of the primary platform. Wherein the transceiving unit 720 is configured to receive a video stream from a first platform, the video stream being a video stream sent by an anchor client to the first platform, the first platform being a platform allocated by the primary platform for the anchor client from the at least one secondary platform; may also be used to distribute the video stream to a viewer client of the video stream.
Optionally, the transceiving unit 720 is further configured to transmit the video stream to a viewer client 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 client of a viewer of the video stream outside the service area of the first-level platform through 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 anchor client in the above method embodiments, and may also be a component (e.g., an integrated circuit, a chip, etc.) of the anchor client. The transceiver 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 video stream can be sent 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 only one logical function division, and there may be other division manners in actual implementation. In addition, functional units in the embodiments of the present application may be integrated into one processor, may exist alone physically, or may be integrated into one module by two or more units. The integrated unit can be realized in a form of hardware, and can also be realized in a form of a software functional unit.
Fig. 8 is another schematic block diagram of a video live device provided by an embodiment of the present application. The device can be used for realizing the function of the video live broadcast method in the method. Wherein the apparatus may be a system-on-a-chip. In the embodiment of the present application, the chip system may be composed of 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 for implementing the functions of the first platform, the primary platform, or the anchor client in the methods provided by the embodiments of the present application. For details, reference is made to the detailed description in the method example, which is not repeated herein.
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 a communication connection between devices, units or modules, and may be an electrical, mechanical or other form for information interaction between the devices, units or modules. The processor 810 may cooperate with the 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 such that the apparatus used 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 performing transceiving functions. Processor 810 may utilize communication interface 830 to send and receive data and/or information and may be used to implement the methods performed by the first platform, or primary platform, or anchor client described in the embodiments corresponding to 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. In fig. 8, the processor 810, the memory 820 and the communication interface 830 are connected by a bus 840. The bus 840 is represented by a thick line in fig. 8, and the connection between other components is merely illustrative and not intended to be limiting. The bus may be divided into an address bus, a data bus, a control bus, etc. For ease of illustration, only one thick line is shown in FIG. 8, but this is not intended to represent only one bus or type of bus.
The application also provides a video live broadcast system, which comprises the primary platform, at least one secondary platform, an anchor client and a viewer client.
The present application further provides a computer program product, the computer program product comprising: a computer program (also referred to as code, or instructions), which when executed, causes a computer to perform the method of any one of the embodiments shown in fig. 3-6.
The present application also provides a computer-readable storage medium having stored thereon a computer program (also referred to as code, or instructions). When executed, cause a computer to perform the method of any one of the embodiments shown in figures 3 to 6.
It should be understood that the processor in the embodiments of the present application may be an integrated circuit chip having signal processing capability. In implementation, the steps of the above method embodiments may be performed by integrated logic circuits of hardware in a processor or by instructions in the form of software. The processor may be a general purpose processor, a Digital Signal Processor (DSP), an Application Specific Integrated Circuit (ASIC), a Field Programmable Gate Array (FPGA) or other programmable logic device, discrete gate or transistor logic device, or discrete hardware components. The various methods, steps, and logic blocks disclosed 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 the method disclosed in connection with the embodiments of the present application may be directly implemented by a hardware decoding processor, or implemented by a combination of hardware and software modules in the decoding processor. The software module may be located in ram, flash memory, rom, prom, or eprom, registers, etc. storage media as is well known in the art. The storage medium is located in a memory, and a processor reads information in the memory and completes the steps of the method in combination with hardware of the processor.
It will also be appreciated that the memory in the embodiments of the subject application can be either volatile memory or nonvolatile memory, or can include both volatile and nonvolatile memory. The non-volatile 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. Volatile memory can be Random Access Memory (RAM), which acts as external cache memory. By way of example, but not limitation, many forms of RAM are available, such as Static Random Access Memory (SRAM), Dynamic Random Access Memory (DRAM), Synchronous Dynamic Random Access Memory (SDRAM), double data rate SDRAM, enhanced SDRAM, SLDRAM, Synchronous Link DRAM (SLDRAM), and direct rambus 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.
As used in this specification, the terms "unit," "module," and the like are intended 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 and steps (step) described in connection with the embodiments disclosed herein may 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 implementation. 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 the present application, it should be understood that the disclosed apparatus, device and method may be implemented in other ways. For example, the above-described apparatus embodiments are merely illustrative, and for example, the division of the units is only one logical division, and other divisions may be realized in practice, for example, a plurality of units or components may be combined or integrated into another system, or some features may be omitted, or not executed. In addition, the shown or discussed mutual coupling or direct coupling or communication connection may be an indirect coupling or communication connection through some interfaces, devices or units, and may be in an electrical, mechanical or other form.
The units described as separate parts may or may not be physically separate, and parts displayed 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 can be selected according to actual needs to achieve the purpose of the solution of the embodiment.
In addition, functional units in the embodiments of the present application may be integrated into one processing unit, or each unit may exist alone physically, or two or more units are integrated into one unit.
In the above embodiments, the functions of the functional units may be fully or partially implemented 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). The procedures or functions described in accordance with the embodiments of the present application are generated in whole or in part when the computer program instructions (programs) are loaded and executed on a computer. The computer may be a general purpose computer, a special purpose computer, a network of computers, or other programmable device. The computer instructions may be stored in a computer readable storage medium or transmitted from one computer readable storage medium to another, for example, from one website site, computer, server, or data center to another website site, computer, server, or data center via wired (e.g., coaxial cable, fiber optic, Digital Subscriber Line (DSL)) or wireless (e.g., infrared, wireless, microwave, etc.). The computer-readable storage medium can be any available medium that can be accessed by a computer or a data storage device, such as a server, a data center, etc., that incorporates one or more of the available media. The usable medium may be a magnetic medium (e.g., floppy disk, hard disk, magnetic tape), an optical medium (e.g., DVD), or a semiconductor medium (e.g., Solid State Disk (SSD)), among others.
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 or portions thereof that substantially contribute to the prior art may be embodied in the form of a software product stored in a storage medium and including instructions for causing a computer device (which may be a personal computer, a server, or a network device) to execute all or part of the steps of the method according to the embodiments of the present application. And the aforementioned storage medium includes: various media capable of storing program codes, such as a usb disk, a removable hard disk, a read-only memory (ROM), a Random Access Memory (RAM), a magnetic disk, or an optical disk.
The above description is only for the 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 of the changes or substitutions within the technical scope of the present application, and shall 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 (10)

1. A video live broadcast method is characterized in that the method is applied to a communication system comprising a primary platform and at least one secondary platform, wherein 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 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 method comprises the following steps:
a first platform of the at least one secondary platform receives a video stream from a anchor client, the anchor client being an anchor client located within a service area of the first platform, and the first platform being a platform allocated by the primary platform from the at least one secondary platform for the anchor client;
the first platform distributes the video stream to a viewer client of the video stream.
2. The method of claim 1, wherein the first platform distributing the video stream to a viewer client of the video stream comprises:
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 viewer clients of the video stream outside of a service area of the first platform.
3. A video live broadcast method is characterized in that the method is applied to a communication system comprising a primary platform and at least one secondary platform, wherein 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 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 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 an anchor client, and the first platform is a platform distributed for the anchor client from the at least one secondary platform;
the primary platform distributes the video stream to a viewer client of the video stream.
4. The method of claim 3, wherein the primary platform distributing the video stream to a viewer client of the video stream comprises:
the primary platform sends the video stream to a client of a viewer of the video stream in a service area; and/or
And the primary platform sends the video stream to a next-level distribution platform so as to forward the video stream to a client of a viewer of the video stream outside the service area of the primary platform through the next-level distribution platform.
5. The method of claim 3 or 4, further comprising:
the primary platform determines the first platform for the anchor client from the at least one secondary platform according to an Internet Protocol (IP) address of the anchor client;
and the primary platform sends first indication information to the anchor client, wherein the first indication information is used for indicating the first platform.
6. A video live broadcast method is characterized in that the method is applied to a communication system comprising a primary platform and at least one secondary platform, wherein 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 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 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 for the anchor client;
and the anchor client sends the video stream to the secondary platform indicated by the indication information.
7. A live video apparatus comprising means for implementing the method of any of claims 1 to 6.
8. A video live apparatus comprising a processor configured to perform the method of any one of claims 1 to 6.
9. A computer-readable storage medium comprising instructions that, when executed on a computer, cause the computer to perform the method of any of claims 1 to 6.
10. A computer program product, comprising a computer program which, when executed, causes a 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 true CN114979677A (en) 2022-08-30
CN114979677B 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 (6)

* 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
US20190090092A1 (en) * 2015-09-10 2019-03-21 Samsung Electronics Co., Ltd. Method and apparatus for estimating position in a wireless communication 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

Patent Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20190090092A1 (en) * 2015-09-10 2019-03-21 Samsung Electronics Co., Ltd. Method and apparatus for estimating position in a wireless communication system
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
CN114979677B (en) 2023-05-09

Similar Documents

Publication Publication Date Title
US11477550B2 (en) Apparatus and methods for enhancing quality of experience for data services over high-capacity wireless networks
US11917498B2 (en) Communication method and communications apparatus
US10212004B2 (en) Method for implementing GRE tunnel, access device and aggregation gateway
US20110113146A1 (en) Dynamic quality of service (qos) setup over wired and wireless networks
US20230308951A1 (en) Data processing method, network element device, and readable storage medium
JP5590146B2 (en) Service quality management system and method
US11228946B2 (en) Communication method and device
CN110035005B (en) Data processing method and device
WO2021051420A1 (en) Dns cache record determination method and apparatus
US20200396301A1 (en) Telecommunication network edge cloud interworking via edge exchange point
JP7063985B2 (en) Network support for uplink streaming
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
KR101209196B1 (en) Method and Apparatus for transceiving data through Heterogeneous networks
CN114007087B (en) Media stream switching method and device
CN111596940B (en) Version upgrading method and device, electronic equipment and storage medium
WO2023212175A2 (en) Deterministic networks
CN114979677B (en) Video live broadcast method, device and computer readable storage medium
US20100172367A1 (en) Network based bandwidth control in ims systems
EP3982598A1 (en) Method and apparatus for sending and receiving message, and communication system
KR101263672B1 (en) Method and Apparatus for transceiving data through Heterogeneous networks
CN110113553B (en) Method and device for processing video telephone
CN112165416A (en) Networking and communication method and device

Legal Events

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