A cloud phone-based live streaming method and device
By switching control permissions and migrating the cloud phone's operating environment within the cloud phone system, the data transmission latency problem caused by the geographical limitations of cloud phones was solved, improving user experience and the transmission efficiency of live streaming footage.
Patent Information
- Application Number
- CN202011377603.5
- Authority / Receiving Office
- CN · China
- Patent Type
- Patents(China)
- Current Assignee / Owner
- Priority Date
- 2020-01-22
- Filing Date
- 2020-11-30
- Publication Date
- 2025-11-25
- Estimated Expiration
- 2040-11-30
AI Technical Summary
The geographical limitations of cloud phones cause data transmission latency, affecting user experience, especially when transmitting data between different geographical regions.
By switching the control permissions of the first client in the first region to the second client, and migrating the first cloud phone in the first region to the second cloud phone in the second region, the second client can directly control the second cloud phone to generate live broadcast footage, reducing the transmission time of control commands.
It improved the user experience, increased audience engagement during live streams, and enhanced the transmission efficiency of the live stream footage.
Smart Images

Figure CN113163217B_ABST
Abstract
Description
[0001] This application claims priority to the Chinese Patent Application No. 202010074328.3, filed on January 22, 2020, and entitled "Live Streaming Method and System Based on Cloud Phone", the content of which is incorporated herein by reference in its entirety. TECHNICAL FIELD
[0002] The present application relates to the technical field of computers, and in particular to a live streaming method and device based on a cloud phone. BACKGROUND
[0003] With the development of technology, the application of cloud phones has become one of the development directions of future mainstream technologies.
[0004] In each cloud phone, a corresponding video, audio, and control software development kit is provided, so that users can deploy their own interfaces in each cloud phone, and then extract the audio, video, and other data generated by the cloud phone in the cloud phone, and transmit them out through the interface, thereby realizing the function of restoring the audio, video, and other data of the cloud phone at the remote end.
[0005] However, cloud phones also have geographical limitations. That is, a cloud phone in region A needs to provide data to a user terminal in region B, and also needs to transmit the data to the relevant network equipment in region B through the network, and then transmit the data to the user terminal in region B through the network equipment in region B, which affects the time delay of data transmission. SUMMARY
[0006] The present application provides a live streaming method and device based on a cloud phone, which switches the control authority of a first client in a first region to a second client, and migrates a first cloud phone in the first region to a second cloud phone in a second region, so that the second client can directly control the second cloud phone to generate a live streaming picture, saving the transmission time of the control instruction sent by the second client to the first cloud phone in the first region, thereby improving the user experience.
[0007] In a first aspect, the present application provides a live streaming method based on a cloud phone, comprising: a live streaming platform live streaming a live streaming picture generated by a first client controlling a first cloud phone, wherein the first cloud phone and the first client are located in a first region, the live streaming platform switches the control authority of the first cloud phone from the first client to a second client, and the live streaming platform online migrates the first cloud phone to a second cloud phone, wherein the second cloud phone and the second client are located in a second region, and the live streaming platform live streams a live streaming picture generated by the second client controlling the second cloud phone.
[0008] The live streaming platform switches the control right of the first client in the first area to the second client in the second area, and migrates the first cloud phone in the first area corresponding to the first client to the second cloud phone in the second area, so that the second client can directly control the second cloud phone to generate a live streaming picture, the transmission time of the control instruction sent by the second client to the first cloud phone in the first area is saved, and therefore the user experience is improved.
[0009] In a possible implementation manner of the first aspect, the switching, by the live streaming platform, of the control right of the first cloud phone from the first client to the second client comprises: receiving, by the live streaming platform, a control right switching request sent by the first client, withdrawing, by the live streaming platform, the control right of the first cloud phone from the first client according to the control right switching request, and issuing, by the live streaming platform, the control right of the first cloud phone to the second client.
[0010] The control right of the cloud phone can be obtained by triggering the control right switching request on the second client, and the participation of the audience in the live streaming is increased.
[0011] In a possible implementation manner of the first aspect, the switching, by the live streaming platform, of the control right of the first cloud phone from the first client to the second client comprises: receiving, by the live streaming platform, a control right switching request sent by the second client, forwarding, by the live streaming platform, the control right switching request to the first client, receiving, by the live streaming platform, a switching determination request sent by the first client, the switching determination request indicating that the second client agrees to switch the control right of the first cloud phone from the first client to the second client, withdrawing, by the live streaming platform, the control right of the first cloud phone from the first client according to the switching determination request, and issuing, by the live streaming platform, the control right of the first cloud phone to the second client.
[0012] The control right of the cloud phone can be obtained by triggering the control right switching request on the second client, and the participation of the audience in the live streaming is increased.
[0013] In a possible implementation manner of the first aspect, the live streaming, by the live streaming platform, of the live streaming picture generated by the second client controlling the second cloud phone comprises: receiving, by the live streaming platform, a control instruction sent by the second client, the control instruction being used to control the second cloud phone, generating, by the live streaming platform, a live streaming picture according to the control instruction, and live streaming, by the live streaming platform, the live streaming picture.
[0014] The process of operating the cloud phone by the audience can be live streamed by receiving the operation of the audience on the second client to run the application and sending the second application live streaming data to the live streaming platform, and therefore the audience participation in the live streaming is increased.
[0015] In a possible implementation of the first aspect, the live streaming platform live streams the live streaming picture in the following manner: the live streaming platform sends a high-definition live streaming picture to the first client, the high-definition live streaming picture being a live streaming picture with a resolution greater than a preset threshold; and the live streaming platform sends a low-latency live streaming picture to the second client, the low-latency live streaming picture being a live streaming picture with a resolution less than the preset threshold.
[0016] The live streaming pictures with different resolutions are sent to different clients, which improves the efficiency of transmitting the live streaming pictures and thus improves the user experience.
[0017] In a second aspect, the present application provides a live streaming platform device, comprising:
[0018] a live streaming module configured to live stream a live streaming picture generated by a first cloud phone under control of a first client, wherein the first cloud phone and the first client are located in a first region;
[0019] a switching module configured to switch control authority of the first cloud phone from the first client to a second client;
[0020] a migration module configured to migrate the first cloud phone online to a second cloud phone, wherein the second cloud phone and the second client are located in a second region;
[0021] The live streaming module is further configured to live stream a live streaming picture generated by the second cloud phone under control of the second client.
[0022] Optionally, the live streaming platform further comprises:
[0023] a receiving module configured to receive a control authority switching request sent by the first client;
[0024] a processing module configured to withdraw the control authority of the first cloud phone from the first client according to the control authority switching request;
[0025] a granting module configured to grant the control authority of the first cloud phone to the second client.
[0026] Optionally, the receiving module is further configured to receive a control authority switching request sent by the second client;
[0027] The switching module is further configured to forward the control authority switching request to the first client;
[0028] The receiving module is further configured to receive a switching determination request sent by the first client, the switching determination request indicating that the second client agrees to switch the control authority of the first cloud phone from the first client to the second client;
[0029] The processing module is further configured to withdraw the control authority of the first cloud phone from the first client according to the switching determination request;
[0030] The granting module is further configured to grant the control authority of the first cloud phone to the second client.
[0031] Optionally, the receiving module is further configured to receive a control instruction sent by the second client, the control instruction being used to control the second cloud mobile phone.
[0032] The processing module is further configured to generate a live picture according to the control instruction.
[0033] The live broadcasting module is further configured to live broadcast the live picture.
[0034] Optionally, the live broadcasting platform further comprises:
[0035] The sending module is configured to send a high-definition live picture to the first client, the high-definition live picture being a live picture with a definition greater than a preset threshold.
[0036] The sending module is further configured to send a low-latency live picture to the second client, the low-latency live picture being a live picture with a definition less than the preset threshold.
[0037] The second aspect or any of the implementation forms of the second aspect is a method implementation corresponding to the first aspect or any of the implementation forms of the first aspect, and the description in the first aspect or any of the implementation forms of the first aspect is applicable to any of the implementation forms of the second aspect or the second aspect, and will not be repeated here.
[0038] In a third aspect, the present application provides a live broadcasting method based on a cloud mobile phone, the cloud mobile phone being arranged in a data center and establishing communication with a live broadcasting platform, the method comprising the following steps: the cloud mobile phone receiving first anchor operation sent by the live broadcasting platform, the live broadcasting platform establishing communication with a first terminal and a second terminal respectively, the first anchor operation being sent to the live broadcasting platform by the first terminal, the cloud mobile phone running an application according to the first anchor operation, generating first application live broadcasting data, and sending the first application live broadcasting data to the live broadcasting platform, the first application live broadcasting data being sent to the first terminal and the second terminal by the live broadcasting platform.
[0039] The cloud mobile phone runs on the network side, and the cloud mobile phone running an application and generating first application live broadcasting data for live broadcasting on the live broadcasting platform can avoid the first terminal performing the above-mentioned actions, thereby reducing the demand for hardware and bandwidth of the first terminal in the live broadcasting process.
[0040] In a possible implementation form of the third aspect, the first terminal generates a first live broadcasting platform interface, the first terminal displays the first live broadcasting platform interface, the second terminal generates a second live broadcasting platform interface, and the second terminal displays the second live broadcasting platform interface, and the method further comprises: the first terminal displays a first live picture on the first live broadcasting platform interface according to the first application live broadcasting data, and the second terminal displays the first application live picture on the second live broadcasting platform interface according to the first application live broadcasting data.
[0041] The first terminal and the second terminal can obtain the first application live data from the live broadcast platform and display the first application live picture, so as to realize real-time live broadcast of the cloud phone operation.
[0042] In a possible implementation manner of the third aspect, the live broadcast platform further establishes a connection with a third terminal, and before the live broadcast platform sends the first control right switching notification to the first terminal and the second control right switching notification to the second terminal according to the control right switching request, the method further includes: receiving, by the live broadcast platform, a control right switching request for the cloud phone sent by the third terminal, and selecting, by the live broadcast platform, the second terminal between the second terminal and the third terminal according to the arbitration rule.
[0043] In a possible implementation manner of the third aspect, the arbitration rule is, for example, a rule of random selection, bidding, selection by login account level, etc.
[0044] Multiple audiences can simultaneously apply for exclusive control right of the cloud phone to the live broadcast platform, and the live broadcast platform can select a terminal where the audience is located according to a preset arbitration rule, so as to improve the interest in the live broadcast process.
[0045] In a possible implementation manner of the third aspect, before the live broadcast platform sends the first control right switching notification to the first terminal and the second control right switching notification to the second terminal according to the control right switching request, the method further includes the following steps: sending, by the live broadcast platform, a control right transfer request to the first terminal, the control right transfer request being used to request the first terminal to transfer the control right of the cloud phone to the second terminal, and receiving, by the live broadcast platform, a control right transfer confirmation sent by the first terminal for the control right transfer request.
[0046] When the audience applies for exclusive control right of the cloud phone to the live broadcast platform through the second terminal, the live broadcast platform inquires the second terminal where the host is located about whether to allow switching of the control right, and the first control right switching notification and the second control right switching notification are sent only after the host confirms, so as to protect the rights of the host.
[0047] In a possible implementation manner of the third aspect, the method further includes the following steps: receiving, by the live broadcast platform, the audience operation sent by the second terminal and shielding the second host operation sent by the first terminal, sending, by the live broadcast platform, the audience operation to the cloud phone, running, by the cloud phone, an application according to the audience operation, generating second application live data, sending the second application live data to the live broadcast platform, sending, by the live broadcast platform, the second application live data to the first terminal and the second terminal, displaying, by the first terminal, a second application live picture on the first live broadcast platform interface according to the second application live data, and displaying, by the second terminal, the second application live picture on the second live broadcast platform interface according to the second application live data.
[0048] Therefore, the process in which the audience operates the cloud phone can be live broadcasted on the first terminal and the second terminal through the live broadcast platform.
[0049] In a possible implementation of the third aspect, the method further includes the following steps: receiving, by the live broadcast platform, a control right sharing request for the cloud phone sent by the second terminal, sending, by the live broadcast platform, a first control right sharing notification to the first terminal and a second control right sharing notification to the first audience terminal according to the control right sharing request, the first control right sharing notification being used to notify the first terminal to share the control right of the cloud phone with the second terminal, and the second control right sharing notification being used to notify the second terminal to share the control right of the cloud phone with the first terminal.
[0050] Therefore, the audience can also apply to the live broadcast platform for jointly operating the cloud phone with the host through the second terminal and live broadcast the operation process.
[0051] Optionally, the live broadcast platform further establishes a connection with a third terminal, and before the live broadcast platform sends the first control right sharing notification to the first terminal and the second control right sharing notification to the first audience terminal according to the control right sharing request, the method further includes the following steps: receiving, by the live broadcast platform, a control right sharing request for the cloud phone sent by the third terminal, and selecting, by the live broadcast platform, the second terminal between the second terminal and the third terminal according to an arbitration rule.
[0052] In a possible implementation of the third aspect, the arbitration rule is, for example, a rule of random selection, bidding, selection by login account level, etc.
[0053] Multiple audiences can simultaneously apply to the live broadcast platform for sharing the control right of the cloud phone, and the live broadcast platform can select the terminal where the audience is located according to a preset arbitration rule, which can improve the interest of the live broadcast process.
[0054] In a possible implementation of the third aspect, the sending of the first application live broadcast data to the live broadcast platform is implemented in the following manner: the cloud phone performs low-latency video encoding processing on the first application live broadcast data to generate a low-latency video stream and performs high-definition video encoding processing on the first application live broadcast data to generate a high-definition video stream, the high-definition video stream has a longer latency time than the low-latency video stream, and the cloud phone sends the low-latency video stream and the high-definition video stream to the live broadcast platform respectively, and the live broadcast platform sends the low-latency video stream to the first terminal and sends the high-definition video stream to the second terminal.
[0055] The live broadcast platform sends the low-latency video stream to the first terminal and sends the high-definition video stream to the second terminal, which can ensure that the host can watch the first application live broadcast picture in low latency on the first terminal and input host operation in time to control the application of the cloud phone.
[0056] In a possible implementation manner of the third aspect, before the cloud phone receives the first anchor operation sent by the live broadcast platform, the method further includes the following steps: the live broadcast platform receives a live broadcast room application sent by the first terminal, the live broadcast platform sends a cloud phone use application to a cloud phone management service node according to the live broadcast room application, and the cloud phone management service node selects a cloud phone from a cloud phone resource pool according to the cloud phone use application and sets the cloud phone to establish a connection with the live broadcast platform.
[0057] The cloud phone can be selected from the cloud phone resource pool according to the anchor demand, and the resource utilization rate of the data center can be improved.
[0058] In a possible implementation manner of the third aspect, the method further includes the following steps: the live broadcast platform receives an end live broadcast request sent by the first terminal, the live broadcast platform sends a cloud phone deactivation application to the cloud phone management service node according to the live broadcast room closing application, and the cloud phone management service node sets the cloud phone to disconnect with the live broadcast platform according to the cloud phone deactivation application.
[0059] The cloud phone can be cancelled from the cloud phone resource pool according to the anchor demand, and the resource utilization rate of the data center can be improved.
[0060] In a possible implementation manner of the third aspect, the method further includes the following steps: the live broadcast platform receives an end live broadcast request sent by the first terminal, the live broadcast platform sends a cloud phone deactivation application to the cloud phone management service node according to the live broadcast room closing application, and the cloud phone management service node sets the cloud phone to disconnect with the live broadcast platform according to the cloud phone deactivation application.
[0061] The fourth aspect or any one of the implementation manners of the fourth aspect is a system implementation corresponding to the third aspect or any one of the implementation manners of the third aspect, and the description in the third aspect or any one of the implementation manners of the third aspect is applicable to any one of the implementation manners of the fourth aspect or the fourth aspect, and will not be repeated here.
[0062] In a possible implementation manner of the third aspect, before the cloud phone receives the first anchor operation sent by the live broadcast platform, the method further includes the following steps: the live broadcast platform receives a live broadcast room application sent by the first terminal, the live broadcast platform sends a cloud phone use application to a cloud phone management service node according to the live broadcast room application, and the cloud phone management service node selects a cloud phone from a cloud phone resource pool according to the cloud phone use application and sets the cloud phone to establish a connection with the live broadcast platform.
[0063] In a possible implementation manner of the fifth aspect, the method further includes: displaying a viewer icon in the first live platform interface, and sending a control right switching request to the live platform if the viewer icon is selected, the control right switching request being used to request to transfer the control right of the cloud phone to a client indicated by the viewer icon.
[0064] In a sixth aspect, a computer-readable storage medium is provided, including instructions which, when executed on a computing device, cause the computing device to perform the method in the fifth aspect or any of the implementation manners of the fifth aspect.
[0065] In a seventh aspect, a client is provided, including an interface generation module configured to establish communication with a live platform, acquire a control right of a cloud phone on a network side through the live platform, and generate and display a first live platform interface; a host operation acquisition module configured to receive a first host operation on the first live platform interface; a sending module configured to send the first host operation to the live platform, the first host operation being used to instruct the cloud phone to run an application and generate first application live data; and a receiving module configured to receive the first application live data through the live platform, the interface generation module being further configured to display a first application live picture in the first live platform interface according to the first application live data.
[0066] The seventh aspect or any of the implementation manners of the seventh aspect is a device implementation corresponding to the fifth aspect or any of the implementation manners of the fifth aspect, and the description in the fifth aspect or any of the implementation manners of the fifth aspect is applicable to the seventh aspect or any of the implementation manners of the seventh aspect, and will not be repeated here.
[0067] In an eighth aspect, a live streaming method is provided, including the following steps: receiving a first host operation on a first client, running an application according to the first host operation, and generating first application live data; and sending the first application live data to a live platform for live streaming.
[0068] In a possible implementation manner of the eighth aspect, the method further includes: receiving a viewer operation on a second client, running an application according to the viewer operation, and generating second application live data; and sending the second application live data to the live platform for live streaming.
[0069] In a possible implementation manner of the eighth aspect, the method further includes: receiving a viewer operation on a second client and a second host operation on a first client, running an application according to the viewer operation and the second host operation, and generating third application live data; and sending the third application live data to the live platform for live streaming.
[0070] In a ninth aspect, a computer-readable storage medium is provided, including instructions which, when executed on a computing device, cause the computing device to perform the method in the eighth aspect or any of the implementation manners of the eighth aspect.
[0071] In a tenth aspect, a client is provided, comprising an interface generation module configured to establish communication with a live streaming platform, generate and display a second live streaming platform interface, and a receiving module configured to receive first application live streaming data from the live streaming platform, and the interface generation module is further configured to display a first application live streaming picture on the second live streaming platform interface according to the first application live streaming data, wherein the first application live streaming data is generated by another client operating a cloud phone to run an application.
[0072] The eighth aspect or any possible implementation manner of the eighth aspect is an apparatus implementation corresponding to the eighth aspect or any possible implementation manner of the eighth aspect, and the description in the eighth aspect or any possible implementation manner of the eighth aspect is applicable to the tenth aspect or any possible implementation manner of the tenth aspect, and will not be repeated here.
[0073] In an eleventh aspect, a live streaming method is provided, comprising: providing a first live streaming platform interface, the first live streaming platform interface displaying a plurality of live streaming room icons, in a case where a first live streaming room icon in the plurality of live streaming room icons is selected, displaying a screen display picture of a first cloud phone on the first live streaming platform interface, the screen display picture comprising an icon of an application installed on the first cloud phone, receiving a first host operation on the first live streaming platform interface, the first host operation being used to instruct the cloud phone to run the application and generate first application live streaming data, and displaying a first application live streaming picture on the first live streaming platform interface according to the first application live streaming data.
[0074] In a possible implementation manner of the eleventh aspect, the method further comprises: displaying a spectator icon on the first live streaming platform interface, and in a case where the spectator icon is selected, sending a control right switching request to the live streaming platform, the control right switching request being used to request to transfer the control right of the cloud phone to a client indicated by the spectator icon.
[0075] In a possible implementation manner of the eleventh aspect, the method further comprises: displaying a time delay icon on the first live streaming platform interface, the time delay icon being used to display a time delay time of the first application live streaming data.
[0076] In a twelfth aspect, a live streaming method is provided, comprising: receiving a first host operation on a first client, running an application according to the first host operation, and generating first application live streaming data, and sending the first application live streaming data to a live streaming platform for live streaming.
[0077] In a possible implementation manner of the twelfth aspect, the method further comprises: receiving a spectator operation on a second client, running an application according to the spectator operation, and generating second application live streaming data, and sending the second application live streaming data to the live streaming platform for live streaming.
[0078] In a possible implementation form of the twelfth aspect, the method further includes: receiving the audience operation on the second client and the second anchor operation on the first client, running the application according to the audience operation and the second anchor operation, and generating third application live data, and sending the third application live data to the live platform for live broadcast.
[0079] In a thirteenth aspect, a cloud phone is provided, including: a receiving module configured to receive a first anchor operation on a first client, an application live data generation module configured to run an application according to the first anchor operation and generate first application live data, and a sending module configured to send the first application live data to a live platform for live broadcast.
[0080] The thirteenth aspect or any of the implementation forms of the thirteenth aspect is a device implementation corresponding to the twelfth aspect or any of the implementation forms of the twelfth aspect, and the description in the twelfth aspect or any of the implementation forms of the twelfth aspect is applicable to the thirteenth aspect or any of the implementation forms of the thirteenth aspect, which will not be repeated here.
[0081] In the embodiments of the present application, the control authority of the first client in the first region is switched to the second client, and the first cloud phone in the first region is migrated to the second cloud phone in the second region, so that the second client can directly control the second cloud phone to generate a live picture, the transmission time of the control instruction sent by the second client to the first cloud phone in the first region is saved, and thus the user experience is improved. BRIEF DESCRIPTION OF DRAWINGS
[0082] Figure 1 FIG. 1 is a system architecture schematic diagram of a live broadcast system according to an embodiment of the present application;
[0083] Figure 2 FIG. 2 is a system architecture schematic diagram of a data center according to an embodiment of the present application;
[0084] Figure 3 FIG. 3 is a live broadcast system scene schematic diagram according to an embodiment of the present application;
[0085] Figure 4a FIG. 4 is a data interaction diagram of a live broadcast method according to an embodiment of the present application;
[0086] Figure 4b FIG. 5 is another data interaction diagram of a live broadcast method according to an embodiment of the present application;
[0087] Figures 5a to 5f FIG. 6 is a screen display picture schematic diagram of a first terminal according to an embodiment of the present application;
[0088] Figures 6a to 6f FIG. 7 is a screen display picture schematic diagram of a second terminal according to an embodiment of the present application;
[0089] Figure 7 is a schematic diagram of a hardware structure of a first terminal according to an embodiment of the present application;
[0090] Figure 8 is a schematic diagram of a hardware structure of a second terminal according to an embodiment of the present application;
[0091] Figure 9 is a schematic diagram of a hardware structure of a live broadcast platform according to an embodiment of the present application;
[0092] Figure 10 is another schematic diagram of a hardware structure of a live broadcast platform according to an embodiment of the present application;
[0093] Figure 11 is another schematic diagram of a hardware structure of a live broadcast platform according to an embodiment of the present application. DETAILED DESCRIPTION
[0094] The embodiment of the present application provides an image processing method, a first image is subjected to semantic segmentation through a first model, a printed image and a handwritten image are obtained, and the efficiency of text detection is improved.
[0095] The technical solutions in the embodiments of the present application will be described below with reference to the drawings in the embodiments of the present application. Obviously, the described embodiments are only part of the embodiments of the present application, rather than all the embodiments of the present application. Based on the embodiments in the present application, all other embodiments obtained by those of ordinary skill in the art without creative labor fall within the scope of the present application.
[0096] In order to facilitate understanding of the embodiments of the present application, first, some data related to the present application are explained and described.
[0097] Cloud Phone: a cloud service running in a physical server with a mobile phone operating system and virtual mobile phone functions, which is usually implemented by using a container, and its essence is to transfer the applications on the mobile phone to the container running in the physical server in the data center, so that different cloud phones are isolated from each other and do not interfere with each other. The cloud phone can install mobile phone applications, and the audio and video streams generated during the running of the mobile phone applications can be sent to the local mobile phone for display and playback. The control commands generated by the local mobile phone according to the audio and video streams displayed and played on the local mobile phone can also be sent to the cloud phone, and the cloud phone can control the running state of the application according to the control commands. Therefore, the mobile phone application of the local mobile phone can be transferred to the cloud phone running in the data center, and the local mobile phone does not need to install a large number of mobile phone applications that consume hardware resources, such as two-dimensional or three-dimensional games, industry design software, etc. The local mobile phone does not need to install a large number of mobile phone applications (which can be unloaded to the cloud phone), and can realize local lightweight. Since the mobile phone application runs in the cloud phone, the local mobile phone does not need a higher hardware configuration to give users the opportunity to use mobile phone applications with higher hardware configuration requirements, so there is no need to replace the local mobile phone due to higher hardware requirements.
[0098] It is worth noting that the cloud phone can also be implemented by using a virtual machine, which is not limited by the embodiments of the present application.
[0099] Network live broadcast: refers to an entertainment form of publicly broadcasting instant images on the Internet with the rise of online video platforms. Network live broadcast is most commonly used to broadcast entertainment-related content. The main characters performing or hosting the network live broadcast are generally called anchors. The biggest difference between live broadcast and traditional uploaded self-recorded videos is that the audience can interact with the anchor in real time through the bullet screen messages, and the anchor can adjust the program content or please the audience in real time according to the audience feedback.
[0100] Live broadcast platform: online video platform, which is specifically implemented as a server or server cluster that publicly broadcasts instant images on the Internet. The live broadcast platform provides a live broadcast room for live broadcasting of instant images. The live broadcast room is accessed by users who have registered on the live broadcast platform and have selected to enter the live broadcast room. These users can access the live broadcast room through their own terminal devices (hereinafter referred to as audience terminal devices) to watch the instant images.
[0101] To solve the problems in the prior art, the embodiments of the present application provide a live broadcast method and equipment based on a cloud phone, which comprises the following steps:
[0102] The live broadcast platform live broadcasts the live broadcast picture generated by the first cloud phone controlled by the first client, wherein the first client and the first cloud phone are located in the first region.
[0103] The live streaming platform switches the control right of the first cloud mobile phone from the first client to the second client;
[0104] The live streaming platform migrates the running environment of the first cloud mobile phone to the second cloud mobile phone, wherein the second cloud mobile phone and the second client are located in the second region;
[0105] The live streaming platform live streams the live streaming picture generated by the second client controlling the second cloud mobile phone.
[0106] The embodiment of the application switches the control right of the first client in the first region to the second client, and migrates the running environment of the first cloud mobile phone in the first region to the second cloud mobile phone in the second region, so that the second client can directly control the second cloud mobile phone to generate the live streaming picture, the transmission time of the control instruction sent by the second client to the first cloud mobile phone in the first region is saved, and thus the user experience is improved.
[0107] In the embodiment of the application, the region refers to a geographical region, for example, South China region, North China region, East America region, West America region, and the like.
[0108] Hereinafter, the embodiment of the application will be described in detail with reference to the above general idea.
[0109] First, please refer to Figure 1 , Figure 1 is a system architecture diagram of the live streaming system according to the embodiment of the application.
[0110] As shown in Figure 1 , the live streaming system of the embodiment of the application includes a live streaming platform 40, a first terminal 20, a second terminal 30, a third terminal 31, and a data center 200 connected to a network 150.
[0111] The first terminal 20, the second terminal 30, and the third terminal 31 are installed with the client of the live streaming platform, which are respectively the first client, the second client, and the third client, and the first client, the second client, and the third client are connected to the live streaming platform 40 and perform data interaction.
[0112] It is worth noting that the number of clients supported by the embodiment of the application can be any number, and the number of corresponding terminals can also be any number.
[0113] Moreover, the client runs on the terminal, and the action performed by the client in the embodiment of the application can be considered as being performed by the terminal running the client.
[0114] The live streaming platform 40 and the data center 200 are located on the network side. The data center 200 is equipped with a cloud phone resource pool 100 and a cloud phone management node 101. The cloud phone resource pool 100 includes multiple cloud phones 103, ... Among them, cloud phone 103 is equipped with live streaming application 1, live streaming application 2, live streaming application 3 and live streaming application 4, and cloud phone 103 is equipped with live streaming application 5.
[0115] Alternatively, the live streaming platform 40 can also be located in the data center 200.
[0116] For example, live streaming applications include mobile games, industry design software, or other mobile applications, and the aforementioned terminals may be, for example, mobile phones.
[0117] In an alternative embodiment, the terminal may be, for example, a tablet computer, a personal digital assistant, a laptop computer, etc. The terminal is equipped with a voice collection device and a camera.
[0118] In this embodiment of the invention, the host 10 can operate the first terminal 20 to open the first client to access the live room provided by the live streaming platform 40, the viewer 11 can operate the second terminal 30 to open the second client to access the live streaming platform 40, and the viewer 12 can operate the third terminal 31 to open the third client to access the live streaming platform 40.
[0119] Furthermore, the host 10 can remotely control the cloud phone 103 through the first terminal 20 to run the live streaming application 1. The cloud phone 103 encodes the screen display generated by the live streaming application 1 into a video stream and sends the video stream to the live streaming platform 40. The live streaming platform 40 broadcasts the screen display in the live streaming room, so that the viewer 11 can watch the screen display of the cloud phone 103 through the second terminal 30, and the viewer 12 can watch the screen display of the cloud phone 103 through the third terminal 31, thereby realizing the live streaming of the screen display of the cloud phone 103.
[0120] For a full explanation, please refer to the following: Figure 2 , Figure 2 This is a schematic diagram of the system architecture of a data center 200 according to an embodiment of the present invention, such as... Figure 2 As shown, the data center 200 includes a cloud phone management node 101 and a cloud phone resource pool 100. The cloud phone resource pool 100 includes multiple physical servers 110, 120, etc. The physical servers can be general-purpose physical servers, such as ARM servers or x86 servers. This embodiment of the invention does not impose specific limitations. In practical applications, one physical server can also correspond to one or more regions.
[0121] Each server in the cloud mobile resource pool 100 includes hardware resources and software resources, the hardware resources include network cards, processors, memories, and other hardware devices commonly used by servers, and the software resources include a server operating system, at least one container running on the server operating system, and a cloud mobile management node agent module. Specifically, Figure 1 The cloud mobile 103 in the container 102 can be implemented by Figure 2 The cloud mobile 103 in the container 102 can be implemented by Figure 1 The cloud mobile 103 in the container 102 can be implemented by Figure 2 The cloud mobile 103 in the container 102 can be implemented by
[0122] The cloud mobile management agent node agent module manages the entire life cycle of the container and can be used to monitor and collect container information of the server and report the server information to the cloud mobile management node 101 in real time. For example, the cloud mobile management agent node agent module 1011 on the server 110 can monitor and collect container information of the server 110, the cloud mobile management agent node agent module 1011 receives a cloud mobile control command sent by the cloud mobile management node 101, and the cloud mobile management agent node agent module 1011 can control the working state of the container 102 and the container 103 on the server 110 according to the cloud mobile control command. The cloud mobile management agent node agent module 1012 is also used to receive a cloud mobile control command sent by the cloud mobile management node 101, and the cloud mobile management agent node agent module 1011 can control the working state of the container 104 and the container 105 on the server 120 according to the cloud mobile control command.
[0123] The cloud mobile is in the form of a container and shares hardware resources and an operating system with other cloud mobiles on the server. Each container can include application programs required by the cloud mobile and dependent resources required by each application program, which can be the core library and system library in the foregoing content. Each cloud mobile and other cloud mobiles share the hardware resources and the operating system of the server. In other words, each container does not have its own kernel, and the application program processes in the container run directly on the kernel of the server. Each cloud mobile can be directly run on the server hardware independently of each other, creating an independent sandbox running environment for the application program.
[0124] In a specific implementation, the cloud mobile management node and the cloud mobile management agent node agent module deployed on each server can be implemented based on a container management system such as Kubernetes and Docker.
[0125] In other embodiments, the cloud phone can also be implemented by a virtual machine, which is not limited in the present application.
[0126] Please refer to Figure 3 The cloud phone migration scenario provided by the embodiment of the present application is shown in the figure.
[0127] As Figure 3 shown, the anchor-controlled local mobile phone client and the cloud phone (i.e. container 103) in the data center 200 close to the anchor local mobile phone client interact with each other to generate a live picture. The live picture collection module collects the live picture of the cloud phone (i.e. container 103) in the data center 200 and sends it to other audience clients.
[0128] When an audience client needs to apply for control, the anchor applies to the live platform mobile management background through the anchor local mobile phone client, and the live platform mobile management background further transfers the control from the anchor local mobile phone client to the audience local mobile phone client, and migrates the running environment of the cloud phone (i.e. container 103) in the data center 200 to the cloud phone (container 106) in the data center 300. After the migration is completed, the live picture generated by the data interaction between the audience local mobile phone client and the cloud phone in the data center 300 is sent to other audience clients and the anchor local mobile phone client.
[0129] In the embodiment of the present application, the running environment of the cloud phone refers to the image of the cloud phone, including the operating system and all drivers and all applications on the operating system, and the applications include live applications.
[0130] It should be noted that the data center 200 is a data center that is closer in physical distance to the anchor local mobile phone client, and the data center 300 is a data center that is closer in physical distance to the audience local mobile phone client. For example, the data center 200 is a data center in the South China region, the data center 300 is a data center in the East China region, the anchor local mobile phone is in the South China region, and the audience local mobile phone is in the East China region. When the control is transferred from the anchor local mobile phone client to the audience local mobile phone client, the running environment of the cloud phone corresponding to the anchor local mobile phone client is migrated from the cloud phone management node 101 in the data center 200 to the cloud phone management node 102 in the data center 300.
[0131] The data center 200 and the data center 300 are located in different regions.
[0132] It should be noted that in the live system scenario, the anchor can actively transfer the control of the cloud phone to the audience client, or the audience can initiate an application and transfer the control to the audience client. The specific method will be described in detail in the following embodiments.
[0133] The following is based onFigure 1 and Figure 2 The system architecture and Figure 3 The live broadcast method related to the embodiments of the present application is described in detail with reference to the live broadcast system application scenario diagram.
[0134] Please refer to Figure 4a and Figure 4b , Figure 4a and Figure 4b is an interaction diagram of the live broadcast method according to the embodiments of the present application, first refer to Figure 4a The live broadcast method according to the embodiments of the present application includes the following steps:
[0135] Step S101: The first client sends a live broadcast room application to the live broadcast platform 40.
[0136] Specifically, please refer to Figures 5a to 5f together, wherein Figures 5a to 5f is a screen display diagram of the first terminal 20 according to the embodiments of the present application.
[0137] Please refer to Figure 5a As shown in Figure 5a , the first terminal 20 is provided with an icon of the first client in the main display interface, and after the anchor 10 clicks the icon of the first client, the first client is started and connected with the live broadcast platform 40, the first client generates a live broadcast platform interface 1100, and displays the live broadcast platform interface 1100 on the first terminal 20, generates an “account” icon displayed on the live broadcast platform interface 1100 which can be clicked by the anchor 10, and inputs the account and password of the anchor 10 to log in the live broadcast platform 40, specifically, the first client sends the account and password input by the anchor 10 to the live broadcast platform 40 for verification, and after the verification is successful, the live broadcast platform 40 notifies the first client that the verification is successful.
[0138] After the verification is successful, the anchor 10 can further operate the first client, click the live broadcast room 1 provided by the first client, so as to trigger the live broadcast room application, at this time, the first client sends the live broadcast room application carrying the identification of the live broadcast room 1 and the account of the anchor 10 to the live broadcast platform 40.
[0139] As shown in Figure 5c , the account name of the anchor 10 is lisa.
[0140] Among them, the live broadcast room 1 can provide live broadcast applications 1-4, the live broadcast room can provide a live broadcast application 5, the first client can make a prompt that the live broadcast room 1 can provide the live broadcast applications 1-4 when the anchor 10 moves the finger to the live broadcast room 1, and make a prompt that the live broadcast room 2 can provide the live broadcast application 5 when the anchor 10 moves the finger to the live broadcast room 2.
[0141] The identifier of the live broadcast room 1 may be, for example, a name set by the host 10 for the live broadcast room 1 or a system default name.
[0142] Step S102: The live broadcast platform 40 authenticates the live broadcast room application to confirm that the account of the host 10 has been logged in, and in the case of successful authentication, starts the live broadcast room 1 on the live broadcast platform 40 and records the role of the first client.
[0143] Specifically, the live broadcast platform 40 authenticates the account of the host 10 carried by the live broadcast room application, confirms that the account of the host 10 has been logged in to the live broadcast platform 40, and records the role of the first client as the host of the live broadcast room 1.
[0144] Step S103: The live broadcast platform 40 sends a cloud phone use application to the cloud phone management service node 101.
[0145] The cloud phone use application carries the identifier of the live broadcast application 1-4.
[0146] Step S104: The cloud phone management service node 101 sets up the cloud phone 103 according to the cloud phone use application.
[0147] The cloud phone management service node 101 may search for the cloud phone 103 in which the live broadcast application 1-4 is set up in the cloud phone resource pool 100 according to the identifier of the live broadcast application 1-4 carried in the cloud phone use application, send the network address of the cloud phone 103 to the first client, and set up a connection between the cloud phone 103 and the live broadcast platform 40. Figure 2 The cloud phone management service node 101 may search for the cloud phone 103 in which the live broadcast application 1-4 is set up in the cloud phone resource pool 100 according to the identifier of the live broadcast application 1-4 carried in the cloud phone use application, send the network address of the cloud phone 103 to the first client, and set up a connection between the cloud phone 103 and the live broadcast platform 40.
[0148] Step S105: The cloud phone 103 encodes the screen display data to generate two video streams: a high-definition video stream 11 and a low-latency video stream 12, and sends the two video streams to the live broadcast platform 40.
[0149] The low-latency video stream 12 has a smaller latency time than the high-definition video stream 11, but has a poorer picture quality.
[0150] The screen display data is used to display the screen display interface of the cloud phone 103.
[0151] Step S106: The second client sends a live broadcast room entry request 1 to the live broadcast platform 40.
[0152] Specifically, reference may be made to Figures 6a to 6f together with Figures 6a to 6f which is a screen display picture of the second terminal 30 according to an embodiment of the application.
[0153] Please refer to Figure 6a For example, Figure 6aAs shown, the second terminal 30 is provided with an icon of the second client in the main display interface, and after the audience 11 clicks the icon of the second client, the second client is started and connected with the live broadcast platform 40, and the second client generates a display Figure 6b As shown, the live broadcast platform interface 2100 is provided with an icon of "my account" by the live broadcast platform interface 2100, and the audience 11 inputs the account and password of the audience 11 to log in the live broadcast platform 40, specifically, the audience terminal 10 sends the account and password input by the audience 11 to the live broadcast platform 40 for verification, and after the verification is successful, the live broadcast platform 40 notifies the audience terminal 20 that the verification is successful.
[0154] As shown Figure 5c As shown, the account of the audience 11 is lily.
[0155] After the verification is successful, the audience 11 can further click the icon of the live broadcast room 1 provided by the live broadcast platform interface 2100 to trigger the live broadcast room entering request, at this time, the second client sends the live broadcast room entering request 1 carrying the identification of the live broadcast room 1 and the account of the audience 11 to the live broadcast platform 40.
[0156] Among them, the live broadcast room 1 can provide live broadcast applications 1-4, and the live broadcast room can provide live broadcast application 5, and the live broadcast platform client can make a prompt that the live broadcast room 1 can provide live broadcast applications 1-4 when the audience 11 moves the finger to the live broadcast room 1, and at the same time, make a prompt that the live broadcast room 2 can provide live broadcast application 5 when the audience 11 moves the finger to the live broadcast room 2.
[0157] Step S107: The live broadcast platform 40 authenticates the live broadcast room entering request 1 to confirm that the account of the audience 12 is legal, that is, the authentication is successful, and the role of the second client is confirmed.
[0158] Specifically, the live broadcast platform 40 authenticates the account of the audience 12 carried by the live broadcast room entering request 1, confirms that the account of the audience 12 has logged in the live broadcast platform 40, and records the role of the third client as the audience of the live broadcast room 1 according to the account.
[0159] Step S108: The third client sends the live broadcast room entering request 2 to the live broadcast platform 40.
[0160] Step S109: The live broadcast platform 40 authenticates the live broadcast room entering request 2 to confirm that the account of the audience 11 is legal, and confirms that the role of the third client is the audience of the live broadcast room 1.
[0161] It is worth noting that steps S108 and S109 are similar to steps S106 and S107 described above, and will not be repeated here.
[0162] Step S110: The live broadcast platform 40 sends the corresponding video stream to the client according to the role of the client accessing the live broadcast room 1.
[0163] Specifically, the live streaming platform 40 confirms that the first client is a host, sends the low-latency video stream 12 to the first client, confirms that the second client is a spectator, sends the high-definition video stream 11 to the second client, and confirms that the third client is a spectator, sends the high-definition video stream 11 to the third client.
[0164] Step S111: The first client receives the low-latency video stream 12, decodes the low-latency video stream 12 to obtain the screen display data of the cloud phone 103 carried by the low-latency video stream 12, and displays the screen display picture of the cloud phone 103 according to the screen display data.
[0165] After the host 10 clicks the option of the live streaming room 1 on the live streaming platform interface 1100 shown in FIG. 11, the first client enters the live streaming room 1 through the above steps, updates and displays the live streaming platform interface 1100. For details, please refer to Figure 5b After the host 10 clicks the option of the live streaming room 1 on the live streaming platform interface 1100 shown in FIG. 11, the first client enters the live streaming room 1 through the above steps, updates and displays the live streaming platform interface 1100. For details, please refer to Figure 5c After the host 10 clicks the option of the live streaming room 1 on the live streaming platform interface 1100 shown in FIG. 11, the first client enters the live streaming room 1 through the above steps, updates and displays the live streaming platform interface 1100. For details, please refer to
[0166] In addition, the live streaming platform interface 1100 also displays an icon 1104, which indicates that the screen display picture of the cloud phone 103 has a delay time of, for example, 1 ms, which is obtained from the decoding process of the low-latency video stream 12 by the first client.
[0167] Step S112: The live streaming platform 40 sends a control permission notification to the first client.
[0168] Specifically, the live streaming platform 40 sends a control permission notification to the first client according to the host role of the first client.
[0169] Further, after receiving the control permission notification, the first client prompts the host 10 that he can control the cloud phone 103 on the live streaming platform interface 1100. For details, please refer to Figure 5c the prompt box 1105.
[0170] Therefore, the first client can obtain the control permission of the cloud phone through the live streaming platform 40.
[0171] Step S113: The second client receives the high-definition video stream 11, decodes the high-definition video stream 11 to obtain the screen display data of the cloud phone 103, and displays the screen display picture of the cloud phone 103 on the live streaming platform interface 1100 according to the screen display data.
[0172] The spectator 11 clicks Figure 6bAfter the live streaming platform interface displays the icon for live room 1 at 11:00, the live streaming platform interface at 11:00 updates to... Figure 6c As shown, please refer to the details. Figure 6c The second client displays the screen of cloud phone 103 on the live streaming platform interface 2100.
[0173] Furthermore, the second client displays icon 2104 on the live streaming platform interface 2100. This icon indicates the latency of the screen display of the cloud phone 103, for example, 5ms. This latency is obtained from the decoding process of the high-definition video stream 11 and is used to illustrate the latency of the screen display.
[0174] Step S114: The third client receives the high-definition video stream 11, decodes the high-definition video stream 11 to obtain the screen display data of the cloud phone 103, and displays the screen display of the cloud phone 103 on the live streaming platform interface according to the screen display data.
[0175] Optionally, the live streaming platform 40 may send a live streaming permission notification to the client. Specifically, the live streaming platform 40 sends a live streaming permission notification to the second client and the third client. The live streaming permission notification is used to inform the operator of the client that they do not have control permissions over the cloud phone 103.
[0176] Furthermore, after receiving the live streaming permission notification, the second and third clients can display a message on the live streaming platform interface indicating that viewers cannot control the cloud phone 103. See details below. Figure 6c The display box 2105.
[0177] Since the latency of the low-latency video stream 12 is less than that of the high-definition video stream 11, the live streaming platform 40 sends the low-latency video stream 12 to the first client. This ensures that the screen display data of the cloud phone 103 obtained by the first client from the low-latency video stream 12 has less latency, allowing the broadcaster 10 to see the screen display of the cloud phone 103 in a timely manner. This ensures that the broadcaster 10's input to the cloud phone 103 in response to the screen display does not cause excessive latency. Sending the high-definition video stream 11 to the second and third clients is based on the consideration that viewers do not need to operate the cloud phone 103, and the real-time requirements for operation are not high. Appropriate latency is acceptable while maintaining image quality.
[0178] Step S115: The first client obtains the anchor's input 10 for anchor operation 1.
[0179] For details, please refer to Figure 5d The touch actions input by the host 10 on the screen display screen 1103 of the cloud phone 103 can be converted into host operation 1 by the first client. Host operation 1 is a touch command, such as dragging the cat and dog icons in the cat and dog battle game.
[0180] Step S116: The first terminal 10 sends the anchor operation 1 to the live broadcast platform 40.
[0181] Step S117: The live broadcast platform 40 forwards the control flow 1 to the cloud phone 103 after successfully authenticating the anchor operation 1.
[0182] Specifically, the anchor operation 1 can be sent together with the account of the anchor 10, and the live broadcast platform 40 authenticates the account.
[0183] In some other examples, the anchor operation 1 can be sent together with the network address of the first terminal 10, and the live broadcast platform 40 authenticates the network address.
[0184] Step S118: The cloud phone 103 runs the live broadcast application 1 in the cloud phone 103 according to the anchor operation 1, generates first application live broadcast data, encodes the first application live broadcast data to generate two video streams: a high-definition video stream 21 and a low-latency video stream 22, and sends the two video streams to the live broadcast platform 40.
[0185] Step S119: The live broadcast platform 40 sends corresponding video streams to the clients according to the roles of the clients.
[0186] Specifically, the live broadcast platform 40 confirms that the role of the first client is a host, sends the low-latency video stream 22 to the first client, confirms that the role of the second client is a viewer, sends the high-definition video stream 21 to the second client, and confirms that the role of the third client is a viewer, and sends the high-definition video stream 21 to the third client.
[0187] Step S120: The first client receives the low-latency video stream 12, decodes the low-latency video stream 12 to obtain the first application live broadcast data, and displays the first application live broadcast picture 1103 on the live broadcast platform interface 1100 according to the first application live broadcast data.
[0188] Specifically, the first client displays the first application live broadcast picture 1103 on the live broadcast platform interface 1100 according to the first application live broadcast data. Figure 5c In this step, the first application live broadcast picture 1103 is displayed in the live broadcast platform interface 1100. Optionally, the first application live broadcast picture 1103 can be enlarged by the anchor 10 to cover the entire live broadcast platform interface 1100.
[0189] In addition, an icon 1104 is also set in the live broadcast room 1 displayed on the first terminal 20, which shows that the screen display picture of the cloud phone 103 has a delay time of, for example, 1 ms, which is obtained from the decoding process of the low-latency video stream 12.
[0190]
[0191] Step S121: The second client receives the high-definition video stream 11, decodes the high-definition video stream 11 to obtain the first application live data, and displays the first application live picture 2103 on the live platform interface 2100 according to the first application live data. For details, please refer to Figure 6c .
[0192] Step S122: The third client receives the high-definition video stream 11, decodes the high-definition video stream 11 to obtain the first application live data, and displays the first application live picture 2103 on the live platform interface of the third client according to the first application live data.
[0193] Therefore, in the above embodiment, the screen display picture of the cloud phone 103 is live broadcasted in the live room 1, the first client accessing the live room 1 displays the screen display picture on the first terminal 20, the anchor 10 operates on the screen of the first terminal 20 according to the screen display picture, the anchor operation generated is forwarded to the cloud phone 103 by the live platform 40, the cloud phone 103 operates the live application 1 according to the anchor operation, and the first application live data is generated, which is sent to the first client, the second client and the third client by the live platform respectively. The anchor 10, the audience 11 and the audience 12 can watch the first application live picture of the cloud phone 103 through the live room 1, so as to realize multi-person live broadcast.
[0194] Since the generation of the first application live data and the video stream encoding and the sending of the first application live data are all performed on the cloud phone 103, the first terminal 10 where the first client is located does not need to perform picture rendering and video stream encoding, and the step of uploading the first application live data to the live platform 40 is also omitted, and the rendering and video encoding capability of the first terminal 10 and the uploading bandwidth are not needed in the live broadcast process.
[0195] In some examples, the live platform 40 can configure the hardware specifications of the cloud phone 103 according to the account level of the anchor 10. The higher the level is, the higher the specifications of the cloud phone 103 are. The higher the specifications of the cloud phone 103 are, the smoother the cloud phone 103 can handle picture rendering and video stream encoding. In addition, the uploading bandwidth of the cloud phone 103 can be provided by the data center 200, and the uploading bandwidth can be bound to the account level of the anchor 10. The higher the level is, the larger the uploading bandwidth is.
[0196] In some other examples, the data center 200 can provide an interface, and the anchor 10 can purchase the hardware specifications and the uploading bandwidth of the cloud phone 103 by accessing the interface.
[0197] The embodiment of the application also supports the cloud phone control right switching function in the live broadcast process. Specifically, the live platform 40 can withdraw the control right of the cloud phone 103 from the first client according to the control right switching request, and issue the control right of the cloud phone 103 to the second client. For details, please refer to Figure 4b, Figure 4b acceptance Figure 4a , Figure 4b The middle cloud phone 103 includes a first cloud phone and a second cloud phone, wherein the first cloud phone belongs to a first area, the second cloud phone belongs to a second area, the first client is in the first area, and the second client is in the second area. As shown in Figure 4b The live broadcast method further includes the following steps:
[0198] Step S123: The second client sends a control right switching request 1 to the live broadcast platform 40.
[0199] For example, please refer to Figure 6d During the process of watching the live broadcast, the audience 11 can click the “say something” input box of the live broadcast platform interface 2100 provided by the second client, at this time, a display box 2103 will pop up, the display box 2103 is provided with a plurality of options, and the control right switching option 1 of the display box 2103 is used to trigger the second client to send the control right switching request 1 to the live broadcast platform 40.
[0200] Specifically, in the case that the audience 11 clicks the control right switching option 1, the second client sends the control right switching request 1 to the live broadcast platform 40.
[0201] Step S124: The third client sends an exclusive control right switching request 2 to the live broadcast platform 40.
[0202] At the same time, when the second client sends the control right switching request 1 to the live broadcast platform 40, the third client also sends the exclusive control right switching request 2 to the live broadcast platform 40.
[0203] Step S125: The live broadcast platform 40 selects the second client from the second client and the third client according to an arbitration rule, and changes the roles of the first client and the second client, and shields the anchor operation sent by the first client.
[0204] Wherein, the live broadcast platform 40 changes the role of the first client from the host to the audience, and changes the role of the second client from the audience to the host.
[0205] For example, the arbitration rule can include: random selection, selection according to the account level of the audience logging into the live broadcast platform 40 (the higher the level, the higher the priority), and bidding (the higher the bid, the higher the priority).
[0206] And the arbitration rule can be preset by the live broadcast platform 40, or set by the anchor 10 in the first client and sent to the live broadcast platform 40 for recording.
[0207] Specifically, in this step, after selecting the second client, the live broadcast platform 40 can also send a control transfer request to the first client, the control transfer request is used to request the first client to transfer the control permission of the cloud phone 103 to the second client. After the first client receives the control transfer request, the live broadcast platform interface of the first client displays an option of whether to transfer the control permission to the second client. If the anchor 10 selects the option, the first client sends a control transfer confirmation to the live broadcast platform 40. After the live broadcast platform 40 receives the control transfer confirmation, the above-mentioned operation of changing the role of the first client from the host to the audience, changing the role of the second client from the audience to the host, and shielding the anchor operation sent by the first client is performed. If the control transfer confirmation is not received, the above-mentioned operation is not performed.
[0208] For example, after the first client receives the control transfer request, the live broadcast platform interface 1100 displays the display box 1106 as shown in the figure, and provides an option. If the anchor 10 clicks “Yes”, the first client sends a control switch confirmation for the control transfer request. Figure 5e
[0209] After selecting the second client, the live broadcast platform 40 updates the role of the audience 11 to the host and records the role of the anchor 10 to the audience, and shields the anchor operation sent by the first client. Specifically, shielding means not forwarding the anchor operation to the cloud phone 103.
[0210] In this embodiment, steps S124 and S125 are optional steps. That is, when there are no two clients sending control switch requests to the live broadcast platform at the same time, and the live broadcast platform only receives the control switch request sent by the second client, the live broadcast platform directly performs corresponding operations according to the control switch request of the second client.
[0211] Step S126: The live broadcast platform 40 acquires the first cloud phone data image.
[0212] After the live broadcast platform 40 acquires the control switch request of the second client, the live broadcast platform 40 first determines whether the second client and the first client are in the same area. If the live broadcast platform 40 determines that the second client and the first client are not in the same area, the live broadcast platform 40 acquires the data of the first cloud phone and generates a first cloud phone data image.
[0213] In actual application, the live broadcast platform 40 can also determine whether to obtain the first cloud phone data image through other conditions. For example, the live broadcast platform 40 can also determine whether to obtain the first cloud phone data image by judging the real-time network situation of the first client and the second client. It can be understood that the operation of obtaining the first cloud phone data image can also be triggered through other conditions, which is not limited here.
[0214] Step S127: The live broadcast platform 40 sends the first cloud phone data image to the cloud phone management service node for backup.
[0215] After the live broadcast platform 40 obtains the first cloud phone data image, the live broadcast platform 40 sends the first cloud phone data image to the cloud phone management service node for backup. After receiving the first cloud phone data image, the cloud phone management service node sends the backup of the first cloud phone data image to the cloud phone management service node in the second region where the second client is located. The first cloud phone data image is the running environment of the first cloud phone.
[0216] Step S128: The cloud phone management service node pulls up the second cloud phone in the second region according to the first cloud phone data image.
[0217] The cloud phone management service node in the second region where the second client is located pulls up the second cloud phone in the second region based on the backup of the first cloud phone data image. The pulling up of the second cloud phone in the second region can be generating a new cloud phone and backing up the first cloud phone data image into the new cloud phone, or updating the first cloud phone data image to an existing cloud phone, which is not limited here. The second cloud phone establishes a connection with the second client, that is, the operation of the second client generates a live broadcast picture on the second cloud phone and live broadcasts it out.
[0218] Step S129: The live broadcast platform 40 sends a control right switching notification 1 to the second client, and the control right switching notification 1 is used to notify the second client to obtain the control right of the cloud phone 103.
[0219] The second client prompts the audience 10 to obtain the control right of the cloud phone 103 according to the control right switching notification 1.
[0220] For example, referring to FIG. 21, the second client pops up a prompt box 2104 on the live broadcast display interface 2100 to inform the audience 11 that the live broadcast application 1 can be started to be controlled. Figure 6e
[0221] Step S130: The live broadcast platform 40 sends a control right switching notification 2 to the first client, and the control right switching notification 2 is used to notify the first client to lose the control right of the cloud phone 103.
[0222] The first client prompts the anchor 10 to lose the control right of the cloud phone 103 according to the control right switching notification 2.
[0223] For example, the first client pops up a prompt box 1107 in the live display interface 1100 to prompt the anchor 10 that the control right of the cloud phone 103 is switched to the account lily corresponding to the second client. Figure 5f
[0224] The control right switching notification 2 can include the account lily.
[0225] Step S131: The second client acquires the audience operation 2 input by the audience 11.
[0226] For example, the audience 11 inputs the audience operation 2 to the screen display picture of the cloud phone 102 in the live platform interface 2100. Figure 6f
[0227] The audience operation 2 is, for example, a touch action on the screen display picture.
[0228] For example, as shown in Figure 6f The audience operation 2 is, for example, dragging the displayed cat and dog online.
[0229] Step S132: The second client sends the audience operation 2 to the live platform 40.
[0230] The audience operation 2 can be sent together with the account of the audience 11.
[0231] Step S133: The live platform 40 authenticates the audience operation 2 successfully and forwards the audience operation 2 to the second cloud phone.
[0232] Step S134: The second cloud phone runs the live application according to the audience operation 2, so that the cat and dog icons are dragged upwards, generates second application live data for rendering the cat and dog icons being dragged upwards, encodes the second application live data to generate two video streams: the high-definition video stream 31 and the low-latency video stream 32.
[0233] Step S135: The second cloud phone sends the two video streams: the high-definition video stream 31 and the low-latency video stream 32 to the live platform 40.
[0234] Step S136: The live platform 40 sends the corresponding video stream to the client according to the role of the client.
[0235] Specifically, the live platform 40 confirms that the role of the second client is the host, sends the low-latency video stream 32 to the second client, confirms that the role of the second client is the audience, sends the high-definition video stream 31 to the second client, and confirms that the role of the first client is the audience, sends the high-definition video stream 21 to the first client.
[0236] Step S137: The second client receives the low-latency video stream 32, decodes the low-latency video stream 32 to obtain the second application live data, and displays the second application live picture 1103 on the live platform interface 2100 according to the second application live data.
[0237] For details, see Figure 6f The second client displays the second application live picture 1103 on the live platform interface 2100 according to the second application live data.
[0238] The second application live picture 1103 shows the process of dragging the cat and dog icon upwards.
[0239] Step S138: The first client receives the high-definition video stream 31, decodes the high-definition video stream 31 to obtain the second application live data, and displays the second application live picture 1103 on the live platform interface 1100 according to the second application live data. For details, see Figure 5f .
[0240] Step S139: The third client receives the high-definition video stream 31, decodes the high-definition video stream 31 to obtain the second application live data, and displays the second application live picture 1103 on the live platform interface of the third client according to the second application live data.
[0241] Based on the above steps, the operation process of the application of the cloud phone is live in the live room. When the audience wants to participate in the live broadcast, the audience sends a request to the host, and the host can give up the control right of the live broadcast and let the audience operate the cloud phone and perform the live broadcast, so that the technical effect of audience participation in the live broadcast is achieved, and the live broadcast experience of the audience and the host can be greatly improved.
[0242] Optionally, the control right switching request can be triggered by the first client. The first client can display an audience icon lily on the live platform interface 1100. When the audience icon lily is selected by the host 10, the first client sends a control right switching request to the live platform 40.
[0243] Therefore, the host 10 can actively select the audience 11 to control the cloud phone 103.
[0244] Please continue to see FIG. 4. The live broadcast method according to the embodiment of the application further includes the following steps:
[0245] Step S140: The first client sends a cancel authorization request to the live platform 40.
[0246] In this step, the cancel authorization request carries authentication information, for example, the account of the host 10.
[0247] For example, the host 10 can click theFigure 5f The "exit" button triggers the first client to send a cancel authorization request to the live broadcast platform 40.
[0248] Step S141: The live broadcast platform 40 acquires the data image of the second cloud phone according to the cancel authorization request.
[0249] In this step, the live broadcast platform 40 executes this step after the authentication is successful according to the authentication information.
[0250] Step S142: The live broadcast platform 40 sends the second cloud phone data image to the cloud phone management service node for backup.
[0251] Step S143: The cloud phone management service node starts the first cloud phone in the first area according to the data image of the second cloud phone, and synchronizes the real-time progress to the first cloud phone, which is the cloud phone corresponding to the first client of the host 10.
[0252] Step S144: The live broadcast platform 40 sends a notification of withdrawing control to the first client.
[0253] For example, in addition to being a game application, the live broadcast application 1 can also be an industry design software, such as an architectural design software, a furniture customization software, etc. Based on the embodiment of the application, designers and customers can remotely interact, share and discuss design schemes, which can be realized through the above live broadcast system.
[0254] Optionally, the live broadcast application 1 can also be a document, picture or video playing software. In a medical scheme discussion scene, doctors can remotely consult with other doctors through the live broadcast application 1. Since the data volume of medical images is large, the processing performance requirement is high, and the data security requirement is high, neither the security nor the performance requirement can be directly met by transferring the corresponding data file to the local terminal, and a cloud phone is needed to carry the sharing and discussion requirement.
[0255] In summary, the live broadcast application can be any type of application, and the embodiment of the application is applicable to different live broadcast scenes.
[0256] The following please see Figures 7-9 , Figure 7 is a hardware structure schematic diagram of the first terminal according to the embodiment of the application, as Figure 7 shown, the first terminal 20 includes a processor 201, a memory 202, a communication interface 203 and a bus 204, the processor 201, the memory 202 and the communication interface 203 are connected with the bus 204 respectively, the memory 202 stores program instructions, and the processor 201 runs the program instructions to realize the functions of the above-mentioned first terminal 20.
[0257] Figure 8Fig. 1 is a schematic diagram of a hardware structure of a second terminal according to an embodiment of the present application, as shown in the figure, the second terminal 30 comprises a processor 301, a memory 302, a communication interface 303 and a bus 304, the processor 301, the memory 302 and the communication interface 303 are connected with the bus 304 respectively, the memory 302 stores program instructions, and the processor 301 runs the program instructions to realize the functions of the second terminal 30. Figure 8
[0258] Figure 9 Fig. 2 is a schematic diagram of a hardware structure of a live broadcast platform according to an embodiment of the present application, as shown in the figure, the live broadcast platform 40 comprises a processor 401, a memory 402, a communication interface 403 and a bus 404, the processor 401, the memory 402 and the communication interface 403 are connected with the bus 404 respectively, the memory 402 stores program instructions, and the processor 401 runs the program instructions to realize the functions of the live broadcast platform 40. Figure 9
[0259] Figure 10 Figure 10 Fig. 3 is a schematic diagram of an apparatus structure of a live broadcast platform according to an embodiment of the present application, as shown in the figure, the live broadcast platform comprises: Figure 10
[0260] a live broadcast module 1001, configured to live broadcast a live broadcast picture generated by a first cloud phone controlled by a first client, wherein the first cloud phone and the first client are located in a first region;
[0261] a switching module 1002, configured to switch a control right of the first cloud phone from the first client to a second client;
[0262] a migration module 1003, configured to online migrate the first cloud phone to a second cloud phone, wherein the second cloud phone and the second client are located in a second region;
[0263] the live broadcast module 1001 is further configured to live broadcast a live broadcast picture generated by the second cloud phone controlled by the second client.
[0264] The method performed by each module of the live broadcast platform in the embodiment is similar to the method performed by the live broadcast platform in the foregoing embodiments shown in Figure 7 and Figure 8 , and details are not described herein again.
[0265] Figure 11 Figure 11 Fig. 4 is a schematic diagram of an apparatus structure of a live broadcast platform according to an embodiment of the present application, as shown in the figure, the live broadcast platform comprises: Figure 11
[0266] The live streaming module 1101 is configured to live stream a live streaming picture generated by the first client controlling the first cloud mobile phone, wherein the first cloud mobile phone and the first client are located in a first region.
[0267] The switching module 1102 is configured to switch the control right of the first cloud mobile phone from the first client to the second client.
[0268] The migration module 1103 is configured to migrate the first cloud mobile phone online to the second cloud mobile phone, wherein the second cloud mobile phone and the second client are located in a second region.
[0269] The live streaming module 1101 is further configured to live stream a live streaming picture generated by the second client controlling the second cloud mobile phone.
[0270] Optionally, the live streaming platform further comprises:
[0271] The receiving module 1104 is configured to receive a control right switching request sent by the first client.
[0272] The processing module 1105 is configured to withdraw the control right of the first cloud mobile phone from the first client according to the control right switching request.
[0273] The issuing module 1106 is configured to issue the control right of the first cloud mobile phone to the second client.
[0274] Optionally, the receiving module 1104 is further configured to receive a control right switching request sent by the second client.
[0275] The switching module 1102 is further configured to forward the control right switching request to the first client.
[0276] The receiving module 1104 is further configured to receive a switching determination request sent by the first client, wherein the switching determination request indicates that the second client agrees to switch the control right of the first cloud mobile phone from the first client to the second client.
[0277] The processing module 1105 is further configured to withdraw the control right of the first cloud mobile phone from the first client according to the switching determination request.
[0278] The issuing module 1106 is further configured to issue the control right of the first cloud mobile phone to the second client.
[0279] Optionally, the receiving module 1104 is further configured to receive a control instruction sent by the second client, wherein the control instruction is used to control the second cloud mobile phone.
[0280] The processing module 1105 is further configured to generate a live streaming picture according to the control instruction.
[0281] The live streaming module 1101 is further configured to live stream the live streaming picture.
[0282] Optionally, the live streaming platform further comprises:
[0283] The sending module 1107 sends a high-definition live picture to the first client, the high-definition live picture being a live picture with a resolution greater than a preset threshold;
[0284] The sending module 1107 is further configured to send a low-delay live picture to the second client, the low-delay live picture being a live picture with a resolution less than the preset threshold.
[0285] The method performed by each module of the live broadcast platform in the embodiment is similar to the method performed by the live broadcast platform in the foregoing Figure 7 and Figure 8 embodiments, and details are not repeated here.
[0286] The embodiment of the application further provides a computer-readable storage medium, including instructions, when the instructions are run on a computing device, the computing device executes the method of the first client, the second client, or the first cloud mobile phone or the second cloud mobile phone.
[0287] Through the above description of the embodiments, those skilled in the art can clearly understand that the application can be implemented by means of software and the necessary general hardware, and of course, it can also be implemented by special hardware including special integrated circuits, special CPUs, special memories, special components, etc. Generally, functions completed by computer programs can be easily implemented by corresponding hardware, and the specific hardware structure for implementing the same function can also be various, such as analog circuits, digital circuits, or special circuits. However, for the present application, software program implementation is a better embodiment. Based on this understanding, the technical solutions of the present application can be embodied in the form of a software product, which is stored in a readable storage medium, such as a computer's floppy disk, U disk, mobile hard disk, ROM, RAM, magnetic disk or optical disk, etc., including a plurality of instructions for making a computer device (which can be a personal computer, a training device, or a network device, etc.) execute the methods of various embodiments of the present application.
[0288] In the above embodiments, all or part of them can be realized by software, hardware, firmware, or any combination thereof. When realized by software, it can be realized in the form of a computer program product in whole or in part.
[0289] The computer program product includes one or more computer instructions. When the computer program instructions are loaded and executed on a computer, the processes or functions described in the embodiments of the present application are generated wholly or partially. The computer can be a general-purpose computer, a special-purpose computer, a computer network, or other programmable devices. The computer instructions can be stored in a computer-readable storage medium or transmitted from one computer-readable storage medium to another computer-readable storage medium, for example, the computer instructions can be transmitted from one website, computer, training device or data center to another website, computer, training device or data center through wired (for example, coaxial cable, optical fiber, digital subscriber line (DSL)) or wireless (for example, infrared, wireless, microwave, etc.). The computer-readable storage medium can be any available medium that can be stored by the computer or a data storage device such as a training device, a data center, etc. integrated with one or more available media sets. The available media can be a magnetic medium (for example, a floppy disk, a hard disk, a magnetic tape), an optical medium (for example, a DVD), or a semiconductor medium (for example, a solid state disk (SSD)), etc.
Claims
1. A cloud phone-based live streaming method, characterized in that, include: The live streaming platform broadcasts the live stream generated by the first cloud phone controlled by the first client, wherein the first cloud phone and the first client are located in a first area; The live streaming platform switches the control permissions of the first cloud phone from the first client to the second client. The live streaming platform migrates the operating environment of the first cloud phone to the second cloud phone online, wherein the second cloud phone and the second client are located in the second region, and the operating environment of the first cloud phone includes the data mirror of the first cloud phone; The live streaming platform broadcasts the live stream generated by the second cloud phone controlled by the second client. The process of the live streaming platform broadcasting the live stream generated by the second cloud phone controlled by the second client includes: the live streaming platform receiving a control command sent by the second client, the control command being used to control the second cloud phone; the live streaming platform generating a live stream according to the control command; and the live streaming platform broadcasting the live stream. The live streaming platform broadcasts the live stream footage by: sending a high-definition live stream to the first client, wherein the high-definition live stream footage is a live stream footage with a resolution greater than a preset threshold; and sending a low-latency live stream to the second client, wherein the low-latency live stream footage is the live stream footage with a resolution less than a preset threshold, wherein the latency of the high-definition video stream corresponding to the high-definition live stream footage is longer than the latency of the low-latency video stream corresponding to the low-latency live stream footage.
2. The method of claim 1, wherein, The live streaming platform switches the control permissions of the first cloud phone from the first client to the second client, including: The live streaming platform receives a control switch request sent by the first client; The live streaming platform reclaims the control permissions of the first client over the first cloud phone based on the control switch request. The live streaming platform grants control permissions from the first cloud phone to the second client.
3. The method according to claim 1, characterized in that, The live streaming platform switches the control permissions of the first cloud phone from the first client to the second client, including: The live streaming platform receives a control switch request sent by the second client; The live streaming platform forwards the control switch request to the first client; The live streaming platform receives a switch confirmation request sent by the first client, the switch confirmation request indicating that the second client agrees to switch the control permissions of the first cloud phone from the first client to the second client; The live streaming platform reclaims the control permissions of the first client over the first cloud phone based on the switching confirmation request. The live streaming platform grants control permissions from the first cloud phone to the second client.
4. A live streaming platform, characterized in that, include: The live streaming module is used to stream the live feed generated by the first cloud phone controlled by the first client, wherein the first cloud phone and the first client are located in a first area; The switching module is used to switch the control permissions of the first cloud phone from the first client to the second client; The migration module is used to migrate the operating environment of the first cloud phone to the second cloud phone online, wherein the second cloud phone and the second client are located in the second region, and the operating environment of the first cloud phone includes the data image of the first cloud phone; The live streaming module is also used to broadcast the live stream generated by the second client controlling the second cloud phone. The live streaming platform also includes: a receiving module, a processing module, and a sending module; The receiving module is used to receive control commands sent by the second client, and the control commands are used to control the second cloud phone; The processing module is used to generate live broadcast footage according to the control instructions; The live streaming module is also used to stream the live stream footage; The sending module is used to send a high-definition live broadcast image to the first client. The high-definition live broadcast image is the live broadcast image with a resolution greater than a preset threshold. The sending module is further configured to send a low-latency live stream to the second client. The low-latency live stream is a live stream with a resolution less than a preset threshold. The latency of the high-definition video stream corresponding to the high-definition live stream is longer than the latency of the low-latency video stream corresponding to the low-latency live stream.
5. The live streaming platform according to claim 4, characterized in that, The live streaming platforms also include: The receiving module is used to receive the control switch request sent by the first client; The processing module is used to revoke the control permissions of the first client over the first cloud phone according to the control switch request; The distribution module is used to distribute control permissions from the first cloud phone to the second client.
6. The live streaming platform according to claim 4, characterized in that, The live streaming platforms also include: The receiving module is used to receive the control switch request sent by the second client; A switching module is used to forward the control switching request to the first client; The receiving module is further configured to receive a switch confirmation request sent by the first client, wherein the switch confirmation request indicates that the second client agrees to switch the control permissions of the first cloud phone from the first client to the second client; The processing module is also used to revoke the control permissions of the first client over the first cloud phone based on the switching determination request; The distribution module is used to distribute control permissions from the first cloud phone to the second client.
7. A computer-readable storage medium, characterized in that, Includes instructions that, when executed on a computing device, cause the computing device to perform the method as claimed in any one of claims 1 to 3.
Citation Information
Patent Citations
Client microbonding live processing method and device, live server and live system
CN106713945A
A cloud mobile phone application copying method and a cloud mobile phone server
CN109597628A
Live broadcast system based on cloud game, live broadcast method and live broadcast interaction method
CN110213601A