Screen mirroring method, and device

By automatically switching the projection mode to adapt to the current scenario after the projection source device detects a video playback event, the problem of full-screen display caused by screen ratio mismatch in existing projection solutions is solved, thus improving the projection experience and effect.

WO2025260653A1PCT designated stage Publication Date: 2025-12-26HUAWEI TECH CO LTD
View PDF 8 Cites 0 Cited by

Patent Information

Application Number
PCT/CN2024/139629
Authority / Receiving Office
WO · WO
Patent Type
Applications
Current Assignee / Owner
Priority Date
2024-06-19
Filing Date
2024-12-16
Publication Date
2025-12-26

AI Technical Summary

Technical Problem

Existing screen mirroring solutions cannot meet users' ever-increasing demands for a better screen mirroring experience, especially in mirror mirroring mode, where mismatched screen ratios result in poor full-screen display.

Method used

After the source device detects the target event indicating that a video should be played, it automatically switches to the appropriate full-screen projection mode according to the projection parameters of the current scene to ensure that the target device can display the video in full screen, including mirror projection mode, first projection mode and second projection mode.

Benefits of technology

It improves the user's screen casting experience by automatically switching screen casting modes to achieve full-screen display without user operation, thereby enhancing the applicability of screen casting effects and user satisfaction.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN2024139629_26122025_PF_FP_ABST
    Figure CN2024139629_26122025_PF_FP_ABST
Patent Text Reader

Abstract

Disclosed are a screen mirroring method and a device, which relate to the technical field of electronics. In the method, after an image screen mirroring function between a first device and a second device is enabled, and after the first device detects a target event for indicating video playback, on the basis of whether a screen mirroring parameter corresponding to a current scenario meets a screen mirroring condition, the first device automatically selects an appropriate full-screen mirroring mode for a user, for example, a first screen mirroring mode or a second screen mirroring mode, then the first device automatically switches to the selected full-screen mirroring mode and performs full-screen mirroring to the second device, and the second device displays, in full screen, pictures of a video presented by the first device. After playing the video, the first device can automatically provide a full-screen mirroring effect for the user without the need for the user to execute any operation, such that the screen mirroring experience of the user can be improved. In addition, by means of selecting the most appropriate full-screen mirroring mode for the first device and the second device, the screen mirroring effect presented by the second device can be improved, and thus the screen mirroring experience of the user can be further improved.
Need to check novelty before this filing date? Find Prior Art

Description

Screen casting methods and equipment

[0001] This application claims priority to Chinese patent application filed on June 19, 2024, with application number 202410799426.1 and entitled "Screen Projection Method and Device", the entire contents of which are incorporated herein by reference. Technical Field

[0002] This application relates to the field of electronic technology, and in particular to a screen projection method and device. Background Technology

[0003] With the development of screen mirroring technology, screen mirroring has been widely used in daily life. Screen mirroring refers to the process of projecting display content from one device (hereinafter referred to as the source device) onto another device (hereinafter referred to as the destination device).

[0004] In the current screen mirroring solution, after the mirroring function is enabled between the source device and the destination device, when the user opens a video application on the source device to watch videos or other content, the source device will send the currently displayed content as mirroring data to the destination device. The destination device will then enlarge and display the content presented by the source device proportionally based on the mirroring data.

[0005] However, with increasingly sophisticated user demands, current screen mirroring solutions no longer meet these needs. Therefore, providing users with a better screen mirroring experience has become a pressing technical challenge. Summary of the Invention

[0006] This application provides a screen mirroring method and device that can provide users with a better screen mirroring experience.

[0007] To achieve the above objectives, this application adopts the following technical solution:

[0008] In a first aspect, a screen mirroring method is provided, applied to a first device; the method includes: the first device transmitting mirrored screen mirroring data to a second device based on a screen mirroring operation; the mirrored screen mirroring data is used by the second device to mirror the screen presented by the first device in a mirrored screen mirroring mode; if the first device determines that the first screen mirroring parameters meet the first screen mirroring conditions, the first device, in response to a detected target event, transmits the first screen mirroring data to the second device; the target event is used to instruct a video application to play a video, and the first screen mirroring data is used by the second device to display the video screen in full screen in the first screen mirroring mode, which is different from the mirrored screen mirroring mode; if the first device determines that the second screen mirroring parameters meet the second screen mirroring conditions, the first device, in response to a detected target event, transmits the second screen mirroring data to the second device; the second screen mirroring data is used by the second device to display the video screen in full screen in the second screen mirroring mode, which is different from the mirrored screen mirroring mode.

[0009] In the above screen mirroring scheme, after the mirroring function between the first and second devices is enabled, when the first device detects a target event indicating video playback, if the first screen mirroring parameters meet the first screen mirroring conditions, the first and second devices will perform full-screen screen mirroring through the second screen mirroring mode, that is, the first device sends the first screen mirroring data to the second device. If the second screen mirroring parameters meet the second screen mirroring conditions, the first and second devices will perform full-screen screen mirroring through the third screen mirroring mode, that is, the first device sends the second screen mirroring data to the second device. Since both the first and second screen mirroring modes can ensure that the second device can display the video in full screen, this screen mirroring scheme can not only automatically provide full-screen screen mirroring to the user immediately after the first device detects a target event indicating video playback without requiring any user operation, thereby improving the user's screen mirroring experience, but also select the most suitable full-screen screen mirroring mode for the second and second devices based on whether the screen mirroring parameters related to the current scene meet the screen mirroring conditions, thereby helping to improve the screen mirroring effect of the second device and further improving the user's screen mirroring experience.

[0010] In one possible design, the initial projection data is used to indicate the video playback resources. This helps reduce the workload of the first device.

[0011] In another possible design, the second projection data includes a target virtual screen; the target virtual screen comprises the video feed, and its aspect ratio is the same as that of the second device's display. This helps reduce the workload of the second device.

[0012] In another possible design, the target virtual screen may also include at least one of the following: bullet comments or a custom screen from a video application. This helps to improve the comprehensiveness and completeness of the second projection data.

[0013] In another possible design, when the first device transmits the first or second projection data to the second device, the first device is in a state of non-full-screen display of the playback interface. This helps to broaden the applicability of the projection solution.

[0014] In another possible design, the method further includes: in response to a first operation detected by the first device, the first device transmits mirroring data to the second device; the first operation is used to indicate exiting the video playback state. This allows for automatic termination of full-screen mirroring.

[0015] In another possible design, the method further includes: a first device, in response to a detected target event, determining whether a first projection parameter meets a first projection condition, and / or determining whether a second projection parameter meets a second projection condition; wherein the target event includes a click operation on a video icon on a video application. This helps ensure the accuracy and timeliness of the determination results.

[0016] In another possible design, the method further includes: if the first device determines that the first projection parameters meet the first projection condition and the second projection parameters meet the second projection condition, the first device, in response to the detected target event, randomly transmits either the first projection data or the second projection data to the second device. This helps reduce workload.

[0017] In another possible design, the method further includes: if the first device determines that the first projection parameters meet the first projection condition and the second projection parameters meet the second projection condition, the first device, in response to the detected target event, transmits projection data corresponding to the projection mode with the highest priority among the first and second projection modes to the second device; wherein the first projection mode corresponds to the first projection data, and the second projection mode corresponds to the second projection data. This helps to improve the user experience.

[0018] In another possible design, the method further includes: when the first device transmits first projection data to the second device, the first device, in response to a detected first switching operation, transmits second projection data to the second device. This helps improve the user experience.

[0019] In another possible design, the method further includes: when the first device transmits second projection data to the second device, the first device, in response to a detected second switching operation, transmits first projection data to the second device. This helps improve the user experience.

[0020] In another possible design, the first projection parameters satisfy at least one of the following conditions: the video playback resources support playback on the remote device; the second device supports playback of video formats including [specific video formats]; and the decoding resolution of the second device is greater than or equal to the video resolution. This helps to improve the comprehensiveness of the first projection parameters, thereby improving the compatibility between the first projection mode and the first and second devices when using the first projection mode.

[0021] In another possible design, the second screen mirroring parameters include at least one of the following: device parameters of the first device, device parameters of the second device, identifier of the video application, and account type of the video application. This helps to improve the comprehensiveness of the second screen mirroring parameters, thereby improving the compatibility between the second screen mirroring mode and the first and second devices when using the second screen mirroring mode.

[0022] In another possible design, the device parameters of the first device satisfy the second projection condition, including: the encoding capability of the first device is greater than or equal to the encoding capability threshold; wherein, the encoding capability includes at least one of encoding rate, encoding resolution, and encoding frame rate. This helps to improve the quality of the video image corresponding to the second projection data.

[0023] In another possible design, the device parameters of the second device satisfy the second projection conditions, including at least one of the following: the resolution of the second device's display screen is greater than or equal to a resolution threshold, the frame rate of the second device's display screen is greater than or equal to a frame rate threshold, and the decoding capability of the second device is greater than or equal to a decoding capability threshold; wherein, the decoding capability includes at least one of the following: decoding rate, historical decoding frame drop rate, and decoding resolution. This helps to improve the quality of the projection image provided by the second device.

[0024] In another possible design, the video application's identifier satisfies the second casting condition, including that the video application's identifier is the target identifier. This facilitates the use of the second casting mode for a specific video application.

[0025] In another possible design, the video application's account type satisfies the second casting condition, including: the video application's account type is the target type. This facilitates using the second casting mode for a specified account type.

[0026] In another possible design, the method further includes: if the first device determines that the third projection parameters meet the third projection conditions, the first projection data includes at least one of the following: bullet screen data and a custom screen of the video application; the bullet screen data is used by the second device to display the bullet screen on the playback interface of the first device. This helps to improve the rationality of bullet screen projection.

[0027] In another possible design, the third projection parameters satisfy the third projection conditions, including: the user profile data meeting the target threshold condition and the video type being at least one of the target types; wherein, the user profile data includes user data related to bullet comments. This helps to increase the necessity of bullet comment projection.

[0028] In another possible design, the first casting parameters satisfy the first casting condition, including: the video application to be cast has a corresponding relationship with the first casting mode. This helps to consistently use the first casting mode for a specific video application.

[0029] In another possible design, the second projection parameters satisfy the second projection conditions, including: the video application to be projected corresponds to the second projection mode. This helps to consistently use the second projection mode for a specific video application.

[0030] In another possible design, the method further includes: the first device obtaining device parameters of the second device from its storage medium. This helps to improve the speed of obtaining device parameters.

[0031] In another possible design, the method further includes: the first device sending an acquisition request to the second device, the acquisition request being used to request the acquisition of device parameters of the second device; and receiving the device parameters of the second device returned by the second device. This helps to improve the accuracy of the acquired device parameters.

[0032] In another possible design, the video is in at least one of the following states: playing, paused, or loading. This helps to expand the applicable scenarios for full-screen projection.

[0033] Secondly, a screen mirroring method is provided, applied to a first device; the method includes: the first device transmitting mirrored screen mirroring data to a second device based on a screen mirroring operation; the mirrored screen mirroring data is used by the second device to mirror the screen presented by the first device in a mirrored screen mirroring mode; the first device, in response to a detected target event, transmits second screen mirroring data to the second device; the target event is used to instruct a video application to play a video, and the second screen mirroring data is used by the second device to display the video screen in full screen in a second screen mirroring mode, the second screen mirroring mode being different from the mirrored screen mirroring mode; the first screen mirroring data includes a target virtual screen; the target virtual screen includes the video screen, and the screen ratio of the target virtual screen is the same as the screen ratio of the display screen of the second device.

[0034] It should be noted that, in the second aspect, the first device can also be used to implement the related designs provided in the first aspect, which will not be elaborated here.

[0035] Thirdly, a screen casting method is provided, applied to a first device; the method includes: the first device transmitting mirrored screen casting data to a second device based on a screen casting operation; the mirrored screen casting data is used by the second device to mirror the screen presented by the first device based on a mirrored screen casting mode; the first device, in response to a detected target event, transmits first screen casting data to the second device; the target event is used to instruct a video application to play a video, and the first screen casting data is used by the second device to display the video screen in full screen based on a first screen casting mode, the first screen casting mode being different from the mirrored screen casting mode; wherein, the mirrored screen casting data is used to indicate the video playback resources.

[0036] It should be noted that, in the third aspect, the first device can also be used to implement the related designs provided in the first aspect, which will not be elaborated here.

[0037] Fourthly, a screen projection device is provided, comprising: functional units for executing any of the methods provided in the first aspect, wherein the actions performed by each functional unit are implemented by hardware or by hardware executing corresponding software. For example, the screen projection device may include: a screen projection management module and a screen projection mode module; the screen projection management module is used to transmit mirrored screen projection data to a second device based on a screen projection operation; the mirrored screen projection data is used by the second device to mirror the screen presented by the first device based on the mirrored screen projection mode; the screen projection mode module is used to transmit first screen projection data to the second device in response to a detected target event if it is determined that the first screen projection parameters meet the first screen projection conditions; the target event is used to instruct a video application to play a video, and the first screen projection data is used by the second device to display the video screen in full screen based on the first screen projection mode, which is different from the mirrored screen projection mode; the screen projection mode module is used to transmit second screen projection data to the second device in response to a detected target event if it is determined that the second screen projection parameters meet the second screen projection conditions; the second screen projection data is used by the second device to display the video screen in full screen based on the second screen projection mode, which is different from the mirrored screen projection mode.

[0038] Fifthly, a screen projection device is provided, comprising: functional units for performing any of the methods provided in the second aspect, wherein the actions performed by each functional unit are implemented by hardware or by hardware executing corresponding software. For example, the screen projection device may include: a screen projection management module and a screen projection mode module; the screen projection management module is used to transmit mirrored screen projection data to a second device based on a screen projection operation; the mirrored screen projection data is used by the second device to mirror the screen presented by the first device based on the mirrored screen projection mode; the screen projection mode module is used to transmit second screen projection data to the second device in response to a detected target event; the target event is used to instruct a video application to play a video, and the second screen projection data is used by the second device to display the video screen in full screen based on the second screen projection mode, the second screen projection mode being different from the mirrored screen projection mode; wherein the first screen projection data includes a target virtual screen; the target virtual screen includes the video screen, and the screen ratio of the target virtual screen is the same as the screen ratio of the display screen of the second device.

[0039] In a sixth aspect, a screen projection device is provided, comprising: functional units for performing any of the methods provided in the third aspect, wherein the actions performed by each functional unit are implemented by hardware or by hardware executing corresponding software. For example, the screen projection device may include: a screen projection management module and a screen projection mode module; the screen projection management module is used to transmit mirrored screen projection data to a second device based on a screen projection operation; the mirrored screen projection data is used by the second device to mirror the screen presented by the first device based on the mirrored screen projection mode; the screen projection mode module is used to transmit first screen projection data to the second device in response to a detected target event; the target event is used to instruct a video application to play a video, and the first screen projection data is used by the second device to display the video screen in full screen based on the first screen projection mode, wherein the first screen projection mode is different from the mirrored screen projection mode.

[0040] In a seventh aspect, an electronic device is provided as a source device for screen projection. The electronic device includes: a display screen, one or more processors, one or more memories, and one or more programs; wherein the processor is coupled to the display screen and the memories, and the one or more programs are stored in the memories. When the electronic device is running, the processor executes the one or more programs stored in the memories to cause the electronic device to perform any of the methods provided in the first aspect, or to cause the electronic device to perform any of the methods provided in the second aspect, or to cause the electronic device to perform any of the methods provided in the third aspect.

[0041] Optionally, the electronic device may also include a communication interface for communicating with other electronic devices. The communication interface may be a transceiver, input / output interface, interface circuit, output circuit, input circuit, pins, or related circuits. The communication interface, display screen, and memory may be coupled to the processor, or they may be independent of the processor.

[0042] Eighthly, an electronic device is provided that has the function of implementing any of the methods provided in the first aspect above, or implementing any of the methods provided in the second aspect above, or implementing any of the methods provided in the third aspect above. This function can be implemented by hardware, or by hardware executing corresponding software. The hardware or software includes one or more modules corresponding to the above-described functions.

[0043] A ninth aspect provides a communication system, comprising: a first device and a second device; the first device is configured to perform any of the methods provided in the first aspect, or any of the methods provided in the second aspect, or any of the methods provided in the third aspect, and the second device is configured to display the projection content of the first device.

[0044] In a tenth aspect, a computer-readable storage medium is provided, comprising a computer program that, when executed on an electronic device, causes the electronic device to perform any of the methods provided in the first aspect above, or causes the electronic device to perform any of the methods provided in the second aspect above, or causes the electronic device to perform any of the methods provided in the third aspect above.

[0045] Eleventhly, a computer program product is provided, comprising: a computer program or instructions that, when executed on an electronic device, cause the electronic device to perform any of the methods provided in the first aspect above, or cause the electronic device to perform any of the methods provided in the second aspect above, or cause the electronic device to perform any of the methods provided in the third aspect above.

[0046] In a twelfth aspect, a chip system is provided, including at least one processor and at least one interface circuit, wherein the at least one interface circuit is used to perform transceiver functions and send instructions to the at least one processor, wherein when the at least one processor executes instructions, the at least one processor performs any of the methods provided in the first aspect above, or the at least one processor performs any of the methods provided in the second aspect above, or the at least one processor performs any of the methods provided in the third aspect above.

