Screen recording method, device and terminal
Patent Information
- Authority / Receiving Office
- CN · China
- Patent Type
- Patents(China)
- Current Assignee / Owner
- Filing Date
- 2021-08-10
- Publication Date
- 2026-08-11
AI Technical Summary
[0003]本公开提供一种录屏方法、装置、终端、电子设备、计算机可读存储介质、计算机程序产品,以至少解决相关技术中录屏方法功耗高、发热严重的问题
[0022] According to a fifth aspect of the present disclosure, a computer-readable storage medium is provided that, when instructions in the computer-readable storage medium are executed by a processor of an electronic device, enables the electronic device to perform the screen recording method as described in the first aspect of the present disclosure.
Smart Images

Figure CN115706820B_ABST
Abstract
Description
Technical Field
[0001] This disclosure relates to the field of computer application technology, and in particular to a screen recording method, apparatus and terminal. Background Technology
[0002] Currently, screen recording is widely used in fields such as game streaming, education, and meeting recording, bringing great convenience to people's lives. For example, game streamers can record their gameplay and upload the recording to a platform for users who are not participating in the live stream to view. Users can also record online meetings and transcribe the meeting content based on the recording. However, screen recording methods in related technologies suffer from high power consumption and significant heat generation issues. Summary of the Invention
[0003] This disclosure provides a screen recording method, apparatus, terminal, electronic device, computer-readable storage medium, and computer program product to at least solve the problems of high power consumption and severe heat generation in related screen recording methods. The technical solution of this disclosure is as follows:
[0004] According to a first aspect of the present disclosure, a screen recording method is provided, comprising: acquiring a display device list, the display device list including at least physical display devices and virtual display devices of a first category; identifying whether the value of a flag bit of a virtual display device of the first category in the display device list is a preset value; and, in response to the value of the flag bit of a virtual display device of the first category being the preset value, using the video synthesis result of the physical display device as the screen recording result.
[0005] In one embodiment of this disclosure, the display device list further includes a second category of virtual display devices, and the method further includes: identifying whether the value of a flag bit of each of the physical display devices, the first category of virtual display devices, and the second category of virtual display devices included in the display device list is a preset value; in response to the value of a flag bit of any display device not being the preset value, performing video synthesis on the any display device to generate the video synthesis result of the any display device.
[0006] In one embodiment of this disclosure, the video synthesis of any display device includes: acquiring multiple frame images of the any display device according to a preset refresh rate; and synthesizing the multiple frame images into a video.
[0007] In one embodiment of this disclosure, before obtaining the display device list, the method further includes: receiving a screen recording instruction from a user; creating a virtual display device of the first category according to the screen recording instruction, and setting the value of the flag bit of the virtual display device of the first category to the preset value; and adding the virtual display device of the first category to the display device list.
[0008] In one embodiment of this disclosure, creating a virtual display device of the first category according to the screen recording instruction includes: invoking a preset screen recording application according to the screen recording instruction; receiving a create display device instruction sent by the screen recording application through an application programming interface; and creating a virtual display device of the first category based on the create display device instruction.
[0009] In one embodiment of this disclosure, after generating the video synthesis result for any of the display devices, the method further includes: identifying the category of the display device; and, in response to the category of the display device being a physical display device, displaying the video synthesis result of the display device on the display device.
[0010] In one embodiment of this disclosure, the method further includes: in response to the display device being classified as a virtual display device, storing the video synthesis result of the display device in the storage space corresponding to the display device.
[0011] In one embodiment of this disclosure, the method further includes: using the video synthesis result of the physical display device as the video synthesis result of the virtual display device of the first category.
[0012] According to a second aspect of the present disclosure, a screen recording device is provided, comprising: an acquisition module configured to acquire a list of display devices, the list of display devices including at least physical display devices and virtual display devices of a first category; an identification module configured to identify whether the value of a flag bit of a virtual display device of the first category in the list of display devices is a preset value; and a screen recording module configured to, in response to the value of the flag bit of a virtual display device of the first category being the preset value, use the video synthesis result of the physical display device as the screen recording result.
[0013] In one embodiment of this disclosure, the display device list further includes a second category of virtual display devices; the identification module is further configured to identify whether the value of the flag bit of each of the physical display devices, the first category of virtual display devices, and the second category of virtual display devices included in the display device list is the preset value; the screen recording module is further configured to perform video synthesis on the any display device in response to the value of the flag bit of any display device not being the preset value, thereby generating the video synthesis result of the any display device.
[0014] In one embodiment of this disclosure, the screen recording module is further configured to perform: acquiring multiple frame images of any display device at a preset refresh rate; and performing video synthesis on the multiple frame images.
[0015] In one embodiment of this disclosure, the apparatus further includes: a receiving module configured to receive a screen recording instruction from a user; a creating module configured to create a virtual display device of the first category according to the screen recording instruction, and set the value of the flag bit of the virtual display device of the first category to the preset value; and an adding module configured to add the virtual display device of the first category to the display device list.
[0016] In one embodiment of this disclosure, the creation module is further configured to: call a preset screen recording application according to the screen recording instruction; receive a creation display device instruction sent by the screen recording application through an application programming interface; and create a virtual display device of the first category based on the creation display device instruction.
[0017] In one embodiment of this disclosure, the screen recording module is further configured to: identify the type of the display device; and, in response to the type of the display device being a physical display device, display the video synthesis result of the display device on the display device.
[0018] In one embodiment of this disclosure, the screen recording module is further configured to: in response to the display device being classified as a virtual display device, store the video synthesis result of the display device in the storage space corresponding to the display device.
[0019] In one embodiment of this disclosure, the screen recording module is further configured to perform: using the video synthesis result of the physical display device as the video synthesis result of the virtual display device of the first category.
[0020] According to a third aspect of the present disclosure, a terminal is provided, comprising: a screen recording device as described in the second aspect of the present disclosure.
[0021] According to a fourth aspect of the present disclosure, an electronic device is provided, comprising: a processor; and a memory for storing executable instructions of the processor; wherein the processor is configured to execute the instructions to implement the screen recording method as described in the first aspect of the present disclosure.
[0022] According to a fifth aspect of the present disclosure, a computer-readable storage medium is provided that, when instructions in the computer-readable storage medium are executed by a processor of an electronic device, enables the electronic device to perform the screen recording method as described in the first aspect of the present disclosure.
[0023] According to a sixth aspect of the present disclosure, a computer program product is provided, including a computer program / instructions, characterized in that, when the computer program / instructions are executed by a processor of an electronic device, they implement the screen recording method as described in the first aspect of the present disclosure.
[0024] The technical solution provided by the embodiments of this disclosure brings at least the following beneficial effects: It can obtain a list of display devices and identify whether the value of the flag bit of the first category of virtual display devices in the list is a preset value. In response to the flag bit of the first category of virtual display devices being a preset value, the video synthesis result of the physical display device can be used as the screen recording result. Therefore, when the flag bit of the first category of virtual display devices is a preset value, the video synthesis result of the physical display device can be directly used as the screen recording result, eliminating the need for video synthesis on the first category of virtual display devices. This effectively reduces the amount of data involved in video synthesis and saves the computing resources of electronic devices, thereby effectively reducing screen recording power consumption and alleviating the heat generation problem caused by screen recording.
[0025] It should be understood that the above general description and the following detailed description are exemplary and explanatory only, and are not intended to limit this disclosure. Attached Figure Description
[0026] The accompanying drawings, which are incorporated in and form part of this specification, illustrate embodiments consistent with this disclosure and, together with the description, serve to explain the principles of this disclosure, and are not intended to unduly limit this disclosure.
[0027] Figure 1 This is a flowchart illustrating a screen recording method according to an exemplary embodiment.
[0028] Figure 2 This is a flowchart illustrating a screen recording method prior to obtaining a list of display devices, according to an exemplary embodiment.
[0029] Figure 3 This is a flowchart illustrating a screen recording method based on a specific example.
[0030] Figure 4This is a block diagram illustrating a screen recording device according to an exemplary embodiment.
[0031] Figure 5 This is a block diagram illustrating a terminal according to an exemplary embodiment.
[0032] Figure 6 This is a block diagram illustrating an electronic device according to an exemplary embodiment. Detailed Implementation
[0033] To enable those skilled in the art to better understand the technical solutions of this disclosure, the technical solutions in the embodiments of this disclosure will be clearly and completely described below with reference to the accompanying drawings.
[0034] It should be noted that the terms "first," "second," etc., used in the specification, claims, and accompanying drawings of this disclosure are used to distinguish similar objects and are not necessarily used to describe a specific order or sequence. It should be understood that such data can be interchanged where appropriate so that the embodiments of this disclosure described herein can be implemented in orders other than those illustrated or described herein. The embodiments described in the following exemplary embodiments do not represent all embodiments consistent with this disclosure. Rather, they are merely examples of apparatuses and methods consistent with some aspects of this disclosure as detailed in the appended claims.
[0035] Figure 1 This is a flowchart illustrating a screen recording method according to an exemplary embodiment, such as... Figure 1 As shown, the screen recording method of this disclosure includes the following steps.
[0036] S101, Obtain a list of display devices, which includes at least physical display devices and virtual display devices of the first category.
[0037] It should be noted that the screen recording method of this disclosure is executed by an electronic device, which includes a terminal. The terminal includes, but is not limited to, mobile phones, computers, smart voice interaction devices, smart home appliances, and vehicle terminals. The screen recording method of this disclosure can be executed by the screen recording device of this disclosure, which can be configured in any electronic device to execute the screen recording method of this disclosure.
[0038] It is important to understand that display devices can include physical display devices and virtual display devices. Physical display devices refer to display devices with a physical entity, including the physical display device of the electronic device itself (such as the screen of a mobile phone) and external physical display devices (such as an external screen connected to the mobile phone via a transmission cable). Virtual display devices refer to display devices without a physical entity, and can include virtual display devices of the first category and virtual display devices of the second category. It should be noted that virtual display devices of the first category are used for screen recording, while virtual display devices of the second category are not used for screen recording. For example, virtual display devices of the second category can be used for wireless display (WiFi Display, WFD).
[0039] In embodiments of this disclosure, a display device list can be obtained, which includes at least physical display devices and virtual display devices of a first category. It should be noted that the display device list consists of all display devices currently present in the electronic device. For example, the display device list of a mobile phone includes the phone's own screen and virtual display devices of the first category.
[0040] In one implementation, a list of display devices can be pre-set in the storage space of the electronic device for use during screen recording.
[0041] S102, identify whether the value of the flag bit of the first category of virtual display devices in the display device list is a preset value.
[0042] S103, in response to the value of the flag bit of the first type of virtual display device being a preset value, the video synthesis result of the physical display device is used as the screen recording result.
[0043] It should be noted that in the embodiments of this disclosure, a flag bit can be set for each display device in the display device list. The value of the flag bit can be used to determine whether to perform video compositing on the display device. It is understood that the value of the flag bit can be a default value or a preset value, and the default value and the preset value are different. For example, the default value is false and the preset value is true, or the default value is 0 and the preset value is 1.
[0044] In embodiments of this disclosure, it is possible to identify whether the value of the flag bit of the first category of virtual display devices in the display device list is a preset value. If the value of the flag bit of the first category of virtual display devices is a preset value, it indicates that video compositing is not required for the first category of virtual display devices, and the video compositing result of the physical display device can be directly used as the screen recording result. The type of the video compositing result may include video.
[0045] In one implementation, using the video composite result of the physical display device as the screen recording result may include using the video composite result of the physical display device of the electronic device itself as the screen recording result. For example, the video composite result of the mobile phone's own screen may be used as the screen recording result.
[0046] In one implementation, after the video synthesis result of the physical display device is used as the screen recording result, the screen recording result can be stored in the target storage space, so that the screen recording result can be stored in a timely manner and the user can retrieve the screen recording result in the target storage space.
[0047] In one implementation, after using the video synthesis result from the physical display device as the screen recording result, the screen recording result can be output to a video processing device for video processing to generate a processed screen recording result. This video processing includes, but is not limited to, video trimming, adding effects, text, images, and mosaic effects, etc., without further limitation. Therefore, this method can output the screen recording result to a video processing device for automatic video processing, thus enriching the diversity of screen recording results.
[0048] The screen recording method provided in the embodiments of this disclosure can obtain a list of display devices and identify whether the value of the flag bit of the first category of virtual display devices in the list is a preset value. In response to the preset value of the flag bit of the first category of virtual display devices, the video synthesis result of the physical display device can be used as the screen recording result. Therefore, when the preset value of the flag bit of the first category of virtual display devices is reached, the video synthesis result of the physical display device can be directly used as the screen recording result, eliminating the need for video synthesis on the first category of virtual display devices. This effectively reduces the amount of data involved in video synthesis and saves computing resources for electronic devices, thereby effectively reducing screen recording power consumption and alleviating the heat generation problem caused by screen recording.
[0049] Based on any of the above embodiments, the list of display devices also includes a second category of virtual display devices, which are not used for screen recording.
[0050] In the embodiments of this disclosure, the value of the flag bit can be used to determine whether to perform video compositing on the display device. When the flag bit is set to a preset value, video compositing is not performed on the display device, and the video compositing result of the physical display device is used as the video compositing result of the display device; conversely, when the flag bit is not set to a preset value, video compositing is performed on the display device to generate the video compositing result of the display device. The display device can be any one of the physical display devices, the first category of virtual display devices, and the second category of virtual display devices included in the display device list.
[0051] In one embodiment, after the flag bit of the first category of virtual display devices is set to a preset value in step S103, the video synthesis result of the physical display device may be used as the video synthesis result of the first category of virtual display devices.
[0052] Therefore, this method can determine whether to perform video synthesis on the display device based on the value of the flag bit of the display device, and when the value of the flag bit is a preset value, it will not perform video synthesis on the display device, and directly use the video synthesis result of the physical display device as the video synthesis result of the display device, which can effectively reduce the amount of data in video synthesis.
[0053] Based on any of the above embodiments, such as Figure 2 As shown, before obtaining the list of display devices in step S101, the following steps are also included:
[0054] S201 receives the user's screen recording command.
[0055] In embodiments of this disclosure, a user can send a screen recording command to an electronic device, and the electronic device can correspondingly receive the user's screen recording command. In one embodiment, the electronic device can monitor the user's screen recording command and, in response to detecting the user's screen recording command, receive the screen recording command.
[0056] It should be noted that there are no strict restrictions on the types of screen recording commands. For example, screen recording commands include, but are not limited to, gestures, text, and voice commands. Electronic devices can receive screen recording commands from users through control panels, touchscreens, voice interaction devices, etc.
[0057] S202, create a first-category virtual display device according to the screen recording command, and set the flag of the first-category virtual display device to a preset value.
[0058] In the embodiments of this disclosure, a first type of virtual display device can be created according to the screen recording instruction. The first type of virtual display device is used for screen recording, and the flag bit of the first type of virtual display device is set to a preset value. This ensures that the subsequent response to the flag bit of the first type of virtual display device being set to the preset value is to directly use the video synthesis result of the physical display device as the screen recording result, without performing video synthesis on the first type of virtual display device.
[0059] In one implementation, creating a first-category virtual display device according to a screen recording instruction may include calling a preset screen recording application (APP) according to the screen recording instruction, receiving a creation display device instruction sent by the screen recording application through an application programming interface, and creating a first-category virtual display device based on the creation display device instruction.
[0060] In the embodiments of this disclosure, a screen recording application can be pre-set in the electronic device. The pre-set screen recording application can be called according to the screen recording instruction. The screen recording application can send a creation display device instruction to the electronic device through the application programming interface. The creation display device instruction is used to create a first type of virtual display device. Correspondingly, the electronic device can receive the creation display device instruction sent by the screen recording application through the application programming interface, and create a first type of virtual display device based on the creation display device instruction.
[0061] S203, add the first category of virtual display devices to the list of display devices.
[0062] In the embodiments of this disclosure, virtual display devices of the first category created based on screen recording instructions can be added to the display device list to update the display device list. For example, the identification information of the virtual display devices of the first category can be added to the display device list. For instance, if the current display device list includes "Default Display", "HDMI Display", and "Virtual Display 0", and the identification information of the virtual display devices of the first category is "Virtual Display 1", then "Virtual Display 1" can be added to the display device list, and the updated display device list includes "Default Display", "HDMI Display", "Virtual Display 0", and "Virtual Display 1".
[0063] Therefore, this method can create a first category of virtual display devices according to the user's screen recording command, set the flag bit of the first category of virtual display devices to a preset value, add the first category of virtual display devices to the display device list to update the display device list, thereby ensuring that the subsequent response to the flag bit of the first category of virtual display devices being set to the preset value can directly use the video synthesis result of the physical display device as the screen recording result, without performing video synthesis on the first category of virtual display devices.
[0064] In one embodiment, after obtaining the display device list in step S101, it may include identifying whether the value of the flag bit of each display device in the physical display device, the first category of virtual display devices, and the second category of virtual display devices included in the display device list is a preset value. In response to the fact that the value of the flag bit of any display device is not a preset value, it indicates that video compositing needs to be performed on any display device, and video compositing is performed on any display device to generate a video compositing result for any display device.
[0065] For example, a mobile phone's display device list includes the phone's own screen, an external screen connected to the phone via a transmission cable, a first category of virtual display devices, and a second category of virtual display devices. The system can identify whether a flag bit for each display device in the list is a preset value. In response to a non-preset value for the flag bits of the phone's own screen, the external screen connected to the phone via the transmission cable, and the second category of virtual display devices, video compositing is performed on each of these devices to generate separate video composite results. Alternatively, in response to a preset value for the flag bit of the first category of virtual display devices, the video composite result of the phone's own screen can be used as the video composite result of the first category of virtual display devices.
[0066] In one embodiment, video compositing on any display device may include acquiring multiple frame images from the display device at a preset refresh rate, and then compositing the multiple frame images into a video. The preset refresh rate can be set according to actual conditions and is not limited here; for example, it can be set to 90Hz (Hertz) per second. Therefore, this method can acquire multiple frame images from the display device at a fixed refresh rate, ensuring the stability and reliability of screen recording, and perform video compositing on the multiple frame images to achieve video compositing on the display device.
[0067] Therefore, this method can perform video synthesis on the display device when the value of the flag bit of the display device is not a preset value, so as to generate a video synthesis result of the display device.
[0068] Based on any of the above embodiments, after generating the video composite result for any display device, the method further includes identifying the category of the display device, and, in response to the category of the display device being a physical display device, displaying the video composite result of the display device on the display device. Alternatively, in response to the category of the display device being a virtual display device, storing the video composite result of the display device in the storage space corresponding to the display device. It is understood that each virtual display device has its own storage space for storing the video composite result of the virtual display device.
[0069] In one implementation, identifying the category of a display device may include obtaining identification information of the display device and obtaining the category of the display device based on the identification information. For example, the identification information may carry category information of the display device, so the category information of the display device can be extracted from the identification information. For example, if the identification information of display device A is "Virtual Display 0", then the category of display device A can be obtained as a virtual display device based on the identification information "Virtual Display 0". If the identification information of display device B is "Default Display", then the category of display device B can be obtained as a physical display device based on the identification information "Default Display".
[0070] Therefore, after generating a video composite result for any display device, if the type of the display device is identified as a physical display device, the video composite result of the display device can be displayed on the display device in a timely manner. If the type of the display device is identified as a virtual display device, the video composite result of the display device can be stored in the storage space corresponding to the display device in a timely manner.
[0071] To enable those skilled in the art to better understand this disclosure, Figure 3 Here is a flowchart illustrating a screen recording method based on a specific example, such as... Figure 3 As shown, the screen recording method may include the following steps:
[0072] S301, Get the list of display devices.
[0073] S302, identify whether the value of the flag bit of each display device in the list of physical display devices, virtual display devices of the first category and virtual display devices of the second category is a preset value.
[0074] S303, in response to the value of the flag bit of the first type of virtual display device being a preset value, the video synthesis result of the physical display device is used as the screen recording result and the video synthesis result of the first type of virtual display device.
[0075] S304, in response to the fact that the value of the flag bit of any display device is not a preset value, performs video synthesis on any display device and generates a video synthesis result for any display device.
[0076] S305 identifies the category of the display device.
[0077] S306, in response to the display device being classified as a physical display device, the video composition result of the display device is displayed on the display device.
[0078] S307, in response to the display device being classified as a virtual display device, the video composition result of the display device is stored in the storage space corresponding to the display device.
[0079] For a detailed description of steps S301 to S307, please refer to the relevant content in the above embodiments, which will not be repeated here.
[0080] Figure 4 This is a block diagram illustrating a screen recording device according to an exemplary embodiment. (Refer to...) Figure 4 The screen recording device 100 of this disclosure includes: an acquisition module 110, an identification module 120, and a screen recording module 130.
[0081] The acquisition module 110 is configured to acquire a list of display devices, the list of display devices including at least physical display devices and virtual display devices of a first category;
[0082] The identification module 120 is configured to identify whether the value of the flag bit of the virtual display device of the first category in the display device list is a preset value;
[0083] The screen recording module 130 is configured to execute a screen recording result by taking the video synthesis result of the physical display device as the preset value in response to the value of the flag bit of the first type of virtual display device.
[0084] In one embodiment of this disclosure, the display device list further includes a second category of virtual display devices; the identification module 120 is further configured to identify whether the value of the flag bit of each of the physical display devices, the first category of virtual display devices, and the second category of virtual display devices included in the display device list is the preset value; the screen recording module 130 is further configured to perform video synthesis on the any display device in response to the value of the flag bit of any display device not being the preset value, and generate the video synthesis result of the any display device.
[0085] In one embodiment of this disclosure, the screen recording module 130 is further configured to perform: acquiring multiple frame images of any display device at a preset refresh rate; and performing video synthesis on the multiple frame images.
[0086] In one embodiment of this disclosure, the screen recording device 100 further includes: a receiving module configured to receive a user's screen recording instruction; a creating module configured to create a virtual display device of the first category according to the screen recording instruction, and set the value of the flag bit of the virtual display device of the first category to the preset value; and an adding module configured to add the virtual display device of the first category to the display device list.
[0087] In one embodiment of this disclosure, the creation module is further configured to: call a preset screen recording application according to the screen recording instruction; receive a creation display device instruction sent by the screen recording application through an application programming interface; and create a virtual display device of the first category based on the creation display device instruction.
[0088] In one embodiment of this disclosure, the screen recording module 130 is further configured to: identify the type of the display device; and, in response to the type of the display device being a physical display device, display the video synthesis result of the display device on the display device.
[0089] In one embodiment of this disclosure, the screen recording module 130 is further configured to perform: in response to the display device being classified as a virtual display device, to store the video synthesis result of the display device in the storage space corresponding to the display device.
[0090] In one embodiment of this disclosure, the screen recording module 130 is further configured to perform: using the video synthesis result of the physical display device as the video synthesis result of the virtual display device of the first category.
[0091] Regarding the apparatus in the above embodiments, the specific manner in which each module performs its operation has been described in detail in the embodiments related to the method, and will not be elaborated upon here.
[0092] The screen recording device provided in the embodiments of this disclosure can acquire a list of display devices and identify whether the value of the flag bit of a first category of virtual display devices in the list is a preset value. In response to the flag bit of a first category of virtual display devices being a preset value, the video synthesis result of the physical display device can be used as the screen recording result. Therefore, when the flag bit of a first category of virtual display devices is a preset value, the video synthesis result of the physical display device can be directly used as the screen recording result, eliminating the need for video synthesis on the first category of virtual display devices. This effectively reduces the amount of data involved in video synthesis and saves computing resources for electronic devices, thereby effectively reducing screen recording power consumption and alleviating the heat generation problem caused by screen recording.
[0093] To achieve the above embodiments, such as Figure 5 As shown, this disclosure also proposes a terminal 200, which includes the screen recording device 100 described above.
[0094] The terminal in this embodiment can obtain a list of display devices and identify whether the value of the flag bit of a first category of virtual display devices in the list is a preset value. In response to the flag bit of a first category of virtual display devices being a preset value, the terminal can use the video synthesis result of the physical display device as the screen recording result. Therefore, when the flag bit of a first category of virtual display devices is a preset value, the video synthesis result of the physical display device can be directly used as the screen recording result, eliminating the need for video synthesis on the first category of virtual display devices. This effectively reduces the amount of data involved in video synthesis and saves computing resources for electronic devices, thereby effectively reducing screen recording power consumption and alleviating the heat generation problem caused by screen recording.
[0095] Figure 6 This is a block diagram illustrating an electronic device 300 according to an exemplary embodiment.
[0096] like Figure 6 As shown, the above-mentioned electronic device 300 includes:
[0097] The memory 310 and the processor 320 are connected by a bus 330, which connects different components (including the memory 310 and the processor 320). The memory 310 stores a computer program, and when the processor 320 executes the program, it implements the screen recording method described in this embodiment of the disclosure.
[0098] Bus 330 represents one or more of several bus architectures, including a memory bus or memory controller, a peripheral bus, a graphics acceleration port, a processor, or a local bus using any of the various bus architectures. Examples of these architectures include, but are not limited to, the Industry Standard Architecture (ISA) bus, the Micro Channel Architecture (MAC) bus, the Enhanced ISA bus, the Video Electronics Standards Association (VESA) local bus, and the Peripheral Component Interconnect (PCI) bus.
[0099] Electronic device 300 typically includes a variety of electronic device readable media. These media can be any available media that can be accessed by electronic device 300, including volatile and non-volatile media, removable and non-removable media.
[0100] Memory 310 may also include computer system readable media in the form of volatile memory, such as random access memory (RAM) 340 and / or cache memory 350. Electronic device 300 may further include other removable / non-removable, volatile / non-volatile computer system storage media. By way of example only, storage system 360 can be used to read and write non-removable, non-volatile magnetic media (… Figure 6 Not shown; usually referred to as a "hard drive"). Although Figure 6Not shown, a disk drive for reading and writing to a removable non-volatile disk (e.g., a "floppy disk") and an optical disk drive for reading and writing to a removable non-volatile optical disk (e.g., a CD-ROM, DVD-ROM, or other optical media) may be provided. In these cases, each drive may be connected to bus 330 via one or more data media interfaces. Memory 310 may include at least one program product having a set (e.g., at least one) of program modules configured to perform the functions of the embodiments of this disclosure.
[0101] A program / utility 380 having a set (at least one) of program modules 370 may be stored, for example, in memory 310. Such program modules 370 include—but are not limited to—an operating system, one or more application programs, other program modules, and program data. Each or some combination of these examples may include an implementation of a network environment. Program modules 370 typically perform the functions and / or methods described in the embodiments of this disclosure.
[0102] Electronic device 300 can also communicate with one or more external devices 390 (e.g., keyboard, pointing device, display 391, etc.), and with one or more devices that enable a user to interact with the electronic device 300, and / or with any device that enables the electronic device 300 to communicate with one or more other computing devices (e.g., network card, modem, etc.). This communication can be performed through input / output (I / O) interface 392. Furthermore, electronic device 300 can also communicate with one or more networks (e.g., local area network (LAN), wide area network (WAN), and / or public networks, such as the Internet) through network adapter 393. Figure 6 As shown, network adapter 393 communicates with other modules of electronic device 300 via bus 330. It should be understood that, although not shown in the figure, other hardware and / or software modules can be used in conjunction with electronic device 300, including but not limited to: microcode, device drivers, redundant processing units, external disk drive arrays, RAID systems, tape drives, and data backup storage systems.
[0103] The processor 320 executes various functional applications and data processing by running programs stored in the memory 310.
[0104] It should be noted that the implementation process and technical principles of the electronic device in this embodiment are explained in the foregoing description of the screen recording method of this disclosure, and will not be repeated here.
[0105] The electronic device provided in this embodiment can execute the screen recording method described above. It can obtain a list of display devices and identify whether the value of the flag bit of a first category of virtual display devices in the list is a preset value. In response to the flag bit of a first category of virtual display devices being a preset value, the video synthesis result of the physical display device can be used as the screen recording result. Therefore, when the flag bit of a first category of virtual display devices is a preset value, the video synthesis result of the physical display device can be directly used as the screen recording result, eliminating the need for video synthesis on the first category of virtual display devices. This effectively reduces the amount of data involved in video synthesis and saves the computing resources of the electronic device, thereby effectively reducing screen recording power consumption and alleviating the heat generation problem caused by screen recording.
[0106] To implement the above embodiments, this disclosure also proposes a computer-readable storage medium.
[0107] When the instructions in the computer-readable storage medium are executed by the processor of the electronic device, the electronic device is able to perform the screen recording method as described above. Optionally, the computer-readable storage medium may be a ROM, random access memory (RAM), CD-ROM, magnetic tape, floppy disk, or optical data storage device, etc.
[0108] To implement the above embodiments, this disclosure also provides a computer program product, including a computer program / instructions, characterized in that the computer program / instructions, when executed by the processor of an electronic device, implement the screen recording method as described above.
[0109] Other embodiments of this disclosure will readily occur to those skilled in the art upon consideration of the specification and practice of the invention disclosed herein. This disclosure is intended to cover any variations, uses, or adaptations of this disclosure that follow the general principles of this disclosure and include common knowledge or customary techniques in the art not disclosed herein. The specification and examples are to be considered exemplary only, and the true scope and spirit of this disclosure are indicated by the following claims.
[0110] It should be understood that this disclosure is not limited to the precise structures described above and shown in the accompanying drawings, and various modifications and changes can be made without departing from its scope. The scope of this disclosure is limited only by the appended claims.
Claims
1. A screen recording method, characterized in that, include: Obtain a list of display devices, which includes at least physical display devices and a first category of virtual display devices. The first category of virtual display devices is used for screen recording. Virtual display devices refer to display devices that do not have a physical entity. Identify whether the value of the flag bit of the first category of virtual display devices in the display device list is a preset value; In response to the value of the flag bit of the first type of virtual display device being the preset value, the video synthesis result of the physical display device is used as the screen recording result; The video synthesis result of the physical display device is used as the video synthesis result of the virtual display device of the first category; The list of display devices also includes a second category of virtual display devices, which are not used for screen recording. The method further includes: Identify whether the value of the flag bit of each of the physical display devices, the first category of virtual display devices, and the second category of virtual display devices included in the display device list is the preset value; In response to a flag bit of any display device having a value other than the preset value, video compositing is performed on the display device to generate the video compositing result of the display device.
2. The method according to claim 1, characterized in that, The video synthesis on any of the display devices includes: Multiple frame images of any display device are acquired according to a preset refresh rate; Video synthesis is performed on the multiple frame images.
3. The method according to claim 1, characterized in that, Before obtaining the list of display devices, the process also includes: Receive screen recording commands from users; A virtual display device of the first category is created according to the screen recording instruction, and the flag bit of the virtual display device of the first category is set to the preset value; Add the virtual display devices of the first category to the list of display devices.
4. The method according to claim 3, characterized in that, The step of creating the first type of virtual display device according to the screen recording instructions includes: The preset screen recording application is invoked according to the screen recording command; The screen recording application receives a "Create Display Device" instruction sent via an application programming interface (API), and creates a virtual display device of the first category based on the "Create Display Device" instruction.
5. The method according to claim 1, characterized in that, After generating the video synthesis result for any of the display devices, the method further includes: Identify the category of the display device; In response to the fact that the display device is a physical display device, the video synthesis result of the display device is displayed on the display device.
6. The method according to claim 5, characterized in that, The method further includes: In response to the fact that the display device is classified as a virtual display device, the video synthesis result of the display device is stored in the storage space corresponding to the display device.
7. A screen recording device, characterized in that, include: The acquisition module is configured to acquire a list of display devices, which includes at least physical display devices and a first category of virtual display devices. The first category of virtual display devices is used for screen recording. Virtual display devices refer to display devices that do not have physical entities. The identification module is configured to identify whether the value of the flag bit of the virtual display device of the first category in the display device list is a preset value; The screen recording module is configured to respond to the value of the flag bit of the first type of virtual display device being the preset value, and to use the video synthesis result of the physical display device as the screen recording result; The screen recording module is also configured to perform: The video synthesis result of the physical display device is used as the video synthesis result of the virtual display device of the first category; The list of display devices also includes a second category of virtual display devices, which are not used for screen recording; The identification module is further configured to identify whether the value of the flag bit of each of the physical display devices, the first category of virtual display devices, and the second category of virtual display devices included in the display device list is the preset value; The screen recording module is further configured to perform video synthesis on the display device in response to a flag bit of any display device having a value other than the preset value, thereby generating the video synthesis result of the display device.
8. The apparatus according to claim 7, characterized in that, The screen recording module is also configured to perform: Multiple frame images of any display device are acquired according to a preset refresh rate; Video synthesis is performed on the multiple frame images.
9. The apparatus according to claim 7, characterized in that, The device further includes: The receiving module is configured to receive screen recording commands from users. The creation module is configured to create a virtual display device of the first category according to the screen recording instruction, and set the value of the flag bit of the virtual display device of the first category to the preset value; The add module is configured to add virtual display devices of the first category to the list of display devices.
10. The apparatus according to claim 9, characterized in that, The creation module is also configured to execute: The preset screen recording application is invoked according to the screen recording command; The screen recording application receives a "Create Display Device" instruction sent via an application programming interface (API), and creates a virtual display device of the first category based on the "Create Display Device" instruction.
11. The apparatus according to claim 7, characterized in that, The screen recording module is also configured to perform: Identify the category of the display device; In response to the fact that the display device is a physical display device, the video synthesis result of the display device is displayed on the display device.
12. The apparatus according to claim 11, characterized in that, The screen recording module is also configured to perform: In response to the fact that the display device is classified as a virtual display device, the video synthesis result of the display device is stored in the storage space corresponding to the display device.
13. A terminal, characterized in that, include: The screen recording device as described in any one of claims 7-12.
14. An electronic device, characterized in that, include: processor; Memory for storing the executable instructions of the processor; The processor is configured to execute the instructions to implement the screen recording method as described in any one of claims 1-6.
15. A computer-readable storage medium, wherein instructions in the computer-readable storage medium, when executed by a processor of an electronic device, enable the electronic device to perform the screen recording method as described in any one of claims 1-6.
Citation Information
Patent Citations
Screen projection method, device, storage medium and computer equipment
CN110515572A
Screen recording method, device and equipment and storage medium
CN112153436A