Screen projection method and device
By negotiating and determining the matching player during the screen casting process, the TV player is automatically launched, solving the problem of needing to manually install the player in existing technologies. This achieves a high-definition and feature-rich screen casting experience, improving user experience and efficiency.
Patent Information
- Application Number
- CN202310491453.8
- Authority / Receiving Office
- CN · China
- Patent Type
- Patents(China)
- Current Assignee / Owner
- Filing Date
- 2023-04-28
- Publication Date
- 2025-12-26
- Estimated Expiration
- 2043-04-28
AI Technical Summary
In existing screen mirroring technologies, video content providers impose resolution restrictions on the video resources that can be mirrored, requiring users to pre-install and open the video content provider's player to achieve high-definition screen mirroring, which is complex and has low ease of use.
By negotiating and determining a matching player between the source and destination devices, the TV player is automatically launched to play videos, simplifying user operations and improving the screen casting experience.
It enables a high-definition and feature-rich screen mirroring experience without requiring users to manually install a player, reducing operational complexity and improving user experience and screen mirroring efficiency.
Smart Images

Figure CN118870108B_ABST
Abstract
Description
TECHNICAL FIELD
[0001] The present application relates to the technical field of communication, in particular to a screen projection method and device. BACKGROUND
[0002] At present, the screen projection function has been widely applied to the daily life of users. For example, a user can install a screen projection software in a mobile phone to project the content in the mobile phone (i.e. a source device) to other target devices (e.g. a television) supporting the screen projection function for display.
[0003] In some solutions, a device can perform screen projection based on a digital living network alliance (DLNA) protocol. Taking the example of projecting content from a mobile phone to a large screen (such as a television), a video content provider provides an application, and the mobile phone can install the application. After the user selects a video to be projected through the application in the mobile phone, the mobile phone can interact with the television through the DLNA protocol, so that the television can obtain video resources from a server and play the video.
[0004] Since most video content providers limit the screen projection resolution of the video resources that can be projected, the high-definition screen projection function provided by the video content provider is usually only open to its own player, which means that the player of the video content provider needs to be pre-installed and opened on the television to achieve the screen projection experience of high-definition videos. SUMMARY
[0005] The present application provides a screen projection method and device, which can dynamically adjust the parameters of the display data projected to a target device according to the number of source devices, thereby improving the display fluency during screen projection and the user experience.
[0006] To achieve the above object, the present application adopts the following technical solutions:
[0007] In a first aspect, the present application provides a screen projection method applied to a first device or a component (such as a chip system) supporting the function of the first device, which comprises: determining a first player to be used by the first device when a second device initiates video projection, receiving a play instruction sent by the second device, and playing a projected video using the first player according to the play instruction. The play instruction is triggered by the operation of a screen projection control of the second player acting on the second device, and is used to instruct the first device to play the projected video using the first player. The first player is a player supported by the first device and matched with the second player.
[0008] The player of the first device is matched with the player of the second device, which means that the player of the first device and the player of the second device support the same screen projection data transmission protocol. Optionally, the player of the first device and the player of the second device belong to the same manufacturer or different manufacturers.
[0009] Taking the first device as a television and the second device as a mobile phone as an example, the mobile phone and the television can determine, through negotiation, a television player (e.g., the first player) that is supported by the television and that is matched with the mobile phone player (e.g., the second player). In this way, after receiving the playing instruction, the television can automatically pull up the television player and play the screen projected video using the television player according to the playing instruction. Since the television player is automatically negotiated and determined to be matched with the mobile phone player, the television player can provide a high-definition, times-speed, and bullet screen projection experience. In addition, during the screen projection process, the user does not need to manually open the television player matched with the mobile phone player in advance, which can reduce the operation complexity of the user and improve the ease of use of the screen projection function.
[0010] In a possible design, the playing instruction includes at least one of the following information: source information of the screen projected video, network connection information of the second device, a download address of the first player, an identifier of the first player, and an identifier of the second player.
[0011] In this way, after receiving the playing instruction, the television can automatically pull up the television player and play the screen projected video using the television player according to one or more information carried in the playing instruction.
[0012] The information carried in the playing instruction is not limited to the above-mentioned several information, and other possible information can also be carried in the playing instruction to instruct the first device to play the screen projected video using the first player. For example, the playing instruction includes information A, and the first device can determine the first player to be used for screen projection according to the information A after receiving the playing instruction.
[0013] In a possible design, playing the screen projected video using the first player includes:
[0014] If the first device has installed the first player, the first player is pulled up, and the screen projected video is played using the first player.
[0015] In this way, in the case that the first device has installed the first player, the first device can automatically pull up the first player and play the screen projected video according to the playing instruction. The user does not need to manually open the first player on the first device, which can reduce the operation complexity of the user and improve the human-computer interaction efficiency.
[0016] In a possible design, the playing of the screen-cast video using the first player includes:
[0017] If the first device does not install the first player, the first player is downloaded and installed according to a download address of the first player.
[0018] The first player is launched, and the screen-cast video is played using the first player.
[0019] In this way, even if the first device does not install the first player, the first device can automatically download and install the first player according to the playing instruction after receiving the playing instruction, and play the screen-cast video using the first player, thereby improving the success probability of screen casting, and simplifying the operation of the user when screen casting and improving the ease of use of the screen casting solution.
[0020] In a possible design, the method further includes:
[0021] According to the playing instruction, a communication connection between the first device and the second device is established.
[0022] The screen-cast control data sent by the second device is received through the communication connection, and the screen-cast control data includes at least one of the following data: barrage data, speed data, and definition data.
[0023] In this way, the communication connection can connect the interactive channels of different end-side applications of a video content manufacturer, for example, the interactive channels between a mobile phone player (for example, the second player) and a television player (for example, the first player) of the same manufacturer which are used in a matched manner. In this way, the smart television can provide a user with a more high-definition screen-cast watching experience and a more playable screen-cast interactive mode such as barrage and speed, and easily realize playing control.
[0024] In addition, in the method, the first player which is used in a matched manner with the second player of the second device does not need to be opened in advance on the first device, and the communication connection between the first player and the matched second player can be realized, so as to realize playing control. It can be seen that, in the method, the second device can realize playing control of the first device in a case of reducing the complexity of user operation, thereby improving the screen-cast experience.
[0025] In a possible design, the network connection information of the second device is not included in the playing instruction. In this case, the first device can initiate a search process to obtain the network connection information of the second device through the search process, so as to establish the communication connection between the first device and the second device.
[0026] In this way, the first device can establish a communication connection with the second device in multiple ways, improve the success probability of connection, and then transmit corresponding screen projection control data through the communication connection, and provide more rich screen projection functions.
[0027] In a possible design, the first player that the first device needs to use when the second device initiates video screen projection is determined, including:
[0028] The discovery packet is sent, and the information of the player supported by the first device is included in the discovery packet, and the information of the player supported by the first device is used as an input for the second device to determine the first player.
[0029] That is, the first player supported by the second device and matched with the second player of the second device can be determined by the second device according to the information of the player supported by the first device.
[0030] In a possible design, the information of the player supported by the first device is used as an input for the second device to determine the first player, including:
[0031] The inquiry message sent by the second device is received, and the inquiry message is used to inquire the player supported by the first device and matched with the second player;
[0032] The first player is determined according to the inquiry message;
[0033] The response message is sent, and the information of the first player is included in the response message.
[0034] That is, the first player supported by the second device and matched with the second player of the second device can be determined by the first device through negotiation between the first device and the second device. Subsequently, the first device can automatically start and use the first player determined through negotiation to play the screen projected video according to the playing instruction after receiving the playing instruction, and improve the screen projection experience.
[0035] In a possible design, the information of the player includes at least one of the following information: an identifier of the player, a content manufacturer corresponding to the player, and a function supported by the player.
[0036] The function supported by the player includes at least one of the following functions: high definition, speed, and bullet screen.
[0037] In this way, the first device and the second device can interact the information of the first player through a negotiation process, so as to trigger the first device to automatically start and use the first player to play the screen projected video.
[0038] In a possible design, the source information of the video to be projected includes at least one of the following: a playing address of the video to be projected, a provider of the video to be projected.
[0039] And / or, the network connection information of the second device includes at least one of the following: an address of the second player of the second device, a port number of the second player.
[0040] In a possible design, the first player of the first device establishes a communication connection with the second player of the second device according to the playing instruction.
[0041] In this way, the first device can establish a communication connection with the second player according to the address of the second player of the second device, the port number of the second player and the like, and thus can implement encryption of data transmission, release of clarity limitation and improvement of play control capability.
[0042] In a possible design, the playing instruction further includes member information of the first player and / or barrage information.
[0043] In this way, the first device can determine a playing strategy according to the member information, for example, to provide an advertisement-free projection experience.
[0044] In a possible design, the playing instruction includes a first field, and the first field is used to indicate at least one of the following: the source information of the video to be projected, the network connection information of the second device, a download address of the first player, an identifier of the first player and an identifier of the second player.
[0045] Optionally, the first field can be a newly-added field or a reserved field in the playing instruction.
[0046] Optionally, the first field can be one or more. For example, one field indicates the above-mentioned multiple information, or multiple fields each indicate different information.
[0047] In this way, after receiving the playing instruction, the first device can parse the corresponding field carried in the playing instruction, and automatically pull up and use the first player to play the video to be projected according to the indication of the corresponding field, thereby improving the projection experience.
[0048] In a possible design, the discovery packet includes a broadcast packet, and the discovery packet includes a simple device discovery protocol (SSDP) packet.
[0049] In this way, by broadcasting the message, the first device can broadcast the information of the player supported by the first device to the surrounding devices, so that the surrounding devices can learn the information of the player supported by the first device, and the surrounding devices can send a playing instruction to the first device according to the information, so as to trigger the first device to automatically pull up the corresponding player supported by the first device, and play the video to be projected.
[0050] In a possible design, the playing instruction includes a simple object access protocol (SOAP) based instruction, and / or the communication connection includes a transmission control protocol (TCP) connection.
[0051] Optionally, the communication connection established between the first device and the second device can be a communication connection based on a private protocol. The private protocol can be a projection data transmission protocol customized according to a standard of a content manufacturer of the video to be projected. In this way, the communication connection between the first player of the content manufacturer and the second player is established based on the private protocol of the content manufacturer, so that encryption of data transmission, release of definition limitation, and improvement of play control capability can be implemented, and more rich projection operations can be provided.
[0052] In a second aspect, a projection method is provided, which is applied to a second device or a component (such as a chip system) supporting a function of the second device, and the method includes the following steps.
[0053] initiating the first player required by the first device when the second device initiates projection of the video; the first player is supported by the first device and is a player matched with the second player for use;
[0054] receiving a projection operation acting on the second player;
[0055] sending a playing instruction, the playing instruction being used to instruct the first device to play the video to be projected by using the first player.
[0056] Compared with the first device pulling up a default player in projection in the related art, in the method of the present application, in a projection discovery stage, the first device and the second device are negotiated, so that the first player supported by the first device and matched with the second player of the second device for use can be determined. In this way, after receiving the playing instruction, the first device can automatically pull up the first player determined according to the playing instruction. Since the first player pulled up by the first device is matched with the second player for use, the first device can provide a projection experience with rich functions such as high definition by using the first player. In addition, the first device does not need to install and start the first player in advance, so that the operation of the user can be simplified, and the projection efficiency can be improved.
[0057] In a possible design, before the playing instruction is sent, the following steps are further included.
[0058] display a first interface, the first interface including a first screen projection control of the first player;
[0059] send a play instruction, including:
[0060] in response to an operation on the first screen projection control, send the play instruction.
[0061] after negotiating to determine that the first device supports and matches the first player with the second player of the second device, the second device (such as a mobile phone) displays a screen projection control of the first player, prompting the user to operate the screen projection control to trigger the first device to automatically pull up the first player.
[0062] In a possible design, the first interface further includes a second screen projection control of a third player, the third player being a player not supported by the first device and / or the third player not being a player matched with the second player for use;
[0063] the user interface (UI) effect of the first screen projection control is different from the UI effect of the second screen projection control.
[0064] In this way, by presenting the screen projection control of the player supported by the first device to the user in a distinctive UI style, the user can be prompted to click and select the player supported by the first device to trigger the first device to automatically pull up the player supported by the first device for playing.
[0065] In a possible design, the method further includes:
[0066] sending screen projection control data through the communication connection with the first device, the screen projection control data including at least one of the following data: barrage data, speed data, and definition data.
[0067] In this way, based on the communication connection, screen projection data can be transmitted to realize play control synchronization, that is, the second device can perform play control on the screen projection process of the first device through the communication connection.
[0068] In a possible design, determining the first player needed by the first device when the second device initiates video screen projection includes:
[0069] receiving a discovery packet sent by the first device, the discovery packet including information of the player supported by the first device;
[0070] from the player supported by the first device, determining the player matched with the second player for use as the first player.
[0071] In a possible design, the first player that the first device needs to use when the second device initiates the video screen projection is determined, including:
[0072] The inquiry message is sent, where the inquiry message is used to inquire about the first device and is matched with the second player.
[0073] The response message sent by the first device is received, where the response message is used to indicate the first player.
[0074] In a possible design, the playing instruction includes at least one of the following information: source information of the video to be projected, network connection information of the second device, a download address of the first player, an identifier of the first player, and an identifier of the second player.
[0075] In a possible design, the source information of the video to be projected includes at least one of the following information: a source type of the video to be projected, a playing address of the video to be projected, and a provider of the video to be projected.
[0076] In a possible design, the network connection information of the second device includes at least one of the following information: an address of the second player of the second device and a port number of the second player.
[0077] In a possible design, the discovery packet includes a broadcast packet, and the discovery packet includes a simple device discovery protocol (SSDP) packet.
[0078] In a possible design, the playing instruction includes a simple object access protocol (SOAP) instruction, and / or the communication connection includes a transmission control protocol (TCP) connection.
[0079] A third aspect provides a device, which is a target device in screen projection, and the target device includes a display screen, one or more processors, one or more memories, and one or more programs; the processor is coupled to the display screen and the memories, and the one or more programs stored in the memories are executed by the processor to enable the target device to perform the screen projection method in the first aspect and any possible implementation manner thereof.
[0080] The fourth aspect provides a device, which is a source device when casting, the source device comprising a display screen, one or more processors, one or more memories, and one or more programs; wherein the processor is coupled with the display screen and the memories, and the one or more programs stored in the memories, and when the source device is running, the processor executes the one or more programs stored in the memories, so that the source device performs the casting method in any one of the second aspect and possible implementation manners thereof.
[0081] The fifth aspect provides a device having a function of implementing the method in any one of the above aspects and possible implementation manners thereof. The function can be implemented by hardware, or by hardware executing corresponding software. The hardware or software comprises one or more modules corresponding to the above functions.
[0082] The sixth aspect provides a readable storage medium comprising instructions, when the instructions are running on a device, causing the device to perform the casting method in any one of the first aspect to the second aspect and possible implementation manners thereof.
[0083] The seventh aspect provides a program product, when the program product is running on a device, causing the device to perform the casting method in any one of the first aspect to the second aspect and possible implementation manners thereof.
[0084] The eighth aspect provides a chip system comprising at least one processor and at least one interface circuit, the at least one interface circuit being configured to perform a transceiving function and send instructions to the at least one processor, and when the at least one processor executes the instructions, the at least one processor performs the method in any one of the aspects or implementation manners thereof.
[0085] The ninth aspect provides a system comprising the first device in any one of the above aspects or implementation manners thereof and a second device. BRIEF DESCRIPTION OF DRAWINGS
[0086] Figure 1A 、 Figure 1B An example diagram of the casting method provided by the embodiments of the present application;
[0087] Figure 1C 、 Figure 1D A scenario diagram of the casting method provided by the embodiments of the present application;
[0088] Figure 2A An architecture diagram of a casting system provided by the embodiments of the present application;
[0089] Figure 2B A structure diagram of a device / apparatus provided by the embodiments of the present application;
[0090] Figure 3 An interaction schematic diagram of a screen projection method provided by an embodiment of the present application;
[0091] Figure 4 A structural diagram of a device / apparatus provided by an embodiment of the present application;
[0092] Figure 5 A scene schematic diagram of a screen projection method provided by an embodiment of the present application;
[0093] Figure 6 An interface schematic diagram of a screen projection method provided by an embodiment of the present application;
[0094] Figure 7 、 Figure 8 A scene schematic diagram of a screen projection method provided by an embodiment of the present application;
[0095] Figure 9 An interaction schematic diagram of a screen projection method provided by an embodiment of the present application;
[0096] Figure 10 A scene schematic diagram of a screen projection method provided by an embodiment of the present application;
[0097] Figure 11 An interaction schematic diagram of a screen projection method provided by an embodiment of the present application;
[0098] Figure 12 A structural diagram of an apparatus provided by an embodiment of the present application;
[0099] Figure 13 A structural diagram of a chip system provided by an embodiment of the present application. DETAILED DESCRIPTION
[0100] First, related technical terms involved in embodiments of the present application are introduced:
[0101] 1. Simple service discovery protocol (SSDP)
[0102] The process of realizing screen projection based on DLNA includes a device discovery process and a device connection process. As a protocol available for use in the device discovery process, in the SSDP, a device A can notify a surrounding device that it has been online through a notify broadcast message. In the SSDP, after receiving the notify broadcast message, the surrounding device queries a device description document (DDD) from the device A, so as to learn the name of the device A and the control instructions supported by the device A. In this way, the surrounding device can discover the device A and establish a connection with the device A.
[0103] 2. Simple Object Access Protocol (SOAP)
[0104] After discovering the device, a connection can be established between the devices. For example, in a screen projection scenario, a mobile phone discovers a television. Then, in response to a screen projection operation of a user on the mobile phone, the mobile phone can send a SOAP-based playing instruction to the television to instruct the television to play the video being projected. In this way, the user can project the video in the mobile phone to the television for playing.
[0105] Currently, the industry provides the following related technologies to implement screen projection.
[0106] Related technology one: as Figure 1A , a screen projection system includes a mobile phone and a television. The mobile phone has a player installed therein. The television includes a screen projection scheduling service, a third-party application screen projection service (such as a DLNA service of an application package A), and a vendor screen projection service.
[0107] The player in the mobile phone adds a Prefer parameter at the end of an SSDP request message sent to the television. The Prefer parameter is used to specify the receiver of the SSDP request message. After receiving the SSDP request message, the screen projection scheduling service of the television determines whether the local application package A indicated by the Prefer parameter is present. If the local application package A indicated by the Prefer parameter is present, the SSDP request message is sent to the DLNA service of the application package A for processing. If the local application package A is not present, the SSDP request message is transmitted to the system default DLNA service for processing.
[0108] In this method, the DLNA service of the third-party application (such as the DLNA service of the application package A) needs to be installed in advance and in an activated state to implement screen projection. In general, the user needs to manually install and activate the DLNA service of the third-party application, which has high implementation complexity and low screen projection efficiency.
[0109] Figure 1B An implementation manner of technology two is shown, taking projecting the video on the mobile phone to the television for playing as an example. The player of the mobile phone no longer directly controls the television to perform screen projection, but transmits the content source of the video being projected to a DLNA proxy service. The DLNA proxy service replaces the mobile phone to transmit content data to the television, performs screen projection, and transmits a control command and a playing state.
[0110] In this method, the television needs to activate the service of the private protocol in advance to implement normal screen projection function.
[0111] Currently, a video content provider can provide high-definition, bullet screen, and speed-up screen projection functions. However, such functions are usually only open to the player of the provider. In other words, when the player of the provider is installed on both the mobile phone and the television, high-definition, bullet screen, and speed-up screen projection experiences can be achieved in the screen projection process. Specifically, in the screen projection process, the user uses the mobile phone player A1 of the provider A, and clicks the screen projection button. The user needs to manually start the player A2 (the television player provided by the provider A) on the television which is used in conjunction with the mobile phone player A1, so as to play the high-definition, bullet screen, and speed-up screen projection video through the television player A2. It can be seen that in the screen projection process, the operation complexity of the user is high, and the ease of use of the screen projection is not high.
[0112] As shown in Figure 1C (b), the user manually starts the player zzTV on the television, and the television displays the interface 103 of the player zzTV. The television can broadcast a message that the player zzTV is online, so that other devices can search for the player zzTV which is online.
[0113] As shown in Figure 1C (a), the mobile phone displays the screen projection interface 101. The screen projection interface 101 includes a tab card of the searched started available player, such as the tab card 102 of the started player zzTV on the television. Here, the started player can be a player which is started and displays an interface in the foreground, or can also be a player which is started and does not display an interface in the foreground.
[0114] In some examples, when the television has opened the player zzTV in advance, as shown in Figure 1C (a), in response to the user clicking the tab card 102, the mobile phone can instruct the television to play the screen projection video. The television plays the high-definition screen projection video through the opened player zzTV according to the instruction of the mobile phone, and can provide the bullet screen, speed-up, and other functions.
[0115] In some examples, when the television does not open the player zzTV in advance, as shown in Figure 1D (a), in response to the user clicking the tab card 102, the mobile phone can instruct the television to play the screen projection video. The television pulls up the system default player to play the screen projection video according to the instruction of the mobile phone. In some cases, the system default player pulled up by the television cannot be compatible with the screen projection video, resulting in failure of this screen projection. As shown in Figure 1D (b), the television can display the prompt information “screen projection failure” to prompt the user that this screen projection fails. Alternatively, in some cases, the system default player pulled up by the television is not the player used in conjunction with the mobile phone, resulting in that the high-definition, bullet screen, and speed-up screen projection experiences cannot be provided.
[0116] It can be seen that, in the screen projection process, the television needs to be installed and started in advance with the player matched with the mobile player, so as to project and play the high-definition video to be projected through the player, and realize the screen projection functions such as speed-up and barrage. Moreover, before each screen projection, the user needs to manually start the corresponding player on the television, and the operation steps are complicated, and the human-computer interaction efficiency is low. When the television does not install and start the corresponding player in advance, the screen projection may fail.
[0117] To solve the above technical problems, an embodiment of the present application provides a screen projection method. The implementation of the embodiment will be described in detail below with reference to the drawings.
[0118] The screen projection method provided by the embodiment of the present application can be applied to Figure 2A As shown in FIG. 1, a device group 200 is formed in one of the devices 100, and the devices 100 in the device group 200 can communicate with each other through a local area network (LAN) or a wide area network (WAN).
[0119] For example, the user's mobile phone, tablet computer, desktop computer, smart watch and notebook computer can be taken as the device group 200, and when the user logs in the mobile phone, tablet computer, desktop computer, smart watch and notebook computer by using the same account, the mobile phone, tablet computer, desktop computer and notebook computer can communicate with each other through the wide area network.
[0120] For another example, the user's mobile phone, tablet computer, desktop computer, smart watch and notebook computer can be connected to the same router. At this time, the above-mentioned mobile phone, tablet computer, desktop computer, smart watch and notebook computer can form a local area network, and the devices in the local area network can communicate with each other through the router.
[0121] For another example, the devices 100 can also form a peer-to-peer network (also referred to as a P2P network) through a wireless communication mode (for example, Bluetooth, Wi-Fi or ZigBee network, etc.). For example, the user can add the mobile phone, tablet computer, smart speaker and notebook computer to a Wi-Fi network named "1234". The devices 100 in the Wi-Fi network form a P2P network, and all the devices in the P2P network are members of the device group 200.
[0122] Of course, the devices 100 in the device group 200 can also be interconnected through a cellular network, or the devices 100 can also be interconnected through a relay device (for example, a USB data line or a Dock device), so as to realize the communication function between the devices 100 in the device group 200. Alternatively, part of the devices in the device group 200 are connected in a certain way, and the other part of the devices are connected in another way, that is, different connection manners can be used between different devices in the device group 200, and the embodiments of the present application do not make any limitation in this regard.
[0123] In the embodiments of the present application, one or more devices 100 in the device group 200 can be source devices, and one or more devices 100 in the device group 200 can be destination devices. The source device can project its content to the destination device for display. Taking a mobile phone as a source device and a television as a destination device as an example, the user can project a video from the mobile phone to the television for playing.
[0124] In some embodiments, the specific structures of the devices in the device group 200 described above can be the same or different.
[0125] For example, the devices described above can be a mobile phone, a tablet computer, a smart television, a wearable device, a car machine, a notebook computer, an ultra-mobile personal computer (UMPC), a handheld computer, a netbook, a personal digital assistant (PDA), a virtual reality device, etc., and the embodiments of the present application do not make any limitation in this regard.
[0126] For example, the devices described above can be a mobile phone, a tablet computer, a smart television, a wearable device, a car machine, a notebook computer, an ultra-mobile personal computer (UMPC), a handheld computer, a netbook, a personal digital assistant (PDA), a virtual reality device, etc., and the embodiments of the present application do not make any limitation in this regard. Figure 2B A structural schematic diagram of a device is shown.
[0127] The device can include a processor 110, an external memory interface 120, an internal memory 121, a universal serial bus (USB) interface 130, a charging management module 140, a power management module 141, a battery 142, an antenna 1, an antenna 2, a mobile communication module 150, a wireless communication module 160, an audio module 170, a loudspeaker 170A, a receiver 170B, a microphone 170C, a headset interface 170D, a sensor module 180, a camera 193, a display screen 194, etc.
[0128] It can be understood that the structure shown in the embodiments of the present application does not constitute a specific limitation on the device. In some other embodiments of the present application, the device can include more or fewer components than shown, or combine certain components, or split certain components, or different arrangement of components. The components shown can be implemented in hardware, software, or a combination of software and hardware.
[0129] The processor 110 can include one or more processing units, for example: the processor 110 can 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. Different processing units can be independent devices or integrated in one or more processors.
[0130] The processor 110 can also be provided with a memory for storing instructions and data. In some embodiments, the memory in the processor 110 is a cache memory. The memory can hold instructions or data that the processor 110 has just used or recycled. If the processor 110 needs to use the instructions or data again, it can be directly called from the memory. This avoids repeated access and reduces the waiting time of the processor 110, thus improving the efficiency of the system.
[0131] In some embodiments, the processor 110 can include one or more interfaces. The interfaces can include an inter-integrated circuit (I2C) interface, an inter-integrated circuit sound (I2S) interface, a pulse code modulation (PCM) interface, a universal asynchronous receiver / transmitter (UART) interface, a mobile industry processor interface (MIPI), a general-purpose input / output (GPIO) interface, a subscriber identity module (SIM) interface, and / or a universal serial bus (USB) interface, etc.
[0132] The charging management module 140 is configured to receive charging input from a charger. The charger can be a wireless charger or a wired charger. In some embodiments of wired charging, the charging management module 140 can receive charging input from a wired charger through the USB interface 130. In some embodiments of wireless charging, the charging management module 140 can receive wireless charging input through a wireless charging coil of the device. The charging management module 140 can charge the battery 142 and power the device through the power management module 141.
[0133] The power management module 141 is configured to connect the battery 142, the charging management module 140, and the processor 110. The power management module 141 receives input from the battery 142 and / or the charging management module 140 to power the processor 110, the internal memory 121, the display 194, the camera 193, and the wireless communication module 160. The power management module 141 can also be configured to monitor parameters such as battery capacity, battery cycle count, battery health status (leakage, impedance), and the like. In some other embodiments, the power management module 141 can also be disposed in the processor 110. In some other embodiments, the power management module 141 and the charging management module 140 can also be disposed in the same device.
[0134] The wireless communication function of the device can be implemented through the antenna 1, the antenna 2, the mobile communication module 150, the wireless communication module 160, the modem processor, and the baseband processor.
[0135] The antenna 1 and the antenna 2 are configured to transmit and receive electromagnetic wave signals. Each antenna in the device can be configured to cover a single or multiple communication frequency bands. Different antennas can also be multiplexed to improve the utilization of the antennas. For example, the antenna 1 can be multiplexed as a diversity antenna for a wireless local area network. In some other embodiments, the antennas can be used in combination with a tuning switch.
[0136] The mobile communication module 150 can provide a solution for wireless communication including 2G / 3G / 4G / 5G and the like applied to the device. The mobile communication module 150 can include one or more filters, switches, power amplifiers, low noise amplifiers (LNAs), and the like. The mobile communication module 150 can receive electromagnetic waves from the antenna 1, filter, amplify, and the like the received electromagnetic waves, and transmit the processed electromagnetic waves to the modem processor for demodulation. The mobile communication module 150 can also amplify signals modulated by the modem processor and radiate the signals as electromagnetic waves through the antenna 1. In some embodiments, at least part of the function modules of the mobile communication module 150 can be disposed in the processor 110. In some embodiments, at least part of the function modules of the mobile communication module 150 and at least part of the modules of the processor 110 can be disposed in the same device.
[0137] The modem processor can include a modulator and a demodulator. The modulator is configured to modulate a low frequency baseband signal to be transmitted into a medium-high frequency signal. The demodulator is configured to demodulate a received electromagnetic wave signal into a low frequency baseband signal. The demodulator then transmits the demodulated low frequency baseband signal to the baseband processor for processing. The low frequency baseband signal, after being processed by the baseband processor, is transmitted to the application processor. The application processor outputs a sound signal through an audio device (not limited to a speaker 170A, a microphone 170B, etc.), or displays an image or a video through the display screen 194. In some embodiments, the modem processor can be a separate device. In other embodiments, the modem processor can be independent of the processor 110, and can be disposed in the same device as the mobile communication module 150 or other functional modules.
[0138] The wireless communication module 160 can provide a wireless communication solution applied on the device, including wireless local area networks (WLAN) (such as a wireless fidelity (Wi-Fi) network), Bluetooth (BT), a global navigation satellite system (GNSS), frequency modulation (FM), near field communication (NFC), infrared technology (IR), and the like. The wireless communication module 160 can be one or more devices that integrate one or more communication processing modules. The wireless communication module 160 receives electromagnetic waves via the antenna 2, modulates and filters the electromagnetic wave signal, and transmits the processed signal to the processor 110. The wireless communication module 160 can also receive a signal to be transmitted from the processor 110, modulate it, amplify it, and convert it into electromagnetic wave radiation via the antenna 2.
[0139] In some embodiments, the antenna 1 of the device is coupled to the mobile communication module 150, and the antenna 2 is coupled to the wireless communication module 160, so that the device can communicate with a network and other devices through wireless communication technology.
[0140] The device implements display functions through a GPU, a display screen 194, and an application processor, etc. The GPU is a microprocessor for image processing, connected to the display screen 194 and the application processor. The GPU is used to perform mathematical and geometric calculations for graphics rendering. The processor 110 can include one or more GPUs that execute program instructions to generate or change display information.
[0141] The display screen 194 is configured to display images, videos, and the like. The display screen 194 includes a display panel. In some embodiments, the device can include one or N display screens 194, where N is a positive integer greater than 1. The device can implement the photographing function through the ISP, the camera 193, the video codec, the GPU, the display screen 194, and the application processor, and the like. The ISP is configured to process the data fed back by the camera 193. The camera 193 is configured to capture a still image or a video. In some embodiments, the device can include one or N cameras 193, where N is a positive integer greater than 1. The digital signal processor is configured to process digital signals, which can include processing digital image signals and processing other digital signals. The video codec is configured to compress or decompress digital videos. The device can support one or more video codecs. In this way, the device can play or record videos in multiple encoding formats.
[0142] The external memory interface 120 can be configured to connect an external memory card, such as a Micro SD card, to extend the storage capacity of the device. The external memory card communicates with the processor 110 through the external memory interface 120 to implement the data storage function.
[0143] The internal memory 121 can be configured to store one or more programs including instructions. The processor 110 can cause the device to perform the screen projection method provided in some embodiments of the present application, various functional applications, and data processing, and the like, by running the above-mentioned instructions stored in the internal memory 121. The internal memory 121 can include a program storage area and a data storage area. The program storage area can store an operating system, and can also store one or more application programs (such as a gallery, contacts, and the like). The data storage area can store data (such as photos, contacts, and the like) created during use of the device. In addition, the internal memory 121 can include a high-speed random access memory, and can also include a non-volatile memory. In other embodiments, the processor 110 causes the device to perform the screen projection method provided in the embodiments of the present application, various functional applications, and data processing, by running the instructions stored in the internal memory 121 and / or the instructions stored in the memory disposed in the processor.
[0144] The device can implement audio functions through an audio module 170, a speaker 170A, a receiver 170B, a microphone 170C, a headphone jack 170D, and an application processor. The audio module 170 is used to convert digital audio information into analog audio signals for output, and also to convert analog audio input into digital audio signals. The audio module 170 can also be used for encoding and decoding audio signals. The speaker 170A, also called a "loudspeaker," is used to convert audio electrical signals into sound signals. The receiver 170B, also called a "handpiece," is used to convert audio electrical signals into sound signals. The microphone 170C, also called a "microphone" or "voice transducer," is used to convert sound signals into electrical signals. The headphone jack 170D is used to connect wired headphones. The sensor module 180 may include pressure sensors, gyroscope sensors, barometric pressure sensors, magnetic sensors, accelerometers, distance sensors, proximity sensors, fingerprint sensors, temperature sensors, touch sensors, ambient light sensors, bone conduction sensors, etc. The touch sensor can be located on the display screen; the touch sensor and the display screen together form a touchscreen, also called a "touchscreen." In addition, the above-mentioned device may also include one or more components such as buttons, motors, indicators, and SIM card interfaces, and this application embodiment does not impose any restrictions on this.
[0145] The following will describe in detail, with reference to the accompanying drawings, a screen projection method provided by an embodiment of this application.
[0146] like Figure 3 As shown, taking a smart TV (e.g., the first device) as the destination device for screen casting, a mobile phone (e.g., the second device) as the source device, and video A as the content to be cast, an embodiment of this application provides a screen casting method including:
[0147] S101. The smart TV sends information about the TV player supported by the smart TV to the mobile phone.
[0148] Optionally, the player information includes, but is not limited to, at least one of the following: player identifier, player type, and supported player functions. Optionally, the supported player functions include, but are not limited to, at least one of the following: high definition, playback speed adjustment, and subtitles / bullet comments. Optionally, high definition can be Blu-ray or 1080P resolution, or other levels or grades of video resolution.
[0149] In this embodiment of the application, the mobile phone has an application installed that enables screen mirroring. This application may include corresponding functional modules for executing the methods corresponding to the embodiments of this application. Figure 4 For example, a mobile phone may have a media player installed, which may include a device discovery module 401, a device connection module 402, and a display module 407.
[0150] Optionally, the smart TV has a screen mirroring service and a media player installed. The screen mirroring service and media player may include corresponding functional modules for executing the methods corresponding to the embodiments of this application. Still using... Figure 4 For example, the screen mirroring service of a smart TV includes a screen mirroring service module 403 and a player management module 404. The smart TV's player includes a device reconnection module 405 and a video playback module 406. The following section, in conjunction with the method flow, explains the function of each module in the mobile phone and smart TV.
[0151] As one possible implementation, the server pre-configures a list of players, which the smart TV can retrieve from the server, using the players in the list as information about the players supported by the smart TV. The smart TV's screen mirroring service module 403 can read the information about the players supported by the smart TV through the interface of the player management module 404.
[0152] As one possible implementation, mobile phones and smart TVs perform device discovery based on the SSDP protocol. During the device discovery process, such as... Figure 4 As shown, the smart TV sends a discovery message to the mobile phone through the screen mirroring service module 403. Optionally, the discovery message is an SSDP message, which includes information about the players supported by the smart TV. Optionally, the SSDP message may also include the smart TV's identifier and manufacturer information.
[0153] Optionally, SSDP messages include, but are not limited to, at least one of the following: notification messages and messages containing the bearer device description document.
[0154] Optionally, smart TVs can add fields to the SSDP message to indicate the players supported by the smart TV. Alternatively, smart TVs can indicate the players supported by the smart TV through reserved fields in the SSDP message.
[0155] For example, some fields in SSDP are as follows:
[0156] <manufacturer>xxxVision< / manufacturer>
[0157] <castservice>13, xy< / castservice>
[0158] In this context, xxxVision represents a smart TV, and 13,xy represents the media player supported by the smart TV.
[0159] As a possible implementation, the smart TV can start the system's screen projection service when starting up, and the screen projection service obtains the information of the player supported by the smart TV through the above method. When the device is discovered, the screen projection service module 403 of the smart TV encapsulates the information of the player supported by the smart TV into an SSDP message, and sends the SSDP message to the player of the mobile phone.
[0160] Alternatively, as another possible implementation, the smart TV can read the information of the player supported by the smart TV through the screen projection service when the device is discovered, and carry the information of the player supported by the smart TV through the discovery message. The embodiments of the present application do not limit the timing and manner of reading the information of the player supported by the smart TV. Figure 5
[0161] As a possible implementation, the smart TV can periodically send the SSDP message, so that the surrounding devices can quickly obtain the information of the player supported by the smart TV.
[0162] Alternatively, as another possible implementation, other devices actively send device search messages, and the smart TV sends the SSDP message after receiving the device search message. For example, the smart TV can broadcast an SSDP message carrying the information of the TV players xxTV and yyTV supported by the smart TV.
[0163] Optionally, the device search message is a broadcast message or a multicast message. For example, the device search message is an m-search message in the SSDP.
[0164] S102, the mobile phone receives the operation of the user acting on the screen projection button of the mobile phone player.
[0165] In some scenarios, the user can project the video in the mobile phone to the smart TV for playing through the player installed on the mobile phone. For example, in the process of playing the video A through the display module 407 of the player A, the user clicks the screen projection button 501 of the interface as shown in Figure 6
[0166] In some embodiments, the screen projection button is also an implementation of the screen projection control.
[0167] The embodiments of the present application do not limit the execution order of S101 and S102.
[0168] S103, the mobile phone determines that the smart TV supports the TV player xxTV which is matched with the mobile phone player.
[0169] The player of the mobile phone and the player of the television are matched for use, which means that the player of the mobile phone and the player of the television support the same screen projection data transmission protocol. Alternatively, the player of the mobile phone and the player of the television belong to the same manufacturer or different manufacturers.
[0170] As shown in (a) of FIG. 5, the mobile phone displays a screen projection button 501 on a screen. The screen projection button 501 is used to trigger the mobile phone to search for a target device and to project a screen of the mobile phone to the target device. Figure 6 In response to the user clicking the screen projection button 501, the mobile phone as a source device can broadcast a search message to search for a surrounding available target device. After receiving the search message, the smart television can broadcast an SSDP message carrying information of the television players xxTV and yyTV supported by the smart television. After receiving the SSDP message from the smart television, the mobile phone can determine, according to the information of the television players xxTV and yyTV carried in the SSDP message, whether there is a television player matched with the player A of the mobile phone among the television players supported by the smart television. According to the determination of the mobile phone, the television player xxTV supported by the smart television is the television player matched with the player A of the mobile phone, which means that the smart television can pull up and provide the screen projection function of high definition, multiple speed and bullet screen through the television player xxTV matched with the player A of the mobile phone. In this case, the mobile phone sets the television player xxTV as the preferred player.
[0171] Alternatively, the preferred player can be a system original player of the smart television or a player provided by a third party. The embodiments of the present application do not limit the type of the preferred player.
[0172] S104, the mobile phone displays a tab card of the television player xxTV.
[0173] After the mobile phone determines that the smart television supports the television player xxTV matched with the player of the mobile phone, the mobile phone can display the tab card of the television player xxTV to the screen according to a display rule, so as to prompt the user to click the tab card of the player xxTV.
[0174] In some embodiments, according to the display rule, the mobile phone displays the tab card of the player xxTV and the tab cards of other players in different regions of the screen. For example, as shown in (b) of FIG. 5, after the smart television broadcasts the information of the players xxTV and yyTV supported by the smart television, the mobile phone receives the information of the players xxTV and yyTV, and determines that the player xxTV supported by the smart television is matched with the player of the mobile phone. The mobile phone can display the tab card 701a of the player xxTV (for example, the screen projection control of the first player) in a region 701 of the screen. Figure 7 Figure 7 For another example, as shown in (c) of FIG. 5, after the smart television broadcasts the information of the players xxTV and yyTV supported by the smart television, the mobile phone receives the information of the players xxTV and yyTV, and determines that the player yyTV supported by the smart television is matched with the player of the mobile phone. The mobile phone can display the tab card 702a of the player yyTV (for example, the screen projection control of the second player) in a region 702 of the screen. Figure 7 As shown in (a), the mobile phone can also display a tab card (such as a tab card of player zzTV) of a searched other player in the area 702 of the screen, which is a player not supported by the smart TV. In this way, by arranging and displaying the tab cards of the players supported by the smart TV in the upper area of the screen, the attention of the user can be attracted, and the probability of the user clicking the tab card of the player supported by the smart TV can be increased, so as to trigger the smart TV to automatically pull up the player supported by the smart TV for playing, and realize an efficient and convenient screen projection experience.
[0175] Alternatively, in some embodiments, according to the display rule, the mobile phone displays the tab card of the player xxTV and the tab cards of other players according to different user interface (UI) effects. For example, as shown in (a), the mobile phone displays the tab card of the player xxTV in a dark background, and displays the tab cards of other players in a light background. Figure 7 As shown in (a), the mobile phone can display the tab card of the player supported by the smart TV (xxTV) in a dark background, and display the tab card of the player not supported by the smart TV in a light background. In this way, by presenting the tab card of the player supported by the smart TV to the user in a prominent UI style, the user can be prompted to click and select the player supported by the smart TV, so as to trigger the smart TV to automatically pull up the player supported by the smart TV for playing.
[0176] In this method, the user does not need to open the television player matched with the mobile phone player in advance on the smart TV, and the mobile phone can determine the television player supported by the smart TV and matched with the mobile phone player according to the interaction with the smart TV, and display the tab card of the television player, so as to prompt the user to click the tab card, trigger the smart TV to automatically pull up the television player, and play the projected video, and improve the screen projection experience.
[0177] It should be noted that the player supported by the smart TV can be one or more, and the embodiments of the present application do not limit this. When the smart TV supports multiple players, the mobile phone can take the player matched with the mobile phone player as a preferred player. The mobile phone can display the tab card of the preferred player according to the display rule, so as to increase the probability of the user clicking the tab card of the preferred player, and then trigger the smart TV to automatically pull up the preferred player, and provide the screen projection function of high definition, speed, and bullet screen.
[0178] S105, the mobile phone receives an operation on the tab card of the television player xxTV.
[0179] For example, as shown in (a), the mobile phone receives a click operation of the user on the tab card 701a of the player xxTV, for indicating playing the projected video through the television player xxTV. Figure 7 For example, as shown in (a), the mobile phone receives a click operation of the user on the tab card 701a of the player xxTV, for indicating playing the projected video through the television player xxTV.
[0180] Alternatively, the user can be instructed to play the cast video via the TV player xxTV in other ways, such as by typing "open xxTV" to indicate that the user has selected the player xxTV. This application does not limit the method by which the user selects the player.
[0181] S106. In response to the user's operation on the xxTV tab of the player, the mobile phone sends a playback command to the smart TV.
[0182] The playback command can be used to instruct or request a smart TV to play the cast video via the player xxTV. The playback command can explicitly or implicitly instruct the player xxTV. Playback commands can also be called a play-in request, a cast playback command, a cast-in start request, a cast playback request, a cast playback command, or a cast command, etc.
[0183] For example, such as Figure 8 In response to the user clicking the tab 701a of the player xxTV (e.g., a screen casting operation), the mobile phone sends a playback command to instruct the smart TV to play the screen-cast video.
[0184] As one possible implementation, the device connection module 402 in the mobile phone's media player can obtain information about the media players supported by the smart TV from the device discovery module 401. The user clicks... Figure 8 After selecting the xxTV player tab 701a as shown in (a), the phone's device connection module 402 can determine, based on information obtained from the device discovery module 401, that the xxTV player is a player supported by the smart TV. Then, the phone's device connection module 402 sends a playback command to the smart TV.
[0185] Optionally, the playback command may include at least one of the following information: the source information of the video being cast, the phone's network connection information, the phone's player identification information, the identification information of the TV player used with the phone's player, and the download address of the TV player used with the phone's player. The source information of the video being cast includes, but is not limited to: the source type of the video being cast, the playback address of the video being cast, and the manufacturer of the video being cast. The phone's network connection information includes, but is not limited to: the IP address of the phone's player and the port number of the phone's player.
[0186] For example, if a user projects a video from their phone onto a smart TV, the projected video is video A on the phone. The playback command can carry the Uniform Resource Locator (URL) address of video A, the phone's IP address, and the information of the content provider (such as manufacturer A) of video A.
[0187] Optionally, the mobile phone sends the playing instruction, which can be implemented as that the mobile phone sends the playing instruction to the smart TV through the SOAP protocol.
[0188] Optionally, the mobile phone can add a field in the playing instruction, and indicate the source information of the screened video and the address of the mobile phone through the added field. Alternatively, the smart TV can indicate the source information of the screened video and the address of the mobile phone through a reserved field of the playing instruction.
[0189] Optionally, the playing instruction can further include at least one of the following information: the member of the player, the barrage information.
[0190] Exemplarily, part of the fields in the playing instruction are as follows:
[0191] <sourceid>xxxxx< / sourceid>
[0192] <extenddata>xyyy< / extenddata>
[0193] wherein, xxxxx represents the address of the source device mobile phone, and xyyy represents the member of the player or the barrage information and other extended information.
[0194] As a possible implementation manner, S104 and S105 are optional steps. For example, in some examples, after the mobile phone detects that the user clicks the screen projection button 501 (for example, a screen projection operation) shown in (a) of FIG. 5, it is determined according to the SSDP packet from the smart TV that the smart TV supports the television player xxTV which is matched with the mobile phone player, and sends a playing instruction to instruct the smart TV to play the screened video through the television player xxTV. Figure 8
[0195] S107, the smart TV plays the screened video through the television player xxTV according to the playing instruction.
[0196] As a possible implementation manner, after the screen projection service of the smart TV receives the playing instruction through the screen projection service module 403, the player management module 404 can determine the player for playing the screened video on the smart TV according to the playing instruction.
[0197] For example, if the playing instruction includes the identifier of the content provider A, after receiving the playing instruction, the smart TV can determine to play the screened video through the television player xxTV of the content provider A on the smart TV according to the identifier of the content provider A in the playing instruction. This indication manner can be called an implicit indication manner.
[0198] For example, if the identification of the TV player xxTV is included in the playing instruction, the smart TV can determine to use the TV player xxTV to play the video to be projected on the smart TV according to the identification of the TV player xxTV in the playing instruction after receiving the playing instruction. This indication mode can be referred to as an explicit indication mode.
[0199] For example, if the identification of the TV player xxTV is included in the playing instruction, the smart TV can determine to use the TV player xxTV to play the video to be projected on the smart TV according to the identification of the TV player xxTV in the playing instruction after receiving the playing instruction. This indication mode can be referred to as an explicit indication mode.
[0200] After that, the player management module 404 of the smart TV can determine whether the player xxTV that the user wants to use to play the video to be projected is installed locally, and perform different operations according to whether the player xxTV is installed locally.
[0201] In some examples, if the player xxTV that the user wants to use is installed locally on the smart TV, the player management module 404 can directly pull up the player xxTV. The player management module 404 can also forward the playing instruction to the player xxTV, and the video playing module 406 of the player xxTV plays the video to be projected according to the playing instruction. For example, the player xxTV obtains the resource of the video A according to the playing address of the video A to be projected, and plays the video A. Figure 8 FIG. 6(b) shows a picture of the video to be projected played by the smart TV.
[0202] In other examples, if the player xxTV is not installed locally on the smart TV, the player management module 404 downloads and installs the player xxTV from the corresponding download address. After installation, the player management module 404 sends the playing instruction to the player xxTV, and the player xxTV downloads and plays the video to be projected according to the playing instruction.
[0203] Optionally, if the playing instruction carries the download address of the player xxTV, the player management module 404 can download the player xxTV from the corresponding download address according to the playing instruction. Alternatively, the player management module 404 can obtain the corresponding download address by networking. The present application embodiment does not limit the way of obtaining the download address.
[0204] For the application manufacturer, since the smart TV has automatically pulled up the TV player xxTV matched with the mobile phone player, the application manufacturer opens the video resolution and other functions in this projection, in other words, the smart TV can provide a high-definition, multi-speed, and bullet screen projection experience through the player xxTV.
[0205] In the method, the playing instruction in the related art is improved, the mobile phone carries the source information of the screen-cast video in the playing instruction, the smart TV triggers the player xxTV matched with the mobile phone player according to the source information of the screen-cast video carried in the playing instruction, and provides the screen-cast experience of high definition, multiple speed and screen-cast with a pop-up window. In the process, the user does not need to manually trigger the corresponding player on the smart TV, the user operation is simple, and the interactive experience and the interactive efficiency of the screen-cast process can be improved.
[0206] Optionally, the method can further include the following steps S108 and S109:
[0207] S108, the smart TV establishes a communication connection with the mobile phone according to the playing instruction.
[0208] As a possible implementation manner, after receiving the playing instruction, the smart TV can establish a communication link with the mobile phone according to the network connection information of the mobile phone carried in the playing instruction. For example, the device back connection module 405 of the smart TV establishes a connection with the mobile phone player according to the IP address of the mobile phone player and the port number of the mobile phone player carried in the playing instruction.
[0209] Optionally, the communication connection established by the smart TV with the mobile phone can be a communication connection based on a private protocol. The private protocol can be a screen-cast data transmission protocol customized according to the content manufacturer of the screen-cast video. In this way, the communication connection between the mobile phone player and the TV player of the content manufacturer is established through the private protocol of the content manufacturer, so that the encryption of data transmission, the release of clarity limitation and the improvement of the play control ability can be realized.
[0210] For example, the communication connection can be a transmission control protocol (TCP) connection provided by the content manufacturer. In the embodiment of the application, the process of establishing the communication connection between the smart TV and the mobile phone can be referred to as a link back connection (abbreviated as back connection) process.
[0211] In other embodiments, the network connection information of the mobile phone is not included in the playing instruction. In this case, the smart TV can initiate a search process to obtain the network connection information of the mobile phone through the search process to establish a communication connection with the mobile phone.
[0212] S109, the mobile phone receives the control instruction A of the user and transmits the screen-cast control data related to the control instruction A through the communication connection.
[0213] After the smart TV and the mobile phone are successfully back connected, the smart TV and the mobile phone can interact through the back connection link, so as to control the screen-cast video played on the smart TV through the mobile phone.
[0214] For example, the user inputs a control instruction A through the mobile phone player, where the control instruction A is used to switch the definition of the video being projected. The mobile phone sends the control instruction A to the smart TV through the back link, and the smart TV switches the definition of the video being projected according to the control instruction A.
[0215] For another example, the user inputs a barrage through the mobile phone player. The mobile phone sends the information of the barrage to the smart TV through the back link, and the smart TV displays the barrage during the playing of the video being projected.
[0216] For another example, the user inputs a speed play instruction A through the mobile phone player, where the speed play instruction A is used to instruct to switch the playing speed of the video being projected. The mobile phone sends the speed play instruction to the smart TV through the back link to instruct the smart TV to switch the playing speed of the video being projected.
[0217] In this method, the interactive channel of different end-side applications of the video content manufacturer can be connected through the back link, for example, the interactive channel between the mobile phone player and the television player of the same manufacturer which is used in matching. In this way, the smart TV can provide the user with a more high-definition projection watching experience and a more playable projection interaction mode such as a barrage and a speed play through the television player which is used in matching with the mobile phone player, and the playing control can be easily realized.
[0218] In addition, in this method, the television player which is used in matching with the mobile phone player does not need to be opened in advance on the smart TV, and the back link between the television player and the matching mobile phone player can also be realized to realize the playing control. It can be seen that, in this method, the playing control of the television by the mobile phone can be realized with reduced user operation complexity, and the projection experience is improved.
[0219] For another example, in some other embodiments, the mobile phone player and the television player do not belong to the same manufacturer, but the mobile phone player and the television player support the same projection data transmission protocol, and then the smart TV can also connect the interactive channel between the mobile phone player and the television player which is used in matching, and provide the user with a more high-definition projection watching experience and a more playable projection interaction mode such as a barrage and a speed play through the television player which is used in matching with the mobile phone player, and the playing control can be easily realized.
[0220] The above shows an example of a process of negotiating the player used for projection of the smart TV between the smart TV and the mobile phone, and the negotiation process of the projection between the smart TV and the mobile phone is not limited in the embodiments of the present application. For example, Figure 9 Another process example of negotiating the player used for projection of the smart TV is shown. As shown in Figure 9 , the process includes:
[0221] S201, the mobile phone receives the operation of the user on the projection button of the mobile phone player.
[0222] The implementation of S201 can refer to the related description of S102, which will not be repeated here.
[0223] S202, the mobile phone sends an inquiry message.
[0224] The inquiry message is used to inquire whether other devices support a player that matches the mobile phone player.
[0225] Optionally, the inquiry message includes information of the mobile phone player. The information of the mobile phone player includes but is not limited to at least one of the following information: an identifier of the mobile phone player, a content manufacturer corresponding to the mobile phone player, and a function supported by the mobile phone player.
[0226] Optionally, the inquiry message can be any one of a unicast message, a broadcast message, and a multicast message.
[0227] For example, as shown in step ① of Figure 10 the mobile phone sends an inquiry message to inquire whether a surrounding device (including a smart TV) supports a player that matches the mobile phone player.
[0228] S203, the smart TV sends a response message.
[0229] The response message includes information of a TV player xxTV supported by the smart TV and matching the mobile phone player.
[0230] It should be understood that after receiving the inquiry message, the smart TV can determine a TV player that matches the mobile phone player and is supported by the smart TV according to the information of the mobile phone player carried in the inquiry message. For example, if the smart TV supports TV players xxTV and yyTV, and the xxTV is a TV player that matches the mobile phone player, as shown in step ② of Figure 10 the smart TV can feed back the information of the TV player xxTV to the mobile phone, so that the mobile phone can know that the TV player that matches the mobile phone player and is supported by the smart TV is the TV player xxTV.
[0231] S204, the mobile phone sends a play instruction.
[0232] In some examples, after detecting that the user clicks the screen projection button, the mobile phone can send the play instruction after negotiating with the smart TV to determine that the player used by the smart TV for screen projection is the xxTV. Alternatively, after detecting that the user clicks the screen projection button, the mobile phone can display an option tab of the TV player xxTV after negotiating with the smart TV to determine that the player used by the smart TV for screen projection is the xxTV. After detecting that the user clicks the option tab of the TV player xxTV, the mobile phone sends the play instruction.
[0233] S205, the smart television plays the screen-cast video using the television player xxTV according to the playing instruction.
[0234] The implementation of S204, S205 can refer to the related description of S106, S107, and details are not described herein again.
[0235] Figure 11 Another flow example of the screen-cast method of the embodiments of the present application is shown. As shown in FIG. 6, Figure 11 The method comprises the following steps.
[0236] S301, the first device determines the first player which the first device needs to use when the second device initiates the video screen-cast. The first player is supported by the first device and is matched with the second player for use.
[0237] As a possible implementation manner, S301 can be implemented as: the first device sends a discovery packet, the discovery packet comprising information of the player supported by the first device, and the information of the player supported by the first device is used as an input for the second device to determine the first player. Correspondingly, after the second device receives the discovery packet sent by the first device, the second device determines the player matched with the second player for use from the player supported by the first device as the first player.
[0238] For example, as shown in (b) of FIG. 2, Figure 7 the smart television (for example, the first device) broadcasts information of the player xxTV, yyTV supported by the smart television, as shown in (a) of FIG. 2, Figure 7 after the mobile phone (for example, the second device) receives the information of the player xxTV, yyTV supported by the smart television, the mobile phone can determine that the player xxTV supported by the smart television and matched with the player (for example, the second player) of the mobile phone for use is the first player. For example, the player xxTV supported by the smart television is the same brand player as the player of the mobile phone, and the mobile phone can take the player xxTV as the first player. For another example, the player xxTV supported by the smart television supports the same screen-cast data transmission protocol as the player of the mobile phone, and the mobile phone can take the player xxTV as the first player.
[0239] As another possible implementation manner, S301 can be implemented as: the first device receives an inquiry message sent by the second device, the inquiry message being used to inquire the player supported by the first device and matched with the second player for use; the first device determines the first player according to the inquiry message; and the first device sends a response message, the response message comprising information of the first player.
[0240] For example, as shown in (b) of FIG. 2, Figure 10The mobile phone sends an inquiry message to the smart TV, inquires about the smart TV supporting and matching the TV player with the mobile phone player. If the smart TV supports the TV player xxTV and yyTV, and the TV player xxTV is the TV player matching the mobile phone player, the smart TV can feed back the information of the TV player xxTV to the mobile phone through a response message, so that the mobile phone can know that the TV player matching the mobile phone player is the TV player xxTV.
[0241] S302, the second device receives a screen projection operation acting on the second player.
[0242] For example, the screen projection operation can be an operation of clicking a screen projection button 501 as shown in the figure, or an operation of clicking a tab card 701a as shown in (a). Figure 6 Or, the screen projection operation can also be other operations. Figure 7
[0243] S303, the second device sends a play instruction to the first device in response to the screen projection operation.
[0244] Correspondingly, the first device receives the play instruction sent by the second device.
[0245] The play instruction is triggered by an operation of a screen projection control acting on the second player of the second device, and is used to instruct the first device to play the screen projected video by using the first player.
[0246] The second device can encapsulate information associated with the first player in the play instruction, so that the first device pulls up the first player according to the information associated with the first player. Optionally, the information associated with the first player includes but is not limited to at least one of the following information: source information of the screen projected video, network connection information of the second device, download address of the first player, identification of the first player, and identification of the second player. For details of the at least one information, please refer to the above embodiments, which will not be described here.
[0247] S304, the first device plays the screen projected video by using the first player according to the play instruction.
[0248] The implementation of S304 can refer to S107 or S205 described above, which will not be described here.
[0249] Taking the first device as a television and the second device as a mobile phone as an example, the mobile phone and the television can determine, through negotiation, that the television supports a television player (for example, the first player) that can be used in combination with the mobile phone player (for example, the second player). In this way, after receiving the playing instruction, the television can automatically pull up the television player according to the playing instruction, and play the video to be projected by using the television player. Since the television player is a television player that can be used in combination with the mobile phone player, the high definition, speed, and bullet screen projection experience can be provided through the television player. In addition, during the projection process, the user does not need to manually open the television player that can be used in combination with the mobile phone player on the television in advance, which can reduce the operation complexity of the user and improve the ease of use of the projection function.
[0250] The one or more interfaces described above are exemplary, and other interface design manners can also be used, and the specific design manner of the interface is not limited in the application. For example, in the above example in which the sending of the playing instruction is triggered by the tab card of the player, in some other embodiments, the control for triggering the sending of the playing instruction can also be another control, for example, an option button, and the embodiments of the application are not limited in this regard.
[0251] The introduction of some interfaces in the drawings can be referred to the related description in the similar drawings.
[0252] It should be noted that the above-mentioned multiple embodiments can be combined, and the combined scheme can be implemented. Optionally, some operations in the flow of each method embodiment are combined, and / or the order of some operations is changed. Moreover, the execution order between the steps of each flow is only exemplary, and does not constitute a limitation on the execution order between the steps, and other execution orders between the steps can also be used. It is not intended to indicate that the execution order is the only execution order in which these operations can be performed. Those skilled in the art can think of various ways to reorder the operations described herein. In addition, it should be pointed out that the process details related to one embodiment herein are also applicable in a similar manner to other embodiments, or different embodiments can be combined for use.
[0253] In addition, some steps in the method embodiment can be equivalently replaced by other possible steps. Alternatively, some steps in the method embodiment can be optional and can be deleted in some use scenarios. Alternatively, other possible steps can be added to the method embodiment.
[0254] Moreover, each method embodiment described above can be implemented independently or in combination.
[0255] For example, a device (e.g., device A) obtaining information from another device (e.g., device B) can mean that device A receives the information from device B directly, or that device A receives the information from device B via another device (e.g., device C). When device A receives the information from device B via device C, device C can pass through the information or process the information, for example, carry the information in different messages for transmission or filter the information and send only the filtered information to device A. Similarly, in embodiments of the present application, device A sending information to device B can mean that device A sends the information to device B directly, or that device A sends the information to device B via another device (e.g., device C).
[0256] Some other embodiments of the present application provide a device, which can be the first device or the second device described above. The device can include a display screen, a memory and one or more processors. The display screen, the memory and the processors are coupled. The memory is configured to store computer program code including instructions. When the processors execute the instructions, the device can perform various functions or steps in the method embodiments described above. The structure of the device can be referred to the structure of the device shown in Figure 12 The device (apparatus) shown.
[0257] The core structure of the device can be represented as Figure 12 The structure shown, the device includes a processing module 1301, an input module 1302, a storage module 1303 and a display module 1304.
[0258] The processing module 1301 can include at least one of a central processing unit (CPU), an application processor (AP) or a communication processor (CP). The processing module 1301 can perform operations or data processing related to the control and / or communication of at least one of the other elements of the user equipment. Specifically, the processing module 1301 can be configured to control the content displayed on the main screen according to certain trigger conditions. The processing module 1301 is also configured to process the input instructions or data and determine the display style based on the processed data.
[0259] The input module 1302 is configured to obtain the instructions or data input by the user and transmit the obtained instructions or data to other modules of the device. Specifically, the input method of the input module 1302 can include touch, gesture, proximity to the screen, etc., or voice input. For example, the input module can be the screen of the device, which obtains the input operation of the user and generates an input signal according to the obtained input operation, and transmits the input signal to the processing module 1301.
[0260] Storage module 1303 may include volatile memory and / or non-volatile memory. The storage module is used to store at least one related instruction or data from other modules of the user device.
[0261] Display module 1304 may include, for example, a liquid crystal display (LCD), a light-emitting diode (LED) display, an organic light-emitting diode (OLED) display, a microelectromechanical system (MEMS) display, or an electronic paper display. It is used to display content that can be viewed by a user.
[0262] Optionally, a communication module 1305 is also included to support communication between the personal device and other personal devices (via a communication network). For example, the communication module may be connected to a network via wireless or wired communication to communicate with other personal devices or network servers. Wireless communication may employ at least one of the following cellular communication protocols: 5G, Long Term Evolution (LTE), LTE-A Advanced, Code Division Multiple Access (CDMA), Wideband Code Division Multiple Access (WCDMA), Universal Mobile Telecommunications System (UMTS), WiBro, or Global System for Mobile Communications (GSM). Wireless communication may include, for example, short-range communication. Short-range communication may include at least one of Wi-Fi, Bluetooth, Near Field Communication (NFC), Magnetic Stripe Transmission (MST), or GNSS.
[0263] It should be noted that each functional module of the device can perform one or more steps in the above method embodiments.
[0264] This application also provides a chip system, such as... Figure 13 As shown, the chip system includes at least one processor 1401 and at least one interface circuit 1402. The processor 1401 and the interface circuit 1402 are interconnected via lines. For example, the interface circuit 1402 can be used to receive signals from other devices (e.g., the device's memory). 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 memory and send those instructions to the processor 1401. When the instructions are executed by the processor 1401, the device can perform the steps in the above embodiments. Of course, the chip system may also include other discrete components, which are not specifically limited in this application embodiment.
[0265] This application also provides a readable storage medium including instructions that, when executed on the device, cause the device to perform the various functions or steps described in the method embodiments.
[0266] The embodiment of the present application further provides a program product, which, when running on a device, causes the device to perform each function or step in the above method embodiment.
[0267] The above is merely specific implementation of the present application, but the protection scope of the present application is not limited to this, any change or replacement within the technical range disclosed in the present application should be covered in the protection scope of the present application. Therefore, the protection scope of the present application should be subject to the protection scope of the claims.
Claims
1. A screen projection method, characterized by, Applied to a first device, the method comprises: determining a first player required by the first device when a second device initiates video projection, the first player being supported by the first device and matched with a second player for use; receiving a play instruction sent by the second device, the play instruction being triggered by an operation of a projection control of the second player of the second device and used to instruct the first device to play projected video using the first player; playing the projected video using the first player according to the play instruction; wherein determining the first player required by the first device when the second device initiates video projection comprises: sending a discovery packet, the discovery packet comprising information of the player supported by the first device, the information of the player supported by the first device serving as input for the second device to determine the first player; or receiving an inquiry message sent by the second device, the inquiry message being used to inquire the player supported by the first device and matched with the second player; determining the first player according to the inquiry message; sending a response message, the response message comprising information of the first player.
2. The method of claim 1, wherein, The play instruction comprises at least one of the following information: source information of the projected video, network connection information of the second device, download address of the first player, identification of the first player, and identification of the second player.
3. The method according to claim 1 or 2, characterized in that, Playing the projected video using the first player comprises: if the first device has installed the first player, pulling up the first player and playing the projected video using the first player; or if the first device has not installed the first player, downloading and installing the first player according to the download address of the first player; pulling up the first player and playing the projected video using the first player.
4. The method according to claim 1 or 2, characterized in that, The method further comprises: establishing a communication connection with the second device according to the play instruction; receiving projection control data sent by the second device through the communication connection, the projection control data comprising at least one of the following data: bullet screen data, speed data, and definition data.
5. The method according to claim 1 or 2, characterized in that, The information of the first player comprises at least one of the following information: identification of the player, content manufacturer corresponding to the player, and function supported by the player; The function supported by the player comprises at least one of the following functions: high definition, speed, and bullet screen.
6. The method of claim 2, wherein, The source information of the projected video comprises at least one of the following information: play address of the projected video and providing manufacturer of the projected video; The network connection information of the second device comprises at least one of the following information: address of the second player of the second device and port number of the second player.
7. The method according to claim 1 or 2, characterized in that, The play instruction further comprises member information of the first player and / or bullet screen information.
8. The method of claim 1 or 2, wherein, The playing instruction comprises a first field, and the first field is used to indicate at least one of the following information: source information of the video to be projected, network connection information of the second device, a download address of the first player, an identifier of the first player, and an identifier of the second player.
9. A screen projection method, characterized in that, The method is applied to the second device, and the method comprises: determining a first player required by a first device to use when the second device initiates video projection; the first player is supported by the first device and is a player matched with the second player for use; receiving a projection operation acting on the second player; sending a playing instruction, the playing instruction being used to instruct the first device to play the video to be projected by using the first player; wherein the determining of the first player required by the first device to use when the second device initiates video projection comprises: receiving a discovery packet sent by the first device, the discovery packet comprising information of players supported by the first device; determining, from the players supported by the first device, that the player matched with the second player for use is the first player; or sending an inquiry message, the inquiry message being used to inquire about the player supported by the first device and matched with the second player for use; receiving a response message sent by the first device, the response message comprising information of the first player.
10. The method of claim 9, wherein, Before the sending of the playing instruction, the method further comprises: displaying a first interface, the first interface comprising a first projection control of the first player; the sending of the playing instruction comprises: in response to an operation acting on the first projection control, sending the playing instruction.
11. The method of claim 10, wherein, The first interface further comprises a second projection control of a third player, the third player being a player not supported by the first device and / or the third player not being a player matched with the second player for use; a user interface (UI) effect of the first projection control is different from a UI effect of the second projection control.
12. The method according to any one of claims 9-10, characterized in that, The method further comprises: sending projection control data through a communication connection between the first device, the projection control data comprising at least one of the following data: comment data, speed data, and definition data.
13. The method according to any one of claims 9-10, characterized in that, The playing instruction comprises at least one of the following information: source information of the video to be projected, network connection information of the second device, a download address of the first player, an identifier of the first player, and an identifier of the second player; and / or the source information of the video to be projected comprises at least one of the following information: a source type of the video to be projected, a playing address of the video to be projected, and a provider of the video to be projected; and / or the network connection information of the second device comprises at least one of the following information: an address of the second player of the second device and a port number of the second player.
14. A device, which is a destination device when screen projection is performed, characterized by, The destination device comprises: a display screen; one or more processors; one or more memories; and one or more programs, wherein the one or more programs are stored in the memory device and, when executed by the destination device, cause the destination device to perform the screen projection method as claimed in any one of claims 1-8.
15. A device, which is a source device when casting, characterized in that, The source device comprises: a display screen; one or more processors; one or more memories; and one or more programs, wherein the one or more programs are stored in the memory device and, when executed by the source device, cause the source device to perform the screen projection method as claimed in any one of claims 9-13.
16. A readable storage medium, having stored therein instructions, wherein, The instructions, when executed on a device, cause the device to perform the screen projection method as claimed in any one of claims 1-8, or cause the device to perform the screen projection method as claimed in any one of claims 9-13.
17. A program product comprising instructions, characterized in that The program product, when executed on a device, cause the device to perform the screen projection method as claimed in any one of claims 1-8, or cause the device to perform the screen projection method as claimed in any one of claims 9-13.
Citation Information
Patent Citations
Mobile terminal, terminal device and video projection method capable of implementing video projection
CN108076369A