[0047] The technical effects of any of the implementation methods in aspects two through twelfth can be found in the technical effects of different designs in aspect one, and will not be repeated here. Attached Figure Description

[0048] Figure 1 is a schematic diagram of a screen projection effect in related technologies;

[0049] Figure 2 is a schematic diagram of the architecture of a communication system provided in an embodiment of this application;

[0050] Figure 3 is a schematic diagram of the hardware structure of a screen projection device provided in an embodiment of this application;

[0051] Figure 4 is a schematic diagram of the software architecture of a screen projection device provided in an embodiment of this application;

[0052] Figure 5 is a flowchart of a screen projection method provided in an embodiment of this application;

[0053] Figure 6 is a schematic diagram of enabling screen mirroring according to an embodiment of this application;

[0054] Figure 7 is a schematic diagram of a resource broadcasting method provided in an embodiment of this application;

[0055] Figure 8 is a schematic diagram of an extended screen projection provided in an embodiment of this application;

[0056] Figure 9 is a flowchart of another screen projection method provided in an embodiment of this application;

[0057] Figure 10 is a flowchart of another screen projection method provided in an embodiment of this application;

[0058] Figure 11 is a flowchart of another screen projection method provided in an embodiment of this application;

[0059] Figure 12 is a schematic diagram of a screen projection device provided in an embodiment of this application;

[0060] Figure 13 is a schematic diagram of an electronic device provided in an embodiment of this application;

[0061] Figure 14 is a schematic diagram of a chip system provided in an embodiment of this application. Detailed Implementation

[0062] To facilitate understanding, the interpretation of some terms involved in the embodiments of this application will be explained first.

[0063] In the embodiments of this application, the terminology used is for the purpose of describing particular embodiments only and is not intended to be limiting of the application. As used in the specification and appended claims of this application, the singular expressions “a,” “an,” “the,” “the,” “the,” and “this” are intended to include expressions such as “one or more” unless the context clearly indicates otherwise. It should also be understood that in the following embodiments of this application, “at least one” and “one or more” refer to one or more (including two).

[0064] References to "one embodiment" or "some embodiments" in this specification mean that one or more embodiments of this application include a specific feature, structure, or characteristic described in connection with that embodiment. Therefore, the phrases "in one embodiment," "in some embodiments," "in other embodiments," "in still other embodiments," etc., appearing in different parts of this specification do not necessarily refer to the same embodiment, but rather mean "one or more, but not all, embodiments," unless otherwise specifically emphasized. The terms "comprising," "including," "having," and variations thereof mean "including but not limited to," unless otherwise specifically emphasized. The term "connection" includes direct connections and indirect connections, unless otherwise stated. "First" and "second" are used for descriptive purposes only and should not be construed as indicating or implying relative importance or implicitly specifying the number of technical features indicated.

[0065] In the embodiments of this application, the words "exemplarily" or "for example" are used to indicate examples, illustrations, or explanations. Any embodiment or design described as "exemplarily" or "for example" in the embodiments of this application should not be construed as being more preferred or advantageous than other embodiments or design solutions. Specifically, the use of the words "exemplarily" or "for example" is intended to present the relevant concepts in a specific manner.

[0066] The technical solutions provided in the embodiments of this application will now be described in detail with reference to the accompanying drawings.

[0067] Once the source and destination devices are connected to the same wireless communication network and a casting connection is established based on this network and the casting protocol, the mirroring function between them can be enabled. The source device can then transmit its currently displayed content as casting data to the destination device. The destination device, upon receiving the casting data, displays it on its own device, thus mirroring the content currently displayed by the source device. This casting mode is called mirrored casting mode. The source device can transmit casting data to one or more destination devices. The following explanation uses the example of one source device transmitting casting data to one destination device.

[0068] In some embodiments, to improve the screen mirroring experience, the source device can be a device with a smaller screen, such as a mobile phone or tablet, while the destination device can be a device with a larger screen, such as a TV, smart screen, or large smart screen. For ease of description, devices with smaller screens will be referred to as small-screen devices, and devices with larger screens will be referred to as large-screen devices.

[0069] In one example, when a user wants to cast a video playing on their phone's video app to a smart screen, they can click the video icon on the app interface, as shown in Figure 1(a). The phone responds to the user's click by displaying a small window of the video app, which occupies only the upper half of the phone's portrait screen, as shown in Figure 1(b). The phone then transmits its currently displayed content as the casting data to the smart screen. The smart screen mirrors the content currently displayed on the phone, i.e., the small window of the video app, based on the received casting data, as shown in Figure 1(c).

[0070] In another example, the tablet responds to a user's click on the video icon, displaying the video application's playback interface in full screen, as shown in Figure 1(d). Based on this, the tablet transmits the currently displayed content as projection data to the smart screen. The smart screen then mirrors the content currently displayed by the tablet, as shown in Figure 1(e). Although the tablet can display the playback interface in full screen in response to a user's click on the video icon, the smart screen can only proportionally enlarge the playback interface displayed by the tablet when projecting via mirroring. Therefore, when the screen ratios of the tablet and the smart screen differ, unused areas will exist at the edges of the smart screen, as shown by the black border around the screen in Figure 1(e).

[0071] As can be seen, in current screen mirroring solutions, small-screen devices such as mobile phones and tablets detect a click on the video icon, display the video application's playback interface, and send mirroring data to the smart screen. The smart screen then proportionally enlarges the screen displayed by the mobile phone based on this data. While this method effectively enlarges the content from the smaller screen, it no longer meets the evolving needs of users. Therefore, providing a better screen mirroring experience has become a pressing technical challenge.

[0072] In view of this, this application provides a screen mirroring method applied to a source device. After the mirroring function between the source device and the destination device is enabled, they mirror each other in mirroring mode. Based on this, after detecting a target event indicating video playback, the source device automatically switches from mirroring mode to a first or second mirroring mode based on whether the mirroring parameters corresponding to the current scene meet predetermined mirroring conditions. This allows the source device and the destination device to perform full-screen mirroring through the first or second mirroring mode, enabling the destination device to display the video in full screen.

[0073] Compared to screen mirroring solutions in related technologies, such as those shown in Figures 1(c) and (e), the screen mirroring solution provided in this application embodiment ensures that the second device can display the video in full screen, since both the first and second screen mirroring modes can guarantee full-screen video display on the second device. Therefore, on the one hand, the source device can automatically provide a full-screen screen mirroring effect to the user immediately after detecting a target event indicating video playback, without requiring any user intervention. This improves the user's screen mirroring experience. In other words, even if the source device's interface is a small window playback interface as shown in Figure 1(b), or a tablet computer with a different screen ratio than the smart screen as shown in Figure 1(d), the target device can still display the video in full screen. On the other hand, by determining whether the screen mirroring parameters corresponding to the current scenario meet the screen mirroring conditions, the full-screen screen mirroring mode used between the source and target devices can be selected, thus improving the screen mirroring effect on the target device and further enhancing the user's screen mirroring experience.

[0074] Next, the system architecture involved in the technical solution provided by the embodiments of this application will be further described in conjunction with the accompanying drawings.

[0075] Figure 2 is a schematic diagram of the architecture of a communication system 200 for a screen projection method according to an embodiment of this application. As shown in Figure 2, the communication system may include a first device 201 and a second device 202. The first device 201 and the second device 202 may be electronic devices that support screen projection and have screens. For example, the first device 201 and the second device 202 may be mobile phones, tablets, wearable devices (such as smartwatches), smart home devices, in-vehicle devices (such as in-vehicle computers), smart screens, smart cockpits, handheld computers, PCs, game consoles, smart city devices, augmented reality (AR) devices, virtual reality (VR) devices, ultra-mobile personal computers (UMPCs), netbooks, personal digital assistants (PDAs), televisions, smart large screens, laptops, desktop computers, or projectors, etc.

[0076] It should be noted that since the first device 201 and the second device 202 can be used to implement the screen projection method, the first device 201 and the second device 202 in the embodiments of this application can both be referred to as screen projection devices.

[0077] For example, the operating system installed on the screen projection device in this application embodiment may include, but is not limited to: Or other operating systems.

[0078] It should be noted that this embodiment does not impose any special restrictions on the device form of the screen projection device or the operating system installed on the device; the above is merely an illustrative example.

[0079] In this embodiment, the first device 201 and the second device 202 can establish a connection through wired communication technology (e.g., wired network, etc.) and / or wireless communication technology (e.g., wireless network, etc.). Based on the established connection, the first device 201 and the second device 202 can be used together. For example, the wireless communication technology may include, but is not limited to, at least one of the following: distributed soft bus, near field communication (NFC), Bluetooth (BT) (e.g., classic Bluetooth or Bluetooth Low Energy (BLE) Bluetooth), wireless local area networks (WLAN) (such as wireless fidelity (Wi-Fi) networks), Zigbee, frequency modulation (FM), infrared (IR), etc.

[0080] In some embodiments, both the first device 201 and the second device 202 support proximity discovery. For example, after the first device 201 approaches the second device 202, the first device 201 and the second device 202 can discover each other and then establish a wireless communication connection, such as a Wi-Fi peer-to-peer (P2P) connection or a Bluetooth connection. After establishing the wireless communication connection, the first device 201 and the second device 202 can interact via this wireless communication connection.

[0081] In some embodiments, the first device 201 and the second device 202 can establish a wireless communication connection via a local area network. For example, both the first device 201 and the second device 202 are connected to the same router.

[0082] In some embodiments, the first device 201 and the second device 202 can establish a wireless communication connection via a cellular network, the Internet, or the like. For example, the first device 201 can access the Internet via a cellular network, and the second device 202 can access the Internet via a router, thereby enabling the first device 201 and the second device 202 to establish a wireless communication connection.

[0083] After establishing a communication connection between the first device 201 and the second device 202, a screen mirroring connection can be established between the first device 201 and the second device 202 to enable the screen mirroring function between them. Then, the source device in the first device 201 and the second device 202 can project the displayed content onto the target device for display. For example, taking the first device 201 as the source device and the second device 202 as the target device, the first device 201 can send the displayed content as screen mirroring data to the second device 202 via the screen mirroring connection. The second device 202 then displays the content displayed by the first device 201 based on the received screen mirroring data.

[0084] The following embodiments of this application use the first device 201 as the projection source device and the second device 202 as the projection destination device to exemplarily describe the projection method.

[0085] It should be noted that in the embodiments of this application, the screen projection source device can also be called source device, source end, screen projection source end, source end device, screen projection source end device, etc., and the screen projection destination device can also be called destination device, destination end, screen projection destination end, destination end device, screen projection destination end device, etc., which will not be elaborated further.

[0086] The hardware structure of the screen projection device (e.g., the first device 201 and the second device 202) in the communication system shown in Figure 2 is described below as an example. Figure 3 shows a schematic diagram of the hardware structure of a screen projection device provided in an embodiment of this application.

[0087] As shown in Figure 3, the screen projection device may include a processor 301, an external memory interface 302, an internal memory 303, a universal serial bus (USB) interface 304, a charging management module 305, a power management module 306, a battery 307, a mobile communication module 308, a wireless communication module 309, an audio module 310, a sensor module 311, buttons 312, a motor 313, an indicator 314, a camera 315, a display screen 316, a subscriber identification module (SIM) card interface 317, antenna 1, and antenna 2, etc.

[0088] In this embodiment, processor 301 may include one or more processing units. These processing units may be independent devices or integrated within one or more processors. For example, processor 301 may include an application processor (AP), a modem processor, a graphics processing unit (GPU), an image signal processor (ISP), a controller, a video codec, a digital signal processor (DSP), a baseband processor, and / or a neural network processing unit (NPU), etc.

[0089] For example, processor 301 may include one or more interfaces. These interfaces may be used to connect other components, such as external memory interface 302, internal memory 303, universal serial bus interface 304, etc.

[0090] In this embodiment, the processor 301 may also include a memory for storing instructions and data. For example, the memory in the processor 301 may be a cache memory. This memory can store instructions or data that the processor 301 has just used or is recurring. If the processor 301 needs to use the instruction or data again, it can directly retrieve it from this memory. This avoids repeated accesses, thereby reducing the processor 301's waiting time and improving system efficiency.

[0091] In this embodiment, the power management module 306 is connected to the battery 307, and the charging management module 305 and processor 301 are connected. The power management module 306 receives input from the battery 307 and / or the charging management module 305 to power the processor 301, internal memory 303, display screen 316, camera 315, and wireless communication module 309, etc. The charging management module 305 receives charging input from a charger. The charger can be a wireless charger or a wired charger.

[0092] In this embodiment, the wireless communication function of the projection device can be implemented through antenna 1, antenna 2, mobile communication module 308, wireless communication module 309, modem processor, and baseband processor. Antenna 1 and antenna 2 are used to transmit and receive electromagnetic wave signals.

[0093] The mobile communication module 308 can provide solutions for wireless communication, including 2G / 3G / 4G / 5G, used in screen projection devices. The mobile communication module 308 may include at least one filter, switch, power amplifier, low noise amplifier (LNA), etc. Exemplarily, at least some functional modules of the mobile communication module 308 may be housed in the processor 301. For example, at least some functional modules of the mobile communication module 308 and at least some modules of the processor 301 may be housed in the same device.

[0094] The wireless communication module 309 can provide solutions for wireless communication applications on projection devices, including wireless local area networks (WLAN) (such as wireless fidelity (Wi-Fi) networks), Bluetooth (BT), global navigation satellite system (GNSS), frequency modulation (FM), near field communication (NFC), and infrared (IR) technologies. The wireless communication module 309 can be one or more devices integrating at least one communication processing module.

[0095] For example, antenna 1 of the projection device is coupled to mobile communication module 308, and antenna 2 is coupled to wireless communication module 309, enabling the projection device to communicate with networks and other devices via wireless communication technology. This wireless communication technology may include Global System for Mobile Communications (GSM), General Packet Radio Service (GPRS), Code Division Multiple Access (CDMA), Wideband Code Division Multiple Access (WCDMA), Time-Division Code Division Multiple Access (TD-SCDMA), Long Term Evolution (LTE), BT, GNSS, WLAN, NFC, FM, and / or IR technologies, etc.

[0096] In this embodiment, the mobile communication module 308 and / or wireless communication module 309 can be used to transmit screen projection data. Specifically, the mobile communication module 308 and / or wireless communication module 309 of the screen projection source device can be used to transmit screen projection data to the screen projection destination device. The mobile communication module 308 and / or wireless communication module 309 of the screen projection destination device can be used to receive screen projection data transmitted by the screen projection source device.

[0097] In this embodiment, the screen projection device can implement display functions through a GPU, a display screen 316, and an application processor. The display screen 316 is used to display images, videos, and projected images. The display screen 316 includes a display panel. For example, the screen projection device may include one or N display screens 316, where N is a positive integer greater than 1.

[0098] In this embodiment, the internal memory 303 can be used to store computer executable program code, which includes instructions. The internal memory 303 may include a program storage area and a data storage area. The program storage area may store the operating system, at least one application program required for a function (such as sound playback, image playback, etc.), etc. The data storage area may store data created during the use of the projection device. Furthermore, the internal memory 303 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 301 executes various functional applications and data processing of the projection device by running instructions stored in the internal memory 303 and / or instructions stored in memory located in the processor.

[0099] Optionally, the sensor module 311 may include one or more of the following: pressure sensor, gyroscope sensor, barometric pressure sensor, magnetic sensor, accelerometer, distance sensor, proximity sensor, fingerprint sensor, temperature sensor, touch sensor, ambient light sensor, bone conduction sensor, etc.

[0100] In this embodiment, the external memory interface 302 can be used to connect an external memory card, such as a Micro SD card, to expand the storage capacity of the projection device.

[0101] Buttons 312 include a power button, volume buttons, etc. Buttons 312 can be mechanical buttons or touch buttons. A motor 313 can generate vibration feedback. An indicator 314 can be an indicator light, used to indicate charging status, battery level changes, messages, missed calls, notifications, etc. A SIM card interface 317 is used to connect a SIM card.

[0102] In this embodiment, the screen projection device can achieve the shooting function through an ISP, camera 315, video codec, GPU, display screen 316, and application processor.

[0103] Video codecs are used to compress or decompress digital video. Screen mirroring devices can support one or more video codecs. This allows the device to play or record videos in various encoding formats.

[0104] In this embodiment, the video codec in the projection source device is used to encode and compress the projection content (such as video stream files, data of the target virtual screen, etc.) so that the projection source device can send the encoded and compressed projection content to the projection destination device; the video codec in the projection destination device is used to decompress and decode the received encoded projection content so that the projection destination device can display the decoded screen content.

[0105] In this embodiment, the screen projection device can implement audio functions, such as music playback and recording, through the audio module 310 and application processor.

[0106] The audio module 310 can be used to convert digital audio information into analog audio signal output, and can also be used to convert analog audio input into digital audio signal. The audio module 310 can also be used to encode and decode audio signals. In some embodiments, the audio module 310 can be disposed in the processor 301, or some functional modules of the audio module 310 can be disposed in the processor 301.

[0107] In this embodiment, the audio module 310 in the projection source device is used to encode the audio content in the projection content so that the projection source device can send the encoded audio content as projection data to the projection destination device; the audio module 310 in the projection source device is used to decode the received encoded audio content and play the decoded audio content.

