Audio and video sharing method, electronic device, storage medium, and chip system
By controlling the transmission and display of audio and video information through screen mirroring protocols and user operations, the problem of noisy sound in multi-host live broadcasts has been solved, enabling users to selectively watch and reducing the burden on cloud servers, thereby improving the viewing experience and data interaction performance.
Patent Information
- Authority / Receiving Office
- WO · WO
- Patent Type
- Applications
- Current Assignee / Owner
- HUAWEI TECH CO LTD
- Filing Date
- 2025-10-17
- Publication Date
- 2026-05-21
AI Technical Summary
In multi-host live streaming scenarios, users cannot independently control the live stream content, resulting in noisy audio that affects the user experience. Furthermore, existing technologies rely on cloud servers for streaming, which increases the computational burden on cloud servers and may cause lag.
Electronic devices send live content to a second device via a screen mirroring protocol, and individually control the transmission and display of each audio and video message based on user actions, reducing reliance on cloud servers and enabling users to selectively watch and manage audio and video content.
It enhances users' control over live streaming content, reduces the computational burden on cloud servers, and improves the viewing experience and data interaction performance.
Smart Images

Figure CN2025128304_21052026_PF_FP_ABST
Abstract
Description
Audio and video sharing methods, electronic devices, storage media and chip systems
[0001] This application claims priority to Chinese patent application filed on November 13, 2024, with application number 202411625595.X and entitled "Audio and Video Sharing Method, Electronic Device, Storage Medium and Chip System", the entire contents of which are incorporated herein by reference. Technical Field
[0002] This application relates to the field of terminal technology, and in particular to an audio and video sharing method, electronic device, storage medium and chip system. Background Technology
[0003] With the development of information technology, some applications in electronic devices can provide live streaming capabilities, enabling single-host live streaming or multi-host live streaming, thereby better mobilizing the interaction between hosts and viewers.
[0004] However, some users may only be interested in certain aspects of a live stream and would prefer to see only the information relevant to them. For example, in multi-host live streams, the simultaneous voices of multiple hosts can create a noisy environment, negatively impacting the user experience. Therefore, users interested only in a single host would prefer to hear only that particular host's voice. Currently, the implementation requires user feedback to the host, who then controls the muting of the shared microphone to reduce interference from other hosts. This lack of user control over the sound and content of the live stream diminishes the viewing experience. Summary of the Invention
[0005] This application provides an audio / video sharing method, an electronic device, a storage medium, and a chip system. The electronic device can individually control each audio / video element within the played audio / video content and perform mixing and control of the audio / video information based on user operations. This allows the electronic device to manage and display one or more audio / video elements separately according to user selection, improving the viewing experience.
[0006] In a first aspect, embodiments of this application provide an audio / video sharing method, the method comprising:
[0007] A first electronic device plays first content, which includes multiple audio and video content items originating from the same application within the first electronic device. In response to a first operation, a second electronic device is controlled to play a portion of the audio and video content of the first content. Based on user operations, the electronic devices can individually control each audio and video content item within the first content. This allows the electronic devices to provide the ability to selectively play portions of audio and video content, managing and displaying one or more audio and video items separately based on user selection, thus enhancing the video viewing experience.
[0008] In one possible implementation, multiple audio and video content sources originate from different electronic devices. Understandably, the cloud server can retrieve audio and video content from these different devices, mix them, and then push the content to the user. This allows users to watch multiple audio and video content simultaneously, thereby enhancing the user experience.
[0009] In one possible implementation, before controlling the second electronic device to play a portion of the audio and video content of the first content in response to the first operation, the method further includes: the first electronic device displaying a first interface, the first interface including one or more selection controls for electronic devices, the selection controls for the one or more electronic devices including the selection controls for the second electronic device; controlling the second electronic device to play a portion of the audio and video content of the first content in response to the first operation includes: in response to the operation of selecting the selection controls of the second electronic device, the first electronic device displaying a second interface, the second interface including one or more selection controls for the first content; and in response to the operation of selecting at least one of the one or more selection controls, controlling the second electronic device to play a portion of the audio and video content of the first content. It is understood that displaying the selection of the device and the selection of audio and video content on different selection interfaces allows the electronic device to better guide the user to gradually select the device and live content to be shared. Each interface displays relatively simple content, which facilitates user viewing and understanding, simplifies the user's operation, and improves the user experience.
[0010] In one possible implementation, before controlling the second electronic device to play a portion of the audio and video content of the first content in response to the first operation, the method further includes: the first electronic device displaying a third interface, the third interface including one or more selection controls for electronic devices, and one or more selection controls for the first content, wherein the selection controls for the one or more electronic devices include the selection controls for the second electronic device; controlling the second electronic device to play a portion of the audio and video content of the first content in response to the first operation includes: controlling the second electronic device to play a portion of the audio and video content of the first content in response to selecting the selection controls for the second electronic device in the third interface, and selecting at least one of the one or more selection controls. It is understood that by displaying the selection of devices and the selection of audio and video content on the same selection interface, the electronic device can more comprehensively display content related to sharing audio and video. In this way, users can have a holistic understanding of the devices that can be used for sharing, as well as the audio and video content that can be used for sharing, thereby facilitating quick sharing operations and improving the user's viewing experience.
[0011] In one possible implementation, in response to the first operation, the method further includes: the first electronic device sending a sharing instruction to the second electronic device; the sharing instruction instructs the second electronic device to request a portion of the audio and video content of the first content from the cloud server. In this embodiment, users can freely select shareable audio and video content on the first electronic device and control the audio and video content displayed on the second electronic device through the sharing instruction. This reduces the operational complexity on the second electronic device and improves its usability. Users can selectively watch audio and video content of interest on the electronic device, expanding the personalized playback of audio and video content, providing users with more operational space, and thus enhancing the user experience.
[0012] In one possible implementation, the sharing instruction includes a first parameter, which is related to a portion of the audio and video content of the first content. It is understood that, based on the parameter in the sharing instruction, the electronic device can request the audio and video content related to the first parameter from the cloud server, without needing to request the entire content of the first content. This reduces the amount of data transmitted between the electronic device and the cloud server, reduces resource consumption, and thus improves the interaction performance between the electronic device and the cloud server.
[0013] In one possible implementation, before the first electronic device plays the first content, the method further includes: the first electronic device obtaining the first content from a cloud server; and before controlling the second electronic device to play a portion of the audio and video content of the first content, the method further includes: instructing the second electronic device to obtain a portion of the audio and video content of the first content from the cloud server according to a first parameter. In this embodiment, when the second electronic device requests live content from a certain live room from the cloud server, the cloud server can obtain the live data of each broadcaster based on a pre-generated virtual live room. This allows the second electronic device to obtain live data more conveniently and quickly, facilitating its processing of the live content and improving data interaction speed.
[0014] In one possible implementation, the first content is stored in a first cache of the cloud server, while a portion of the audio and video content of the first content is stored in a second cache of the cloud server. The first and second caches are separate caches. The cloud server obtains live streaming data from each broadcaster based on the generated virtual live streaming room. In this way, the second electronic device can obtain the live streaming content of a single broadcaster from the virtual live streaming room, i.e., a portion of the audio and video content of the first content, thereby enabling more convenient and faster acquisition of live streaming data and facilitating the processing of live streaming content by the second electronic device.
[0015] In one possible implementation, before controlling the second electronic device to play a portion of the audio and video content of the first content in response to the first operation, the method further includes: the first electronic device obtaining the first content from a cloud server, wherein each audio and video content in the first content includes one or more types of audio and video information, and the one or more types of audio and video information include first type audio and video information and second type audio and video information; the first electronic device obtaining a first response from the cloud server according to a first request associated with the first type of audio and video information; the first electronic device obtaining a second response from the cloud server according to a second request associated with the second type of audio and video information; the first request and the second request are different; and the first electronic device generating the first content based on the responses obtained based on one or more types of audio and video information. In this embodiment, the first electronic device obtains various types of audio and video information by sending different requests, enabling the first electronic device to select specific data for live streaming playback. The first electronic device can share live streaming content to the second electronic device and control the live streaming content displayed on the second electronic device based on the live streaming content to be shared by the user. Since the first electronic device and the second electronic device can communicate via a screen mirroring protocol, the second electronic device can play live streaming content using a player that supports the screen mirroring protocol. This reduces the development cost of the electronic device.
[0016] In one possible implementation, before the first electronic device plays the first content, the method further includes: the first electronic device obtaining the first content from a cloud server; and before controlling the second electronic device to play a portion of the audio and video content of the first content, the method further includes: the first electronic device obtaining a portion of the audio and video content of the first content from the cloud server according to a first parameter, and sending the portion of the audio and video content of the first content to the second electronic device, wherein the first parameter is related to the portion of the audio and video content of the first content. When the first electronic device requests live content from a certain live room from the cloud server, the cloud server can obtain the live data of each broadcaster based on a pre-generated virtual live room. In this way, the first electronic device can obtain live data more conveniently and quickly, facilitating the processing of live content by the first electronic device and improving the data interaction rate.
[0017] In one possible implementation, the first content is stored in a first cache of the cloud server, while a portion of the audio and video content of the first content is stored in a second cache of the cloud server. The first and second caches are separate caches. The cloud server obtains live streaming data from each broadcaster based on the generated virtual live streaming room. In this way, the second electronic device can obtain the live streaming content of a single broadcaster from the virtual live streaming room, i.e., a portion of the audio and video content of the first content, thereby enabling more convenient and faster acquisition of live streaming data and facilitating the processing of live streaming content by the second electronic device.
[0018] In one possible implementation, the first electronic device plays the first content by playing multiple audio and video components of the first content in different windows of the playback interface. This allows the user to control whether each audio and video component plays and whether video information is displayed in different windows, thus enabling flexible settings for the first content and improving the user experience.
[0019] Secondly, another audio / video sharing method provided in the embodiments of this application includes:
[0020] A communication connection is established with a first electronic device; a second electronic device plays a portion of the audio and video content of the first content, wherein the first content, played on the first electronic device, comprises multiple audio and video content items, all originating from the same application within the first electronic device. It is understood that the electronic device can individually control the playback of each audio and video content item within the first content. This allows the electronic device to provide the ability to selectively play portions of audio and video content, managing and displaying one or more audio and video content items separately based on user selection, thus enhancing the video viewing experience.
[0021] In one possible implementation, before the second electronic device plays a portion of the audio and video content of the first content, the method further includes: the second electronic device receiving a sharing instruction from the first electronic device; the sharing instruction includes a first parameter related to the portion of the audio and video content; based on the first parameter, the second electronic device obtains the portion of the audio and video content from a cloud server; wherein each piece of audio and video content includes one or more types of audio and video information, including a first type of audio and video information and a second type of audio and video information; the second electronic device obtains a first response from the cloud server based on a first request associated with the first type of audio and video information; the second electronic device obtains a second response from the cloud server based on a second request associated with the second type of audio and video information; the first request and the second request are different; and the second electronic device generates the portion of the audio and video content based on the responses obtained based on the one or more types of audio and video information. The first electronic device can control the audio and video content displayed on the second electronic device through the sharing instruction. This reduces the operational complexity on the second electronic device and improves its usability. Based on the parameters in the sharing instruction, the second electronic device can obtain the audio and video content related to the first parameter from the cloud server by sending different requests, without needing to request the entire content of the first content. This reduces the amount of data transmitted between the second electronic device and the cloud server, reduces resource consumption, and thus improves the interaction performance between the second electronic device and the cloud server.
[0022] In one possible implementation, before the second electronic device plays a portion of the audio and video content of the first content, the method further includes: the second electronic device acquiring a portion of the audio and video content of the first content from the first electronic device. The first electronic device can share the live stream content to the second electronic device based on a user's selection and control the second electronic device to display the live stream content. Since the first and second electronic devices can communicate via a screen mirroring protocol, the second electronic device can play the live stream content using a player that supports the screen mirroring protocol. This allows for compatibility with more electronic devices to implement the audio and video sharing method of this application embodiment.
[0023] Thirdly, another audio / video sharing method provided in the embodiments of this application is applied to a communication system, the communication system including a first electronic device and a second electronic device, the method including:
[0024] A first electronic device plays first content, which includes multiple audio and video content items originating from the same application within the first electronic device. In response to a first operation, a second electronic device plays a portion of the audio and video content from the first content. It is understood that the electronic devices can individually control the playback of each audio and video content item within the first content. This allows the electronic devices to provide the ability to selectively play portions of audio and video content, managing and displaying one or more audio and video items separately based on user selection, thus enhancing the video viewing experience.
[0025] In one possible implementation, before the second electronic device plays a portion of the audio and video content of the first content, the method further includes: the first electronic device sending a sharing instruction to the second electronic device; the sharing instruction includes a first parameter related to the portion of the audio and video content; based on the first parameter, the second electronic device obtains the portion of the audio and video content from a cloud server; wherein each piece of audio and video content includes one or more types of audio and video information, including a first type of audio and video information and a second type of audio and video information; the second electronic device obtains a first response from the cloud server based on a first request associated with the first type of audio and video information; the second electronic device obtains a second response from the cloud server based on a second request associated with the second type of audio and video information; the first request and the second request are different; and the second electronic device generates the portion of the audio and video content based on the responses obtained based on the one or more types of audio and video information. In this way, the first electronic device can control the audio and video content displayed on the second electronic device through the sharing instruction. This reduces the operational complexity on the second electronic device and improves the ease of use of the electronic device. Based on the parameters in the sharing instruction, the second electronic device can obtain the audio and video content related to the first parameter from the cloud server by sending different requests, without needing to request the entire content of the first content. This reduces the amount of data transmitted between the second electronic device and the cloud server, reduces resource consumption, and thus improves the interaction performance between the second electronic device and the cloud server.
[0026] In one possible implementation, before the first electronic device plays the first content, it further includes: the first electronic device retrieving the first content from a first cache of the cloud server; before the second electronic device plays a portion of the audio and video content of the first content, it further includes: the second electronic device retrieving a portion of the audio and video content of the first content from a second cache of the cloud server, wherein the first cache and the second cache are different caches. When the second electronic device requests live content from a certain live room from the cloud server, the cloud server can obtain the live data of each broadcaster based on a pre-generated virtual live room. In this way, the second electronic device can obtain live data more conveniently and quickly, facilitating the processing of live content by the second electronic device and improving the data interaction rate.
[0027] In one possible implementation, before the second electronic device plays a portion of the audio and video content of the first content, the method further includes: the first electronic device obtaining the first content from a cloud server and generating a portion of the audio and video content of the first content based on one or more audio and video information; wherein each audio and video content in the first content includes one or more types of audio and video information, and the one or more types of audio and video information include first type audio and video information and second type audio and video information; the first electronic device obtains a first response from the cloud server according to a first request associated with the first type of audio and video information; the first electronic device obtains a second response from the cloud server according to a second request associated with the second type of audio and video information; the first request and the second request are different; and the first electronic device generates the portion of the audio and video content of the first content based on the responses obtained based on one or more types of audio and video information. In this way, the first electronic device obtains various types of audio and video information by sending different requests, enabling it to select specific data for live streaming playback. The first electronic device can share the live streaming content to the second electronic device and control the live streaming content displayed on the second electronic device based on the user-selected live streaming content to be shared. Since the first and second electronic devices can communicate via a screen mirroring protocol, the second electronic device can play the live streaming content using a player that supports the screen mirroring protocol, thereby reducing the development cost of the electronic device.
[0028] In one possible implementation, before the first electronic device plays the first content, it further includes: the first electronic device obtaining the first content from a cloud server; before the second electronic device plays a portion of the audio and video content of the first content, it further includes: the first electronic device obtaining a portion of the audio and video content of the first content from the cloud server according to a first parameter, and sending the portion of the audio and video content of the first content to the second electronic device, wherein the first parameter is related to the portion of the audio and video content of the first content. It is understandable that when the first electronic device requests live content from a certain live room from the cloud server, the cloud server can obtain the live data of each broadcaster based on a pre-generated virtual live room. In this way, the first electronic device can obtain live data more conveniently and quickly, facilitating its processing of the live content and improving the data interaction rate.
[0029] In one possible implementation, the first content is stored in a first cache on the cloud server, while a portion of the audio and video content of the first content is stored in a second cache on the cloud server. The first and second caches are separate caches. It can be understood that the cloud server obtains live streaming data from various broadcasters based on the generated virtual live streaming rooms. In this way, the second electronic device can obtain the live streaming content of a single broadcaster from the virtual live streaming room, i.e., a portion of the audio and video content of the first content, thus enabling more convenient and faster acquisition of live streaming data and facilitating the processing of live streaming content by the second electronic device.
[0030] Fourthly, embodiments of this application provide an audio / video sharing device, which may be an electronic device or a chip or chip system within an electronic device. The device may include a processing unit and a display unit. The processing unit is used to implement any processing-related method executed by the electronic device in the first aspect or any possible implementation of the first aspect, or in the second aspect or any possible implementation of the second aspect, or in the third aspect or any possible implementation of the third aspect. The display unit is used to implement any display-related method executed by the electronic device in the first aspect or any possible implementation of the first aspect, or in the second aspect or any possible implementation of the second aspect, or in the third aspect or any possible implementation of the third aspect. When the device is an electronic device, the processing unit may be a processor. The device may further include a storage unit, which may be a memory. The storage unit is used to store instructions, and the processing unit executes the instructions stored in the storage unit to cause the electronic device to implement the methods described in the first aspect or any possible implementation of the first aspect, or in the second aspect or any possible implementation of the second aspect, or in the third aspect or any possible implementation of the third aspect. When the device is a chip or chip system within an electronic device, the processing unit can be a processor. The processing unit executes instructions stored in the storage unit to cause the electronic device to implement the method described in the first aspect or any possible implementation of the first aspect, or in the second aspect or any possible implementation of the second aspect, or in the third aspect or any possible implementation of the third aspect. The storage unit can be a storage unit within the chip (e.g., a register, cache, etc.) or a storage unit located outside the chip within the electronic device (e.g., read-only memory, random access memory, etc.).
[0031] Fifthly, embodiments of this application provide an electronic device including one or more processors and a memory, the memory being coupled to one or more processors, the memory being used to store computer program code, the computer program code including computer instructions, and one or more processors being used to invoke the computer instructions to perform the method described in the first aspect or any possible implementation of the first aspect, or to perform the method described in the second aspect or any possible implementation of the second aspect, or to perform the method described in the third aspect or any possible implementation of the third aspect.
[0032] Sixthly, embodiments of this application provide a computer-readable storage medium storing a computer program or instructions that, when executed on a computer, cause the computer to perform the method described in the first aspect or any possible implementation thereof, or to perform the method described in the second aspect or any possible implementation thereof, or to perform the method described in the third aspect or any possible implementation thereof.
[0033] In a seventh aspect, embodiments of this application provide a computer program product including a computer program, which, when run on a computer, causes the computer to perform the method described in the first aspect or any possible implementation of the first aspect, or to perform the method described in the second aspect or any possible implementation of the second aspect, or to perform the method described in the third aspect or any possible implementation of the third aspect.
[0034] Eighthly, this application provides a chip or chip system including at least one processor and a communication interface. The communication interface and the at least one processor are interconnected via a circuit. The at least one processor is used to run computer programs or instructions to perform the methods described in the first aspect or any possible implementation thereof, or to perform the methods described in the second aspect or any possible implementation thereof, or to perform the methods described in the third aspect or any possible implementation thereof. The communication interface in the chip can be an input / output interface, pins, or circuits, etc.
[0035] In one possible implementation, the chip or chip system described above in this application further includes at least one memory storing instructions. The memory can be an internal storage unit of the chip, such as a register or cache, or it can be a storage unit of the chip itself (e.g., read-only memory, random access memory, etc.).
[0036] It should be understood that aspects four through eight of this application correspond to the technical solutions of aspects one, two, or three of this application, and the beneficial effects achieved by each aspect and the corresponding feasible implementation are similar, and will not be repeated here. Attached Figure Description
[0037] Figure 1 is a schematic diagram of the structure of an electronic device provided in an embodiment of this application;
[0038] Figure 2 is a schematic diagram of the software structure of an electronic device provided in an embodiment of this application;
[0039] Figure 3 is a schematic diagram of a method for obtaining audio and video streams from multiple broadcasters according to an embodiment of this application;
[0040] Figure 4 is a schematic diagram of the modules in a live streaming SDK for a live streaming application provided in an embodiment of this application;
[0041] Figure 5 is a schematic diagram of modules in a cloud server provided in an embodiment of this application;
[0042] Figure 6 is a schematic diagram of the processing logic of a live data stream provided in an embodiment of this application;
[0043] Figure 7 is a schematic diagram of an audio and video sharing method implemented using one of the embodiments of this application;
[0044] Figure 8 is a schematic diagram of the interaction process between the first electronic device, the second electronic device, and the cloud server in one implementation method provided by an embodiment of this application.
[0045] Figure 9 is a schematic diagram of a relevant interface for selecting and sharing live broadcast content provided in an embodiment of this application;
[0046] Figure 10 is a schematic diagram of another interface for selecting to share live content provided in an embodiment of this application;
[0047] Figure 11 is a schematic diagram of an audio and video sharing method implemented using the second method according to an embodiment of this application;
[0048] Figure 12 is a schematic diagram of the interaction process between the first electronic device, the second electronic device, and the cloud server in an implementation method two provided by the present application embodiment;
[0049] Figure 13 is a schematic diagram of an audio and video sharing method implemented using implementation method three, as provided in an embodiment of this application;
[0050] Figure 14 is a schematic diagram of the interaction process between the first electronic device, the second electronic device, and the cloud server in one of the implementation methods three provided in this application embodiment;
[0051] Figure 15 is a schematic diagram of a live streaming interface provided in an embodiment of this application;
[0052] Figure 16 is a schematic diagram of an audio and video sharing method provided in an embodiment of this application;
[0053] Figure 17 is a schematic diagram of another audio and video sharing method provided in an embodiment of this application;
[0054] Figure 18 is a schematic diagram of another audio and video sharing method provided in an embodiment of this application;
[0055] Figure 19 is a schematic diagram of the structure of a chip provided in an embodiment of this application. Detailed Implementation
[0056] To facilitate a clear description of the technical solutions in the embodiments of this application, some terms and technologies involved in the embodiments of this application will be briefly introduced below:
[0057] 1. Terminology
[0058] In the embodiments of this application, terms such as "first" and "second" are used to distinguish identical or similar items with substantially the same function and purpose. For example, "first chip" and "second chip" are used only to distinguish different chips and do not limit their order of execution. Those skilled in the art will understand that terms such as "first" and "second" do not limit the quantity or execution order, and that "first" and "second" do not necessarily imply that they are different.
[0059] It should be noted that, in the embodiments of this application, the terms "exemplary" or "for example" are used to indicate examples, illustrations, or descriptions. Any embodiment or design scheme described as "exemplary" or "for example" in this application should not be construed as being more preferred or advantageous than other embodiments or design schemes. Specifically, the use of terms such as "exemplary" or "for example" is intended to present the relevant concepts in a specific manner.
[0060] In this application embodiment, "at least one" refers to one or more, and "more than one" refers to two or more. "And / or" describes the relationship between related objects, indicating that three relationships can exist. For example, A and / or B can represent: A alone, A and B simultaneously, or B alone, where A and B can be singular or plural. The character " / " generally indicates that the preceding and following related objects are in an "or" relationship. "At least one of the following" or similar expressions refer to any combination of these items, including any combination of single or plural items. For example, at least one of a, b, or c can represent: a, b, c, ab, a--c, bc, or abc, where a, b, and c can be single or multiple.
[0061] 2. Electronic equipment
[0062] The electronic device in this application embodiment can also be any form of terminal device. For example, the electronic device may include: mobile phone, tablet computer, handheld computer, laptop computer, mobile internet device (MID), wearable device, virtual reality (VR) device, augmented reality (AR) device, wireless terminal in industrial control, wireless terminal in self-driving, wireless terminal in remote medical surgery, wireless terminal in smart grid, wireless terminal in transportation safety, wireless terminal in smart city, wireless terminal in smart home, cellular phone, cordless phone, session initiation protocol (SIP) phone, wireless local loop (WLL) station, personal digital assistant (PDA), handheld device with wireless communication function, computing device or other processing device connected to a wireless modem, vehicle device, electronic device in 5G network, or future evolved public land mobile communication network. The embodiments of this application do not limit the scope of electronic devices in a network (PLMN).
[0063] Furthermore, in this application embodiment, the electronic device can also be an electronic device in the Internet of Things (IoT) system. IoT is an important part of the future development of information technology. Its main technical feature is to connect objects to the network through communication technology, thereby realizing an intelligent network of human-machine interconnection and object-to-object interconnection.
[0064] The electronic equipment in the embodiments of this application may also be referred to as: user equipment (UE), mobile station (MS), mobile terminal (MT), access terminal, user unit, user station, mobile station, mobile station, remote station, remote terminal, mobile device, user terminal, terminal, wireless communication equipment, user agent, or user device, etc.
[0065] In this embodiment, the electronic device includes a hardware layer, an operating system layer running on top of the hardware layer, and an application layer running on the operating system layer. The hardware layer includes hardware such as a central processing unit (CPU), a memory management unit (MMU), and main memory. The operating system can be any one or more computer operating systems that implement business processing through processes, such as Linux, Unix, Android, iOS, or Windows. The application layer includes applications such as browsers, address books, word processing software, and instant messaging software.
[0066] For example, Figure 1 shows a schematic diagram of the structure of an electronic device.
[0067] The electronic device may include a processor 110, an external memory interface 120, an internal memory 121, a universal serial bus (USB) interface 130, a charging management module 140, a power management module 141, a battery 142, an antenna 1, an antenna 2, a mobile communication module 150, a wireless communication module 160, an audio module 170, a speaker 170A, a receiver 170B, a microphone 170C, a headphone jack 170D, a sensor module 180, buttons 190, a motor 191, an indicator 192, a camera 193, a display screen 194, and a subscriber identification module (SIM) card interface 195, etc. The sensor module 180 may include a pressure sensor 180A, a gyroscope sensor 180B, a barometric pressure sensor 180C, a magnetic sensor 180D, an accelerometer sensor 180E, a distance sensor 180F, a proximity sensor 180G, a fingerprint sensor 180H, a temperature sensor 180J, a touch sensor 180K, an ambient light sensor 180L, a bone conduction sensor 180M, etc.
[0068] It is understood that the structures illustrated in the embodiments of this application do not constitute a specific limitation on the electronic device. In other embodiments of this application, the electronic device may include more or fewer components than illustrated, or combine some components, or split some components, or have different component arrangements. The illustrated components may include hardware, software, or a combination of software and hardware.
[0069] Processor 110 may include one or more processing units, such as: application processor (AP), modem processor, graphics processing unit (GPU), image signal processor (ISP), controller, video codec, digital signal processor (DSP), baseband processor, and / or neural network processing unit (NPU). Different processing units may be independent devices or integrated into one or more processors. The controller can generate operation control signals based on instruction opcodes and timing signals to control instruction fetching and execution.
[0070] The processor 110 may also include a memory for storing instructions and data. In some embodiments, the memory in the processor 110 is a cache memory. This memory can store instructions or data that the processor 110 has just used or that are used repeatedly. If the processor 110 needs to use the instruction or data again, it can directly retrieve it from the aforementioned memory. This avoids repeated access, reduces the waiting time of the processor 110, and thus improves the efficiency of the system. For example, in the embodiments of this application, the processor 110 can be used to receive user trigger operations, send sharing instructions to other electronic devices, and interact with a cloud server for live data.
[0071] The internal memory 121 can be used to store executable program code, including instructions. The internal memory 121 may include a program storage area and a data storage area. The program storage area may store the operating system, at least one application required for a function, etc. The data storage area may store data created during the use of the electronic device, etc. Furthermore, the internal memory 121 may include high-speed random access memory, and may also include non-volatile memory, such as at least one disk storage device, flash memory device, universal flash storage (UFS), etc. The processor 110 executes various functional applications and data processing of the electronic device by running instructions stored in the internal memory 121 and / or instructions stored in memory disposed in the processor. For example, in this embodiment, the internal memory 121 may be used to store live content that needs to be cached for live streaming applications, store live information obtained from a cloud server, and store relevant code for implementing screen mirroring, etc.
[0072] Figure 2 is a software structure block diagram of an electronic device according to an embodiment of this application.
[0073] A layered architecture divides software into several layers, each with a clear role and function. Layers communicate with each other through software interfaces. In some embodiments, the Android system is divided from top to bottom into the application layer, application framework layer, Android runtime and system libraries, hardware adaptation layer (HAL), and kernel layer.
[0074] The application layer, also known as the application layer, can include a series of application packages. As shown in Figure 2, the application package can include applications such as phone, music, calendar, camera, games, memo, and video. Applications can include system applications and third-party applications. For example, in this embodiment, the application package can also include a live streaming application, which can provide live streaming capabilities to enable single-host live streaming or multi-host live streaming.
[0075] The application framework layer, also known as the framework layer, provides application programming interfaces (APIs) and programming frameworks for applications in the application layer. The framework layer can include some predefined functions.
[0076] The Framework layer can include the Activity Manager, Window Manager, Resource Manager, Notification Manager, Content Provider, and View System, etc. For details, please refer to the relevant technical documentation; further details will not be elaborated upon here.
[0077] The Android runtime consists of core libraries and a virtual machine. The Android runtime is responsible for the control and management of the Android system.
[0078] The core library consists of two parts: one part is the functionalities that need to be called by the Java language, and the other part is the Android core library.
[0079] The application layer and framework layer run in a virtual machine. The virtual machine executes the Java files of the application layer and framework layer as binary files. The virtual machine is used to perform functions such as object lifecycle management, stack management, thread management, security and exception management, and garbage collection. For example, in the embodiments of this application, the virtual machine can be used to perform functions such as account login, requesting live data, and transmitting audio and video streams.
[0080] The system library can also be called the Native layer, which can include multiple functional modules.
[0081] The Hardware Abstraction Layer (HAL) is a layer of abstraction located between the kernel layer and the Android runtime. The HAL can be a wrapper around hardware drivers, providing a unified interface for calls from upper-layer applications.
[0082] The kernel layer is the layer between hardware and software. The kernel layer can include display drivers, camera drivers, audio drivers, etc.
[0083] It should be noted that the embodiments in this application are only illustrated using the Android system. In other operating systems (such as Windows, HarmonyOS, iOS, etc.), as long as the functions implemented by each functional module are similar to those in the embodiments of this application, the solution of this application can also be implemented.
[0084] With the development of information technology, some applications in electronic devices can provide live streaming capabilities, enabling single-host live streaming or multi-host live streaming, thereby better mobilizing the interaction between hosts and viewers.
[0085] In one possible implementation, electronic devices can acquire audio and video streams from various broadcasters based on real-time communication (RTC) mixing technology on cloud servers. The cloud server then mixes the audio and video streams from multiple broadcasters and pushes the mixed streams to each broadcaster and the audience, thus achieving the effect of multiple broadcasters co-hosting a live stream. In some scenarios, the cloud server may also be referred to as a server, cloud-side server, or cloud-side, etc.
[0086] As shown in Figure 3, taking a live-streaming scenario where broadcasters A and B connect as an example, broadcaster A's RTC software development kit (SDK) can push broadcaster A's audio and video streams, i.e., RTC stream A, to the audio and video cloud server. Broadcaster B's RTC SDK can push broadcaster B's audio and video streams, i.e., RTC stream B, to the audio and video cloud server. The audio and video cloud server can then merge and transcode RTC streams A and B, generating multiple RTMP hybrid streams for the live-streaming event based on the Real-Time Messaging Protocol (RTMP), and push them to viewers through the live-streaming cloud server. In some scenarios, the audio and video cloud server may also be called a real-time audio and video cloud server or an RTC server. It is understood that the audio and video cloud server and the live-streaming cloud server can be the same server or different servers.
[0087] In a possible scenario, users watching the live stream might project or share the live stream content from their first electronic device to a second electronic device.
[0088] In one possible implementation, the live streaming cloud server can push the RTC mixed stream to the second electronic device. In this way, both the first and second electronic devices play the live stream using the cloud server's RTC mixing technology. That is, there is no substantial difference in technical implementation between playing live content on the first electronic device and sharing live content on the second electronic device. For example, the audio and video content, bullet comments, ranking information, and PK animations in the live stream are displayed identically on both the first and second electronic devices.
[0089] However, some users may only be interested in certain parts of the live stream, and therefore want to share content that only shows information they are interested in. For example, in multi-host live streams, multiple hosts speaking simultaneously can create a noisy environment, negatively impacting the user experience. Therefore, users interested only in a single host would prefer to hear only that particular host's voice. Currently, the implementation requires user feedback to the host, who then controls the muting of the shared microphone to reduce interference from other hosts. This lack of user control over the sound and content of the live stream diminishes the viewing experience.
[0090] Furthermore, since this method relies on cloud servers for streaming, the cloud servers need to perform audio and video mixing and splicing calculations. Therefore, it places high demands on the performance and real-time processing capabilities of the cloud servers. If the cloud servers cannot process the data in a timely manner, stuttering or audio-visual desynchronization after splicing may occur. In other words, this implementation method puts a significant computational burden on the cloud servers.
[0091] In another possible implementation, the first electronic device can send the live stream content to the second electronic device based on a screen mirroring protocol. This protocol can include Miracast, AirPlay, and the Digital Living Network Alliance (DLNA). However, some screen mirroring protocols have high support for audio and video data but low or no support for live stream information, thus preventing the live stream information from being shared with the second electronic device. Live stream information can be understood as information other than audio and video data, such as the streamer's avatar, name, comments, PK effects, popularity rankings, number of followers, live stream background, and product display information.
[0092] In view of this, the audio and video sharing method provided in this application allows the electronic device to control each live stream information in a live room independently, with each live stream information using an independent channel for data transmission; the electronic device can also mix the data from each live room based on user settings. This enables the electronic device to provide the ability to select specific live stream data for playback, and allows the electronic device to manage and display one or more live stream information separately according to user selection, improving the live streaming experience; it also reduces reliance on cloud servers for mixing, thereby reducing the computational pressure on cloud servers.
[0093] The methods of this application will be described in detail below through specific embodiments. The following embodiments can be combined with each other or implemented independently, and the same or similar concepts or processes may not be described again in some embodiments.
[0094] This application embodiment uses the interaction between a first electronic device, a second electronic device, and a cloud server as an example for illustration. The first electronic device can be understood as an electronic device used by the user to watch the live stream, such as a mobile phone or tablet. The second electronic device can be understood as an electronic device used by the user to share the live stream content, such as a smart screen or smart speaker. The device types of the first and second electronic devices can be the same or different; this application embodiment does not limit the specific device types of the first and second electronic devices. Furthermore, the users in this application embodiment can include a broadcaster and viewers. A broadcaster can be understood as a user using a live streaming application to broadcast live, and a viewer can be understood as a user using a live streaming application to watch the live stream.
[0095] In this embodiment, the live streaming application used by the broadcaster and the viewer can be the same application or different applications. For example, if the broadcaster and the viewer use the same application, the application may include a live streaming SDK. This SDK can be used to implement the audio and video sharing method of this embodiment. If the broadcaster and the viewer use different applications, for ease of distinction, the live streaming SDK in the broadcaster's application can be called the broadcaster SDK, and the live streaming SDK in the viewer's application can be called the viewer SDK.
[0096] It is understandable that the broadcaster SDK can provide live streaming functions for broadcasters, while the viewer SDK can provide live streaming functions for viewers. The broadcaster SDK and viewer SDK can be differentiated functionally, but not formally. For example, in the same live streaming application, the broadcaster SDK and viewer SDK can be within the same live streaming SDK, which can integrate the live streaming functions of both the broadcaster SDK and the viewer SDK. The specific form in which the broadcaster SDK and viewer SDK exist within the live streaming application is not limited in this application embodiment, as long as they can implement the relevant functions of the broadcaster SDK and / or viewer SDK.
[0097] The following example, using the implementation of the live streaming functionality integrated from both the broadcaster SDK and the viewer SDK, illustrates the various modules involved in the live streaming SDK. Figure 4 shows a schematic diagram of the modules involved in the live streaming application of a first or second electronic device. The live streaming SDK may include modules such as sharing, playback, and caching.
[0098] The sharing module is used to implement functions related to live streaming sharing. For example, the sharing module can display an interface related to sharing live streaming content to facilitate user sharing. The sharing module can also identify channels, generate and control signaling commands, thereby enabling communication between the first and second electronic devices to achieve the live streaming sharing function.
[0099] The playback module has player control capabilities, allowing for the rendering and playback of interface elements within the live stream through an independent channel. For example, the playback module can handle audio and video stream playback, bullet screen rendering, live stream background rendering, streamer avatar rendering, and live stream leaderboard rendering.
[0100] The caching module can be used to perform processes such as cache creation, cache control, and cache destruction. Understandably, since information such as the background and streamer's avatar in the live stream does not need to be frequently retrieved from the cloud server, the caching module can establish a local cache to cache information that does not change frequently, thereby reducing access to the cloud server and improving the performance of electronic devices and the cloud server.
[0101] Figure 5 shows a schematic diagram of the various modules involved in the cloud server.
[0102] A cloud server may include a sharing module, an audio / video streaming module, a configuration management module, and a user management module.
[0103] The sharing module in the cloud server works in conjunction with the sharing module of the live streaming SDK in the embodiment corresponding to Figure 4 above, thereby providing capabilities such as signaling identification, signaling control, and signaling transmission. Through the signaling management capabilities provided by the sharing module, the cloud server can achieve signaling interaction with the first electronic device and / or the second electronic device.
[0104] The audio / video streaming module provides playback management capabilities based on channel separation control. Different channels can be used for data transmission of different information streams. For example, the module can manage playback streams, query playback streams, and manage replay streams. These functions can be accessed by a first or second electronic device to obtain audio and video data. After playback ends, the module can automatically delete closed audio and video streams, saving storage space.
[0105] The configuration management module provides the ability to manage live streaming information. Based on the live streaming information currently presented in the live streaming room, the configuration management module can independently control each piece of information and transmit it using an independent channel, thereby enabling the separate control and transmission of multiple pieces of live streaming information.
[0106] The user management module provides management capabilities for both viewer and streamer roles, including the management and maintenance of different roles and access control based on role. Understandably, different roles allow users to perform different actions; for example, streamers can start broadcasting, and users can send comments (bullet messages).
[0107] Figure 6 shows a schematic diagram of the processing logic of the live data stream in an embodiment of this application.
[0108] Different live streaming rooms can have different broadcasters, as shown in Figure 6. Live streaming room A corresponds to broadcaster A, and live streaming room B corresponds to broadcaster B. Electronic devices can collect the audio and video streams and live information streams of broadcasters A and B respectively based on the broadcaster SDK, and push them to the cloud server. Pushing the stream can be understood as the process by which electronic devices send the audio and video streams and live information streams to the cloud server.
[0109] For example, broadcaster A's SDK can collect broadcaster A's audio and video streams and live information streams, and send broadcaster A's audio and video streams to a cloud server through audio and video channel A, and send broadcaster A's live information streams to a cloud server through live information channel A. Audio and video channel A may include one or more channels for transmitting broadcaster A's audio, video, and other information respectively. Live information channel A may include one or more channels for transmitting various live information from broadcaster A respectively.
[0110] The broadcaster SDK for broadcaster B can collect broadcaster B's audio and video streams and live information streams, and send broadcaster B's audio and video streams to the cloud server through audio and video channel B, as well as send broadcaster B's live information streams to the cloud server through live information channel B. Audio and video channel B can include one or more channels for transmitting broadcaster B's audio, video, and other information respectively. Live information channel B can include one or more channels for transmitting various live information from broadcaster B respectively.
[0111] When users watch a live stream, their electronic devices can pull the stream from the cloud server. Pulling the stream can be understood as the process by which the electronic device obtains the audio and video streams and live information streams from the cloud server. In a possible implementation, the electronic device can launch multiple viewer SDK threads, each of which can create a streamer instance. The viewer SDK threads can then obtain the audio and video streams and live information streams of each streamer based on the corresponding audio and video channels and live information channels of each streamer instance.
[0112] For example, as shown in Figure 6, the electronic device can launch two viewer SDK threads: viewer SDK thread A and viewer SDK thread B. Viewer SDK thread A can create a broadcaster instance A, which can obtain the audio / video channel A and live information channel A corresponding to broadcaster A. Viewer SDK thread B can create a broadcaster instance B, which can obtain the audio / video channel B and live information channel B corresponding to broadcaster B. In this way, the viewer SDK can obtain the audio / video stream of broadcaster A based on the audio / video channel A, and obtain the live information stream of broadcaster A based on the live information channel A. The viewer SDK can also obtain the audio / video stream of broadcaster B based on the audio / video channel B, and obtain the live information stream of broadcaster B based on the live information channel B.
[0113] After the viewer SDK obtains the audio and video streams and live information streams of each broadcaster, it can also mix the live data of each broadcaster. For example, it can mix the live data of broadcaster A and broadcast data of broadcaster B, and display the live content of broadcasters A and B on the interface.
[0114] It is understandable that when a user is watching a live stream, the electronic device can display a background image on the live stream interface, such as the streamer's avatar. In scenarios where multiple streamers are live streaming together, the viewer SDK can obtain multiple streamers' background images after mixing the live stream data from each streamer. Optionally, the viewer SDK can select one streamer's background image according to a pre-set priority, or use any pre-saved image as the background image and instruct the electronic device to display that background image on the live stream interface. The specific background image displayed on the live stream interface is not limited in this embodiment.
[0115] For example, taking a scenario where streamer A and streamer B are conducting a live stream together, the viewer SDK can choose streamer A's background image as the background image for the live stream interface, or streamer B's background image, or the background image of a streamer the viewer follows, or the background image of a streamer with high popularity or a large number of followers, etc. Furthermore, the viewer SDK can also use any pre-saved image as the background image for the live stream interface; this embodiment of the application does not impose any limitations.
[0116] This application embodiment can transmit audio and video information and live information of each live room using independent channels, and mix the data of each live room through the live streaming SDK. In this way, electronic devices can manage and display one or more live information separately, reducing the dependence on cloud servers for mixing, thereby reducing the computing pressure on cloud servers.
[0117] The audio and video sharing method of this application embodiment can include various implementation methods. The different implementation methods will be described in detail below with reference to Figures 7 to 14.
[0118] Implementation Method 1:
[0119] As shown in Figure 7, during the user's live stream viewing, in response to the user's triggering of a sharing operation, the first electronic device can send a sharing command to the second electronic device. It is understood that the user operations mentioned in this application embodiment may include, but are not limited to, touch (e.g., clicking), voice control, gestures, etc., and this application embodiment does not impose any limitations on these operations.
[0120] After receiving a sharing instruction, the second electronic device can send a data request to the cloud server to obtain relevant data from the live stream. For example, based on the user's selection, the second electronic device can request audio data, background information, and live chat messages. The cloud server can then return the corresponding data to the second electronic device. For instance, the cloud server can return audio data, background information, and live chat messages based on the audio data channel, background information channel, and live chat message channel. In this way, the second electronic device can display the interface based on the data returned by the cloud server, thereby enabling the sharing of the live stream.
[0121] Figure 8 illustrates the interaction flow between the first electronic device, the second electronic device, and the cloud server in the audio and video sharing method of implementation method one.
[0122] The interaction process may include (8.1) the process of watching the live stream using a first electronic device and (8.2) the process of sharing the live stream content to a second electronic device. Specifically, (8.1) the process of watching the live stream using the first electronic device may include steps S801 to S803 as described below, and (8.2) the process of sharing the live stream content to the second electronic device may include steps S804 to S809 as described below. A detailed explanation follows.
[0123] (8.1) The process of watching a live broadcast using a first electronic device.
[0124] S801, User account login process.
[0125] S801.1 The live streaming application of the first electronic device logs in to the user account through the cloud server.
[0126] In response to a user's login request triggered by the live streaming application, the application can send a login request to the cloud server to log in to the user's account. Upon receiving the login request, the cloud server can retrieve the user's login information from the user management module and then log in to the account.
[0127] S801.2 The cloud server returns login information to the first electronic device.
[0128] After a user successfully logs in with their account, the cloud server can return login information to the live streaming application on the first electronic device.
[0129] Optionally, when a user uses the live streaming application for the first time, they need to register and log in to their account. In subsequent uses of the application, the user does not need to log in every time. The application can periodically request the user to log in, and within a certain period after login, the user's account is considered successfully logged in by default. In other words, in the audio and video sharing method of this embodiment, step S801 is optional. This reduces the frequency of account logins required when using the live streaming application, thereby improving the user experience.
[0130] Understandably, before a user enters a live stream, the live streaming application can display a list of live stream rooms. This list can include information about multiple live stream rooms, such as their identifiers, thumbnails, names, number of followers, streamer avatars, streamer names, and links. Users can select the desired live stream room from this list. Therefore, after a user successfully logs in, the cloud server can also call the configuration management module to retrieve information related to the live stream room list and return it to the live streaming application.
[0131] S802, The first electronic device requests to obtain live data.
[0132] When a user enters a live stream, the live streaming application can request relevant data from the cloud server. In possible implementations, the live streaming application can use different channels to request video, audio, bullet comments, popularity, and other information from different streamers. This can also be understood as different types of live stream information corresponding to different requests; for example, different streamers' video, audio, bullet comments, and popularity information correspond to different requests. Optionally, the requests corresponding to different types of live stream information may also include relevant parameters for that type, and the requested content can refer to the content included in the sharing instruction in step S805 below. In specific implementations, the data structure of the request and the data structure of the sharing instruction can be the same or different; this application embodiment does not limit this. The live streaming application can send different requests to the cloud server to obtain responses related to the live stream information. In some scenarios, the requests sent by the live streaming application can also be called message sending requests or message sending; this application embodiment does not limit this.
[0133] For example, in steps S801.1 to S801.6, the live streaming application can send different requests to the cloud server to obtain information such as the video, audio, and bullet comments of streamer A, and to request the video, audio, and bullet comments of streamer B. Optionally, taking the request for streamer A's video as an example, the request may include streamer A and / or video-related parameters. Taking the request for streamer A's bullet comments as an example, the request may include streamer A and / or bullet comments-related parameters.
[0134] As shown in step S802.7, the cloud server can use different channels to return audio, video, and bullet comments of anchor A, as well as audio, video, and bullet comments of anchor B, to the first electronic device.
[0135] It is understandable that Figure 8 only illustrates scenarios with two broadcasters, A and B, and may actually include more broadcasters and / or more live stream information. By transmitting different audio and video streams and live stream information streams through separate channels, that is, by sending different requests, the first electronic device has the ability to select specific data for live playback.
[0136] S803, the first electronic device processes data and performs interface playback.
[0137] The live streaming application of the first electronic device can generate the content displayed in the live streaming room based on data returned by the cloud server. Understandably, when there are multiple broadcasters, the live streaming application can merge and display the audio, video, and comments from multiple broadcasters separately, and display the broadcaster's background image based on priority. The playback module of the live streaming application can control the rendering and playback of interface elements within the live streaming room, displaying the merged live streaming content from multiple broadcasters.
[0138] Understandably, since information such as the streamer's background and avatar does not need to be retrieved from the cloud server, the caching module can cache information that does not change frequently, such as the streamer's background and avatar. Optionally, the live streaming application can periodically request information such as the streamer's background and avatar from the cloud server. The request period can be preset in the first electronic device; for example, the request period may include 1 minute or other periods. This embodiment does not specifically limit the request period. This reduces access to the cloud server, thereby reducing the amount of requested data and improving the performance of the cloud server.
[0139] (8.2) The process of sharing live content to a second electronic device.
[0140] S804, a connection is established between the first electronic device and the second electronic device.
[0141] In response to a user-triggered sharing action, such as steps S804.1 and S804.2, the first electronic device and the second electronic device can establish a network connection. For example, the first electronic device and the second electronic device can be located in the same network and discover each other through the same wireless network, thereby establishing a network connection.
[0142] S805, the first electronic device initiates sharing.
[0143] After the first electronic device and the second electronic device establish a network connection, the first electronic device can send a sharing command to the second electronic device based on the user's selection.
[0144] Figure 9 illustrates a schematic diagram of the interface provided by the first electronic device for users to select and share live streaming content. It is understood that the interfaces provided in this application embodiment are all exemplary interfaces. In actual implementation, there may be more or fewer interfaces, different display orders for each interface, and more or fewer contents and controls in each interface. This application embodiment does not limit the specific number of interfaces, the display order of the interfaces, or the contents and controls included in each interface.
[0145] For example, in response to a user-triggered sharing operation, as shown in Figure 9a, the first electronic device can display a device selection interface 901. Interface 901 may include a device list 9011. The device list 9011 includes one or more electronic device options found by the first electronic device for sharing live content, such as options for electronic device 1, electronic device 2, and electronic device 3. Interface 901 may also include refresh and cancel controls. The refresh control can be used to instruct the first electronic device to re-search for electronic devices available for sharing live content, and the cancel control can be used to exit the current interface 901.
[0146] In response to a user triggering an operation to select at least one electronic device option from device list 9011, the first electronic device may display a broadcaster selection interface 902. Interface 902 may include a broadcaster list 9021, which includes one or more broadcaster options, such as broadcaster A, broadcaster B, and broadcaster C. Interface 902 may also include a refresh control and a cancel control. The refresh control can be used to re-acquire selectable broadcasters, and the cancel control can be used to exit the current interface 902. For example, in response to a user triggering the cancel control, the first electronic device may return to device selection interface 901 or exit device selection interface 901.
[0147] In response to a user's action of selecting at least one streamer from the streamer list 9021, the first electronic device can display a live stream information selection interface 903. Interface 903 may include a live stream information list 9031, which includes one or more live stream information options, such as options for bullet comments, background, and audio. Interface 903 may also include refresh and cancel controls. The refresh control can be used to re-acquire selectable live stream information, and the cancel control can be used to exit the current interface 903. For example, in response to a user's action of triggering the cancel control, the first electronic device can return to the streamer selection interface 902 or return to the device selection exit interface 901, etc.
[0148] In response to a user triggering an action that selects at least one live stream information option from the live stream information list 9031, the live stream application's live stream SDK can process the user's command and identify and verify the user's selection. For example, the live stream SDK can verify whether the second electronic device selected by the user is working properly, and it can also verify whether the live stream to be shared has stopped broadcasting. After verification is complete, the first electronic device can send a sharing command to the second electronic device via a wireless network.
[0149] For example, the data structure for sharing instructions may include the following format:
[0150] Here, "liveRoom" can represent a live room option, and the information corresponding to "liveRoom" is used to identify the live room. For example, the live room identifier may include the identifier of broadcaster room A, the identifier of live room B, etc. "device" can represent an electronic device option, and the information corresponding to "device" is used to identify the second electronic device. For example, the identifier of the second electronic device may include a unique device identifier such as the DeviceID of the second electronic device. "liveInfo" can represent a live information option, and the information corresponding to "liveInfo" is used to represent live information. For example, live information may include audio, background, bullet comments, etc. The specific content included in the specific sharing instruction can be determined according to the actual situation, and this application embodiment does not limit it.
[0151] Understandably, when a user selects multiple live stream rooms, for example, if the user selects live stream room A, live stream room B, and live stream room C, the data structure of the sharing instruction can include the following format:
[0152] Based on the above data structure, it can be seen that the user wants to watch the audio, video, background, and bullet comments of live stream room A, the audio, video, and bullet comments of live stream room B, and the audio and video of live stream room C. Therefore, when the interface of the second electronic device displays live stream content, it can display the mixed audio and video of live stream rooms A, B, and C, the background of live stream room A, and the bullet comments of live stream rooms A and B.
[0153] Optionally, the host selection interface 902 and the live broadcast information selection interface 903 can be the same interface, or multiple live broadcast information in the live broadcast information selection interface 903 can be displayed in different interfaces. This application embodiment does not limit this.
[0154] Optionally, the device selection interface 901, the broadcaster selection interface 902, and the live broadcast information selection interface 903 can be the same interface. For example, the interface provided by the first electronic device for the user to select and share live broadcast content can be as shown in Figure 10.
[0155] In response to a user-triggered sharing operation, the first electronic device can display interface 1001 as shown in Figure 10a. Interface 1001 may include a device selection item 1002, a broadcaster selection item 1003, and a cancel control 1006. Device selection item 1002 further includes an expand control 1004, and broadcaster selection item 1003 further includes an expand control 1005. The expand control 1004 instructs the first electronic device to display the detailed content of device selection item 1002, the expand control 1005 instructs the first electronic device to display the detailed content of broadcaster selection item 1003, and the cancel control 1006 can be used to exit the current interface 1001.
[0156] In response to a user triggering the expansion control 1004, the first electronic device can display an interface 1007 as shown in Figure 10b. The interface 1007 may include an expanded device selection item 1002, which may resemble the device list 9011 in Figure 9. This expanded device selection item 1002 may include one or more electronic device options, which are options corresponding to electronic devices that the first electronic device has searched for and that can be used to share live streaming content. For example, these one or more electronic device options may include an electronic device 1 option, an electronic device 2 option, and an electronic device 3 option.
[0157] Furthermore, in the expanded selection device item 1002, the first electronic device can replace the expand control 1004 with the collapse control 1004. The collapse control 1004 is used to instruct the first electronic device to cancel the display of details of the selection device item 1003. For example, in response to a user triggering the collapse control 1004, the first electronic device can display the selection device item 1002 shown in FIG. 10b as the selection device item 1002 shown in FIG. 10a.
[0158] In response to a user triggering the expansion control 1005, the first electronic device can display an interface 1008 as shown in Figure 10c. The interface 1008 may include an expanded selection of broadcasters 1003, which may resemble the broadcaster list 9021 in Figure 9. This expanded selection of broadcasters 1003 may include one or more broadcaster options, such as broadcaster A, broadcaster B, and broadcaster C.
[0159] Furthermore, in the expanded host selection item 1003, the first electronic device can replace the expand control 1005 with the collapse control 1005. The collapse control 1005 is used to instruct the first electronic device to cancel the display of details of the host selection item 1003. For example, in response to a user triggering the collapse control 1005, the first electronic device can display the host selection item 1003 shown in FIG. 10c as the host selection item 1003 shown in FIG. 10a.
[0160] Optionally, each broadcaster option may also have a corresponding expand control. For example, broadcaster option A may include expand control 1009. This expand control 1009 is used to instruct the first electronic device to display content related to broadcaster option A, which can also be understood as displaying live broadcast information related to broadcaster option A.
[0161] In response to the user's operation of triggering the expansion control 1009, the first electronic device can display the interface 1010 shown in Figure 10d.
[0162] The interface 1010 may include a live stream information selection item 1011, which may be similar to the live stream information list 9031 in Figure 9. The live stream information selection item 1011 may include one or more live stream information options, such as bullet screen options, background options, audio options, etc.
[0163] In response to a user's action of selecting at least one live information option from live information item 1011, the live streaming application's live streaming SDK can process the user's command and identify and verify the user's selection. For example, the live streaming SDK can verify whether the second electronic device selected by the user is working properly, and can also verify whether the live stream to be shared has stopped broadcasting. After verification is completed, the first electronic device can send a sharing command to the second electronic device via a wireless network.
[0164] Furthermore, in response to a user triggering the expand control 1009, the first electronic device can replace the expand control 1009 with a collapse control 1009. The collapse control 1009 is used to instruct the first electronic device to cancel the display of details of the selected live broadcast information item 1011. For example, in response to a user triggering the collapse control 1009, the first electronic device can display the selected live broadcast information item 1011 shown in FIG. d as the selected broadcaster item 1003 shown in FIG. 10c.
[0165] S806, Second Electronic Device Processing Instruction.
[0166] After receiving the sharing instruction, the live streaming SDK of the live streaming application in the second electronic device can process the sharing instruction through the sharing module and identify the live streaming content to be displayed according to the sharing instruction.
[0167] S807, the second electronic device requests live data from the cloud server.
[0168] The second electronic device can request relevant data from the cloud server based on a sharing command, according to the live content to be displayed. The requested content can refer to the content included in the sharing command in step S805. The specific data structure of the request and the data structure of the sharing command can be the same or different; this embodiment does not impose limitations.
[0169] The second electronic device can use different channels to acquire audio and video data and / or live information. For example, when the second electronic device sends a request to the cloud server, the liveRoom information can correspond to the first channel, the device information to the second channel, the audio information corresponding to liveInfo to the third channel, the background information corresponding to liveInfo to the fourth channel, the bullet screen information corresponding to liveInfo to the fifth channel, and so on. It is understood that the first, second, third, fourth, and fifth channels are only used to represent different channels and do not constitute a restriction on order or sequence.
[0170] After receiving a request from the second electronic device, the cloud server can return relevant data about the live stream to the second electronic device.
[0171] S808, the second electronic device, can process and play the display.
[0172] The second electronic device can process the live broadcast data returned by the cloud server based on the playback module, synchronize the various live broadcast information data on the timeline, and play them together.
[0173] S809, The first electronic device can control the playback of the second electronic device.
[0174] Optionally, the first electronic device can also control the playback of live content on the second electronic device based on the sharing module. This includes controlling factors such as volume and the density of comments.
[0175] In this embodiment of the application, the first implementation method is adopted, which can select different channels through the live streaming SDK to realize the data stream transmission of live streaming content. This data stream can also be called an information stream, thereby sharing the live streaming content to different electronic devices; it can also allow users to freely select shareable live streaming content and control the live streaming content displayed on the second electronic device through the instruction set.
[0176] Furthermore, operating on the first electronic device reduces the complexity of operating on the second electronic device, improving usability. This allows users to selectively watch streamers of interest on the first electronic device, expanding personalized live streaming playback and providing users with more operational options, thereby enhancing the user experience.
[0177] Implementation Method Two:
[0178] It is understandable that live data can be transmitted between the first and second electronic devices based on a screen mirroring protocol.
[0179] As shown in Figure 11, during the user's live stream viewing, the first electronic device can continuously request audio and video data and live stream information data from the cloud server. The cloud server can return the corresponding live stream data to the first electronic device. In response to the user's triggering of a sharing operation, the first electronic device can send the live stream data to the second electronic device based on the user's selection via the Digital Living Network Alliance (DLNA) protocol. In this way, the second electronic device can display its interface based on the acquired live stream data.
[0180] For example, if a user selects options such as audio data, background, and comments in the live stream as shown in Figure 9, the first electronic device can send the audio data, background, and comments of the live stream to the second electronic device. Then, the second electronic device can display the audio data, background, and comments of the live stream.
[0181] Figure 12 illustrates the interaction flow between the first electronic device, the second electronic device, and the cloud server in the audio and video sharing method of implementation method two.
[0182] The interaction process may include (12.1) the process of watching the live stream using a first electronic device and (12.2) the process of sharing the live stream content to a second electronic device. Specifically, (12.1) the process of watching the live stream using the first electronic device may include steps S1201 to S1203 as described below, and will not be repeated here. (12.2) The process of sharing the live stream content to the second electronic device may include steps S1204 to S1209 as described below. The following provides a detailed explanation of part (12.2).
[0183] (12.2) The process of sharing live content to a second electronic device.
[0184] S1204. A connection is established between the first electronic device and the second electronic device.
[0185] This step may include steps S1204.1 and S1204.2. For specific implementation details, please refer to the relevant description in step S804 above, which will not be repeated here.
[0186] S1205, The first electronic device generates shared data.
[0187] After the first electronic device and the second electronic device establish a network connection, the first electronic device can aggregate the live streaming data based on the user's selection, generate live streaming content that meets the user's selection requirements, and send the live streaming data to be shared to the second electronic device. The specific interface provided by the first electronic device for the user to select and share live streaming content can be found in the relevant description in the corresponding embodiment of Figure 9, and will not be repeated here.
[0188] For example, in response to a user's selection of broadcaster A's audio and broadcaster A's comments, the live streaming SDK in the first electronic device can aggregate broadcaster A's audio stream data and comment data to generate an audio stream and a video stream, and send them to the second electronic device. Thus, the second electronic device can display broadcaster A's audio and broadcaster A's comments.
[0189] Understandably, because the first electronic device maintains a long-term connection with the cloud server, it can obtain live streaming data from the cloud server in a timely manner. Therefore, the first electronic device can obtain live streaming data locally and generate live streaming content that meets the user's selection requirements based on the user's choices. In this way, the first electronic device does not need to repeatedly obtain live streaming data from the cloud server, thereby reducing the traffic consumption caused by data request and transmission.
[0190] In this embodiment, based on one or more live-stream related options selected by the user, the first electronic device can send the selected specific live-stream data to the second electronic device, which then plays it. This provides the user with more operational flexibility, thereby improving the user experience.
[0191] S1206. The first electronic device transmits audio and video streams via a screen mirroring protocol.
[0192] In one possible implementation, the first electronic device can send the converged audio and video streams to the second electronic device via the DLNA protocol. Optionally, the first electronic device can also interact with the second electronic device via the Miracast protocol or AirPlay protocol, etc., which is not limited in the embodiments of this application.
[0193] S1207, The second electronic device can process and play the display.
[0194] The second electronic device can process the acquired audio and video streams based on the playback module, synchronize the audio and video stream data along the timeline, and then play them together.
[0195] Understandably, the first electronic device can encapsulate live streaming information such as comments, live room background, and popularity into audio and video data and transmit it via a screen mirroring protocol. In other words, live streaming information such as comments, live room background, and popularity can be included as part of the video data, and therefore can be transmitted using a screen mirroring protocol. This allows the first electronic device to support the transmission of live streaming information such as comments, live room background, and popularity when transmitting data using the screen mirroring protocol. After receiving the audio and video streams from the first electronic device, the second electronic device can transcode the received audio and video streams, parse out the live streaming information such as comments, live room background, and popularity, and then play it.
[0196] Therefore, optionally, the second electronic device does not need to install the live streaming SDK; it only needs to have a player that supports the screen mirroring protocol.
[0197] S1208, The first electronic device can control the playback of the second electronic device.
[0198] Optionally, the first electronic device can also control the playback of live content on the second electronic device based on the sharing module. This includes controlling factors such as volume and the density of comments.
[0199] In this embodiment, implementation method two is adopted. The first electronic device can select different channels through the live streaming SDK to transmit the live streaming content data stream, thereby sharing the live streaming content to the second electronic device. The first electronic device can also allow users to freely select shareable live streaming content, thereby controlling the live streaming content displayed on the second electronic device.
[0200] Furthermore, since the first and second electronic devices can communicate via screen mirroring protocols such as Miracast, AirPlay, and / or DLNA, the second electronic device can play live content using a player that supports the screen mirroring protocol. Therefore, the second electronic device does not require a live streaming SDK to be installed, reducing the difficulty of integrating a live streaming SDK and lowering the development cost of the electronic device. This allows for compatibility with more electronic devices to implement the audio and video sharing method of this application embodiment.
[0201] Implementation method three:
[0202] In scenarios where multiple hosts collaborate on a live stream, cloud servers can generate virtual live stream rooms for each host to facilitate the processing of live stream content by electronic devices. This way, when an electronic device requests live stream content from a specific live stream room from the cloud server, the cloud server can quickly return the relevant live stream data, improving data interaction speed.
[0203] As shown in Figure 13, during the process of a user watching a live stream using the first electronic device, on the one hand, the first electronic device can continuously request audio and video data and live stream information data from each host in the live stream room from the cloud server. The cloud server can return the corresponding live stream data to the first electronic device. On the other hand, the cloud server can generate virtual live stream rooms for each host.
[0204] In one possible implementation, the cloud server can pre-generate virtual live streaming room data for each streamer and store them in different caches. For example, taking a scenario where streamer A and streamer B are live streaming together, the cloud server can pre-generate virtual live streaming room A for streamer A and virtual live streaming room B for streamer B. Virtual live streaming room A includes live streaming content related to streamer A, and virtual live streaming room B includes live streaming content related to streamer B.
[0205] In another possible implementation, the cloud server can generate virtual live streaming room data for a particular streamer when an electronic device requests the streamer's live content, and then return it to the electronic device.
[0206] In response to a user's action of sharing broadcaster A's content to a second electronic device, the first electronic device can send a sharing command to the second electronic device. Upon receiving this command, the second electronic device can request live streaming data related to broadcaster A from the cloud server. The cloud server can retrieve live streaming data from broadcaster A's virtual live streaming room A and return this data to the second electronic device. This live streaming data may include audio and video data from the virtual live streaming room A, as well as live streaming information data.
[0207] In response to a user triggering the sharing of broadcaster B's content to a third electronic device, the first electronic device can send a sharing command to the third electronic device. Upon receiving the sharing command, the third electronic device can request live streaming data related to broadcaster B from a cloud server. The cloud server can obtain live streaming data from broadcaster B's virtual live streaming room B and return the live streaming data to the third electronic device. This live streaming data may include audio and video data and live streaming information data from the virtual live streaming room B. The third electronic device can be understood as the electronic device the user wants to share the live streaming content with, such as a smart screen or smart speaker. The second and third electronic devices can be of the same or different types; this embodiment does not limit this.
[0208] Similarly, you can share more streamers' live content to multiple electronic devices, which will not be elaborated further.
[0209] It is understandable that the live data request method in Implementation Method 3 above is similar to that in Implementation Method 1. Both involve the sharing device requesting live data from the cloud server. The difference is that in Implementation Method 3, the cloud server obtains the live data from a pre-generated virtual live streaming room.
[0210] Optionally, the live data request method in Implementation Method 3 above can also be similar to the live data request method in Implementation Method 2. That is, the second and third electronic devices do not request live data from the cloud server, but the first electronic device shares the live data with the second and / or third electronic devices through a screen mirroring protocol. The live data shared by the first electronic device to the second and / or third electronic devices can be obtained from a pre-generated virtual live room on the cloud server.
[0211] It is understandable that, for the implementation method where the first electronic device shares live data with the second and / or third electronic devices via a screen mirroring protocol, the second and third electronic devices do not need to install a live streaming SDK; they only need to have a player that supports the screen mirroring protocol. This reduces the difficulty of integrating a live streaming SDK and decreases the development cost of the electronic devices. Consequently, it can be compatible with more electronic devices to implement the audio and video sharing method of this application embodiment.
[0212] Optionally, the first, second, and third electronic devices can all individually control each piece of live streaming information in the virtual live streaming room. In this way, each electronic device can manage and display one or more pieces of live streaming information according to the user's selection, thereby improving the live streaming experience.
[0213] When the first electronic device transmits live data to the second and / or third electronic devices via a screen mirroring protocol, live information such as bullet comments, live room background, and popularity can be included as part of the video data. This allows the first electronic device to also transmit live information such as bullet comments, live room background, and popularity when using the screen mirroring protocol. Furthermore, after receiving the audio and video streams from the first electronic device, the second and / or third electronic devices can transcode the received audio and video streams, parse out the live information such as bullet comments, live room background, and popularity, and then play them. This achieves diversity in the content played via screen mirroring and improves the user experience.
[0214] The following example illustrates the audio and video sharing method of implementation method three, using the example of the first electronic device obtaining live data from the virtual live streaming room of the cloud server. Figure 14 shows a schematic diagram of the interaction process between the first electronic device, the second electronic device, and the cloud server in the audio and video sharing method of implementation method three. It can be understood that the interaction between the first electronic device, the third electronic device, and the cloud server is similar to the interaction between the first electronic device, the second electronic device, and the cloud server, and will not be described again.
[0215] The interaction process may include (14.1) the process of watching the live stream using a first electronic device and (14.2) the process of sharing the virtual live stream content to a second electronic device. Specifically, (14.1) the process of watching the live stream using the first electronic device may include steps S1401 and S1402 as described below, and will not be repeated here. (14.2) The process of sharing the virtual live stream content to the second electronic device may include steps S1403 to S1408 as described below. The following provides a detailed explanation of part (14.2).
[0216] (14.2) The process of sharing virtual live room content to a second electronic device.
[0217] S1403, the cloud server processes and obtains the broadcaster's information.
[0218] S1404, Generate a virtual live streaming room.
[0219] In scenarios involving multiple live streamers co-hosting, the cloud server can periodically process relevant data from these live streams, acquiring the live stream information for each streamer and generating virtual live stream rooms for each streamer. For example, in the scenario mentioned above where streamers A and B co-host, the cloud server can generate virtual live stream room A for streamer A and virtual live stream room B for streamer B. The specific period for acquiring live stream information can be set according to actual circumstances, and this embodiment does not impose any limitations.
[0220] Understandably, a user can log in to their account on a second or third electronic device and watch a streamer's live broadcast. The cloud server can return the streamer's virtual live broadcast data to the second or third electronic device, which can then play the streamer's live content. In this case, steps S1405 to S1410 below do not need to be executed.
[0221] S1405. A connection is established between the first electronic device and the second electronic device.
[0222] This step may include steps S1405.1 and S1405.2. For specific implementation details, please refer to the relevant description in step S804 above, which will not be repeated here.
[0223] S1406, The first electronic device selects to share a virtual live streaming room.
[0224] S1407, The first electronic device requests to obtain virtual live streaming room data.
[0225] The first electronic device can retrieve virtual live streaming data from the cloud server based on the user's choice. For example, if the user chooses to share streamer A's live streaming content to the second electronic device, the first electronic device can retrieve the live streaming data of virtual live streaming room A from the cloud server. Then, the cloud server can return the live streaming data of virtual live streaming room A to the first electronic device.
[0226] Optionally, the first electronic device can obtain all live streaming information of virtual live streaming room A from the cloud server. This can also be understood as the cloud server returning all audio and video data and live streaming information related to virtual live streaming room A. The data structure of the request sent by the first electronic device to the cloud server may include the following format:
[0227] As can be seen, compared with the data structure of the sharing instruction in step S805 above and the data structure of the request in step S807, the data structure of this request is simpler and easier to implement.
[0228] Optionally, the first electronic device can select data that meets the user's needs from the full live stream information and share it with the second electronic device. In this way, the first electronic device can manage and display one or more live stream information sets separately based on the user's selection, thereby improving the live stream viewing experience. Of course, the first electronic device can also share the full live stream information with the second electronic device. This application embodiment is not limited to this.
[0229] S1408, The first electronic device transmits audio and video streams via a screen mirroring protocol.
[0230] In a possible implementation, the first electronic device can send the audio and video streams of the virtual live streaming room to the second electronic device via the DLNA protocol.
[0231] Optionally, the first electronic device may also interact with the second electronic device via Miracast or AirPlay protocols, etc., which is not limited in the embodiments of this application.
[0232] S1409, The second electronic device can process and play the display.
[0233] The second electronic device can process the acquired audio and video streams based on the playback module, synchronize the audio and video stream data along the timeline, and then play them together.
[0234] Optionally, the second electronic device does not need to have the live streaming SDK installed; it only needs to have a player that supports the screen mirroring protocol. After receiving the information stream transmitted by the first electronic device based on the screen mirroring protocol, the second electronic device can transcode the received information and play it.
[0235] S1410, The first electronic device controls the playback of the second electronic device.
[0236] Optionally, the first electronic device can also control the playback of live content on the second electronic device based on the sharing module. This includes controlling factors such as volume and the density of comments.
[0237] In this embodiment, implementation method three is adopted, which facilitates the processing of live content by the first or second electronic device. When an electronic device requests live content from a certain live room from a cloud server, it can obtain the live data of each streamer based on the virtual live room pre-generated by the cloud server. In this way, the electronic device can obtain live data more conveniently and quickly, improving the data interaction rate.
[0238] Furthermore, since the first and second electronic devices can communicate via a screen mirroring protocol, the second electronic device can play the live stream using a player that supports the screen mirroring protocol. Therefore, the second electronic device does not require a live streaming SDK to be installed, reducing the difficulty of integrating a live streaming SDK and lowering the development cost of the electronic device. This allows for compatibility with more electronic devices to implement the audio and video sharing method of this application embodiment.
[0239] Optionally, in this embodiment of the application, when the electronic device includes a live streaming SDK, it can have the capability to perform independent channel control, and the electronic device can independently control the live streaming information of each live stream. In a scenario where multiple streamers are connected for a live stream, the interface of the first electronic device can simultaneously display the audio and video information of multiple streamers, wherein the audio information of multiple streamers can be mixed and played.
[0240] For example, taking the scenario where the first electronic device can simultaneously display the audio and video information of nine broadcasters, the first electronic device can display a live streaming interface 1500 as shown in Figure 15. This live streaming interface 1500 can be displayed in a nine-grid layout, and can include the live streaming rooms of nine broadcasters, namely Live Stream Room 1, Live Stream Room 2, Live Stream Room 3, Live Stream Room 4, Live Stream Room 5, Live Stream Room 6, Live Stream Room 7, Live Stream Room 8, and Live Stream Room 9. It is understood that the live streaming room numbers are only used to distinguish different live streaming rooms and do not constitute a restriction on order or sequence.
[0241] The first electronic device can also provide open, full-screen, exit full-screen and / or close controls for each live room, so that users can choose to open a live room, display a live room in full screen, exit full-screen display of a live room, or close a live room.
[0242] When a user triggers full-screen display of a live stream, the first electronic device can display the live stream in full screen. Optionally, when the live stream is displayed in full screen, the interface of the first electronic device may also include one or more controls for controlling the live stream information. For example, controls may include audio controls, video controls, bullet screen controls, PK animation controls, popularity controls, ranking information controls, fan count controls, etc., which are not limited in this embodiment. In this way, users can control whether the audio and video of the live stream are played and whether the live stream information is displayed by triggering different controls, thereby realizing flexible settings for the live stream content and improving the user experience.
[0243] When a user triggers the exit from a live stream in full-screen mode, the first electronic device can display the interface shown in Figure 15.
[0244] When a user triggers the closure of a live stream, the first electronic device will not display the live stream and will no longer play the corresponding audio and video, thus allowing the user to control the muting effect.
[0245] Figure 16 illustrates an audio / video sharing method provided in an embodiment of this application. The method includes:
[0246] S1601, The first electronic device plays first content, which includes multiple audio and video contents, and the multiple video contents come from the same application in the first electronic device.
[0247] The first electronic device can be understood as an electronic device capable of playing audio and video content. For example, the first electronic device can include mobile phones, tablets, and other electronic devices capable of watching live broadcasts.
[0248] The first content may include audio and video-related content played by the first electronic device. Taking the scenario of multiple live streamers co-hosting in this application embodiment as an example, the first content may include content related to the live stream, such as audio, video, bullet comments, PK popularity, fan groups, live stream background image, streamer avatars and names, etc., and may also include product display information, etc., which are not limited in this application embodiment. In the scenario of multiple live streamers co-hosting, multiple audio and video contents may include the audio and video contents of multiple streamers. The scenario of the first electronic device playing the first content can be understood as the scenario of the first electronic device playing live stream content mentioned above.
[0249] The same application in the first electronic device can be understood as the live streaming application mentioned above. This application may also include other applications for watching audio and video, and this application embodiment does not limit it. Among them, multiple audio and video contents come from the same application in the first electronic device, which can be understood as multiple audio and video contents belonging to the same application, or as multiple audio and video contents being content played by the same application.
[0250] S1602, In response to the first operation, control the second electronic device to play part of the audio and video content of the first content.
[0251] The first operation can be understood as sharing the first content, or as sharing a portion of the first content played by the first electronic device to the second electronic device. This first operation may include, but is not limited to, touch (e.g., clicking), voice control, gestures, etc., and is not limited in the embodiments of this application.
[0252] The second electronic device can also be understood as an electronic device capable of playing audio and video content. For example, in the embodiments of this application, the second electronic device may include smart screens, smart speakers, and other electronic devices capable of sharing live streaming content. The device types of the first electronic device and the second electronic device may be the same or different, and the specific device types of the first electronic device and the second electronic device are not limited in the embodiments of this application.
[0253] In this embodiment, based on user operations, the electronic device can individually control each audio and video content within the first content. This enables the electronic device to provide the ability to selectively play portions of audio and video content, managing and displaying one or more audio and video contents separately according to the user's selection, thus enhancing the video viewing experience.
[0254] Optionally, based on the embodiment corresponding to Figure 16, multiple audio and video contents come from different electronic devices.
[0255] In this embodiment of the application, multiple audio and video content may include the audio and video content of multiple broadcasters. Taking the scenario of broadcaster A and broadcaster B co-hosting a live broadcast as an example, broadcaster A's audio and video content may come from broadcaster A's electronic device, and broadcaster B's audio and video content may come from broadcaster B's electronic device.
[0256] In one possible implementation, broadcaster A's electronic device can push broadcaster A's audio and video content to a cloud server, and broadcaster B's electronic device can push broadcaster B's audio and video content to the cloud server. After obtaining the audio and video content from each broadcaster, the cloud server can mix the audio and video content from each broadcaster and then push it to the user. In this way, users watching the live stream can simultaneously watch the live stream of broadcasters A and B interacting, thereby better stimulating the interaction between broadcasters and users.
[0257] Optionally, based on the embodiment corresponding to Figure 16, before controlling the second electronic device to play a portion of the audio and video content of the first content in response to the first operation, the method may further include: the first electronic device displaying a first interface, the first interface including one or more selection controls of electronic devices, the selection controls of the one or more electronic devices including the selection control of the second electronic device; controlling the second electronic device to play a portion of the audio and video content of the first content in response to the first operation may include: in response to the operation of selecting the selection control of the second electronic device, the first electronic device displaying a second interface, the second interface including one or more selection controls for the first content; and controlling the second electronic device to play a portion of the audio and video content of the first content in response to the operation of selecting at least one of the one or more selection controls.
[0258] The first interface can be understood as the interface used to select the device to be shared. For example, the first interface may include the device selection interface 901 in Figure 9a above. The selection control for one or more electronic devices can be understood as one or more electronic device options in the device list 9011 in Figure 9a, which will not be described further.
[0259] The second interface can be understood as an interface for selecting the audio and video content to be shared. For example, the second interface may include the broadcaster selection interface 902 in Figure 9b above, or it may include the live broadcast information selection interface 903 in Figure 9c above. One or more selection controls may include one or more broadcaster options in the broadcaster list 9021 in Figure 9b, or it may include one or more live broadcast information options in the live broadcast information list 9031 in Figure 9c, which will not be elaborated further.
[0260] Optionally, the content displayed on the second interface can be further divided into multiple interfaces. For example, the content displayed on the second interface can be divided into the host selection interface 902 (b) in Figure 9 above and the live broadcast information selection interface 903 (c) in Figure 9 above.
[0261] Understandably, displaying device selection and audio / video content selection on separate screens allows electronic devices to better guide users through the process of choosing the devices and live stream content they wish to share. Each screen displays relatively simple content, making it easier for users to view and understand, simplifying operations, and improving the user experience.
[0262] Optionally, based on the embodiment corresponding to Figure 16, before controlling the second electronic device to play part of the audio and video content of the first content in response to the first operation, it may further include: the first electronic device displaying a third interface, the third interface including one or more selection controls of electronic devices, and one or more selection controls for the first content, wherein the selection controls of one or more electronic devices include the selection controls of the second electronic device; controlling the second electronic device to play part of the audio and video content of the first content in response to the first operation may include: controlling the second electronic device to play part of the audio and video content of the first content in response to the operation of selecting the selection control of the second electronic device in the third interface, and selecting at least one of the one or more selection controls.
[0263] The third interface can be understood as an interface used to select the device to be shared and the audio / video content to be shared. For example, the third interface may include the interface shown in Figure 10 above. For example, the selection control for one or more electronic devices may include one or more electronic device options in the device selection item 1002 in Figure 10b. One or more selection controls may include one or more broadcaster options in the broadcaster selection item 1003 in Figure 10c, or they may include one or more live information options in the live information selection item 1011 in Figure 10d, which will not be elaborated further.
[0264] Understandably, displaying device selection and audio / video content selection on the same interface allows electronic devices to showcase a more comprehensive view of the audio and video content available for sharing. This provides users with an overall understanding of the devices and audio / video content that can be shared, facilitating quick and easy sharing and enhancing the user's viewing experience.
[0265] Optionally, based on the embodiment corresponding to Figure 16, in response to the first operation, it may further include: the first electronic device sending a sharing instruction to the second electronic device; the sharing instruction is used to instruct the second electronic device to request a portion of the audio and video content of the first content from the cloud server.
[0266] It is understandable that this implementation method can be interpreted as the audio and video sharing method corresponding to the first implementation method described above. For example, in response to the first operation, the first electronic device can send a sharing instruction to the second electronic device. After receiving the sharing instruction, the second electronic device can send request data to the cloud server to obtain relevant data of the audio and video content, and display the content on the interface based on the data returned by the cloud server, thereby realizing the sharing of audio and video content.
[0267] The sharing instruction sent from the first electronic device to the second electronic device can be referred to the relevant description of the sharing instruction in step S805 of the corresponding embodiment in FIG8, and will not be repeated here.
[0268] In this embodiment, users can freely select shareable audio and video content on a first electronic device and control the audio and video content displayed on a second electronic device via sharing commands. This reduces the operational complexity on the second electronic device and improves its usability. Users can selectively watch audio and video content of interest on the electronic device, expanding personalized playback of audio and video content, providing users with more operational space, and thus enhancing the user experience.
[0269] Optionally, based on the embodiment corresponding to Figure 16, the sharing instruction includes a first parameter, which is related to a portion of the audio and video content of the first content.
[0270] The first parameter is related to a portion of the audio and video content of the first content. This portion of audio and video content can be understood as audio and video content determined based on user selection. Taking live content as an example, the first parameter may include parameters related to the live chat, parameters related to the audio of the live stream, or parameters related to the video of the live stream. It may also include other parameters related to audio and video content, which are not limited in this embodiment.
[0271] Understandably, based on the parameters in the sharing command, the electronic device can request audio and video content related to the first parameter from the cloud server, without needing to request the entire content. This reduces the amount of data transmitted between the electronic device and the cloud server, decreases resource consumption, and thus improves the interaction performance between the electronic device and the cloud server.
[0272] Optionally, based on the embodiment corresponding to Figure 16, before the first electronic device plays the first content, it may further include: the first electronic device obtaining the first content from a cloud server; before controlling the second electronic device to play part of the audio and video content of the first content, it may further include: instructing the second electronic device to obtain part of the audio and video content of the first content from the cloud server according to the first parameter, wherein the first cache and the second cache are different caches.
[0273] It is understandable that this implementation method can be interpreted as the audio and video sharing method in Implementation Method 3 above. Implementation Method 3 is based on Implementation Method 1. For example, taking live streaming content as the audio and video content, in order to facilitate the processing of live streaming content by electronic devices, the cloud server can generate mixed live streaming room data and virtual live streaming rooms for each streamer. In this way, the first electronic device can obtain the live streaming content of multiple streamers from the mixed live streaming room data, i.e., the first content; the second electronic device can obtain the live streaming content of a single streamer from the virtual live streaming room, i.e., a portion of the audio and video content of the first content.
[0274] In one possible implementation, the cloud server can pre-generate virtual live streaming room data for each streamer and store them in different caches. Alternatively, the cloud server can also generate virtual live streaming room data for a streamer when a second electronic device requests the streamer's live streaming content; this application embodiment does not limit this.
[0275] It is understood that when the second electronic device obtains part of the audio and video content of the first content according to the first parameter, the part of the audio and video content may be obtained from the generated or saved first content, or it may be obtained from the virtual live broadcast room corresponding to the generated or saved part of the audio and video content. This application embodiment does not limit this.
[0276] In this embodiment, when the second electronic device requests live content from a specific live streaming room from the cloud server, the cloud server can obtain live streaming data from various broadcasters based on a pre-generated virtual live streaming room. This allows the second electronic device to obtain live streaming data more conveniently and quickly, facilitating its processing of the live streaming content and improving data interaction speed.
[0277] Optionally, based on the embodiment corresponding to Figure 16, the first content is stored in the first cache of the cloud server, and part of the audio and video content of the first content is stored in the second cache of the cloud server. The first cache and the second cache are different caches.
[0278] In this embodiment, the cloud server can pre-generate virtual live streaming room data for each streamer and store them in different caches. For example, taking a scenario where streamer A and streamer B are live streaming together, the cloud server can pre-generate virtual live streaming room A for streamer A and virtual live streaming room B for streamer B. Virtual live streaming room A includes live streaming content related to streamer A, and virtual live streaming room B includes live streaming content related to streamer B.
[0279] It is understood that the first cache and the second cache are only used to distinguish between the first content and a portion of the audio and video content of the first content for separate storage. In actual implementation, the first cache and the second cache may be in the same memory area or in a different memory area. Alternatively, the first cache and the second cache may be the same cache, but can be distinguished by information such as identifiers. The specific addresses of the first cache and the second cache in memory, as well as the order in which the audio and video content is stored, are not limited in this application embodiment.
[0280] For example, a cloud server can store the combined content of a live stream co-hosted by broadcasters A and B in a first cache, the relevant content of virtual live stream room A in a second cache, and the relevant content of virtual live stream room B in a third cache. Alternatively, the relevant content of virtual live stream room B can be stored in the second cache, and the relevant content of virtual live stream room A in the third cache. The specific caches corresponding to the combined content of the live stream co-hosted by broadcasters A and B, and virtual live stream rooms A and B, are not limited in this embodiment.
[0281] The cloud server acquires live streaming data from various broadcasters based on the generated virtual live streaming rooms. In this way, the second electronic device can obtain the live streaming content of a single broadcaster from the virtual live streaming room, that is, part of the audio and video content of the first content, thus enabling more convenient and faster acquisition of live streaming data and facilitating the processing of live streaming content by the second electronic device.
[0282] Optionally, based on the embodiment corresponding to Figure 16, before controlling the second electronic device to play a portion of the audio and video content of the first content in response to the first operation, the method may further include: the first electronic device obtaining the first content from a cloud server, wherein each audio and video content in the first content includes one or more types of audio and video information, the one or more types of audio and video information including first type audio and video information and second type audio and video information; the first electronic device obtaining a first response from the cloud server according to a first request associated with the first type of audio and video information; the first electronic device obtaining a second response from the cloud server according to a second request associated with the second type of audio and video information; the first request and the second request being different; and the first electronic device generating the first content based on the responses obtained based on one or more types of audio and video information. Controlling the second electronic device to play a portion of the audio and video content of the first content in response to the first operation may include: the first electronic device generating a portion of the audio and video content of the first content based on each type of audio and video information in response to the first operation; the first electronic device sending the portion of the audio and video content of the first content to the second electronic device and controlling the second electronic device to play the portion of the audio and video content of the first content.
[0283] It is understandable that this implementation method can be interpreted as the audio and video sharing method corresponding to implementation method two above. For example, taking live streaming content as the first example, during the user's viewing of the live stream, the first electronic device can continuously request audio and video data and live streaming information data from the cloud server. The cloud server can return the corresponding live streaming data to the first electronic device. In response to the first operation, the first electronic device can send the live streaming data to the second electronic device via a screen mirroring protocol based on the user's selection. In this way, the second electronic device can display its interface based on the acquired live streaming data.
[0284] Taking a live stream scenario where anchor A and anchor B connect as an example, multiple audio and video contents can include the audio and video content of anchor A and anchor B. The audio and video content of anchor A and anchor B can each include multiple types of audio and video information. These multiple types of audio and video information can include audio type, video type, bullet screen type, PK popularity type, fan group type, live stream background image type, anchor avatar type, name type, and product display audio and video information, etc. The specific types of audio and video content included in this embodiment are not limited.
[0285] In this embodiment, by sending different requests, the first electronic device is enabled to select specific data for live streaming. The first electronic device can share live content to the second electronic device and control the live content displayed on the second electronic device based on the user-selected live content to be shared. Since the first and second electronic devices can communicate via a screen mirroring protocol, the second electronic device can play the live content using a player that supports the screen mirroring protocol. Therefore, the second electronic device does not require the installation of a live streaming SDK for processing live data, reducing the difficulty of integrating a live streaming SDK and the development cost of the electronic device. This allows for compatibility with more electronic devices to implement the audio and video sharing method of this embodiment.
[0286] Optionally, based on the embodiment corresponding to Figure 16, before the first electronic device plays the first content, it may further include: the first electronic device obtaining the first content from a cloud server; before controlling the second electronic device to play part of the audio and video content of the first content, it may further include: the first electronic device obtaining part of the audio and video content of the first content from the cloud server according to a first parameter, and sending part of the audio and video content of the first content to the second electronic device, wherein the first parameter is related to part of the audio and video content of the first content.
[0287] It is understandable that this implementation method can be interpreted as the audio and video sharing method in Implementation Method 3 above. Implementation Method 3 is based on Implementation Method 2. For example, taking live streaming content as the audio and video content, to facilitate the processing of live streaming content by electronic devices, the cloud server can generate and save virtual live streaming rooms for each broadcaster, and can also save mixed live streaming room data. In this way, the first electronic device can obtain the live streaming content of multiple broadcasters from the cache storing the mixed live streaming room data, i.e., the first content; the first electronic device can also obtain the live streaming content of a single broadcaster from the virtual live streaming room, i.e., part of the audio and video content of the first content.
[0288] In one possible implementation, the cloud server can pre-generate virtual live streaming room data for each streamer and store them in different caches. Alternatively, the cloud server can generate virtual live streaming room data for a streamer when the first electronic device requests the live streaming content of that streamer; this application embodiment does not impose any limitations on this.
[0289] In this embodiment, when the first electronic device requests live content from a specific live streaming room from the cloud server, the cloud server can obtain live streaming data from various streamers based on a pre-generated virtual live streaming room. This allows the first electronic device to obtain live streaming data more conveniently and quickly, facilitating its processing of the live streaming content and improving data interaction speed.
[0290] Optionally, based on the embodiment corresponding to Figure 16, the first content is stored in the first cache of the cloud server, and part of the audio and video content of the first content is stored in the second cache of the cloud server. The first cache and the second cache are different caches.
[0291] For a detailed explanation of the first and second caches, please refer to the relevant descriptions above, which will not be repeated here.
[0292] Understandably, the cloud server obtains live streaming data from each streamer based on the generated virtual live streaming room. In this way, the second electronic device can obtain the live streaming content of a single streamer from the virtual live streaming room, that is, part of the audio and video content of the first content, thus enabling more convenient and faster acquisition of live streaming data and facilitating the processing of live streaming content by the second electronic device.
[0293] Optionally, based on the embodiment corresponding to Figure 16, the first electronic device playing the first content may include: the first electronic device playing multiple audio and video contents of the first content in different windows of the playback interface.
[0294] It is understood that the implementation of playing the first content can be understood as the relevant description in the embodiment corresponding to Figure 15 above, and will not be repeated here. In this way, users can control whether each audio and video content is played and whether video information is displayed in different windows, thereby realizing flexible settings for the first content and improving the user experience.
[0295] Figure 17 illustrates another audio / video sharing method provided in an embodiment of this application. The method includes:
[0296] S1701. Establish a communication connection with the first electronic device.
[0297] S1702, The second electronic device plays a portion of the audio and video content of the first content, wherein the first content is played in the first electronic device, and the first content includes multiple audio and video contents, and the multiple video contents come from the same application in the first electronic device.
[0298] In this embodiment of the application, the first electronic device, the second electronic device, the first content, and the same application of the first electronic device can be referred to the relevant descriptions in steps S1601 and S1602 above, and will not be repeated here.
[0299] Understandably, electronic devices can individually control the playback of each audio and video element within the initial content. This allows electronic devices to offer the ability to selectively play portions of audio and video content, managing and displaying one or more audio and video elements separately based on the user's selection, thus enhancing the video viewing experience.
[0300] Optionally, based on the embodiment corresponding to Figure 17, before the second electronic device plays a portion of the audio and video content of the first content, it may further include: the second electronic device obtaining a sharing instruction from the first electronic device; the sharing instruction includes a first parameter, which is related to the portion of the audio and video content; based on the first parameter, the second electronic device obtains the portion of the audio and video content from the cloud server; wherein each piece of audio and video content in the portion of the audio and video content includes one or more types of audio and video information, the one or more types of audio and video information including a first type of audio and video information and a second type of audio and video information, the second electronic device obtains a first response from the cloud server according to a first request associated with the first type of audio and video information, the second electronic device obtains a second response from the cloud server according to a second request associated with the second type of audio and video information, the first request and the second request are different, and the second electronic device generates the portion of the audio and video content based on the responses obtained based on one or more types of audio and video information.
[0301] It is understood that this implementation method can be understood as the audio and video sharing method corresponding to the first implementation method described above. The sharing command, the first parameter, etc. can be referred to the relevant descriptions in the embodiment corresponding to Figure 16 above, and will not be repeated here.
[0302] In this embodiment, the first electronic device can control the audio and video content displayed on the second electronic device via sharing commands. This reduces the operational complexity of the second electronic device and improves its usability. Based on the parameters in the sharing commands, the second electronic device can request audio and video content related to the first parameter from the cloud server by sending different requests, without needing to request the entire content of the first parameter. This reduces the amount of data transmitted between the second electronic device and the cloud server, reduces resource consumption, and thus improves the interaction performance between the second electronic device and the cloud server.
[0303] Optionally, based on the embodiment corresponding to Figure 17, before the second electronic device plays part of the audio and video content of the first content, it may further include: the second electronic device acquiring part of the audio and video content of the first content from the first electronic device.
[0304] It is understandable that this implementation method can be understood as the audio and video sharing method corresponding to the second implementation method mentioned above, and will not be elaborated further.
[0305] In this embodiment, the first electronic device can share live stream content to the second electronic device based on the user's selection, and control the second electronic device to display the live stream content. Since the first and second electronic devices can communicate via a screen mirroring protocol, the second electronic device can play the live stream content using a player that supports the screen mirroring protocol. Therefore, the second electronic device does not need to have a live stream SDK for processing live stream data installed, reducing the difficulty of integrating a live stream SDK and lowering the development cost of the electronic device. This allows for compatibility with more electronic devices to implement the audio and video sharing method of this embodiment.
[0306] Figure 18 illustrates another audio / video sharing method provided in an embodiment of this application, applied to a communication system, which includes a first electronic device and a second electronic device. The method includes:
[0307] S1801, The first electronic device plays first content, the first content including multiple audio and video contents, the multiple audio and video contents coming from the same application in the first electronic device.
[0308] S1802, In response to the first operation, the second electronic device plays a portion of the audio and video content of the first content.
[0309] In this embodiment of the application, the first electronic device, the second electronic device, the first content, the same application of the first electronic device, and the first operation can be referred to the relevant descriptions in steps S1601 and S1602 above, and will not be repeated here.
[0310] Understandably, electronic devices can individually control the playback of each audio and video element within the initial content. This allows electronic devices to offer the ability to selectively play portions of audio and video content, managing and displaying one or more audio and video elements separately based on the user's selection, thus enhancing the video viewing experience.
[0311] Optionally, based on the embodiment corresponding to Figure 18, before the second electronic device plays a portion of the audio and video content of the first content, it may further include: the first electronic device sending a sharing instruction to the second electronic device; the sharing instruction includes a first parameter, which is related to the portion of the audio and video content; based on the first parameter, the second electronic device obtains the portion of the audio and video content from the cloud server; wherein each piece of audio and video content in the portion of the audio and video content includes one or more types of audio and video information, the one or more types of audio and video information including a first type of audio and video information and a second type of audio and video information, the second electronic device obtains a first response from the cloud server according to a first request associated with the first type of audio and video information, the second electronic device obtains a second response from the cloud server according to a second request associated with the second type of audio and video information, the first request and the second request are different, and the second electronic device generates the portion of the audio and video content based on the responses obtained based on one or more types of audio and video information.
[0312] It is understood that this implementation method can be understood as the audio and video sharing method corresponding to the first implementation method described above. The sharing command, the first parameter, etc. can be referred to the relevant descriptions in the embodiment corresponding to Figure 16 above, and will not be repeated here.
[0313] In this embodiment, different audio / video streams and live streams are transmitted via separate channels. Specifically, by sending different requests, the first electronic device gains the ability to select specific data for live playback. Users on the first electronic device can freely select shareable audio / video content, and the first electronic device can control the audio / video content displayed on the second electronic device via sharing commands. This reduces the operational complexity on the second electronic device and improves its usability. Users can selectively watch audio / video content of interest on the electronic device, expanding personalized playback options and providing users with more operational flexibility, thereby enhancing the user experience.
[0314] Optionally, based on the embodiment corresponding to Figure 18, before the first electronic device plays the first content, it may further include: the first electronic device obtaining the first content from the first cache of the cloud server; before the second electronic device plays part of the audio and video content of the first content, it may further include: the second electronic device obtaining part of the audio and video content of the first content from the second cache of the cloud server, wherein the first cache and the second cache are different caches.
[0315] It is understandable that this implementation method can be understood as the audio and video sharing method in implementation method three above. This implementation method three is based on implementation method one above, and will not be described in detail again.
[0316] In this embodiment, when the second electronic device requests live content from a specific live streaming room from the cloud server, the cloud server can obtain live streaming data from various broadcasters based on a pre-generated virtual live streaming room. This allows the second electronic device to obtain live streaming data more conveniently and quickly, facilitating its processing of the live streaming content and improving data interaction speed.
[0317] Optionally, based on the embodiment corresponding to Figure 18, before the second electronic device plays a portion of the audio and video content of the first content, it may further include: the first electronic device obtaining the first content from a cloud server and generating a portion of the audio and video content of the first content based on one or more audio and video information; wherein, each audio and video content in the first content includes one or more types of audio and video information, the one or more types of audio and video information include first type audio and video information and second type audio and video information, the first electronic device obtaining a first response from the cloud server according to a first request associated with the first type of audio and video information, the first electronic device obtaining a second response from the cloud server according to a second request associated with the second type of audio and video information, the first request and the second request being different, the first electronic device generating a portion of the audio and video content of the first content based on the responses obtained based on one or more types of audio and video information; the first electronic device sending the portion of the audio and video content of the first content to the second electronic device.
[0318] It is understandable that this implementation method can be understood as the audio and video sharing method corresponding to the second implementation method mentioned above, and will not be elaborated further.
[0319] In this embodiment, the first electronic device can share live content to the second electronic device and control the live content displayed on the second electronic device based on the live content selected by the user. Since the first and second electronic devices can communicate via a screen mirroring protocol, the second electronic device can play the live content using a player that supports the screen mirroring protocol. Therefore, the second electronic device does not require a live streaming SDK for processing live data, reducing the difficulty of integrating a live streaming SDK and lowering the development cost of the electronic device. This allows for compatibility with more electronic devices to implement the audio and video sharing method of this embodiment.
[0320] Optionally, based on the embodiment corresponding to Figure 18, before the first electronic device plays the first content, it may further include: the first electronic device retrieving the first content from the cloud server; before the second electronic device plays part of the audio and video content of the first content, it may further include: the first electronic device retrieving part of the audio and video content of the first content from the cloud server according to the first parameter, and sending part of the audio and video content of the first content to the second electronic device, wherein the first parameter is related to part of the audio and video content of the first content.
[0321] It is understandable that this implementation method can be understood as the audio and video sharing method in implementation method three above. This implementation method three is based on implementation method two above, and will not be described in detail again.
[0322] In this embodiment, when the first electronic device requests live content from a specific live streaming room from the cloud server, the cloud server can obtain live streaming data from various streamers based on a pre-generated virtual live streaming room. This allows the first electronic device to obtain live streaming data more conveniently and quickly, facilitating its processing of the live streaming content and improving data interaction speed.
[0323] Optionally, based on the embodiment corresponding to Figure 18, the first content is stored in the first cache of the cloud server, and part of the audio and video content of the first content is stored in the second cache of the cloud server. The first cache and the second cache are different caches.
[0324] For a detailed explanation of the first and second caches, please refer to the relevant descriptions above, which will not be repeated here.
[0325] Understandably, the cloud server obtains live streaming data from each streamer based on the generated virtual live streaming room. In this way, the second electronic device can obtain the live streaming content of a single streamer from the virtual live streaming room, that is, part of the audio and video content of the first content, thus enabling more convenient and faster acquisition of live streaming data and facilitating the processing of live streaming content by the second electronic device.
[0326] The above detailed embodiments have provided a detailed explanation of the purpose, technical solutions, and beneficial effects of the embodiments of this application. It should be understood that the above are merely specific implementations of the embodiments of this application and are not intended to limit the scope of protection of the embodiments of this application. Any modifications, equivalent substitutions, or improvements made based on the technical solutions of the embodiments of this application should be included within the scope of protection of the embodiments of this application. The module names involved in the embodiments of this application can all be defined as other names, as long as they can achieve the function of each module; no specific restrictions are placed on the module names.
[0327] It should be noted that the user information (including but not limited to user device information, user personal information, etc.) and data (including but not limited to data used for analysis, data stored, data displayed, etc.) involved in this application are all information and data authorized by the user or fully authorized by all parties. Furthermore, the collection, use and processing of the relevant data must comply with the relevant laws, regulations and standards of the relevant countries and regions, and corresponding operation portals are provided for users to choose to authorize or refuse.
[0328] The foregoing mainly describes the technical solutions provided by the embodiments of this application from a methodological perspective. To achieve the above functions, it includes corresponding hardware structures and / or software modules for executing each function. Those skilled in the art should readily recognize that the method steps described in conjunction with the embodiments of this application can be implemented in hardware or a combination of hardware and computer software. Whether a function is executed in hardware or by computer software driving hardware depends on the specific application and design constraints of the technical solution. Those skilled in the art can use different methods to implement the described functions for each specific application, but such implementation should not be considered beyond the scope of this application.
[0329] This application provides an electronic device that may include one or more processors and a memory. The memory is coupled to one or more processors. The memory may be used to store computer program code, which includes computer instructions. The one or more processors may invoke the computer instructions to cause the electronic device to execute the technical solutions described above.
[0330] This application provides a chip system. This chip system is applied to an electronic device and may include one or more processors. The one or more processors can be used to invoke computer instructions to cause the electronic device to execute the technical solutions described above.
[0331] Figure 19 shows a schematic diagram of a chip system provided in an embodiment of this application. The chip system 1900 includes one or more processors 1901, communication lines 1902, communication interfaces 1903, and memory 1904.
[0332] In some implementations, memory 1904 stores elements such as executable modules or data structures, or subsets thereof, or extended sets thereof.
[0333] The methods described in the embodiments of this application can be applied to, or implemented by, processor 1901. Processor 1901 may be an integrated circuit chip with signal processing capabilities. During implementation, each step of the above methods can be completed by integrated logic circuits in the hardware of processor 1901 or by instructions in software form. Processor 1901 may be a general-purpose processor (e.g., a microprocessor or conventional processor), DSP, application-specific integrated circuit (ASIC), field-programmable gate array (FPGA), or other programmable logic devices, discrete gates, transistor logic devices, or discrete hardware components. Processor 1901 can implement or execute the processing-related methods, steps, and logic block diagrams in the embodiments of this application.
[0334] The method described in this application can be implemented using a hardware decoding processor, or by a combination of hardware and software modules within the decoding processor. The software modules can be located in memory 1904, and the processor 1901 can read information from memory 1904 and, in conjunction with its hardware, complete the steps of the method described above. The processor 1901, memory 1904, and communication interface 1903 can communicate via communication line 1902.
[0335] This application also provides a computer-readable storage medium. The computer-readable storage medium includes computer instructions. When the computer instructions are executed on an electronic device, they cause the electronic device to perform the technical solutions described in the above embodiments.
[0336] The methods described in the above embodiments can be implemented, in whole or in part, by software, hardware, firmware, or any combination thereof. If implemented in software, the functionality can be stored as one or more instructions or code on or transmitted on a computer-readable medium. A computer-readable medium can include computer storage media and communication media, and can also include any medium that can transfer a computer program from one place to another. A storage medium can be any target medium accessible by a computer.
[0337] Possible implementations may include random access memory (RAM), read-only memory (ROM), programmable read-only memory (PROM), electrically erasable programmable read-only memory (EEPROM), compact disc read-only memory (CD-ROM), or other optical disc storage. Computer-readable media may also include disk storage or other disk storage devices, or be directed to any other medium or store the required program code in the form of instructions or data structures, and be accessible by a computer.
[0338] Furthermore, any connecting cable can also be appropriately referred to as a computer-readable medium. For example, if software is transmitted from a website, server, or other remote source using coaxial cable, fiber optic cable, twisted pair, digital subscriber line (DSL), or wireless technologies such as infrared, radio, and microwave, then coaxial cable, fiber optic cable, twisted pair, DSL, or wireless technologies such as infrared, radio, and microwave are included in the definition of medium.
[0339] This application also provides a computer program product. The computer program product includes computer program code. When the computer program code runs on an electronic device, it causes the electronic device to execute the technical solutions described in the above embodiments.
[0340] This application describes embodiments of methods, electronic devices, and computer program products related to the embodiments of this application using flowcharts and / or block diagrams. It should be understood that each block of the flowcharts and / or block diagrams, and combinations of blocks in the flowcharts and / or block diagrams, can be implemented by computer program instructions. These computer program instructions can be provided to a processing unit of a general-purpose computer, special-purpose computer, embedded processor, or other programmable data processing apparatus to produce a machine, such that the instructions, which execute via the processing unit of the computer or other programmable data processing apparatus, create means for implementing the functions specified in one or more blocks of the flowcharts and / or one or more blocks of the block diagrams.
Claims
1. An audio-video sharing method, characterized in that, The method includes: A first electronic device plays first content, which includes multiple audio and video contents, and the multiple audio and video contents come from the same application in the first electronic device. In response to the first operation, the second electronic device is controlled to play a portion of the audio and video content of the first content.
2. The method of claim 1, wherein, The multiple audio and video contents come from different electronic devices.
3. The method of claim 1 or 2, wherein, Before responding to the first operation and controlling the second electronic device to play a portion of the audio and video content of the first content, the method further includes: The first electronic device displays a first interface, which includes one or more selection controls for electronic devices, including the selection controls for the second electronic device. The response to the first operation, controlling the second electronic device to play a portion of the audio and video content of the first content, includes: In response to an operation that selects a selection control on the second electronic device, the first electronic device displays a second interface, the second interface including one or more selection controls for the first content; In response to the operation of selecting at least one of the one or more selection controls, the second electronic device is controlled to play a portion of the audio and video content of the first content.
4. The method of claim 1 or 2, wherein, Before responding to the first operation and controlling the second electronic device to play a portion of the audio and video content of the first content, the method further includes: The first electronic device displays a third interface, which includes one or more selection controls for the electronic device and one or more selection controls for the first content, wherein the selection controls for the one or more electronic devices include the selection controls for the second electronic device; The response to the first operation, controlling the second electronic device to play a portion of the audio and video content of the first content, includes: In response to the operation of selecting the selection control of the second electronic device in the third interface, and selecting at least one of the one or more selection controls, the second electronic device is controlled to play a portion of the audio and video content of the first content.
5. The method according to any one of claims 1 to 4, wherein The response following the first operation also includes: The first electronic device sends a sharing instruction to the second electronic device; the sharing instruction is used to instruct the second electronic device to request a portion of the audio and video content of the first content from the cloud server.
6. The method of claim 5, wherein, The sharing instruction includes a first parameter, which is related to a portion of the audio and video content of the first content.
7. The method of claim 6, wherein, Before the first electronic device plays the first content, it also includes: The first electronic device obtains the first content from the cloud server; Before controlling the second electronic device to play a portion of the audio and video content of the first content, the method further includes: The second electronic device is instructed to obtain a portion of the audio and video content of the first content from the cloud server according to the first parameter.
8. The method of claim 7, wherein, The first content is stored in the first cache of the cloud server, and part of the audio and video content of the first content is stored in the second cache of the cloud server. The first cache and the second cache are different caches.
9. The method of any one of claims 1-4, wherein, Before controlling the second electronic device to play a portion of the audio and video content of the first content in response to the first operation, the method further includes: The first electronic device obtains the first content from a cloud server, wherein each audio and video content in the first content includes one or more types of audio and video information, the one or more types of audio and video information including a first type of audio and video information and a second type of audio and video information, the first electronic device obtains a first response from the cloud server according to a first request associated with the first type of audio and video information, the first electronic device obtains a second response from the cloud server according to a second request associated with the second type of audio and video information, the first request and the second request are different, and the first electronic device generates the first content based on the responses obtained based on the one or more types of audio and video information; The step of controlling the second electronic device to play a portion of the audio and video content of the first content in response to the first operation includes: In response to the first operation, the first electronic device generates a portion of the audio and video content of the first content based on the one or more types of audio and video information; The first electronic device sends a portion of the audio and video content of the first content to the second electronic device, and controls the second electronic device to play the portion of the audio and video content of the first content.
10. The method of any one of claims 1-4, wherein, Before the first electronic device plays the first content, it also includes: The first electronic device obtains the first content from the cloud server; Before controlling the second electronic device to play a portion of the audio and video content of the first content, the method further includes: The first electronic device obtains a portion of the audio and video content of the first content from the cloud server according to the first parameter, and sends the portion of the audio and video content of the first content to the second electronic device, wherein the first parameter is related to the portion of the audio and video content of the first content.
11. The method of claim 10, wherein, The first content is stored in the first cache of the cloud server, and part of the audio and video content of the first content is stored in the second cache of the cloud server. The first cache and the second cache are different caches.
12. The method of any one of claims 1-11, wherein, The first electronic device plays first content, including: The first electronic device plays multiple audio and video contents of the first content in different windows of the playback interface.
13. An audio-video sharing method, characterized in that, The method includes: Establish a communication connection with the first electronic device; The second electronic device plays a portion of the audio and video content of the first content, wherein the first content is played in the first electronic device, and the first content includes multiple audio and video content, the multiple video content coming from the same application in the first electronic device.
14. The method of claim 13, wherein, Before the second electronic device plays part of the audio and video content of the first content, it also includes: The second electronic device receives a sharing instruction from the first electronic device; the sharing instruction includes a first parameter, which is related to the audio and video content. Based on the first parameter, the second electronic device obtains the partial audio and video content from the cloud server; wherein, each audio and video content in the partial audio and video content includes one or more types of audio and video information, the one or more types of audio and video information including a first type of audio and video information and a second type of audio and video information, the second electronic device obtains a first response from the cloud server according to a first request associated with the first type of audio and video information, the second electronic device obtains a second response from the cloud server according to a second request associated with the second type of audio and video information, the first request and the second request are different, and the second electronic device generates the partial audio and video content based on the responses obtained based on the one or more types of audio and video information.
15. The method of claim 13, wherein, Before the second electronic device plays part of the audio and video content of the first content, it also includes: The second electronic device acquires a portion of the audio and video content of the first content from the first electronic device.
16. An audio / video sharing method, applied to a communication system, the communication system comprising a first electronic device and a second electronic device, characterized in that, The method includes: The first electronic device plays first content, which includes multiple audio and video contents, and the multiple audio and video contents come from the same application in the first electronic device. In response to the first operation, the second electronic device plays a portion of the audio and video content of the first content.
17. The method of claim 16, wherein, Before the second electronic device plays part of the audio and video content of the first content, it also includes: The first electronic device sends a sharing instruction to the second electronic device; the sharing instruction includes a first parameter, which is related to the audio and video content. Based on the first parameter, the second electronic device obtains the partial audio and video content from the cloud server; wherein, each audio and video content in the partial audio and video content includes one or more types of audio and video information, the one or more types of audio and video information including a first type of audio and video information and a second type of audio and video information, the second electronic device obtains a first response from the cloud server according to a first request associated with the first type of audio and video information, the second electronic device obtains a second response from the cloud server according to a second request associated with the second type of audio and video information, the first request and the second request are different, and the second electronic device generates the partial audio and video content based on the responses obtained based on the one or more types of audio and video information.
18. The method of claim 17, wherein, Before the first electronic device plays the first content, it also includes: The first electronic device retrieves the first content from the first cache of the cloud server; Before the second electronic device plays part of the audio and video content of the first content, it also includes: The second electronic device obtains a portion of the audio and video content of the first content from the second cache of the cloud server, wherein the first cache and the second cache are different caches.
19. The method of claim 16, wherein, Before the second electronic device plays part of the audio and video content of the first content, it also includes: The first electronic device obtains the first content from a cloud server and generates partial audio and video content of the first content based on one or more audio and video information; wherein, each audio and video content in the first content includes one or more types of audio and video information, the one or more types of audio and video information include first type audio and video information and second type audio and video information, the first electronic device obtains a first response from the cloud server according to a first request associated with the first type of audio and video information, the first electronic device obtains a second response from the cloud server according to a second request associated with the second type of audio and video information, the first request and the second request are different, and the first electronic device generates partial audio and video content of the first content based on the responses obtained based on the one or more types of audio and video information; The first electronic device sends a portion of the audio and video content of the first content to the second electronic device.
20. The method of claim 16, wherein, Before the first electronic device plays the first content, it also includes: The first electronic device obtains the first content from the cloud server; Before the second electronic device plays part of the audio and video content of the first content, it also includes: The first electronic device obtains a portion of the audio and video content of the first content from the cloud server according to the first parameter, and sends the portion of the audio and video content of the first content to the second electronic device, wherein the first parameter is related to the portion of the audio and video content of the first content.
21. The method of claim 20, wherein, The first content is stored in the first cache of the cloud server, and part of the audio and video content of the first content is stored in the second cache of the cloud server. The first cache and the second cache are different caches.
22. An electronic device, comprising: The electronic device includes: one or more processors and memory; The memory is coupled to the one or more processors, the memory being used to store computer program code, the computer program code including computer instructions, the one or more processors calling the computer instructions to cause the electronic device to perform the steps performed by the first electronic device in the method of any one of claims 1-12, or the steps performed by the second electronic device in the method of any one of claims 13-15, or the steps performed by the first electronic device or the second electronic device in the method of any one of claims 16-21.
23. A computer-readable storage medium, characterized in that, The computer-readable storage medium includes computer instructions that, when executed on an electronic device, cause the electronic device to perform the steps performed by the first electronic device in any one of claims 1-12, or the steps performed by the second electronic device in any one of claims 13-15, or the steps performed by the first or second electronic device in any one of claims 16-21.