[0108] In the embodiments of this application, the wireless communication module 309 in both the projection source device and the projection destination device can be used to access a wireless communication network. After establishing a connection based on the wireless communication network, the wireless communication module 309 in the projection source device can be used to send first projection data or second projection data to the projection destination device. The wireless communication module 309 in the projection destination device can be used to receive the first projection data or second projection data from the projection source device. Using the first projection data or the second projection data, the projection destination device can display the content presented by the projection source device in full screen. This content may include the screen content displayed on the projection source device's display screen 316 and the audio content presented during the projection process.

[0109] The video codec in the projection source device encodes and compresses the video content in the projection content, so that the projection source device can send the encoded and compressed video content as projection data to the projection destination device. The audio module 310 in the projection source device encodes the audio content in the projection content, so that the projection source device can also send the encoded audio content as projection data to the projection destination device. The video codec in the projection destination device decompresses and decodes the received encoded video content, and the display screen 316 in the projection destination device displays the decoded video content. The audio module 310 in the projection destination device decodes the received encoded audio content and plays the decoded audio content. The processor 301 of the projection source device executes instructions stored in the internal memory 303 to perform full-screen projection to the projection destination device through a first projection mode or a second projection mode after detecting a target event indicating video playback, based on whether the projection parameters corresponding to the current scene meet the projection conditions. This allows the projection destination device to display the video content / projection screen in full screen. This not only enables automatic full-screen projection for users without any user operation, but also selects the most suitable projection mode for both the projection source device and the projection destination device.

[0110] It is understood that the structure of the screen projection device illustrated in the embodiments of this application, such as the structure shown in FIG3, does not constitute a specific limitation on the screen projection device. In other embodiments of this application, the screen projection device may include more or fewer components than illustrated, or combine some components, or split some components, or arrange different components. The illustrated components may be implemented in hardware, software, or a combination of software and hardware. When the screen projection device is both a screen projection source device and a screen projection destination device, it may include the same or different other components.

[0111] In this embodiment, the software architecture of the screen projection device can adopt a layered architecture, event-driven architecture, microkernel architecture, microservice architecture, or cloud architecture. This embodiment uses a layered architecture as an example to illustrate the software architecture of the screen projection device.

[0112] Optionally, a layered architecture can divide the software into several layers, each with a clear role and function. Layers communicate with each other through software interfaces. For example, screen mirroring devices, such as the first device and the second device, can both include an application layer and a system service layer.

[0113] Figure 4 shows a schematic diagram of the software architecture of the screen projection device provided in an embodiment of this application.

[0114] The application layer can include a series of application packages. As shown in Figure 4, the application packages can include desktop applications (launchers), video applications, WLAN applications, etc. Optionally, the applications included in the first device and the second device can be the same or different; Figure 4 shows the same applications as an example.

[0115] In this embodiment, the desktop application of the first device or the desktop application of the second sub-device can be used to receive screen projection operations performed by the user. The running interface (hereinafter referred to as the desktop) of the desktop applications of the first and second devices may display icons of one or more other applications (such as, but not limited to, the aforementioned video applications, WLAN, etc.). The application icons can be used to launch the running interface of the corresponding application.

[0116] The system service layer of the first device includes a screen casting management module 401a. The screen casting management module 401a can be used to manage screen casting events, etc. In some embodiments, the screen casting management module 401a of the first device may specifically include one or more of a collaborative configuration management module, a distributed window manager service (DWMS) module, and a Cast+ module. For example, the collaborative configuration management module can be used to interact with the second device to achieve screen casting. The DWMS module can be used to manage distributed windows. The Cast+ module can be used to send screen casting data. In some embodiments, the collaborative configuration management module, DWMS module, Cast+ module, etc., of the first device can cooperate to realize the function of the screen casting management module 401a of the first device. In other embodiments, the screen casting management module 401a of the first device can also be specifically implemented as one or more other modules, such as the Cast+ module can also be implemented as a Miracast module, etc. This application embodiment does not impose specific limitations on the screen casting management module 401a.

[0117] In this embodiment of the application, when the first device is used as the screen casting source device, the video application of the first device may include a screen casting mode module. The screen casting mode module is used to implement the screen casting method provided in this application, such as detecting whether a target event has occurred, determining whether the first screen casting condition and the second screen casting condition are met, and automatically switching to transmitting the first screen casting data or the second screen casting data to the screen casting destination device if the target event is detected.

[0118] Optionally, the screen mirroring mode module may include an application detection module, a screen mirroring mode decision module, a resource mirroring module, and an extended screen mirroring module. The application detection module detects whether a target event has occurred. The screen mirroring decision module determines whether the first and second screen mirroring conditions are met to determine the currently used full-screen screen mirroring mode. For example, the full-screen screen mirroring mode may include a first screen mirroring mode (also known as resource mirroring) and a second screen mirroring mode (also known as extended screen mirroring). The resource mirroring module supports cross-device resource mirroring of local and online video resources to maintain multi-device state synchronization; that is, it enables resource mirroring between the source and destination devices. The extended screen mirroring mode module draws a target virtual screen based on parameters such as the device size of the destination device to ensure that the destination device performs full-screen mirroring through the target virtual screen; that is, it enables extended screen mirroring between the source and destination devices.

[0119] It should be noted that the above division of the screen casting mode module is only an illustrative example. For example, the screen casting mode module can also be divided into more or fewer modules, or the screen casting mode module can also be used as a whole to implement the screen casting method provided in this application.

[0120] In some embodiments, the system service layer of the first device may further include one or more of the following: Activity Manager Service (AMS), Window Manager Service (WMS), etc. AMS can be used to launch (or pull up) applications, switch applications, and manage and schedule application processes. In some embodiments, AMS can be used to distribute application interface configuration information, such as including but not limited to sending application interface configuration information to the screen mirroring management module of the first device. For example, the application interface configuration information may include, but is not limited to, the application interface display mode and the application interface layout information.

[0121] WMS can be used to control the display area of ​​an application interface. In some embodiments, during screen mirroring, if an application interface supports both landscape and portrait modes, WMS can determine the display mode of the application interface based on the display mode of its activity stack (i.e., the activity stack). If the activity stack's display mode is landscape, the application interface's display mode will also be set to landscape mode. If the activity stack's display mode is portrait mode, the application interface's display mode will also be set to portrait mode. The activity stack includes one or more interfaces, and the current activity stack's display mode can be understood as the display mode of the interface at the top of the stack, which is the interface displayed on the screen.

[0122] The system service layer of the second device includes a screen projection management module 402b. This screen projection management module 402b can be used to receive screen projection data and render the corresponding screen image onto the display screen of the second device for display.

[0123] In some embodiments, the screen mirroring management module 402b may specifically include one or more of the following: a collaborative configuration management module, a DWMS module, a Cast+ module, and a Hiwindow module. For example, the collaborative configuration management module can be used to interact with the first electronic device to achieve screen mirroring. The DWMS module can be used to manage distributed windows. The Cast+ module can be used to receive screen mirroring data. The Hiwindow module can be used to render the screen mirroring data onto the screen of the second electronic device for display. In some embodiments, the collaborative configuration management module, DWMS module, Cast+ module, and Hiwindow module, etc., work together to realize the functions of the screen mirroring management module 402b of the second electronic device.

[0124] In other embodiments, the screen projection management module 402b of the second electronic device can also be implemented as one or more other modules, such as the Cast+ module, which can also be implemented as the Miracast module. This application does not impose specific limitations on the screen projection management module 402b. It is understood that the layers shown in Figure 4 are merely illustrative; in actual applications, the screen projection device may include more or fewer layers. It is also understood that the division of layers shown in Figure 4 and the modules included in each layer are merely illustrative and do not constitute a limitation of this application. In actual applications, there may be other division methods, modules may be located in different layers, or different modules may be integrated into one module, etc. This application does not limit these possibilities.

[0125] The technical solutions involved in the following embodiments can all be implemented in a screen projection device as shown in Figures 3 and 4, and a system architecture as shown in Figure 2.

[0126] It is understood that in the embodiments of this application, the projection device performs some or all of the steps in the embodiments of this application. These steps or operations are merely examples, and the embodiments of this application may also perform other operations or variations thereof. Furthermore, the various steps may be performed in different orders as presented in the embodiments of this application, and it is not necessarily necessary to perform all the operations in the embodiments of this application.

[0127] It should be noted that the system architecture and application scenarios described in this application are for the purpose of more clearly illustrating the technical solutions of this application, and do not constitute a limitation on the technical solutions provided in this application. As those skilled in the art will know, with the evolution of system architecture and the emergence of new application scenarios, the technical solutions provided in this application are also applicable to similar technical problems.

[0128] For ease of understanding, the screen projection method provided in this application embodiment will be described exemplarily below, taking the above system architecture and accompanying drawings as an example, with the first device being a mobile phone and the second device being a smart screen.

[0129] Figure 5 illustrates a screen mirroring method provided in an embodiment of this application. Exemplarily, this screen mirroring method may include the following steps 501-511. In this embodiment, "step" can be abbreviated as "S," and will not be described further hereafter.

[0130] S501: The mobile phone and the smart screen establish a communication connection.

[0131] The communication connection can be used to transmit screen projection data between the mobile phone and the smart screen. For example, mirrored screen projection data, first screen projection data, second screen projection data, etc.

[0132] When a user wants to cast content from their phone to a smart screen, they can establish a communication connection between the phone and the smart screen so that the phone can transmit casting data to the smart screen, allowing the smart screen to display the cast image.

[0133] In this application, there are multiple ways for the mobile phone and the smart screen to establish a communication connection. In some embodiments, the mobile phone and the smart screen can establish a communication connection through wired communication technology. For example, the mobile phone and the smart screen can establish a communication connection through a data cable. In other embodiments, the mobile phone and the smart screen can establish a communication connection through wireless communication technology. For example, the mobile phone and the smart screen can establish a communication connection by accessing the same wireless communication network (e.g., Wi-Fi).

[0134] It should be noted that the embodiments of this application do not limit the method of establishing a communication connection; the above are merely illustrative examples. The following example, using the establishment of a communication connection between a mobile phone and a smart screen via wireless communication technology, will be used to illustrate the embodiments of this application.

[0135] S502: The mobile phone sends mirrored screen projection data to the smart screen based on the screen projection operation.

[0136] Among them, the mirrored projection data is used by the smart screen to mirror the screen displayed by the mobile phone based on the mirrored projection mode.

[0137] In this embodiment of the application, after the mobile phone and the smart screen establish a communication connection, the mirroring between the mobile phone and the smart screen can be enabled based on the user's screen casting operation, so that the mobile phone can send mirroring data to the smart screen.

[0138] The screen projection operation can be a user's touch operation on the touch screen, a physical button-based trigger operation, a gesture operation, or a voice instruction operation, etc. This application embodiment does not limit the specific type of screen projection operation.

[0139] In some embodiments, the screen mirroring operation can be received by a mobile phone. A user can perform a screen mirroring operation on their mobile phone, which instructs the phone to establish a mirrored screen mirroring connection with the smart screen. For example, after detecting a screen mirroring operation performed by the user, the mobile phone responds by negotiating mirrored screen mirroring with the smart screen based on a screen mirroring protocol, thereby establishing a mirrored screen mirroring connection between the mobile phone and the smart screen, and thus enabling mirrored screen mirroring between the mobile phone and the smart screen, or in other words, enabling the mirrored screen mirroring function between the mobile phone and the smart screen.

[0140] After screen mirroring between the phone and the smart screen is enabled, the phone generates mirrored screen mirroring data based on the data generation method specified in the screen mirroring mode. For example, the phone can create a virtual screen based on its screen ratio. Then, while the phone composites and outputs the screen image data to the main screen (i.e., the phone's display), it simultaneously composites and outputs the screen image data to the virtual screen, encoding the virtual screen and its image data to obtain the mirrored screen mirroring data. The phone then sends this data to the smart screen via a communication connection. The smart screen can then mirror the phone's display based on the received data, thus enabling screen mirroring from the phone to the smart screen.

[0141] For example, when a user wants to enable screen mirroring between their phone and the smart screen, they can click the screen mirroring application icon on the system interface as shown in Figure 6(a), or click the screen mirroring control on the control center as shown in Figure 6(b). The phone responds to the detected click by searching for devices that support screen mirroring, for example, via Bluetooth or Wi-Fi. After finding a device that supports screen mirroring, the phone can present it to the user so that the user can select the target device for mirroring. For example, after the phone finds a smart screen, an all-in-one machine, or a TV, it displays the identification information of the smart screen, all-in-one machine, or TV on the interface shown in Figure 6(c).

[0142] Subsequently, in response to the user's selection of the target device from the searched devices, the mobile phone identifies the target device as the screen mirroring destination and establishes a mirroring connection between the mobile phone and the target device via wireless communication technology to initiate screen mirroring between the mobile phone and the smart screen. For example, after the mobile phone detects the user's click on the "Smart Screen" control shown in Figure 6(c), it identifies the smart screen as the screen mirroring destination and establishes a mirroring connection between the mobile phone and the smart screen to initiate screen mirroring between them. After screen mirroring between the mobile phone and the smart screen is initiated, as shown in Figure 6(d), the smart screen mirrors the screen currently displayed on the mobile phone, i.e., the system interface shown in Figure 6(a).

[0143] It should be noted that the control center shown in Figure 6(b) may also include one or more functional controls, such as WLAN, mobile data, Bluetooth, etc. These functional controls will not be described in detail in this embodiment of the application.

[0144] Based on this, if a user wants to cast a video displayed on their mobile phone to the smart screen, they can click the video application icon on their phone. In response to detecting the click on the video application icon, the phone displays the video application's interface, which may include at least one video icon, as shown in Figure 7(a). Since screen mirroring is enabled between the phone and the smart screen, during the display of the application interface on the phone, the phone synthesizes and outputs the screen image data of the application interface to the virtual screen, obtaining initial casting data. Then, the initial casting data is encoded to obtain mirrored casting data, which is then output to the smart screen.

[0145] The above embodiments describe the process of a mobile phone receiving a screen mirroring operation and establishing a mirrored screen mirroring connection with a smart screen. In other embodiments, the smart screen may also receive the screen mirroring operation and connect to the mobile phone for screen mirroring. The process of the smart screen responding to the detected screen mirroring operation and establishing a mirrored screen mirroring connection with the mobile phone can be referred to the above embodiments and will not be repeated here.

[0146] It should be noted that the embodiments of this application do not limit the order of "establishing a communication connection" and "the mobile phone detecting the screen mirroring operation," and the above is only an illustrative example. For example, the mobile phone can establish a communication connection between the mobile phone and the smart screen after detecting the screen mirroring operation, and then enable screen mirroring between the mobile phone and the smart screen.

[0147] S503: The smart screen mirrors the screen displayed on the phone based on the received mirroring data.

[0148] In this embodiment, after receiving the mirroring data sent by the mobile phone, the smart screen decodes the mirroring data to obtain mirroring decoded data. Then, the smart screen outputs the mirroring decoded data to the display screen, thereby mirroring the screen displayed by the mobile phone. For example, as shown in Figure 7(b), the smart screen mirrors the application interface of the mobile phone based on the mirroring data.

[0149] Understandably, since the screen mirroring solutions of S502 and S503 allow the smart screen to mirror the screen displayed on the phone, the screen mirroring mode used by S502 and S503 can be called mirrored screen mirroring mode. In other words, the smart screen achieves mirrored display of the phone's screen through mirrored screen mirroring mode and by using mirrored screen mirroring data.

[0150] S504: The phone determines whether the first screen mirroring parameters meet the first screen mirroring conditions.

[0151] If the result is yes, proceed to step S506. If the result is no, the process ends.

[0152] In some embodiments, in response to a detected target event, the mobile phone determines whether the first projection parameters meet the first projection conditions, thereby determining whether projection between the mobile phone and the smart screen is suitable via the first projection mode. The target event is used to instruct the video application to play a video. If the first projection parameters meet the first projection conditions, it indicates that the first projection mode is suitable; otherwise, it indicates that the first projection mode is not suitable. It can be understood that in this embodiment, the mobile phone may detect the aforementioned target event while already in a mirror projection mode with the smart screen.

[0153] In this embodiment, the target event may include a click operation on the icon of a video on a video application. In response to detecting a click operation on the video icon in the video application, the mobile phone determines whether the first projection parameters meet the first projection conditions. For example, if a user wants to watch a sports event video, as shown in Figure 7(a), the user clicks the icon of the sports event video to cause the mobile phone to play the sports event video.

[0154] In this embodiment, after the user clicks the video icon, the mobile phone determines whether the first screen casting parameters meet the first screen casting conditions. This helps to ensure that the determination result is obtained as early as possible, thereby helping to quickly determine the full-screen screen casting mode and thus helping to quickly provide the user with the full-screen screen casting effect.

[0155] It should be noted that this application does not limit how the mobile phone detects click operations. For example, the mobile phone may detect click operations using artificial intelligence (AI).

[0156] In other embodiments, the mobile phone determines whether the first casting parameters meet the first casting conditions in response to detecting the display of a video application's playback interface. For example, after a user clicks on a sports event video icon on the mobile phone, the phone displays the video application's playback interface. After detecting the display of the playback interface, the mobile phone determines whether the first casting parameters meet the first casting conditions.

[0157] In this embodiment, after detecting the display of the playback interface, it is then determined whether the first projection parameters meet the first projection conditions. This helps to ensure the reliability of video playback on the mobile phone, thereby helping to ensure the necessity of determining whether the first projection parameters meet the first projection conditions, and further helping to prevent the mobile phone from performing a determination operation when the user accidentally touches the video icon.

[0158] It should be noted that this application does not limit how the mobile phone detects and displays the playback interface. For example, the mobile phone may use artificial intelligence (AI) to detect and display the playback interface.

[0159] The following example illustrates how a mobile phone determines whether the first projection parameters meet the first projection conditions after detecting a target event.

[0160] In some embodiments, the mobile phone can pre-determine whether the first projection parameters meet the first projection conditions and store the determination result in local storage. Based on this, after detecting a target event, the mobile phone can directly retrieve the determination result from the local storage, thus improving the efficiency of obtaining the determination result.

[0161] In other embodiments, after the mobile phone detects the target event, it can determine in real time whether the first projection parameters meet the first projection conditions. This helps to ensure the accuracy of the determination result.

[0162] The following provides an example of the first screen projection parameters and the conditions under which the first screen projection parameters satisfy the first screen projection conditions.

[0163] Optionally, the first projection parameters satisfy the first projection conditions, including: the video application and the first projection mode have a corresponding relationship.

[0164] The video application corresponds to the first screen casting mode, meaning that the source code of the video application includes code used to perform the operation of sending the first screen casting data.

[0165] For example, a target video application is installed on the mobile phone, and the source code of the target video application includes code for performing the operation of sending the first screen projection data. Based on this, if the mobile phone detects a target event that instructs the target video application to play a video, the mobile phone sends the first screen projection data to the smart screen.

[0166] In this embodiment, when the video application and the first screen casting mode are set to correspond, the first screen casting parameters meet the first screen casting conditions. In this way, a suitable screen casting method can be specified for the video application in advance, which helps to simplify the process of automatically casting the full screen and thus helps to improve the screen casting efficiency.

[0167] Optionally, the first projection parameters satisfy the first projection conditions, including at least one of the following: the playback resources of the video to be played support playback on a remote device, the video format supported by the smart screen includes the format of the video to be played, and the decoding resolution of the smart screen is greater than or equal to the resolution of the video to be played.

[0168] In this embodiment, by setting the first projection parameters to meet the first projection conditions, including that the playback resources of the video to be played support playback on the remote device, it can be ensured that the playback resources of the video to be played support projection in the first projection mode, thereby helping to ensure the reliability of full-screen projection when using the first projection mode.

[0169] Furthermore, setting the first projection parameters to meet the first projection conditions, including the video formats supported by the smart screen and the format of the video to be played, helps ensure that the smart screen can display the video correctly when using the first projection mode for full-screen projection. Additionally, setting the first projection parameters to meet the first projection conditions, including the smart screen's decoding resolution being greater than or equal to the resolution of the video to be played, helps ensure that the video displayed on the smart screen has a good visual effect when using the first projection mode for full-screen projection.

[0170] Example 1: After the mobile phone determines the video to be played, it determines whether the playback resource of the video supports playback on a remote device. If the result is yes, then the determination result of S504 is yes; otherwise, the determination result of S504 is no.

[0171] For example, a mobile phone can determine the video to be played based on detected target events. For instance, if a user clicks on the icon of a sports event video, and the mobile phone detects this click, it can determine that the sports event video is the video to be played.

[0172] In some embodiments, the mobile phone pre-determines whether the playback resources of each of the multiple videos support playback on a remote device, and associates the determination result of each video with the identifier of each video and stores it on the local storage medium. Based on this, after the mobile phone determines the video to be played, it can directly query the local storage medium to see if the playback resources of the video to be played support playback on a remote device, according to the identifier of the video to be played. This helps to improve the efficiency of determining whether the playback resources of the video to be played support playback on a remote device.

[0173] In other embodiments, after the mobile phone determines the video to be played, it determines in real time whether the playback resources of the video to be played support playback on a remote device.

[0174] In one example, the phone's storage medium stores a correspondence between video identifiers and a first identifier. For example, the storage medium could be the internal memory shown in Figure 3. The first identifier indicates whether playback on a remote device is supported. For instance, a first identifier of 1 indicates support for remote device playback, while a first identifier of 0 indicates no support for remote device playback. Based on this, after the phone determines the video to be played, it can determine the target first identifier corresponding to the identifier of the video to be played from the correspondence between video identifiers and first identifiers stored in the storage medium. Then, the phone can determine whether the playback resource of the video to be played supports playback on a remote device based on the target first identifier.

[0175] In this example, by pre-storing the correspondence between video identifiers and first identifiers, and determining whether the playback resources of the video to be played support playback on remote devices based on the correspondence, the efficiency of obtaining the determination result is improved, which in turn helps to improve the efficiency of determining the full-screen projection mode, and further helps to improve the efficiency of providing users with full-screen projection effects.

[0176] In another example, the playback resource of the video to be played includes a second identifier, which indicates whether playback on a remote device is supported. For example, the second identifier can include a numerical value: a second identifier of 1 indicates support for remote device playback, and a second identifier of 0 indicates no support for remote device playback. Alternatively, the second identifier can include copyright information, which indicates whether playback on a remote device is supported or not. Based on this, after the mobile phone determines the video to be played, it can either retrieve the video from its local storage medium or obtain the playback resource from a remote device based on the address of the video to be played. Then, based on the second identifier in the playback resource, it determines whether the playback resource of the video to be played supports playback on a remote device.

[0177] In this example, by acquiring playback resources in real time and determining whether playback on remote devices is supported based on the identifiers in the playback resources, the accuracy of the determination results is ensured, which in turn helps to ensure that normal screen casting can be achieved when casting based on the first screen casting mode.

[0178] In Example 1 above, determining whether the first screen casting mode is suitable by checking whether the playback resource of the video to be played supports playback on a remote device helps ensure the accuracy of the determination result and avoids using the first screen casting mode when the video to be played does not support playback on a remote device.

[0179] It should be noted that the embodiments of this application do not limit the method of "determining whether the playback resources of the video to be played support playback on remote devices"; the above is only an illustrative example.

[0180] Example 2: After the mobile phone determines the video to be played, it determines whether the playback resource of the video to be played supports playback on the remote device, and whether the video format supported by the smart screen includes the format of the video to be played. If the playback resource supports playback on the source device, and the video format supported by the smart screen includes the format of the video to be played, then the determination result of S504 is yes; otherwise, the determination result of S504 is no.

[0181] For example, the playback resources for the video to be played include the format of the video to be played.

[0182] In one example, the phone's storage medium stores video formats supported by the smart screen. These formats include Moving Picture Experts Group (MEPG), Audio Video Interleaved (AVI), Advanced Streaming Format (ASF), Windows Media Video (WMV), and Flash Video (FLV). Based on this, after determining the video to be played, the phone can obtain its format, such as by selecting a playback resource. Then, the phone determines whether the video's format is supported by the smart screen. For example, if the video's format is any one of MEPG, AVI, ASF, WMV, or FLV, then the smart screen supports that format; otherwise, it does not.

[0183] In this example, by pre-storing the video formats supported by the smart screen, the efficiency of obtaining a definite result is improved, which in turn helps to improve the efficiency of determining the full-screen projection mode, and further helps to improve the efficiency of providing users with a full-screen projection effect.

[0184] In another example, after the mobile phone determines the video to be played, it can send a first acquisition request to the smart screen. This first acquisition request is used to request the video formats supported by the smart screen. After receiving at least one video format returned by the smart screen, the mobile phone determines whether the format of the video to be played belongs to at least one video format. If it does, then the smart screen supports video formats including the format of the video to be played; otherwise, the smart screen supports video formats other than the format of the video to be played.

[0185] In this example, by obtaining the video formats supported by the smart screen in real time, the accuracy of the determination results is ensured, which in turn helps to ensure that normal screen casting can be achieved when casting based on the first casting mode.

[0186] For further explanation of other relevant details in Example 2, please refer to the explanation in Example 1. These details will not be repeated here.

[0187] In Example 2 above, the suitability of using the first screen casting mode is determined by whether the playback resources of the video to be played support playback on remote devices and whether the video formats supported by the smart screen include the format of the video to be played. This not only helps to ensure the accuracy of the determination result, but also helps to ensure that the smart screen can successfully display the video when using the first screen casting mode.

[0188] Example 3: After the mobile phone determines the video to be played, it determines whether the playback resource of the video supports playback on a remote device, and whether the decoding resolution of the smart screen is greater than or equal to the resolution of the video to be played. If the playback resource supports playback on the source device, and the decoding resolution of the smart screen is greater than or equal to the resolution of the video to be played, then the determination result of S504 is yes; otherwise, the determination result of S504 is no.

[0189] It should be noted that the relevant explanations for Example 3 can be found in the explanations for Example 1 and Example 2. For example, the explanation of "whether the playback resource of the video to be played supports playback on remote devices" can be found in the explanation of Example 1, and the explanation of "whether the decoding resolution of the smart screen is greater than or equal to the resolution of the video to be played" can be found in the explanation of Example 2. They will not be repeated here.

[0190] In Example 3 above, the suitability of using the first screen casting mode is determined by whether the playback resources of the video to be played support playback on remote devices and whether the decoding resolution of the smart screen is greater than or equal to the resolution of the video to be played. This not only helps to ensure the accuracy of the determination result, but also helps to ensure that when using the first screen casting mode, the smart screen can obtain high-quality resources after decoding the first screen casting data, thereby helping to ensure that the screen casting image displayed on the smart screen has a high visual effect, and thus helping to ensure the user's screen casting experience.

[0191] Example 4: After the mobile phone determines the video to be played, it determines whether the playback resource of the video to be played supports playback on the remote device, whether the video format supported by the smart screen includes the format of the video to be played, and whether the decoding resolution of the smart screen is greater than or equal to the resolution of the video to be played. If the playback resource supports playback on the source device, the video format supported by the smart screen includes the format of the video to be played, and the decoding resolution of the smart screen is greater than or equal to the resolution of the video to be played, then the determination result of S504 is yes; otherwise, the determination result of S504 is no.

[0192] For further explanation of Example 4, please refer to the explanations of Examples 1 to 3, which will not be repeated here.

[0193] In Example 4 above, the suitability of using the first screen casting mode is determined by whether the playback resources of the video to be played support playback on remote devices, whether the video formats supported by the smart screen include the format of the video to be played, and whether the decoding resolution of the smart screen is greater than or equal to the resolution of the video to be played. This not only helps to ensure the accuracy of the determination results, but also helps to ensure that the smart screen can successfully display the video image, and the image displayed by the smart screen has a high visual effect, thereby helping to ensure the user's screen casting experience.

[0194] S505: The phone determines whether the second screen mirroring parameters meet the second screen mirroring conditions.

[0195] If the result is yes, proceed to step S508. If the result is no, the process ends.

[0196] In some embodiments, in response to a detected target event, the mobile phone determines whether the second projection parameters meet the second projection conditions, thereby determining whether projection between the mobile phone and the smart screen is suitable via the second projection mode. If the second projection parameters meet the second projection conditions, it indicates that the second projection mode is suitable; otherwise, it indicates that the second projection mode is not suitable. It can be understood that in this embodiment, the mobile phone may detect the aforementioned target event while already in mirror projection mode with the smart screen.

[0197] In other embodiments, the mobile phone determines whether the second projection parameters meet the second projection conditions in response to detecting the playback interface of the video application.

[0198] In some other embodiments, the mobile phone determines whether the second projection parameters meet the second projection conditions in response to detecting that a video application is running. For example, when a user clicks the icon of a video application on the mobile phone, the mobile phone detects the user's click on the video application icon, assumes that the mobile phone has started running the video application, and based on this, the mobile phone determines whether the second projection parameters meet the second projection conditions.

[0199] In this embodiment, when the mobile phone detects the running video application, it determines whether the second screen projection parameters meet the second screen projection conditions. This helps to ensure that the determination result is obtained as early as possible, thereby helping to quickly determine the full-screen projection mode and thus helping to quickly provide users with the full-screen projection effect.

[0200] The following provides an illustrative description of the second projection parameters and how the second projection parameters satisfy the second projection conditions.

[0201] Optionally, the second projection parameters satisfy the second projection conditions, including: the video application and the second projection mode have a corresponding relationship.

[0202] The video application corresponds to the second screen mirroring mode, meaning that the source code of the video application includes code used to perform operations to send the second screen mirroring data.

[0203] For example, a target video application is installed on the mobile phone, and the source code of the target video application includes code for performing operations to send second screen projection data. Based on this, if the mobile phone detects a target event that instructs the target video application to play a video, the mobile phone sends the second screen projection data to the smart screen.

[0204] In this embodiment, when the video application and the second screen casting mode are set to correspond, the second screen casting parameters meet the second screen casting conditions. In this way, a suitable screen casting method can be specified for the video application in advance, which helps to simplify the process of automatically casting the full screen and thus helps to improve the screen casting efficiency.

[0205] Optionally, the second screen projection parameters include at least one of the following: device parameters of the mobile phone, device parameters of the smart screen, identifier of the video application, and account type of the video application.

[0206] In this embodiment, by setting the second projection parameters, including the phone's device parameters, it is possible to determine whether the phone is suitable for projection using the second projection mode. This helps ensure the data quality of the second projection data generated by the phone, and consequently, the projection effect when projection is performed based on the second projection data. Furthermore, the second projection parameters include the smart screen's device parameters. Based on the smart screen's device parameters, it is possible to determine whether the smart screen is suitable for projection using the second projection mode. This helps ensure a better projection effect when the smart screen performs full-screen projection based on the second projection data.

[0207] Additionally, setting the second casting parameters includes the video application's identifier. By pre-specifying the identifier of the target video application suitable for using the second casting mode, the specified target video application can use the second casting mode for casting, thus improving the compatibility between the second casting mode and the video application. By setting the second casting parameters including the video application's account type, the target account type with permission to use the second casting mode can be pre-specified. This ensures that only accounts of the specified target type can use the second casting mode for casting, thus helping to provide more full-screen casting options for specified account types. This improves the casting experience for users with specified account types.

[0208] In this embodiment of the application, the device parameters of the mobile phone may include the phone's encoding capability. The device parameters of the mobile phone satisfy the second screen projection condition, including: the phone's encoding capability is greater than or equal to an encoding capability threshold; wherein, the encoding capability includes at least one of encoding rate, encoding resolution, and encoding frame rate.

[0209] It should be noted that encoding resolution indicates the resolution of the resulting video. Encoding frame rate indicates the frame rate of the resulting video.

[0210] For example, the phone's storage medium stores the phone's encoding rate, encoding resolution, encoding frame rate, etc., which may be stored in the phone's operating system. Based on this, when the phone needs to determine whether the second screen projection parameters meet the second screen projection conditions, the phone can obtain the phone's encoding rate, encoding resolution, encoding frame rate, and other parameters from its local storage medium.

[0211] Example a: A mobile phone's encoding capability includes its encoding rate. Based on this, if the phone's encoding rate is less than or equal to an encoding rate threshold, it is determined that the phone's encoding capability is greater than or equal to the encoding capability threshold; that is, the phone's device parameters meet the second screen projection condition. Conversely, if the phone's encoding rate is less than the encoding capability threshold, it is determined that the phone's encoding capability does not meet the second screen projection condition.

[0212] For example, the encoding rate threshold can be any value between 16ms / frame and 40ms / frame. For instance, an encoding rate threshold of 40ms / frame helps reduce the conditions for using the second screen mirroring mode, thereby increasing the probability of using it. For instance, an encoding rate threshold of 16ms / frame helps ensure that the phone using the second screen mirroring mode has a high encoding speed, thus helping to ensure that full-screen mirroring can be quickly provided to the user. For instance, an encoding rate threshold of 28ms / frame helps to balance the coverage of the second screen mirroring mode with the speed at which full-screen mirroring is provided to the user when using the second screen mirroring mode.

[0213] It should be noted that the specific value of the coding rate threshold in this application embodiment is not limited, and the coding rate threshold can be flexibly adjusted according to the actual situation.

[0214] In Example a, by setting the encoding rate to be less than or equal to the encoding rate threshold, the phone's encoding capability reaches the capability threshold. In this way, by setting an appropriate encoding rate threshold, the second screen casting mode can be allowed only when the phone's encoding speed is high. This helps to ensure that when using the second screen casting mode, the phone can quickly send the second screen casting data to the smart screen, which in turn helps the smart screen to quickly provide users with full-screen screen casting.

[0215] It should be noted that in the embodiments of this application, "reached" can be considered as "greater than or equal to", and "not reached" can be considered as "less than". The subsequent steps will be described in detail.

[0216] Example b: The phone's encoding capability includes its encoding resolution. Based on this, if the phone's encoding resolution is greater than or equal to a first resolution threshold, then the phone's encoding capability is determined to be greater than or equal to the encoding capability threshold, meaning the phone's device parameters meet the second screen projection condition. Conversely, if the phone's encoding resolution is less than the encoding capability threshold, then the phone's device parameters do not meet the second screen projection condition.

[0217] For example, the resolution threshold could be 720P, 1080P, etc. For instance, a resolution threshold of 720P helps reduce the conditions for using the second screen mirroring mode, thereby increasing the probability of using it. Or, for example, a resolution threshold of 1080P helps ensure that the second screen mirroring data encoded by the phone has a high resolution when using the second screen mirroring mode, thus ensuring a better visual effect when the smart screen displays the image in full screen based on the second screen mirroring data.

[0218] It should be noted that the specific value of the first resolution threshold in this application embodiment is not limited, and the first resolution threshold can be flexibly adjusted according to the actual situation.

[0219] In Example b, when the encoding resolution reaches the first resolution threshold, the phone's encoding capability reaches the encoding capability threshold. Thus, by setting an appropriate first resolution threshold, the second screen casting mode can be allowed only when the resolution of the encoded video is high. This helps to ensure that the second screen casting data generated by the phone has a high resolution when using the second screen casting mode, thereby helping to ensure that the screen casting image corresponding to the second screen casting data has a better picture effect.

[0220] Example c: The phone's encoding capability includes its encoding frame rate. Based on this, if the phone's encoding frame rate is greater than or equal to the first frame rate threshold, then the phone's encoding capability is determined to be greater than or equal to the encoding capability threshold, meaning the phone's device parameters meet the second screen projection condition. Conversely, if the phone's encoding capability is less than the encoding capability threshold, then the phone's device parameters do not meet the second screen projection condition.

[0221] For example, the first frame rate threshold can be any value between 24fps and 30fps. For instance, a first frame rate threshold of 24fps helps reduce the conditions for using the second projection mode, thereby increasing the probability of using it. For instance, a first frame rate threshold of 30fps helps ensure that the second projection data encoded by the phone has a high frame rate when using the second projection mode, thus ensuring good smoothness when the smart screen displays the full-screen image based on the second projection data. For instance, a first frame rate threshold of 27fps helps to balance the coverage of the second projection mode with the smoothness of the image displayed on the smart screen when using the second projection mode.

[0222] It should be noted that the specific value of the first frame rate threshold is not limited in the embodiments of this application, and the first frame rate threshold can be flexibly adjusted according to the actual situation.

[0223] In Example c, when the encoding frame rate reaches the first frame rate threshold, the phone's encoding capability reaches the encoding capability threshold. Thus, by setting an appropriate first frame rate threshold, the second screen casting mode can be allowed only when the frame rate of the encoded video is high. This helps to ensure that the second screen casting data generated by the phone has a high frame rate when using the second screen casting mode, which in turn helps to ensure that the screen casting image corresponding to the first screen casting data has good smoothness.

[0224] It should be noted that any one of the examples a, b, and c above can be used alone, or it can be used in combination with one or more other examples. This application does not limit this.

[0225] For example, when Examples a, b, and c are used together, if the phone's encoding rate is less than or equal to the encoding rate threshold, the phone's encoding resolution is greater than or equal to the first resolution threshold, and the phone's encoding frame rate is greater than or equal to the first frame rate threshold, then the phone's encoding capability is determined to have reached the encoding capability threshold. Conversely, if these conditions are not met, then the phone's encoding capability is determined to have not reached the encoding capability threshold.

[0226] In this embodiment, the device parameters of the smart screen may include at least one of the following: the smart screen's resolution, the smart screen's frame rate, and the smart screen's decoding capability. The smart screen's device parameters satisfy the second projection condition, including at least one of the following: the smart screen's display resolution is greater than or equal to a resolution threshold, the smart screen's display frame rate is greater than or equal to a frame rate threshold, and the smart screen's decoding capability is greater than or equal to a decoding capability threshold; wherein, the decoding capability includes at least one of the following: decoding rate, historical decoding frame drop rate, and decoding resolution.

[0227] In one example, the mobile phone pre-obtains the device parameters of the smart screen and stores them in the phone's storage. Based on this, when the mobile phone needs to determine whether the second projection parameters meet the second projection conditions, it can retrieve the smart screen's device parameters from the local storage.

[0228] In another example, when the phone needs to determine whether the second projection parameters meet the second projection conditions, it can send a second acquisition request to the smart screen to request the smart screen's device parameters. The phone then receives the device parameters returned by the smart screen, thus acquiring the smart screen's device parameters.

[0229] It should be noted that the embodiments of this application do not limit the timing of the mobile phone acquiring the device parameters of the smart screen; the above is merely an illustrative example. For instance, when the mobile phone sends the first acquisition request to the smart screen, it can also instruct the first acquisition request to be used to request the acquisition of the smart screen's device parameters. This helps to improve the efficiency of acquiring the relevant parameters of the smart screen.

[0230] Example A: The device parameters of the smart screen can include its resolution. Based on this, if the smart screen's resolution is greater than or equal to a resolution threshold, then the smart screen's device parameters are determined to meet the second projection condition. Otherwise, the smart screen's device parameters are determined not to meet the second projection condition.

[0231] For example, the resolution threshold can be 720P, 1080P, etc. For instance, a resolution threshold of 720P helps reduce the conditions for using the second screen mirroring mode, thereby increasing the probability of using it. Or, for example, a resolution threshold of 1080P helps ensure that the image displayed on the smart screen has a high visual effect when using the second screen mirroring mode. It should be noted that the specific value of the resolution threshold in this application embodiment is not limited, and the resolution threshold can be flexibly adjusted according to actual conditions.

[0232] In Example A, when the resolution of the smart screen reaches the resolution threshold, the device parameters of the smart screen meet the second projection condition. In this way, by setting an appropriate resolution threshold, the second projection mode can be allowed to be used only when the screen display effect is good. This helps to ensure that the full-screen display effect of the smart screen is good when using the second projection mode, thus providing users with a better projection effect.

[0233] Example B: The device parameters of the smart screen can include the frame rate. Based on this, if the frame rate of the smart screen is greater than or equal to the frame rate threshold, then the device parameters of the smart screen are determined to meet the second projection condition. Otherwise, the device parameters of the smart screen are determined not to meet the second projection condition.

[0234] Among them, the decoding frame rate refers to the maximum frame rate of the video stream that the decoder can decode.

[0235] For example, the frame rate threshold can be any value between 30fps and 60fps. For instance, a frame rate threshold of 30fps helps reduce the conditions for using the second screen mirroring mode, thereby increasing the probability of using it. For instance, a frame rate threshold of 60fps helps ensure that the smart screen can decode higher frame rate video streams when using the second screen mirroring mode. For instance, a frame rate threshold of 45fps helps balance the coverage of the second screen mirroring mode with the frame rate range of the video streams decoded by the smart screen when using the second screen mirroring mode.

[0236] It should be noted that the specific value of the frame rate threshold in this application embodiment is not limited, and the frame rate threshold can be flexibly adjusted according to the actual situation.

[0237] In Example B, when the frame rate of the smart screen reaches the frame rate threshold, the device parameters of the smart screen meet the second projection condition. In this way, by setting an appropriate frame rate threshold, the second projection mode can be allowed only when the screen display on the smart screen has good smoothness. This helps to ensure that the full-screen display of the smart screen has good smoothness when using the second projection mode, thereby providing users with a better projection effect.

[0238] Example C: The device parameters of the smart screen can include its decoding capability. Based on this, if the smart screen's decoding capability is greater than or equal to a decoding capability threshold, then the smart screen's device parameters are determined to meet the second projection condition. Otherwise, the smart screen's device parameters are determined not to meet the second projection condition.

[0239] In Example C, when the smart screen's decoding capability reaches the decoding capability threshold, the smart screen's device parameters meet the second projection condition. In this way, by setting an appropriate decoding capability threshold, the second projection mode can only be allowed when the smart screen has a high decoding capability. This helps to ensure that the smart screen can decode the second projection data with high quality when using the second projection mode, thereby ensuring that a high-quality projection effect is provided to the user.

[0240] Example C1: The decoding capability of the smart screen includes its decoding efficiency. Based on this, if the smart screen's decoding rate is less than or equal to a decoding rate threshold, then the smart screen's decoding capability reaches the threshold, meaning the smart screen's device parameters meet the second projection condition. Conversely, if the decoding rate is less than or equal to the threshold, then the smart screen's decoding capability does not reach the threshold, meaning the smart screen's device parameters do not meet the second projection condition.

[0241] For example, the decoding rate threshold can be any value between 16ms / frame and 33ms / frame. For instance, a decoding rate threshold of 33ms / frame helps reduce the conditions for using the second screen mirroring mode, thereby increasing the probability of using it. Alternatively, a decoding rate threshold of 16ms / frame helps ensure the smart screen has a high decoding rate when using the second screen mirroring mode, thus helping to ensure the smart screen quickly provides full-screen mirroring to the user. Finally, a decoding rate threshold of 25ms / frame helps to balance the coverage of the second screen mirroring mode with the speed at which it provides full-screen mirroring to the user.

[0242] It should be noted that the specific value of the decoding rate threshold in this application embodiment is not limited, and the decoding rate threshold can be flexibly adjusted according to the actual situation.

[0243] In example C1, by setting the decoding rate to be less than or equal to the decoding rate threshold, the decoding capability reaches the decoding capability threshold. In this way, by setting an appropriate decoding rate threshold, the second projection mode can be allowed when the smart screen's decoding efficiency is high. This helps to ensure that the smart screen can quickly decode the second projection data when using the second projection mode, thereby helping the smart screen to quickly provide users with full-screen projection.

[0244] Example C2: The smart screen's decoding capability includes the historical decoding frame drop rate. Based on this, if the smart screen's historical decoding frame drop rate is less than or equal to a frame drop rate threshold, then the smart screen's decoding capability reaches the threshold, meaning the smart screen's device parameters meet the second projection condition. Conversely, if the historical frame drop rate is less than or equal to the threshold, then the smart screen's decoding capability does not reach the threshold, meaning the smart screen's device parameters do not meet the second projection condition.

[0245] For example, the decoding frame drop rate can be less than or equal to 1 / 60-1 / 30. For instance, a decoding frame drop rate of 1 / 60 helps reduce the conditions for using the second screen mirroring mode, thereby increasing the probability of using it. For instance, a decoding frame drop rate of 1 / 30 helps ensure a high visual quality when using the second screen mirroring mode. For instance, a decoding frame drop rate of 1 / 45 not only guarantees the coverage of the second screen mirroring mode but also ensures the visual quality of the image displayed on the smart screen during the second screen mirroring mode.

[0246] It should be noted that the specific value of the frame drop rate threshold in this application embodiment is not limited, and the frame drop rate threshold can be flexibly adjusted according to the actual situation.

[0247] In example C2, by setting the historical decoding frame drop rate to be less than or equal to the frame drop rate threshold, the decoding capability reaches the decoding capability threshold. In this way, by setting an appropriate frame drop rate threshold, the second screen projection mode can only be used when the smart screen's decoding frame drop rate is low. This helps to ensure that when using the second screen projection mode, the smart screen can obtain decoded screen projection data with a high frame rate after decoding the second screen projection data, thereby helping to ensure the smoothness of the screen projection when casting through decoded screen projection data.

[0248] Example C3: The smart screen's decoding capability includes decoding resolution. Based on this, if the smart screen's decoding resolution is greater than or equal to a second resolution threshold, then the smart screen's decoding capability has reached the decoding capability threshold; that is, the smart screen's device parameters meet the second projection condition. Conversely, if the smart screen's decoding capability has not reached the decoding capability threshold, then the smart screen's device parameters do not meet the second projection condition.

[0249] Decoding resolution refers to the maximum resolution of the video stream that the decoder can decode.

[0250] For example, the second resolution threshold can be 720P, 1080P, etc. For instance, a second resolution threshold of 720P helps reduce the conditions for using the second screen mirroring mode, thereby increasing the probability of using it. Or, for example, a second resolution threshold of 1080P helps ensure the range of video stream resolutions that the smart screen can decode when using the second screen mirroring mode.

[0251] It should be noted that the specific value of the second resolution threshold in this application embodiment is not limited, and the second resolution threshold can be flexibly adjusted according to the actual situation.

[0252] In example C3, the decoding capability reaches the decoding capability threshold when the decoding resolution reaches the second resolution threshold. By setting an appropriate second resolution threshold, the second screen projection mode can be allowed only when the smart screen's decoding resolution is high. This helps ensure that the smart screen can decode high-resolution projection data when using the second screen projection mode, thereby helping to provide users with a higher visual projection effect.

[0253] It should be noted that any one of the above examples C1, C2 and C3 can be used alone, or it can be used in combination with one or more other examples. This application embodiment does not limit this.

[0254] For example, when Examples C1, C2, and C3 are used in combination, if the smart screen's decoding rate is less than or equal to the decoding rate threshold, the smart screen's historical decoding frame drop rate is less than or equal to the frame drop rate threshold, and the smart screen's decoding resolution is greater than or equal to the second resolution threshold, then the smart screen's decoding capability is determined to have reached the decoding capability threshold. Conversely, if none of these conditions are met, then the smart screen's decoding capability has not reached the decoding capability threshold.

[0255] It should be noted that any one of the examples A, B and C above can be used alone, or it can be used in combination with one or more other examples. This application embodiment does not limit this.

[0256] For example, when Examples A, B, and C are used together, if the smart screen's resolution is greater than or equal to a resolution threshold, its frame rate is greater than or equal to a frame rate threshold, and its decoding capability is greater than or equal to a decoding capability threshold, then the smart screen's device parameters meet the second projection condition. Conversely, if the smart screen's device parameters do not meet the second projection condition, then the smart screen's device parameters do not meet the second projection condition.

[0257] In this embodiment of the application, the identifier of the video application satisfies the second projection condition, including: the identifier of the video application is the target identifier.

[0258] For example, the current video application may include video application 1, ..., video application M, where M is a positive integer greater than 1. Based on this, the identifier of the video application among video application 1, ..., video application M that is suitable for using the second screen mirroring mode can be used as the target identifier. This not only ensures that video applications suitable for using the second screen mirroring mode can use it, but also prevents video applications unsuitable for using the second screen mirroring mode from using it.

[0259] In this embodiment, when the identifier of the video application is set as the target identifier, the identifier of the video application satisfies the second screen casting condition, thereby enabling only video applications of a specified type to use the second screen casting mode. In this way, by setting the identifier of the video application suitable for using the second screen casting mode as the target identifier, it helps to improve the compatibility between the second screen casting mode and the video application.

[0260] In this embodiment of the application, the second screen casting condition is met by the following: the type of the video application's account is the target type.

[0261] For example, the account type of a video application refers to the type of account used by the user to log in to the video application. When the phone needs to determine whether the second screen mirroring condition is met, it can obtain the account type by reading the type of the currently logged-in account in the video application.

[0262] For example, the account type may include guest account, regular account, regular member account, premium member account, etc. For instance, the target type of account may include a premium member account. Based on this, if the user's video application account is a guest account, regular account, or regular member account, then the user's video application account type does not meet the second screen casting condition; if the user's video application account is a premium member account, then the user's video application account type meets the second screen casting condition.

[0263] It should be noted that the embodiments of this application do not limit the number or specific type of accounts of the target type; the above is merely an illustrative example. For instance, the target type of accounts may also include regular member accounts and premium member accounts, etc.

[0264] In this embodiment, when the account type is set to the target type, the account type meets the second screen casting condition, thereby enabling only accounts of the target type to use the second screen casting mode. This helps to provide more types of full-screen screen casting modes for specified types of accounts, thus improving the screen casting experience for some specified users (i.e., users with accounts of the specified type).

[0265] It should be noted that other related instructions for S505 can be found in the instructions for S504, and will not be repeated here.

[0266] Optionally, the screen mirroring method may also include: the mobile phone determining whether the third screen mirroring parameters meet the third screen mirroring conditions.

[0267] If the result is yes, the second screen projection data includes at least one of the following: bullet screen data and a custom screen of the video application. If the result is no, the second screen projection data does not include bullet screen data or a custom screen of the video application. The bullet screen data is used to display bullet comments on the video played on the mobile phone on the smart screen; these bullet comments refer to user comments on the video obtained by the mobile phone.

[0268] Optionally, the custom screen can be a QR code, a document, an animation, special effects, etc.

[0269] It should be noted that the embodiments of this application do not limit the type of custom screen; the above is merely an illustrative example.

[0270] In some embodiments, the mobile phone, in response to a detected target event, determines whether the third projection parameters meet the third projection conditions, thereby determining whether the second projection data is suitable for including bullet screen data. For example, if the third projection parameters meet the third projection conditions, it indicates that the data is suitable for including bullet screen data; otherwise, it indicates that the data is not suitable for including bullet screen data.

[0271] In other embodiments, the mobile phone determines whether the third projection parameters meet the third projection conditions in response to detecting a video application's playback interface. In still other embodiments, the mobile phone determines whether the third projection parameters meet the third projection conditions in response to detecting a running video application.

[0272] In this embodiment, the third projection is determined to include bullet screen data based on whether the third projection parameters meet the third projection conditions. In this way, the second projection data can be flexibly adjusted to include bullet screen data according to the projection scenario, thereby ensuring the compatibility between the current projection scenario and bullet screen projection, which in turn helps to ensure the feasibility and necessity of bullet screen projection.

[0273] The following provides an example of the third projection parameters and how the third projection parameters satisfy the third projection conditions.

[0274] Optionally, the third screen-casting parameter includes at least one of user profile data and video type. The user profile data indicates the user's demand for bullet comments, and includes user data related to bullet comments; this user is the user to whom the video application's account belongs.

[0275] In this embodiment, user data related to bullet comments is used to determine whether the third projection parameters meet the third projection conditions, that is, to determine whether to provide bullet comment projection to the user. This allows for determining whether to provide bullet comment projection based on the user's demand for bullet comments, thereby increasing the necessity of bullet comment projection and improving the user's projection experience. Furthermore, determining whether to provide bullet comment projection based on the video type allows for determining whether to provide bullet comment projection based on the video's demand for bullet comments, which helps to enhance the video's appeal and thus improve the user experience.

[0276] In some embodiments, the third casting parameter satisfying the third casting condition may include: the video type is the target type. That is, if the type of the video played on the mobile phone is the pre-specified target type, then the third casting parameter satisfies the third casting condition.

[0277] For example, the video type can include game videos, technology videos, sports videos, music videos, variety show videos, and film and television videos. For instance, if the target type is a game video, the phone needs to determine whether the third casting parameters meet the third casting conditions. It can obtain the video's tag; if the video's tag indicates a type including game videos, then the three casting parameters meet the third casting conditions; otherwise, the third casting parameters do not meet the third casting conditions.

[0278] It should be noted that the embodiments of this application do not limit the type of video; the above is merely illustrative. Furthermore, the embodiments of this application do not limit the number of types included in the target type; that is, the target type may include one or more types. For example, the target type may also include game videos and variety show videos.

[0279] In this embodiment, by setting the third projection parameter to include the video type, by pre-setting the video type with high demand for bullet comments as the target type, not only can bullet comment projection be performed on videos with high demand for bullet comments, but bullet comment projection can also be avoided for videos with low demand for bullet comments, thereby improving the projection speed of videos with low demand for bullet comments.

[0280] In other embodiments, satisfying the third projection parameter as a third projection condition may include: the user profile data meeting a target threshold condition. Thus, by setting appropriate threshold conditions, users with high demand for bullet comments can be selected, thereby providing bullet comment projection to these users and helping to ensure the necessity of bullet comment projection.

[0281] Optionally, the user profile data may include at least one of the following: the historical frequency of enabling the bullet screen function for the video application account, the historical frequency of displaying bullet screens for the account, the historical frequency of liking bullet screens for the account, the historical frequency of replying to bullet screens for the account, the historical frequency of sending bullet screens for the account being greater than or equal to a fifth frequency threshold, the historical number of bullet screens sent for the account being greater than or equal to a target number, the account's default bullet screen mode, and the account's current bullet screen mode.

[0282] It should be noted that the specific content of user profile data is not limited in the embodiments of this application. Any kind of user data related to bullet comments can be used as user profile data. The above is only an illustrative example.

[0283] For example, the phone's storage medium stores third-party screen mirroring parameters. When the phone needs to determine whether the third-party screen mirroring parameters meet the third-party screen mirroring conditions, it can retrieve the third-party screen mirroring parameters from the storage medium.

[0284] In one example, user profile data can be data from the most recent time period, where the most recent time period refers to the period most recently the user profile data was used by the phone. This helps ensure the accuracy of the user profile data. For example, it could be user profile data from the most recent three months. Based on this, when the phone performs the operation "determine whether the third screen casting parameters meet the third screen casting conditions" on April 1, 2024, the phone can obtain user profile data from January 1, 2024 to March 31, 2024, and determine whether the third screen casting parameters meet the third screen casting conditions based on this most recent three months of user profile data.

[0285] It should be noted that the embodiments of this application do not limit the duration of the most recent time period; the above is merely an illustrative example. For instance, the most recent time period could also be user profile data within the last 12 months.

[0286] In another example, user profile data can also be data from all historical time periods, which helps to improve the completeness of user profile data.

[0287] In this embodiment, by setting the user profile data to include the aforementioned bullet screen data, it is helpful to determine whether to configure bullet screen data for the second projection data based on the user's needs for bullet screens, so as to provide bullet screen projection for the user, thereby helping to improve the adaptability of bullet screen projection to user needs, and thus helping to improve the user's projection experience.

[0288] Example 1a: User profile data includes the historical frequency of using the bullet comment function for an account associated with a video application. The user profile data satisfies the target threshold condition, including: the historical frequency of using the bullet comment function for an account associated with a video application is greater than or equal to a first frequency threshold. Specifically, the historical frequency of using the bullet comment function is equal to the number of times the bullet comment function was historically activated divided by the number of times the video application was historically activated.

[0289] For example, when a user watches a video using a mobile video application, they can enable or disable the bullet comment feature provided by the video application. Based on this, if the user enables the bullet comment feature the first time they launch the video application to watch a video, and the bullet comment feature is still enabled the second time they launch the video application to watch a video, then the historical number of times the bullet comment feature has been enabled is 2, the historical number of times the video application has been launched is 2, and therefore the historical frequency of enabling the bullet comment feature is 100%.

[0290] For example, the first frequency threshold can be 50%-100%. For instance, a first frequency threshold of 50% helps increase the probability of bullet screen projection, thereby improving the user's projection experience. For instance, a first frequency threshold of 100% reduces the probability of bullet screen projection, thus ensuring full-screen projection speed for most users. For instance, a first frequency threshold of 75% not only ensures the coverage of bullet screen projection but also considers the full-screen projection speed for some users.

[0291] It should be noted that the specific value of the first frequency threshold in this application embodiment is not limited, and the first frequency threshold can be flexibly adjusted according to the actual situation.

[0292] In Example 1a, by setting the frequency of historically enabled bullet screen function to reach a first frequency threshold, the user profile data meets the target threshold condition. In this way, by setting an appropriate first frequency threshold, bullet screen projection can be provided to users only when the user uses the function frequently, thereby helping to ensure the necessity of providing bullet screen projection to users.

[0293] Example 1b: User profile data meets the target threshold conditions, including: the frequency of historically displayed bullet comments corresponding to the account is greater than or equal to the second frequency threshold. Wherein, the frequency of historically displayed bullet comments corresponding to the account is equal to the duration of historically watched videos divided by the duration of historically displayed bullet comments.

[0294] For example, if a user watches a video on their mobile phone for 100 hours, and 80 of those 100 hours show bullet comments, then the historical frequency of bullet comments is 80%.

[0295] For example, the second frequency threshold can be 50%-100%. For instance, a second frequency threshold of 50% helps increase the probability of bullet screen projection, thus improving the user's projection experience. For instance, a second frequency threshold of 100% reduces the probability of bullet screen projection, ensuring full-screen projection speed for most users. For instance, a second frequency threshold of 75% not only increases the coverage of bullet screen projection but also avoids providing bullet screen projection to users with low demand for it.

[0296] It should be noted that the specific value of the second frequency threshold in this application embodiment is not limited, and the second frequency threshold can be flexibly adjusted according to the actual situation.

[0297] In Example 1b, by setting the frequency of historical display of bullet comments to reach the second frequency threshold, the user profile data meets the target threshold condition. In this way, by setting an appropriate second frequency threshold, bullet comment projection can be provided to users only when the user uses the service frequently, thereby helping to ensure the necessity of providing bullet comment projection to users.

[0298] Example 1c: User profile data meets the target threshold conditions, including: the frequency of historical likes and comments corresponding to the account is greater than or equal to the third frequency threshold.

[0299] For example, the third frequency threshold can be between 1 time / day and 50 times / day. Here, 1 time / day represents an average of 1 like per day for a bullet comment. For instance, a third frequency threshold of 1 time / day helps increase the probability of bullet comment casting, thus improving the user's casting experience. For example, a third frequency threshold of 50 times / day reduces the probability of bullet comment casting, ensuring full-screen casting speed for most users. For example, a third frequency threshold of 25 times / day not only broadens the coverage of bullet comment casting but also avoids providing bullet comment casting to users with low demand for it.

[0300] It should be noted that the specific value of the third frequency threshold in this application embodiment is not limited, and the third frequency threshold can be flexibly adjusted according to the actual situation.

[0301] In Example 1c, by setting the frequency of historical likes and comments to reach the third frequency threshold, the user profile data meets the target threshold condition. In this way, by setting an appropriate third frequency threshold, the user can only be provided with comment projection when the user's interaction with the comments is high, which helps to ensure the necessity of providing comment projection for the user.

[0302] Example 1d: User profile data meets the target threshold conditions, including: the frequency of historical replies to the bullet comments corresponding to the account is greater than or equal to the fourth frequency threshold.

[0303] For example, the fourth frequency threshold can be between 1 time / hour and 20 times / hour. Here, 1 time / hour represents an average of 1 reply to a comment per hour. For instance, a fourth frequency threshold of 1 time / hour helps increase the probability of comment casting, thus improving the user's casting experience. For example, a fourth frequency threshold of 20 times / hour reduces the probability of comment casting, ensuring full-screen casting speed for most users. For instance, a fourth frequency threshold of 10 times / hour not only broadens the coverage of comment casting but also avoids providing comment casting to users with low demand for it.

[0304] It should be noted that the specific value of the fourth frequency threshold in this application embodiment is not limited, and the fourth frequency threshold can be flexibly adjusted according to the actual situation.

[0305] In Example 1d, when the frequency of historical reply comments reaches the fourth frequency threshold, the user profile data meets the target threshold condition. In this way, by setting an appropriate fourth frequency threshold, the user can only be provided with comment projection when the user's interaction with the comments is high, thus helping to ensure the necessity of providing comment projection for the user.

[0306] Example 1e: User profile data meets the target threshold conditions, including: the frequency of historical bullet comments sent by the account is greater than or equal to the fifth frequency threshold.

[0307] For example, the fifth frequency threshold can be between 1 time / day and 20 times / day. Here, 1 time / day represents an average of 1 bullet comment sent per day. For instance, the fifth frequency threshold could be 1 time / hour, which helps increase the probability of bullet comment casting, thus improving the user's casting experience. For example, the fifth frequency threshold could be 20 times / hour, which reduces the probability of bullet comment casting, thus ensuring full-screen casting speed for most users. For example, the fifth frequency threshold could be 10 times / hour, which not only increases the coverage of bullet comment casting but also avoids providing bullet comment casting to users with low bullet comment demand.

[0308] It should be noted that the specific value of the fourth frequency threshold in this application embodiment is not limited, and the fourth frequency threshold can be flexibly adjusted according to the actual situation.

[0309] In Example 1e, by setting the frequency of historical bullet comments to reach the fifth frequency threshold, the user profile data meets the target threshold condition. In this way, by setting an appropriate fifth frequency threshold, bullet comment projection can be provided to users only when their demand for bullet comments is high, thereby helping to ensure the necessity of providing bullet comment projection to users.

[0310] Example 1f: User profile data meets the target threshold conditions, including: the number of historical bullet comments sent by the account is greater than or equal to the target number.

[0311] For example, the target number can be between 10 and 100. For instance, a target number of 10 helps increase the probability of bullet comment projection, thus improving the user's projection experience. A target number of 100 reduces the probability of bullet comment projection, ensuring full-screen projection speed for most users. A target number of 50 not only increases the coverage of bullet comment projection but also avoids providing it to users with low bullet comment usage.

[0312] It should be noted that the specific value of the target quantity is not limited in the embodiments of this application, and the target quantity can be flexibly adjusted according to the actual situation.

[0313] In Example 1d, the user profile data meets the target threshold condition when the number of historically sent bullet comments reaches the target number. In this way, by setting an appropriate target number, bullet comment projection can be provided to users only when their demand for bullet comments is high, thereby helping to ensure the necessity of providing bullet comment projection to users.

[0314] Example 1g: User profile data meets the target threshold conditions, including: the default bullet screen mode corresponding to the account is enabled.

[0315] In Example 1g, by setting the default bullet screen mode to enabled, the user profile data meets the target threshold condition, which helps to ensure that bullet screen projection is only provided to users when their demand for bullet screens is high, thus ensuring the necessity of providing bullet screen projection to users.

[0316] Example 1h: The user profile data meets the target threshold conditions, including: the current bullet screen mode corresponding to the account is enabled.

[0317] In Example 1h, since the bullet comments are only displayed on the mobile device when the current bullet comment mode is enabled, setting the current bullet comment mode to enabled ensures that the user profile data meets the target threshold condition, which helps to ensure successful acquisition of bullet comment data from the mobile device and avoids failure to acquire bullet comment data, thus preventing full-screen projection failure.

[0318] It should be noted that any one of the examples 1a, 1b, 1c, 1d, 1e, 1f, 1g, and 1h described above can be used alone or in combination with one or more other examples. This application does not impose any limitations on this. For example, when examples 1a, 1c, and 1e are used simultaneously, if the historical frequency of enabling the bullet comment function is greater than or equal to a first frequency threshold, the historical frequency of liking bullet comments is greater than or equal to a third frequency threshold, and the default bullet comment mode is enabled, then the user profile data meets the target threshold condition. Conversely, the user profile data does not meet the target threshold condition.

[0319] In some other embodiments, the third projection parameters satisfy the third projection conditions, including: the user profile data meets the target threshold condition and the video type is the target type; wherein, the user profile data includes user data related to bullet comments. For further explanation of this embodiment, please refer to the two embodiments described above, and will not be repeated here.

[0320] It should be noted that the execution order of S504, S505 and "determining whether the third projection parameters meet the third projection conditions" is not limited in the embodiments of this application; the above is only an illustrative example.

[0321] The above embodiments illustrate scenarios where the second projection data can be flexibly adjusted to include bullet screen data. In some other embodiments, the second projection data only includes bullet screen data. In this scenario, the mobile phone can execute S507 when the second projection parameters meet the second projection conditions and / or the third projection parameters meet the third projection conditions.

[0322] S506: In response to the detected target event, the mobile phone sends the first screen projection data to the smart screen.

[0323] The target event is used to instruct the video application to play the video. The first projection data is used for the smart screen to display the video in full-screen mode based on the first projection mode, which differs from the mirror projection mode. The first projection mode can also be called resource projection mode, resource broadcasting mode, etc.

[0324] In this embodiment, after detecting a target event, the mobile phone determines whether the first projection parameters meet the first projection conditions. If they do, the mobile phone responds to the detected target event by sending the first projection data to the smart screen via the communication connection to achieve full-screen projection. Therefore, the mobile phone sending the first projection data to the smart screen in response to the target event can also be considered as the mobile phone sending the first projection data to the smart screen in response to the detected target event and the first projection parameters meeting the first projection conditions.

[0325] In this embodiment of the application, the first projection data is used to indicate the video playback resources.

[0326] In one example, the first screen-casting data includes the address of the video playback resource, which can be used to retrieve the video playback resource from the internet. For example, this address can be a Uniform Resource Locator (URL). Using the address of the video playback resource as the first screen-casting data helps reduce the workload on the mobile phone during the screen-casting process.

[0327] In another example, the first projection data includes the video stream of the video playback resource. Using the video stream of the playback resource as the first projection data helps reduce the workload of the smart screen during the projection process.

[0328] For example, in response to a detected target event, the mobile phone obtains the video playback resource. If the mobile phone determines to use the first screen casting mode, it can generate a video stream based on the playback resource. Then, the mobile phone sends the video stream as the first screen casting data to the smart screen, so that the smart screen can perform full-screen screen casting based on the first screen casting data.

[0329] It should be noted that the mobile phone can obtain video playback resources from local storage media, or it can obtain video playback resources from a remote location based on the address of the playback resources. This application embodiment does not impose any restrictions on this.

[0330] Optionally, when the mobile phone transmits the first screen projection data to the smart screen, the mobile phone can be in a state of non-full-screen display of the playback interface. For example, the non-full-screen display of the playback interface can be as shown in Figure 1(b), where the playback interface is displayed in the upper half of the application interface.

[0331] In this embodiment, when the mobile phone is in a non-full-screen playback state, the first screen projection data can be transmitted to the smart screen. This allows the smart screen to still provide a full-screen projection effect for the user when the mobile phone is not playing a video in full screen. This helps to reduce the limitations on the mobile phone's playback interface when casting to full screen, thereby improving the user experience.

[0332] Optionally, the screen mirroring method may further include: when the mobile phone transmits first screen mirroring data to the smart screen, the mobile phone, in response to a detected first switching operation, transmits second screen mirroring data to the smart screen. The first switching operation is used to instruct screen mirroring to be performed through a second screen mirroring mode, that is, to send second screen mirroring data to the smart screen.

[0333] For example, the first switching operation may be a user's touch operation on the touch screen, a trigger operation based on a physical button, a gesture operation, or a voice instruction operation, etc. The specific type of the first switching operation is not limited in the embodiments of this application.

[0334] For example, in response to a detected target event, the mobile phone transmits first projection data to the smart screen, so that the smart screen can display the video in full screen based on the first projection data. Furthermore, if the user performs a first switching operation on the mobile phone, such as clicking the projection mode switching control on the phone's interface or pressing a physical button for switching projection modes, the mobile phone, in response to the detected first switching operation, switches to sending second projection data to the smart screen.

[0335] It should be noted that the relevant explanations regarding the second screen projection data will be provided in the S508, and will not be detailed here.

[0336] In this embodiment, by setting the mobile phone to switch the full-screen projection mode between the mobile phone and the smart screen based on the detected first switching operation, the projection can be performed according to the full-screen projection mode selected by the user, thereby helping to improve the user experience.

[0337] S507: The smart screen receives the first screen projection data sent by the mobile phone and displays the video in full screen according to the first screen projection data.

[0338] In this embodiment of the application, after the smart screen receives the first projection data, it can display the video in full screen according to the first projection data, for example, as shown in Figure 7(d).

[0339] In one example, the first projection data is the address of the playback resource. Based on this, the smart screen retrieves the playback resource from the remote end according to the address, decodes the retrieved playback resource, and obtains a decoded file. Then, the smart screen draws screen image data based on the decoded file and synthesizes and outputs it to the smart screen's display for display.

[0340] In another example, the first projection data is a video stream file of the playback resource. Based on this, after receiving the video stream file, the smart screen decodes it to obtain a decoded file. Then, the smart screen draws screen image data based on the decoded file and synthesizes it for display on its display screen.

[0341] In some embodiments, after the mobile phone detects the target event and determines that the first projection parameters meet the first projection conditions, it transmits the first projection data to the smart screen. Based on this, the mobile phone displays a projection control interface, for example, the control interface shown in Figure 7(c). The smart screen displays the video in full screen according to the first projection data transmitted by the mobile phone, for example, the full-screen video display shown in Figure 7(d). That is, the mobile phone can directly switch from the interface shown in Figure 7(a) to the interface shown in Figure 7(c). In other words, after the mobile phone detects the target event, it does not display the playback interface of the video application.

[0342] For example, the control interface may include at least one control, which may include a playback control, a fast forward control, a rewind control, a next control, a previous control, a time control, etc. The next control is used to indicate switching to the next video, and the previous control is used to indicate switching to at least the previous video. The time control may be used to indicate the total duration of the video, the duration played, the remaining unplayed duration, etc. In other embodiments, after the mobile phone detects the target event, it may display the playback interface of the video application, for example, the playback interface shown in Figure 1(a), and transmit the first projection data to the smart screen. Based on this, when the smart screen displays the video in full screen according to the first projection data transmitted by the mobile phone, for example, the full-screen display of the video shown in Figure 7(d), the mobile phone may switch from displaying the playback interface to displaying the projection control interface, for example, the control interface shown in Figure 7(c).

[0343] In some other embodiments, after detecting the target event, the mobile phone displays the playback interface of the video application, such as the playback interface shown in Figure 1(a), and transmits the first screen projection data to the smart screen. Based on this, the smart screen displays the video in full screen according to the first screen projection data transmitted by the mobile phone, while the mobile phone continues to display the playback interface.

[0344] It should be noted that in this embodiment of the application, the type of interface displayed on the mobile phone is not limited during the full-screen projection process between the mobile phone and the smart screen; the above is merely an illustrative example.

[0345] S508: In response to the detected target event, the mobile phone transmits the second projection data to the smart screen.

[0346] The second projection data is used for the smart screen to display video in full-screen mode based on the second projection mode, which is different from the mirror projection mode. The second projection mode can also be called extended projection mode, etc.

[0347] In this embodiment, after detecting a target event, the mobile phone determines whether the second projection parameters meet the second projection conditions. If they do, the mobile phone responds to the detected target event by sending second projection data to the smart screen via the communication connection to achieve full-screen projection. Therefore, the mobile phone sending second projection data to the smart screen in response to the target event can also be considered as the mobile phone sending second projection data to the smart screen in response to the detected target event and the second projection parameters meeting the second projection conditions.

[0348] In this embodiment, the second projection data includes a target virtual screen; the target virtual screen includes video footage, and the screen ratio of the target virtual screen is the same as that of the smart screen's display.

[0349] In one example, the screen ratio can be the ratio of the screen's height to its width. In another example, the screen ratio can be the ratio of the screen's width to its height. Here, the screen's height and width refer to the dimensions under normal usage conditions. For example, a mobile phone is typically used in portrait mode, while a smart screen is typically used in landscape mode.

[0350] For example, in response to a detected target event, the mobile phone obtains the video playback resources. If the mobile phone determines to use the second screen mirroring mode, it can create a virtual screen based on the screen ratio of the smart screen, and draw the video screen image data on the virtual screen according to the video playback resources, thereby obtaining a target virtual screen with the same screen ratio as the smart screen. Then, the mobile phone encodes the target virtual screen and sends the encoded data as the second screen mirroring data to the smart screen.

[0351] In one example, the phone's storage medium contains the screen ratio of the smart screen. Based on this, after the phone determines to use the second screen mirroring mode, it can retrieve the smart screen's screen ratio from its local storage medium. This helps improve the efficiency of generating the target virtual screen. In another example, after the phone determines to use the second screen mirroring mode, it can send a third retrieval request to the smart screen to request the screen ratio of the smart screen. This helps improve the accuracy of the retrieved screen ratio of the smart screen.

[0352] In this embodiment, by using the target virtual screen as the second projection data, the smart screen can directly output the target virtual screen to the display screen for full-screen display after receiving the second projection data, which helps to reduce the workload of the smart screen and improve the display efficiency of the smart screen.

[0353] Optionally, the target virtual screen may also include at least one of the following: bullet comments, custom screens of video applications.

[0354] In this embodiment, the target virtual screen also includes bullet comments, which helps to improve the integrity of the second projection data, thereby helping to display more content presented by the mobile phone on the smart screen in full screen, and thus helping to improve the user's projection experience.

[0355] In this embodiment, by setting the target virtual screen to include a custom screen of a video application, the comprehensiveness of the screen projection is ensured, thereby improving the user's screen projection experience.

[0356] Optionally, when the mobile phone transmits the second projection data to the smart screen, the mobile phone responds to the detected second switching operation and transmits the first projection data to the smart screen.

[0357] It should be noted that the relevant instructions for the second switching operation can be found in the instructions for the first switching operation, and will not be repeated here.

[0358] In this embodiment, by setting the mobile phone to switch the full-screen projection mode between the mobile phone and the smart screen according to the detected second switching operation, the projection can be performed according to the full-screen projection mode selected by the user, thereby helping to improve the user experience.

[0359] It should be noted that other explanations of S508 can be found in the relevant explanations of S506, and will not be repeated here.

[0360] Optionally, the screen projection method may further include: if the mobile phone determines that the first screen projection parameters meet the first screen projection conditions and the second screen projection parameters meet the second screen projection conditions, the mobile phone responds to the detected target event by randomly transmitting mirrored screen projection data or the first screen projection data to the smart screen.

[0361] In this embodiment, when both the first and second screen casting conditions are met, the mobile phone randomly selects a full-screen screen casting mode for screen casting, which helps to improve the efficiency of full-screen screen casting.

[0362] Optionally, the screen casting method may further include: if the mobile phone determines that the first screen casting parameters meet the first screen casting conditions and the second screen casting parameters meet the second screen casting conditions, the mobile phone responds to the detected target event and transmits the screen casting data corresponding to the screen casting mode with the highest priority among the first screen casting mode and the second screen casting mode to the smart screen.

[0363] For example, users can pre-set priorities for the first and second screen mirroring modes, and the phone stores the priorities of the first and second screen mirroring modes. For instance, a user can set a low priority for the first screen mirroring mode and a high priority for the second screen mirroring mode.

[0364] It should be noted that the embodiments of this application do not limit the way of setting the priority of the first screen projection mode and the second screen projection mode; the above is only an illustrative example.

[0365] In this embodiment, when both the first and second screen casting conditions are met, the mobile phone can select the highest priority full-screen screen casting mode for screen casting based on the priority of different full-screen screen casting modes. In this way, users can set different priorities for different full-screen screen casting modes to prioritize the use of a specified full-screen screen casting mode, thereby helping to improve the user experience.

[0366] S509: The smart screen receives the second screen projection data transmitted from the mobile phone and displays the video in full screen according to the second screen projection data.

[0367] In this embodiment, after receiving the second projection data, the smart screen decodes the data to obtain the target virtual screen. Then, the smart screen outputs the target virtual screen to the display screen for full-screen display.

[0368] In one example, the target virtual screen has the same screen size as the smart screen, and the smart screen can directly display the target virtual screen on its display. In another example, the target virtual screen has a different screen size than the smart screen. The smart screen can scale up the target virtual screen proportionally to its own screen size before displaying the scaled-up target virtual screen on its display. Because the target virtual screen has the same aspect ratio as the smart screen, scaling up the target virtual screen allows its size to be adjusted to match the smart screen's size, thus enabling the smart screen to achieve full-screen display.

[0369] In some embodiments, the target virtual screen does not include bullet comments, custom screens, etc. After the smart screen receives the second projection data, it outputs the target virtual screen to the display screen for full-screen display. For example, it can be a full-screen display of a video screen as shown in Figure 8(b).

[0370] In other embodiments, the target virtual screen includes bullet comments, such as "Very good!" or "Perfect" as shown in Figure 8(a). After receiving the second projection data, the smart screen outputs the target virtual screen to the display screen for full-screen display, for example, it can be a full-screen display of a video as shown in Figure 8(c). In addition to displaying the video, the smart screen also displays the bullet comments shown on the mobile phone's playback interface.

[0371] It should be noted that other related instructions in S509 can be found in the instructions in S507, and will not be repeated here.

[0372] Optionally, S510: The mobile phone responds to the first detected operation by sending mirroring data to the smart screen.

[0373] The first operation is used to indicate the exit from video playback.

[0374] In this embodiment, during the process of the mobile phone sending the first or second projection data to the smart screen, the user performs a first operation on the mobile phone. In response to the detected first operation, the mobile phone exits the video playback state and sends mirror projection data to the smart screen. After exiting the video playback state, the mobile phone can display the application interface of the video application, for example, the interface shown in Figure 7(a). The smart screen mirrors the application interface of the video application according to the mirror projection data.

[0375] For example, the first operation may be a user's touch operation on the touch screen, a trigger operation based on a physical button, a gesture operation, or a voice instruction operation, etc. The specific type of screen projection operation is not limited in the embodiments of this application.

[0376] For example, in the case of a mobile video application's playback interface, the first operation may include clicking the close control on the playback interface, clicking the exit control on the playback interface, etc. In the case of the phone displaying a control interface, the first operation may include clicking the exit control on the control interface, closing the control, etc. Furthermore, the first operation may also be a screen lock operation.

[0377] It should be noted that other related explanations for S510 can be found in the explanation of S502, and will not be repeated here.

[0378] In the above embodiments, after the mirroring function between the mobile phone and the smart screen is enabled, when the mobile phone detects a target event indicating video playback, if the first projection parameters meet the first projection conditions, the mobile phone and the smart screen perform full-screen projection through the second projection mode, that is, the mobile phone sends the first projection data to the smart screen. If the second projection parameters meet the second projection conditions, the mobile phone and the smart screen perform full-screen projection through the third projection mode, that is, the mobile phone sends the second projection data to the smart screen. Since both the first and second projection modes can ensure that the smart screen can display the video in full screen, this projection scheme can not only automatically provide full-screen projection to the user immediately after the mobile phone detects a target event indicating video playback without requiring any user operation, thereby improving the user's projection experience, but also select the most suitable full-screen projection mode for the smart screen and the smart screen based on whether the projection parameters related to the current scene meet the projection conditions, thereby helping to improve the projection effect of the smart screen and further improving the user's projection experience.

[0379] Figure 9 illustrates another screen mirroring method provided by an embodiment of this application. This screen mirroring method may include the following steps S901-S905.

[0380] S901: The mobile phone and the smart screen establish a communication connection.

[0381] Optionally, S902: The mobile phone sends mirrored screen projection data to the smart screen based on the screen projection operation.

[0382] Optionally, S903: The smart screen mirrors the screen displayed on the mobile phone based on the received mirroring data.

[0383] It should be noted that S902 and S903 are optional steps. That is to say, after the phone completes S901, it can skip S902 and S903 and directly execute S904.

[0384] S904: In response to the detected target event, the mobile phone sends the first screen projection data to the smart screen.

[0385] S905: The smart screen receives the first screen projection data sent by the mobile phone and displays the video in full screen according to the first screen projection data.

[0386] In the above embodiments, after the mobile phone and the smart screen establish a communication connection, the mobile phone detects the target event used to indicate the playback of video, and the mobile phone and the smart screen directly perform full-screen projection through the first projection mode. This reduces the number of operations required to achieve full-screen projection, thereby helping to improve the efficiency of full-screen projection.

[0387] It should be noted that the relevant descriptions of S901-S905 can be found in the description of the embodiment shown in Figure 5, and will not be repeated here.

[0388] Figure 10 illustrates another screen mirroring method provided in an embodiment of this application. This screen mirroring method may include the following steps S1001-S1005.

[0389] S1001: The mobile phone and the smart screen establish a communication connection.

[0390] Optionally, S1002: The mobile phone sends mirrored screen projection data to the smart screen based on the screen projection operation.

[0391] Optionally, S1003: The smart screen mirrors the screen displayed on the mobile phone based on the received mirroring data.

[0392] It should be noted that S1002 and S1003 are optional steps. That is to say, after the phone completes S1001, it can skip S1002 and S1003 and directly execute S904.

[0393] S1004: In response to the detected target event, the mobile phone transmits the second projection data to the smart screen.

[0394] S1005: The smart screen receives the second screen projection data sent by the mobile phone and displays the video in full screen according to the second screen projection data.

[0395] In the above embodiments, after the mobile phone and the smart screen establish a communication connection, the mobile phone detects the target event used to indicate the playback of video, and the mobile phone and the smart screen perform full-screen projection through the second projection mode. This reduces the number of operations required to achieve full-screen projection, thereby helping to improve the efficiency of full-screen projection.

[0396] It should be noted that the relevant descriptions of S1001-S1005 can be found in the description of the embodiment shown in Figure 5, and will not be repeated here.

[0397] Figure 11 illustrates another screen mirroring method provided in an embodiment of this application. This screen mirroring method may include the following steps 1101-1107.

[0398] S1101: The mobile phone and the smart screen establish a communication connection.

[0399] Example 1: The mobile phone can establish a communication connection only with the smart screen, meaning that only the smart screen can be used as the target device for screen projection.

[0400] Example 2: A mobile phone can establish communication connections with multiple electronic devices, including a smart screen. In other words, any one of these electronic devices can be used as the target device for screen mirroring.

[0401] S1102: The mobile phone determines whether the first screen projection parameters meet the first screen projection conditions.

[0402] S1103: The phone determines whether the second screen mirroring parameters meet the second screen mirroring conditions.

[0403] S1104: In response to the detected target event, the mobile phone sends the first screen projection data to the smart screen.

[0404] Based on Example 1 in S1101 above, in response to the detected target event, if the first projection parameters do not meet the first projection conditions, the mobile phone sends the first projection data to the smart screen.

[0405] In conjunction with Example 1 in S1101 above, the mobile phone responds to the detected target event and sends the first screen projection data to the target electronic device (e.g., a smart screen) if the first screen projection parameters meet the first screen projection conditions.

[0406] In one example, the target electronic device is the one with the highest screen mirroring priority among multiple electronic devices, where the screen mirroring priority of each electronic device can be preset by the user. This helps to improve the user's screen mirroring experience.

[0407] In another example, the target electronic device can be any one of multiple electronic devices. This helps to increase the diversity of choices for the target device for screen mirroring.

[0408] In yet another example, the target electronic device can be the one with the largest screen among multiple electronic devices. This helps improve the user's screen mirroring experience.

[0409] In another example, the target electronic device could be the one closest to the phone among multiple electronic devices. This helps improve the convenience for users watching screen-cast videos.

[0410] S1105: The smart screen receives the first screen projection data sent by the mobile phone and displays the video in full screen according to the first screen projection data.

[0411] S1106: In response to the detected target event, the mobile phone transmits the second projection data to the smart screen.

[0412] S1107: The smart screen receives the second screen projection data transmitted from the mobile phone and displays the video in full screen according to the second screen projection data.

[0413] In the above embodiments, after the mobile phone and the smart screen establish a communication connection, and the mobile phone detects a target event indicating video playback, if the first projection parameters meet the first projection conditions, the mobile phone and the smart screen will perform full-screen projection through the second projection mode. If the second projection parameters meet the second projection conditions, the mobile phone and the smart screen will perform full-screen projection through the third projection mode.

[0414] It should be noted that the relevant descriptions of S1101-S1107 can be found in the description of the embodiment shown in Figure 5, and will not be repeated here.

[0415] The foregoing primarily describes the solution provided in this application from a methodological perspective. To achieve the aforementioned functions, the projection device includes corresponding hardware structures and / or software modules for executing each function. Those skilled in the art should readily recognize that, based on the units and algorithm steps described in conjunction with the embodiments disclosed herein, 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.

[0416] This application can, based on the above method, exemplarily divide a screen projection device into functional modules. For example, the screen projection device may include functional modules corresponding to each functional division, or two or more functions may be integrated into one processing module. The integrated modules can be implemented in hardware or as software functional modules. It should be noted that the module division in this application is illustrative and only represents one logical functional division; in actual implementation, there may be other division methods.

[0417] For example, Figure 12 shows a possible structural schematic diagram of the screen projection device (denoted as screen projection device 1200) involved in the above embodiments. The actions performed by the screen projection device 1200 are implemented through a first device or through corresponding software executed by the first device. The screen projection device 1200 may include a screen projection management module 1201 and a screen projection mode module 1202. The screen mirroring management module 1201 is used to transmit mirrored screen mirroring data to the second device based on screen mirroring operations; the mirrored screen mirroring data is used by the second device to mirror the screen presented by the first device in mirrored screen mirroring mode; the screen mirroring mode module 1202 is used to transmit first screen mirroring data to the second device in response to a detected target event if it is determined that the first screen mirroring parameters meet the first screen mirroring conditions; the target event is used to instruct the video application to play video, and the first screen mirroring data is used by the second device to display the video screen in full screen in the first screen mirroring mode, which is different from the mirrored screen mirroring mode; the screen mirroring mode module 1202 is also used to transmit second screen mirroring data to the second device in response to a detected target event if it is determined that the second screen mirroring parameters meet the second screen mirroring conditions; the second screen mirroring data is used by the second device to display the video screen in full screen in the second screen mirroring mode, which is different from the mirrored screen mirroring mode.

[0418] Optionally, the first projection data is used to indicate the video playback resource.

[0419] Optionally, the second projection data includes a target virtual screen; the target virtual screen includes the video frame, and the screen ratio of the target virtual screen is the same as the screen ratio of the display of the second device.

[0420] Optionally, the target virtual screen may also include at least one of the following: bullet comments and custom screens from video applications.

[0421] Optionally, when transmitting the first or second screen projection data to the second device, the first device is in a state of non-full-screen display playback interface.

[0422] Optionally, the projection device further includes a mirroring module 1203. The mirroring module 1203 is used to: transmit mirroring data to the second device in response to a detected first operation; the first operation is used to indicate exiting the video playback state.

[0423] Optionally, the screen casting mode module 1202 is further configured to: in response to a detected target event, determine whether the first screen casting parameter meets the first screen casting condition, and / or determine whether the second screen casting parameter meets the second screen casting condition; the target event includes at least one of clicking an icon of a video on a video application and displaying the playback interface of a video application.

[0424] Optionally, the screen projection mode module 1202 is further configured to: if it is determined that the first screen projection parameter meets the first screen projection condition and the second screen projection parameter meets the second screen projection condition, in response to the detected target event, randomly transmit the first screen projection data or the second screen projection data to the second device.

[0425] Optionally, the screen projection mode module 1202 is further configured to: if it is determined that the first screen projection parameter satisfies the first screen projection condition and the second screen projection parameter satisfies the second screen projection condition, in response to the detected target event, transmit the screen projection data corresponding to the screen projection mode with the highest priority among the first screen projection mode and the second screen projection mode to the second device; wherein, the first screen projection mode corresponds to the first screen projection data and the second screen projection mode corresponds to the second screen projection data.

[0426] Optionally, the screen projection mode module 1202 is further configured to: in the case of transmitting the first screen projection data to the second device, in response to the detected first switching operation, transmit the second screen projection data to the second device.

[0427] Optionally, the screen projection mode module 1202 is further configured to: transmit first screen projection data to the second device in response to a detected second switching operation when transmitting second screen projection data to the second device.

[0428] Optionally, the first projection parameters satisfy the first projection conditions, including at least one of the following: the video playback resources support playback on the remote device, the video formats supported by the second device include the video format, and the decoding resolution of the second device is greater than or equal to the video resolution.

[0429] Optionally, the second screen mirroring parameters include at least one of the following: device parameters of the first device, device parameters of the second device, identifier of the video application, and account type of the video application.

[0430] Optionally, the device parameters of the first device satisfy the second projection condition, including: the encoding capability of the first device is greater than or equal to the encoding capability threshold; wherein, the encoding capability includes at least one of encoding rate, encoding resolution, and encoding frame rate.

[0431] Optionally, the device parameters of the second device satisfy the second projection conditions, including at least one of the following: the resolution of the second device's display screen is greater than or equal to a resolution threshold, the frame rate of the second device's display screen is greater than or equal to a frame rate threshold, and the decoding capability of the second device is greater than or equal to a decoding capability threshold; wherein, the decoding capability includes at least one of the following: decoding rate, historical decoding frame drop rate, and decoding resolution.

[0432] Optionally, the identifier of the video application satisfies the second projection condition, including: the identifier of the video application is the target identifier.

[0433] Optionally, the type of the video application's account satisfies the second casting condition, including: the type of the video application's account is the target type.

[0434] Optionally, the screen casting mode module 1202 is further configured to: if it is determined that the third screen casting parameters meet the third screen casting conditions, the first screen casting data includes at least one of the bullet screen data and the custom screen of the video application; the bullet screen data is used by the second device to display the bullet screen on the playback interface of the first device.

[0435] Optionally, the third projection parameters satisfy the third projection conditions, including: the user profile data satisfies the target threshold condition and the video type is at least one of the target types; wherein, the user profile data includes user data related to bullet comments.

[0436] Optionally, the first projection parameters satisfy the first projection conditions, including: the video application to be projected corresponds to the first projection mode.

[0437] Optionally, the second projection parameters satisfy the second projection conditions, including: the video application to be projected has a corresponding relationship with the second projection mode.

[0438] Optionally, the screen mirroring mode module 1202 is also used to: obtain the device parameters of the second device from the storage medium of the first device.

[0439] Optionally, the screen mirroring mode module 1202 is also used to: send an acquisition request to the second device, the acquisition request being used to request the acquisition of the device parameters of the second device; and receive the device parameters of the second device returned by the second device.

[0440] Optionally, the video application's playback interface may be in at least one of the following states: playback, pause, and loading.

[0441] For a detailed description of the above-mentioned optional methods, please refer to the foregoing method embodiments, which will not be repeated here. Furthermore, the explanation of any of the screen projection devices 1200 provided above, as well as the description of their beneficial effects, can be found in the corresponding method embodiments described above, and will not be repeated here.

[0442] This application also provides an electronic device, as shown in FIG13, including: a display screen (or screen) 1301, one or more processors 1302, a memory 1303, and one or more computer programs 1304. The above-mentioned devices can be connected via one or more communication buses. The one or more computer programs 1304 are stored in the memory 1303 and configured to be executed by the one or more processors 1302. The one or more computer programs 1304 include instructions that can be used to perform the various steps in the above embodiments. All relevant content of the steps involved in the above method embodiments can be referenced to the functional description of the corresponding physical device, and will not be repeated here.

[0443] For example, the processor 1302 can be the processor 301 shown in FIG3, the memory 1303 can be the internal memory 303 shown in FIG3, and the display screen 1301 can be the display screen 316 shown in FIG3.

[0444] This application also provides an electronic device, including one or more processors and one or more memories. The one or more memories are coupled to the one or more processors, and the one or more memories are used to store computer program code, including computer instructions. When the one or more processors execute the computer instructions, the electronic device performs the aforementioned method steps to implement the screen projection method in the above embodiments.

[0445] Embodiments of this application also provide a computer-readable storage medium storing computer instructions. When the computer instructions are executed on an electronic device, the electronic device performs the aforementioned method steps to implement the screen projection method in the above embodiments.

[0446] The embodiments of this application also provide a computer program product that, when run on a computer, causes the computer to perform the aforementioned related steps to implement the screen projection method executed by the electronic device in the above embodiments.

[0447] In addition, embodiments of this application also provide a screen projection control device, which may specifically be a chip, component, or module. The device may include a connected processor and a memory; wherein the memory is used to store computer execution instructions. When the device is running, the processor can execute the computer execution instructions stored in the memory to cause the device to perform the screen projection method executed by the electronic device in the above-described method embodiments. The electronic device, computer-readable storage medium, computer program product, or device provided in this embodiment are all used to execute the corresponding methods provided above. Therefore, the beneficial effects they can achieve can be referred to in the beneficial effects of the corresponding methods provided above, and will not be repeated here.

[0448] This application also provides a communication system, which may include: a first device and a second device, wherein the first device is used to execute the method executed by the first device in the above method embodiments, and the second device is used to execute the method executed by the second device in the above method embodiments.

[0449] This application also provides a chip system, as shown in FIG14. The chip system 1400 includes at least one processor 1401 and at least one interface circuit 1402. The processor 1401 and the interface circuit 1402 can be interconnected via lines. For example, the interface circuit 1402 can be used to receive signals from other devices. As another example, the interface circuit 1402 can be used to send signals to other devices (e.g., the processor 1401). Exemplarily, the interface circuit 1402 can read instructions stored in a memory and send the instructions to the processor 1401. When the instructions are executed by the processor 1401, the electronic device can perform the steps performed by the first or second electronic device in the above embodiments. Of course, the chip system may also include other discrete devices, which are not specifically limited in this application.

[0450] Optionally, the chip system may contain one or more processors. These processors can be implemented in hardware or software. When implemented in hardware, the processor can be a logic circuit, an integrated circuit, etc. When implemented in software, the processor can be a general-purpose processor, implemented by reading software code stored in memory.

[0451] For example, the chip system may be a field programmable gate array (FPGA), an application specific integrated circuit (ASIC), a system on chip (SoC), a central processor unit (CPU), a network processor (NP), a digital signal processor (DSP), a micro controller unit (MCU), a programmable logic device (PLD), or other integrated chips.

[0452] It should be understood that each step in the above method embodiments can be completed by integrated logic circuits in the processor hardware or by instructions in software form. The method steps disclosed in the embodiments of this application can be directly manifested as being executed by a hardware processor, or being executed by a combination of hardware and software modules in the processor.

[0453] Through the above description of the embodiments, those skilled in the art will understand that, for the sake of convenience and brevity, only the division of the above functional modules is used as an example. In actual applications, the above functions can be assigned to different functional modules as needed, that is, the internal structure of the device can be divided into different functional modules to complete all or part of the functions described above.

[0454] In the several embodiments provided in this application, it should be understood that the disclosed apparatus and methods can be implemented in other ways. The embodiments can be combined with or referenced to each other without conflict. The apparatus embodiments described above are merely illustrative; for example, the division of modules or units is only a logical functional division, and in actual implementation, there may be other division methods. For example, multiple units or components may be combined or integrated into another device, or some features may be ignored or not executed. Furthermore, the coupling or direct coupling or communication connection shown or discussed may be through some interfaces; the indirect coupling or communication connection between devices or units may be electrical, mechanical, or other forms.

[0455] The units described as separate components may or may not be physically separate. A component shown as a unit can be one or more physical units; that is, it can be located in one place or distributed in multiple different locations. Some or all of the units can be selected to achieve the purpose of this embodiment according to actual needs. Furthermore, the functional units in the various embodiments of this application can be integrated into one processing unit, or each unit can exist physically separately, or two or more units can be integrated into one unit. The integrated units described above can be implemented in hardware or as software functional units.

[0456] If the integrated unit is implemented as a software functional unit and sold or used as an independent product, it can be stored in a readable storage medium. Based on this understanding, the technical solutions of the embodiments of this application, in essence, or the parts that contribute to the prior art, or all or part of the technical solutions, can be embodied in the form of a software product. This software product is stored in a storage medium and includes several instructions to cause a device (which may be a microcontroller, chip, etc.) or processor to execute all or part of the steps of the methods of the various embodiments of this application. The aforementioned storage medium includes various media capable of storing program code, such as USB flash drives, portable hard drives, read-only memory (ROM), random access memory (RAM), magnetic disks, or optical disks.

[0457] The above description is merely a specific embodiment of this application, but the scope of protection of this application is not limited thereto. Any variations or substitutions that can be easily conceived by those skilled in the art within the scope of the technology disclosed in this application should be included within the scope of protection of this application. Therefore, the scope of protection of this application should be determined by the scope of the claims.

Claims

1. A screen projection method, characterized in that, Applied to a first device; the method includes: The first device transmits mirrored screen projection data to the second device based on a screen projection operation; the mirrored screen projection data is used by the second device to mirror the screen presented by the first device based on the mirrored screen projection mode; If the first device determines that the first projection parameters meet the first projection conditions, the first device responds to the detected target event and transmits the first projection data to the second device; the target event is used to instruct the video application to play the video, and the first projection data is used by the second device to display the video in full screen based on the first projection mode, which is different from the mirror projection mode; If the first device determines that the second projection parameters meet the second projection conditions, the first device responds to the detected target event and transmits the second projection data to the second device; the second projection data is used by the second device to display the video in full screen based on the second projection mode, which is different from the mirror projection mode.

2. The method according to claim 1, characterized in that, The first projection data is used to indicate the playback resources of the video; and / or The second projection data includes a target virtual screen; the target virtual screen includes the video frame, and the screen ratio of the target virtual screen is the same as the screen ratio of the display screen of the second device.

3. The method according to claim 2, characterized in that, The target virtual screen also includes at least one of the following: bullet comments and a custom screen of the video application.

4. The method according to any one of claims 1-3, characterized in that, When the first device transmits the first screen projection data or the second screen projection data to the second device, the first device is in a state of not displaying the playback interface of the video application in full screen.

5. The method according to any one of claims 1-4, characterized in that, The method further includes: In response to the detected first operation, the first device transmits the mirroring data to the second device; the first operation is used to indicate exiting the video playback state.

6. The method according to any one of claims 1-5, characterized in that, The method further includes: In response to the detected target event, the first device determines whether the first projection parameters meet the first projection conditions, and / or determines whether the second projection parameters meet the second projection conditions; the target event includes a click operation on the icon of the video.

7. The method according to any one of claims 1-6, characterized in that, The method further includes: If the first device determines that the first projection parameters meet the first projection condition and the second projection parameters meet the second projection condition, the first device, in response to the detected target event, randomly transmits either the first projection data or the second projection data to the second device; or... If the first device determines that the first projection parameter satisfies the first projection condition and the second projection parameter satisfies the second projection condition, the first device, in response to the detected target event, transmits projection data corresponding to the projection mode with the highest priority among the first projection mode and the second projection mode to the second device; the first projection mode corresponds to the first projection data, and the second projection mode corresponds to the second projection data.

8. The method according to any one of claims 1-7, characterized in that, The method further includes: When the first device transmits the first screen projection data to the second device, the first device, in response to a detected first switching operation, transmits the second screen projection data to the second device; or When the first device transmits the second projection data to the second device, the first device, in response to the detected second switching operation, transmits the first projection data to the second device.

9. The method according to any one of claims 1-8, characterized in that, The first screen projection parameters satisfy the first screen projection conditions, including at least one of the following: the video playback resources support playback on remote devices, the video format supported by the second device includes the format of the video, and the decoding resolution of the second device is greater than or equal to the resolution of the video.

10. The method according to any one of claims 1-9, characterized in that, The second screen mirroring parameters include at least one of the following: device parameters of the first device, device parameters of the second device, identifier of the video application, and account type of the video application.

11. The method according to claim 10, characterized in that, The device parameters of the first device satisfy the second projection condition, including: the encoding capability of the first device is greater than or equal to the encoding capability threshold; wherein, the encoding capability includes at least one of encoding rate, encoding resolution and encoding frame rate; And / or, the device parameters of the second device satisfy the second projection conditions, including at least one of the following: the resolution of the display screen of the second device is greater than or equal to a resolution threshold, the frame rate of the display screen of the second device is greater than or equal to a frame rate threshold, and the decoding capability of the second device is greater than or equal to a decoding capability threshold; wherein, the decoding capability includes at least one of the following: decoding rate, historical decoding frame drop rate, and decoding resolution; And / or, the identifier of the video application satisfies the second screen casting condition, including: the identifier of the video application is a target identifier; And / or, the type of the video application's account satisfies the second casting condition, including: the type of the video application's account is the target type.

12. The method according to any one of claims 1-11, characterized in that, The method further includes: If the first device determines that the third projection parameters meet the third projection conditions, the second projection data includes at least one of the bullet screen data and the custom screen of the video application; the bullet screen data is used by the second device to display the bullet screen of the video.

13. The method according to claim 12, characterized in that, The third projection parameter satisfies the third projection condition, including: the user profile data satisfies the target threshold condition and the video type is at least one of the target types; wherein, the user profile data includes user data related to bullet comments.

14. The method according to any one of claims 1-13, characterized in that, The first screen casting parameters satisfy the first screen casting condition, including: the video application and the first screen casting mode have a corresponding relationship; The second projection parameters satisfy the second projection conditions, including: the video application and the second projection mode have a corresponding relationship.

15. An electronic device, characterized in that, The electronic device includes: Display screen; One or more processors; One or more memory units; and one or more programs; wherein the one or more programs are stored in the one or more memories, and the one or more programs include instructions that, when executed by the electronic device, cause the electronic device to perform the screen projection method as described in any one of claims 1-14.

16. A communication system, characterized in that, include: A first device and a second device; the first device is used to perform the screen projection method as described in any one of claims 1-14, and the second device is used to display the screen projection content of the first device.

17. A computer-readable storage medium, characterized in that, The computer-readable storage medium includes a computer program that, when run on an electronic device, causes the electronic device to perform the method as described in any one of claims 1-14.

18. A computer program product, characterized in that, When the computer program product is run on an electronic device, it causes the electronic device to perform the method as described in any one of claims 1-14.

Citation Information

Patent Citations

  • Multi-screen interaction method and device, and terminal equipment

    CN103338139A

  • Screen projection method, device and system

    CN113014972A

  • Screen projection control method, electronic equipment and computer readable storage medium

    CN113810760A

  • Control method, device and system and storage medium

    CN114911440A

  • Screen projection method and electronic equipment

    CN115329286A