CN113082703B - Cursor display method, device and medium - Google Patents

Cursor display method, device and medium Download PDF

Info

Publication number
CN113082703B
CN113082703B CN202110442497.2A CN202110442497A CN113082703B CN 113082703 B CN113082703 B CN 113082703B CN 202110442497 A CN202110442497 A CN 202110442497A CN 113082703 B CN113082703 B CN 113082703B
Authority
CN
China
Prior art keywords
cursor
target
resolution
picture
video frame
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Active
Application number
CN202110442497.2A
Other languages
Chinese (zh)
Other versions
CN113082703A (en
Inventor
蔡强
王叶群
徐俊杰
罗光辉
彭寿林
郭月丰
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Hangzhou Wulian Technology Co ltd
Original Assignee
Hangzhou Wulian Technology Co ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Hangzhou Wulian Technology Co ltd filed Critical Hangzhou Wulian Technology Co ltd
Priority to CN202110442497.2A priority Critical patent/CN113082703B/en
Publication of CN113082703A publication Critical patent/CN113082703A/en
Application granted granted Critical
Publication of CN113082703B publication Critical patent/CN113082703B/en
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • AHUMAN NECESSITIES
    • A63SPORTS; GAMES; AMUSEMENTS
    • A63FCARD, BOARD, OR ROULETTE GAMES; INDOOR GAMES USING SMALL MOVING PLAYING BODIES; VIDEO GAMES; GAMES NOT OTHERWISE PROVIDED FOR
    • A63F13/00Video games, i.e. games using an electronically generated display having two or more dimensions
    • A63F13/50Controlling the output signals based on the game progress
    • A63F13/52Controlling the output signals based on the game progress involving aspects of the displayed game scene
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/01Input arrangements or combined input and output arrangements for interaction between user and computer
    • G06F3/048Interaction techniques based on graphical user interfaces [GUI]
    • G06F3/0481Interaction techniques based on graphical user interfaces [GUI] based on specific properties of the displayed interaction object or a metaphor-based environment, e.g. interaction with desktop elements like windows or icons, or assisted by a cursor's changing behaviour or appearance
    • G06F3/04812Interaction techniques based on cursor appearance or behaviour, e.g. being affected by the presence of displayed objects
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/01Input arrangements or combined input and output arrangements for interaction between user and computer
    • G06F3/048Interaction techniques based on graphical user interfaces [GUI]
    • G06F3/0484Interaction techniques based on graphical user interfaces [GUI] for the control of specific functions or operations, e.g. selecting or manipulating an object, an image or a displayed text element, setting a parameter value or selecting a range

Landscapes

  • Engineering & Computer Science (AREA)
  • General Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Multimedia (AREA)
  • Human Computer Interaction (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • User Interface Of Digital Computer (AREA)

Abstract

The application discloses a cursor display method, a device and a medium, wherein the method comprises the steps of acquiring captured data corresponding to a target cursor, calculating adaptive captured data adapted to a corresponding video frame according to the captured data, and rendering and displaying according to the adaptive captured data. After the capture data of the target cursor is obtained, rendering and displaying the calculated adaptive capture data, so that the target cursor in rendering and displaying is matched with the corresponding video frame, the phenomenon that the cursor is misplaced in the client-side cursor display due to mismatching of the cursor and the video is avoided, and the practicality and the use experience of the cloud game are improved.

Description

Cursor display method, device and medium
Technical Field
The present application relates to the field of cloud games, and in particular, to a cursor display method, apparatus, and medium.
Background
With the development of 5G networks, encoding and decoding technologies and software and hardware technologies, innovative services such as cloud games gradually enter the field of view of the public. The cloud game is different from the traditional game, and is a game implementation mode based on cloud computing, cloud control, rendering and network transmission, so that the game runs on a host end of a cloud edge computing node instead of a user local client, the client only needs to receive audio, video and cursor data sent by the host end to perform local presentation of game sound and pictures, and meanwhile, a user sends control data for mouse operation to the host end to control the game.
At present, screen Capture is mainly achieved through an NVIDIA video card capturing method (NVFBG), an AMD video card capturing method (AMD DISPLAY Capture) and a rapid screen Capture and recording technology (DXGI), and cursor Capture is achieved through NVFBG, DXGI and a Capture system cursor. In order to balance performance, flow and user use feeling, different technologies are generally adopted to capture a screen and capture a cursor (for example, when capturing the screen and capturing the cursor through NVFBG, the refresh frequency of the cursor is limited to the refresh frequency of a video frame, if the frequency of the video frame is too low, the user can feel bad experiences such as cursor floating, and at the moment, the phenomenon that the cursor is not matched with the video through NVFBG capture the screen and capture the cursor can be avoided), so that the cursor display of a client is misplaced, and the practicability and the use experience feeling of the cloud game are reduced.
It can be seen that how to improve the practicality and the use experience of the cloud game is a problem to be solved by those skilled in the art.
Disclosure of Invention
The application aims to provide a cursor display method which is used for improving the practicability and the use experience of a cloud game. The application further provides a cursor display device and a medium.
In order to solve the technical problems, the present application provides a cursor display method, including:
acquiring captured data corresponding to a target cursor;
calculating adaptive capture data adapted to the corresponding video frame according to the capture data;
Rendering and displaying according to the adaptive capture data.
Preferably, the capturing data includes: the device comprises a target cursor picture, a target cursor position, a target picture resolution, a video frame resolution corresponding to the target cursor picture and a target desktop resolution.
Preferably, the calculating the adaptive capture data adapted to the corresponding video frame according to the capture data specifically includes:
calculating a resolution ratio according to the video frame resolution and the target desktop resolution;
calculating an adaptive cursor position according to the resolution ratio and the target cursor position;
calculating an adaptive picture resolution according to the resolution ratio and the target picture resolution;
and selecting the target cursor picture, the adaptive cursor position and the adaptive picture resolution as the adaptive capture data.
Preferably, before the capturing data corresponding to the target cursor is obtained, the method further includes:
judging whether a target cursor is embedded into a video frame or not;
If yes, a target synthesized picture is obtained, rendering and displaying are carried out on the target synthesized picture, wherein the target synthesized picture specifically comprises a target cursor and a picture of the video frame;
if not, the step of acquiring the captured data corresponding to the target cursor is entered.
Preferably, the determining whether the target cursor is embedded in the video frame further includes:
judging whether the current mouse mode is a local mouse mode or not;
If yes, acquiring cursor data, and directly converting the cursor data into a local cursor for display, wherein the cursor data does not contain the target cursor position;
If not, the step of judging whether the target cursor is embedded in the video frame is entered.
Preferably, the video frame resolution is obtained, specifically:
The video frame resolution captured through NvFBCToDx, vidGrabFrame, DXGI, or QueryOutput interfaces is acquired.
Preferably, the target cursor position and the target picture resolution are obtained, specifically:
The target cursor position and the target picture resolution captured by the NvFBCToDx VidGrabFrame interface, DXGI or GetCursorInfo interface and GetIconInfoEx interface are acquired.
In order to solve the above technical problem, the present application further provides a cursor display device, including:
the acquisition module is used for acquiring the captured data corresponding to the target cursor;
A first calculation module for calculating adapted capture data adapted to the corresponding video frame from the capture data;
And the first rendering module is used for rendering and displaying according to the adaptive capture data.
In order to solve the above technical problem, the present application further provides a cursor display device, including:
A memory for storing a computer program;
and a processor for implementing the steps of the cursor display method as described above when executing the computer program.
To solve the above technical problem, the present application also provides a computer readable storage medium having stored thereon a computer program which, when executed by a processor, implements the steps of the cursor display method as described above.
According to the cursor display method provided by the application, the capture data corresponding to the target cursor is obtained, the adaptive capture data adapted to the corresponding video frame is calculated according to the capture data, and rendering display is performed according to the adaptive capture data. After the capture data of the target cursor is obtained, rendering and displaying the calculated adaptive capture data, so that the target cursor in rendering and displaying is matched with the corresponding video frame, the phenomenon that the cursor is misplaced in the client-side cursor display due to mismatching of the cursor and the video is avoided, and the practicality and the use experience of the cloud game are improved.
In addition, the cursor display device and the medium provided by the application correspond to the cursor display method, and have the same effects.
Drawings
For a clearer description of embodiments of the present application, the drawings that are required to be used in the embodiments will be briefly described, it being apparent that the drawings in the following description are only some embodiments of the present application, and other drawings may be obtained according to the drawings without inventive effort for those skilled in the art.
FIG. 1 is a flowchart of a cursor display method according to an embodiment of the present application;
FIG. 2 is a flowchart of a method for calculating adaptive capture data according to an embodiment of the present application;
fig. 3 is a schematic structural diagram of a cursor display device according to an embodiment of the present application;
fig. 4 is a schematic structural diagram of another cursor display device according to an embodiment of the present application.
Detailed Description
The following description of the embodiments of the present application will be made clearly and completely with reference to the accompanying drawings, in which it is apparent that the embodiments described are only some embodiments of the present application, but not all embodiments. Based on the embodiments of the present application, all other embodiments obtained by a person of ordinary skill in the art without making any inventive effort are within the scope of the present application.
The application provides a cursor display method, a cursor display device and a cursor display medium, which are used for improving the practicability and the use experience of a cloud game.
In order to better understand the aspects of the present application, the present application will be described in further detail with reference to the accompanying drawings and detailed description.
Fig. 1 is a flowchart of a cursor display method according to an embodiment of the present application. As shown in fig. 1, the method includes:
s10: capturing data corresponding to a target cursor is obtained.
As a preferred embodiment, capturing data may include: the target cursor position, the target picture resolution, the video frame resolution corresponding to the target cursor picture, and the target desktop resolution.
The resolution of the screen capturing at the host end is different from the resolution of the cursor capturing, the resolution of the video frame captured during screen capturing is the resolution of the active signal, capturing is performed based on the desktop resolution during screen capturing, if the resolution of the active signal is the same as the desktop resolution, the position of the adaptive cursor and the resolution of the adaptive picture can be calculated, the target cursor picture can also be directly rendered and displayed according to the position of the target cursor, and if the resolution of the active signal is different from the desktop resolution, the cursor displayed at the client end is required to be matched with the video by calculating the position of the adaptive cursor and the resolution of the adaptive picture.
It should be noted that, in the implementation, the target cursor position, the target picture resolution and/or the video frame resolution may be obtained by different kinds of capturing modes, which will be described in detail below:
(1) The target picture resolution and/or video frame resolution captured through the NvFBCToDx9VidGrabFrame interface is obtained. Wherein, the important codes are as follows:
NvFBCFrameGrabInfo frameGrabInfo={0};
NVFBC_TODX9VID_GRAB_FRAME_PARAMS fbcDX9GrabParams={0};
fbcDX9GrabParams.dwVersion=
NVFBC_TODX9VID_GRAB_FRAME_PARAMS_V1_VER;
fbcDX9GrabParams.dwFlags=dwFlags;
fbcDX9GrabParams.eGMode=NVFBC_TODX9VID_SOURCEMODE_SCALE;
fbcDX9GrabParams.dwTargetWidth=width;
fbcDX9GrabParams.dwTargetHeight=height;
fbcDX9GrabParams.pNvFBCFrameGrabInfo=&frameGrabInfo;
fbcDX9GrabParams.dwWaitTime=wait_time;
NVFBCRESULT fbcRes=
nvfbc_dx9_->NvFBCToDx9VidGrabFrame(&fbcDX9GrabParams);
the width may be a width of the target picture resolution or a width of the video frame resolution, and the height may be a height of the target picture resolution or a height of the video frame resolution.
(2) The target cursor position, target picture resolution, and/or video frame resolution captured by DXGI are obtained. Wherein, the important codes are as follows:
hr=pDXGIOutput1->DuplicateOutput(pDXGIDevice1,&m_pDXGIOutputDuplica tion);
DXGI_OUTDUPL_DESC outDesc={0};
m_pDXGIOutputDuplication->GetDesc(&m_dxgiOutDuplDesc);
width=m_dxgiOutDuplDesc.ModeDesc.Width;
height=m_dxgiOutDuplDesc.ModeDesc.Height;
PtrInfo->Position.x=FrameInfo->PointerPosition.Position.x;
PtrInfo->Position.y=FrameInfo->PointerPosition.Position.y;
w=cursor_info.w=PtrInfo->ShapeInfo.Width;
h=cursor_info.h=PtrInfo->ShapeInfo.Height;
where width is the width of the video frame resolution, height is the height of the video frame resolution, pointPosition.Position.x is the abscissa of the target cursor, pointPosition.Position.y is the ordinate of the target cursor, w is the width of the target picture resolution, and h is the height of the target picture resolution.
(3) The target cursor position and target picture resolution grabbed through GetCursorInfo interface and GetIconInfoEx interface are obtained. Wherein, the important codes are as follows:
CURSORINFO pci{};
pci.cbSize=sizeof(pci);
ICONINFOEX piconinfo{};
GetCursorInfo(&pci);
GetIconInfoEx(pci.hCursor,&piconinfo);
cursor.x=piconinfo.xHotspot;
cursor.y=piconinfo.yHotspot;
GetObject(piconinfo.hbmMask,sizeof(BITMAP),&maskInfo);
w=maskInfo.bmWidth;
h=maskInfo.bmHeight;
wherein, cursor. X is the abscissa of the target cursor, cursor. Y is the ordinate of the target cursor, w is the width of the resolution of the target picture, and h is the high resolution of the target picture.
(4) The resolution of the video frames captured through the QueryOutput interface is obtained. Wherein, the important codes are as follows:
g_AMFFactory.GetFactory()->CreateComponent(context_,AMFDisplayCapture,
&capture_);
res=capture_->QueryOutput(&pData);
amf::AMFSurfacePtr pSurface(pData);
width=pSurface->GetPlaneAt(0)->GetWidth();
height=pSurface->GetPlaneAt(0)->GetHeight();
Where width is the width of the video frame resolution and height is the height of the video frame resolution.
S11: adaptive capture data adapted to the corresponding video frame is calculated from the capture data.
In order to make the solution of the present application better understood by those skilled in the art, the following describes in detail the calculation procedure of the adapted captured data.
Fig. 2 is a flowchart of a method for calculating adaptive capture data according to an embodiment of the present application. As shown in fig. 2, S11 specifically includes:
S20: the resolution ratio is calculated from the video frame resolution and the target desktop resolution.
It can be understood that, because the grabbing of the cursor is performed based on the current desktop resolution at all times, the ratio of the cursor to the video can be calculated through the video frame resolution corresponding to the target cursor picture and the target desktop resolution, the ratio of the cursor to the video is the resolution ratio, wherein the resolution ratio calculation formula is as follows:
Where ratio represents resolution, ratio x is the width ratio of resolution, ratio y is the height ratio of resolution, width 1 is the width of the video frame resolution, width 2 is the width of the target desktop resolution, height 1 is the height of the video frame resolution, and height 2 is the height of the target desktop resolution.
For example, when the video frame resolution and the target desktop resolution are the same, ratio x=1、ratioy =1, when the video frame resolution and the target desktop resolution are different, ratio x=2560/1920,ratioy =1440/1080 if the video frame resolution is (2560,1440) and the target desktop resolution is (1920,1080).
S21: and calculating the adaptive cursor position according to the resolution ratio and the target cursor position.
The formula for calculating the adapted cursor position is as follows:
Where pos x represents the adaptation cursor abscissa, pos y represents the adaptation cursor ordinate, x is the target cursor abscissa, and y represents the target cursor ordinate.
S22: and calculating the resolution of the adaptive picture according to the resolution ratio and the resolution of the target picture.
The formula for calculating the resolution of the adapted picture is as follows:
Wherein width 3 is the width of the resolution of the adaptive picture, height 3 is the height of the resolution of the adaptive picture, w is the width of the resolution of the target picture, and h is the height of the resolution of the target picture.
S23: and selecting the target cursor picture, the adaptive cursor position and the adaptive picture resolution as adaptive capture data.
It can be understood that S20, S21, S22 may be obtained by calculation by a processor of the client, or may be obtained by calculation by a server of the host, and if the calculation is obtained by the server of the host, the target cursor picture, the adaptive cursor position, and the adaptive picture resolution are only required to be obtained for the client, and then the target cursor picture is rendered and displayed according to the adaptive cursor position and the adaptive picture resolution. In a specific implementation, the user needs can be matched through the processor of the client or the server calculation of the host, for example, when the current tasks of the processor of the client are excessive, the user can calculate through the server of the host, and similarly, when the current tasks of the server of the host are excessive, the user can calculate through the processor of the client.
S12: rendering and displaying according to the adaptive capture data.
According to the cursor display method provided by the embodiment of the application, the capture data corresponding to the target cursor is obtained, the adaptive capture data adapted to the corresponding video frame is calculated according to the capture data, and rendering display is performed according to the adaptive capture data. After the capture data of the target cursor is obtained, rendering and displaying the calculated adaptive capture data, so that the target cursor in rendering and displaying is matched with the corresponding video frame, the phenomenon that the cursor is misplaced in the client-side cursor display due to mismatching of the cursor and the video is avoided, and the practicality and the use experience of the cloud game are improved.
On the basis of the above embodiment, before S10, the method further includes:
And judging whether the target cursor is embedded into the video frame, if so, acquiring a target synthesized picture, and rendering and displaying the target synthesized picture, wherein the target synthesized picture is specifically a picture containing the target cursor and the video frame, and if not, entering S10.
In a specific implementation, whether the target cursor is embedded in the video frame can be determined by determining whether the video frame contains the target cursor or whether a cursor flag bit exists in the video frame, and in addition, when the user sets NVFBC to grab a screen and grab a cursor, whether the target cursor is embedded in the video frame is determined by determining whether the user uses NVFBC.
It can be understood that by judging whether the target cursor is embedded into the video frame, the combined result of different screen capturing and cursor capturing methods can be considered, and besides different capturing modes for the screen capturing and the cursor capturing, the same capturing method for the screen capturing and the cursor capturing is considered, so that the cursor display method can be suitable for the combined modes of different screen capturing and cursor capturing, and the practicability of the cursor display method is improved.
On the basis of the above embodiment, before determining whether the target cursor is embedded in the video frame, the method further includes:
Judging whether the current mouse mode is a local mouse mode, if so, acquiring cursor data, directly converting the cursor data into local cursor display, wherein the cursor data does not contain a target cursor position, and if not, entering a step of judging whether the target cursor is embedded into a video frame.
In the local mouse mode, the client can directly acquire the position of the target cursor without the host sending the target cursor position to the client, so that the cursor data does not contain the target cursor position and only contains the system cursor information and the cursor picture information.
It can be understood that, due to the difference of the usage scenarios, the client mouse mode is also divided into a local mouse mode and a remote mouse mode, and the corresponding cursor display modes in the two modes are different, so that the embodiment of the application firstly judges whether the current mouse mode is the local mouse mode, and if not, the step of judging whether the target cursor is embedded into the video frame is entered, thereby further improving the practicability and the universality of the cursor display method provided by the embodiment of the application.
In the above embodiments, the detailed description is given to the cursor display method, and the application also provides a corresponding embodiment of the cursor display device. It should be noted that the present application describes an embodiment of the device portion from two angles, one based on the angle of the functional module and the other based on the angle of the hardware.
Fig. 2 is a schematic structural diagram of a cursor display device according to an embodiment of the present application. As shown in fig. 2, the apparatus includes, based on the angle of the functional module:
And the acquisition module 10 is used for acquiring the captured data corresponding to the target cursor.
A first calculation module 11 for calculating adapted capture data adapted to the corresponding video frame from the capture data.
The first rendering module 12 is configured to render and display according to the adaptive capture data.
Since the embodiments of the apparatus portion and the embodiments of the method portion correspond to each other, the embodiments of the apparatus portion are referred to the description of the embodiments of the method portion, and are not repeated herein.
As a preferred embodiment, the obtaining module 10 is specifically configured to obtain a target cursor picture, a target cursor position, a target picture resolution, a video frame resolution corresponding to the target cursor picture, and a target desktop resolution.
The first calculation module 11 includes:
and the second calculation module is used for calculating the resolution ratio according to the video frame resolution and the target desktop resolution.
And a third calculation module for calculating an adaptive cursor position according to the resolution ratio and the target cursor position.
And the fourth calculation module is used for calculating the adaptive picture resolution according to the resolution ratio and the target picture resolution.
And the selection module is used for selecting the target cursor picture, the adaptive cursor position and the adaptive picture resolution as adaptive capture data.
Further comprises:
and the first judging module is used for judging whether the target cursor is embedded into the video frame or not.
And the second rendering module is used for acquiring a target synthesized picture and rendering and displaying the target synthesized picture, wherein the target synthesized picture specifically comprises a target cursor and a picture of a video frame.
And the first entering module is used for entering the steps of acquiring the target cursor picture, the target cursor position, the target picture resolution, the video frame resolution corresponding to the target cursor picture and the target desktop resolution if not.
Further comprises:
And the second judging module is used for judging whether the current mouse mode is a local mouse mode or not.
And the display module is used for acquiring cursor data and directly converting the cursor data into local cursor display if the cursor data does not contain the target cursor position.
And the second entering module is used for entering the step of judging whether the target cursor is embedded into the video frame or not if not.
The cursor display device provided by the embodiment of the application acquires the captured data corresponding to the target cursor, calculates the adaptive captured data adapted to the corresponding video frame according to the captured data, and renders and displays according to the adaptive captured data. After the capture data of the target cursor is obtained, rendering and displaying the calculated adaptive capture data, so that the target cursor in rendering and displaying is matched with the corresponding video frame, the phenomenon that the cursor is misplaced in the client-side cursor display due to mismatching of the cursor and the video is avoided, and the practicality and the use experience of the cloud game are improved.
Fig. 3 is a schematic structural diagram of another cursor display device according to an embodiment of the present application. As shown in fig. 4, the apparatus includes, based on the angle of the hardware structure:
A memory 20 for storing a computer program;
a processor 21 for implementing the steps of the cursor display method in the above embodiment when executing the computer program.
Processor 21 may include one or more processing cores, such as a 4-core processor, an 8-core processor, etc. The processor 21 may be implemented in at least one hardware form of digital signal Processing (DIGITAL SIGNAL Processing, DSP), field-Programmable gate array (Field-Programmable GATE ARRAY, FPGA), programmable logic array (Programmable Logic Array, PLA). The processor 21 may also include a main processor and a coprocessor, the main processor being a processor for processing data in an awake state, also referred to as a central processor (Central Processing Unit, CPU); a coprocessor is a low-power processor for processing data in a standby state. In some embodiments, the processor 21 may integrate with an image processor (Graphics Processing Unit, GPU) for rendering and rendering of content to be displayed by the display screen. In some embodiments, the processor 21 may also include an artificial intelligence (ARTIFICIAL INTELLIGENCE, AI) processor for processing computing operations related to machine learning.
Memory 20 may include one or more computer-readable storage media, which may be non-transitory. Memory 20 may also include high-speed random access memory, as well as non-volatile memory, such as one or more magnetic disk storage devices, flash memory storage devices. In this embodiment, the memory 20 is at least used for storing a computer program 201, where the computer program 201, when loaded and executed by the processor 21, can implement the relevant steps of the cursor display method disclosed in any of the foregoing embodiments. In addition, the resources stored in the memory 20 may further include an operating system 202, data 203, and the like, where the storage manner may be transient storage or permanent storage. Operating system 202 may include Windows, unix, linux, among other things. The data 203 may include, but is not limited to, data involved in a cursor display method, and the like.
In some embodiments, the cursor display device may further include a display screen 22, an input/output interface 23, a communication interface 24, a power supply 25, and a communication bus 26.
Those skilled in the art will appreciate that the structure shown in fig. 3 is not limiting of the cursor display device and may include more or fewer components than shown.
The cursor display device provided by the embodiment of the application comprises a memory and a processor, wherein the processor can realize the following method when executing a program stored in the memory: acquiring the capture data corresponding to the target cursor, calculating the adaptive capture data adaptive to the corresponding video frame according to the capture data, and rendering and displaying according to the adaptive capture data. After the capture data of the target cursor is obtained, rendering and displaying the calculated adaptive capture data, so that the target cursor in rendering and displaying is matched with the corresponding video frame, the phenomenon that the cursor is misplaced in the client-side cursor display due to mismatching of the cursor and the video is avoided, and the practicality and the use experience of the cloud game are improved.
Finally, the application also provides a corresponding embodiment of the computer readable storage medium. The computer-readable storage medium has stored thereon a computer program which, when executed by a processor, performs the steps as described in the method embodiments above.
It will be appreciated that the methods of the above embodiments, if implemented in the form of software functional units and sold or used as stand-alone products, may be stored on a computer readable storage medium. Based on such understanding, the technical solution of the embodiments of the present application may be embodied essentially or partly in the form of a software product, or all or part of the technical solution, which is stored in a storage medium, for performing all or part of the steps of the method described in the embodiments of the present application. And the aforementioned storage medium includes: a U-disk, a removable hard disk, a Read-Only Memory (ROM), a random access Memory (Random Access Memory, RAM), a magnetic disk, or an optical disk, or other various media capable of storing program codes.
The cursor display method, the cursor display device and the cursor display medium provided by the application are described in detail. In the description, each embodiment is described in a progressive manner, and each embodiment is mainly described by the differences from other embodiments, so that the same similar parts among the embodiments are mutually referred. For the device disclosed in the embodiment, since it corresponds to the method disclosed in the embodiment, the description is relatively simple, and the relevant points refer to the description of the method section. It should be noted that it will be apparent to those skilled in the art that various modifications and adaptations of the application can be made without departing from the principles of the application and these modifications and adaptations are intended to be within the scope of the application as defined in the following claims.
It should also be noted that in this specification, relational terms such as first and second, and the like are used solely to distinguish one entity or action from another entity or action without necessarily requiring or implying any actual such relationship or order between such entities or actions. Moreover, the terms "comprises," "comprising," or any other variation thereof, are intended to cover a non-exclusive inclusion, such that a process, method, article, or apparatus that comprises a list of elements does not include only those elements but may include other elements not expressly listed or inherent to such process, method, article, or apparatus. Without further limitation, an element defined by the phrase "comprising one … …" does not exclude the presence of other like elements in a process, method, article, or apparatus that comprises the element.

Claims (8)

1. A cursor display method, comprising:
acquiring captured data corresponding to a target cursor;
calculating, by a processor corresponding to the client or host, adapted capture data adapted to the corresponding video frame from the capture data;
rendering and displaying according to the adaptive capture data;
Wherein the captured data comprises: the display device comprises a target cursor picture, a target cursor position, a target picture resolution, a video frame resolution corresponding to the target cursor picture and a target desktop resolution;
before acquiring the captured data corresponding to the target cursor, the method further comprises:
judging whether the target cursor is embedded into the video frame or not by judging whether the video frame contains the target cursor or whether a cursor mark bit exists or not;
If yes, a target synthesized picture is obtained, rendering and displaying are carried out on the target synthesized picture, wherein the target synthesized picture specifically comprises a target cursor and a picture of the video frame;
if not, the step of acquiring the captured data corresponding to the target cursor is entered.
2. The cursor display method according to claim 1, wherein the calculating the adapted capture data adapted to the corresponding video frame according to the capture data specifically comprises:
calculating a resolution ratio according to the video frame resolution and the target desktop resolution;
calculating an adaptive cursor position according to the resolution ratio and the target cursor position;
calculating an adaptive picture resolution according to the resolution ratio and the target picture resolution;
and selecting the target cursor picture, the adaptive cursor position and the adaptive picture resolution as the adaptive capture data.
3. The cursor display method according to claim 1, wherein the determining whether the target cursor is embedded in the video frame is further comprised of:
judging whether the current mouse mode is a local mouse mode or not;
If yes, acquiring cursor data, and directly converting the cursor data into a local cursor for display, wherein the cursor data does not contain the target cursor position;
If not, the step of judging whether the target cursor is embedded in the video frame is entered.
4. The cursor display method according to claim 1 or 2, wherein the video frame resolution is obtained, in particular:
The video frame resolution captured through NvFBCToDx, vidGrabFrame, DXGI, or QueryOutput interfaces is acquired.
5. The cursor display method according to claim 1 or 2, wherein the obtaining the target cursor position and the target picture resolution is specifically:
The target cursor position and the target picture resolution captured by the NvFBCToDx VidGrabFrame interface, DXGI or GetCursorInfo interface and GetIconInfoEx interface are acquired.
6. A cursor display device, comprising:
the acquisition module is used for acquiring the captured data corresponding to the target cursor;
The first calculation module is used for calculating adaptive capture data which is adaptive to the corresponding video frames according to the capture data through a processor corresponding to the client or the host;
The first rendering module is used for rendering and displaying according to the adaptive capture data;
The acquisition module is used for acquiring a target cursor picture, a target cursor position, a target picture resolution, a video frame resolution corresponding to the target cursor picture and a target desktop resolution;
the cursor display device further includes:
the first judging module is used for judging whether the target cursor is embedded into the video frame or not by judging whether the target cursor is contained in the video frame or whether a cursor mark bit exists or not;
the second rendering module is used for acquiring a target synthesized picture and rendering and displaying the target synthesized picture, wherein the target synthesized picture specifically comprises a target cursor and a picture of the video frame;
and the first entering module is used for entering the step of acquiring the captured data corresponding to the target cursor if not.
7. A cursor display device, comprising:
A memory for storing a computer program;
A processor for implementing the steps of the cursor display method according to any one of claims 1 to 5 when executing the computer program.
8. A computer readable storage medium, characterized in that the computer readable storage medium has stored thereon a computer program which, when executed by a processor, implements the steps of the cursor display method according to any of claims 1 to 5.
CN202110442497.2A 2021-04-23 2021-04-23 Cursor display method, device and medium Active CN113082703B (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202110442497.2A CN113082703B (en) 2021-04-23 2021-04-23 Cursor display method, device and medium

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202110442497.2A CN113082703B (en) 2021-04-23 2021-04-23 Cursor display method, device and medium

Publications (2)

Publication Number Publication Date
CN113082703A CN113082703A (en) 2021-07-09
CN113082703B true CN113082703B (en) 2024-05-31

Family

ID=76679775

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202110442497.2A Active CN113082703B (en) 2021-04-23 2021-04-23 Cursor display method, device and medium

Country Status (1)

Country Link
CN (1) CN113082703B (en)

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN114125013A (en) * 2021-11-23 2022-03-01 网易(杭州)网络有限公司 Mouse pointer rendering method and device, electronic equipment and storage medium
CN115185413B (en) * 2022-07-25 2023-08-15 深圳市瑞云科技有限公司 Method for realizing remote desktop mouse switching

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101064887A (en) * 2007-04-24 2007-10-31 蔡强 Split type portable electronic equipment and method for optimizing communication using progressive transmission
CN111544886A (en) * 2020-04-30 2020-08-18 腾讯科技(深圳)有限公司 Picture display method and related device
CN111603764A (en) * 2020-05-28 2020-09-01 腾讯科技(深圳)有限公司 Cloud game processing method and equipment

Family Cites Families (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US11395963B2 (en) * 2019-10-01 2022-07-26 Sony Interactive Entertainment Inc. High speed scan-out of server display buffer for cloud gaming applications

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101064887A (en) * 2007-04-24 2007-10-31 蔡强 Split type portable electronic equipment and method for optimizing communication using progressive transmission
CN111544886A (en) * 2020-04-30 2020-08-18 腾讯科技(深圳)有限公司 Picture display method and related device
CN111603764A (en) * 2020-05-28 2020-09-01 腾讯科技(深圳)有限公司 Cloud game processing method and equipment

Also Published As

Publication number Publication date
CN113082703A (en) 2021-07-09

Similar Documents

Publication Publication Date Title
US20220261960A1 (en) Super-resolution reconstruction method and related apparatus
CN107113396B (en) Method implemented at user terminal during video call, user terminal and computer-readable storage medium
CN113082703B (en) Cursor display method, device and medium
CN107111427B (en) Modifying video call data
WO2020056903A1 (en) Information generating method and device
CN112288665B (en) Image fusion method and device, storage medium and electronic equipment
US11995781B2 (en) Messaging system with neural hair rendering
US8885208B2 (en) Progressive refinement of an edited image using secondary high resolution image processing
CN114025219B (en) Rendering method, device, medium and equipment for augmented reality special effects
WO2010015807A1 (en) Apparatus and method of viewing electronic documents
KR101743764B1 (en) Method for providing ultra light-weight data animation type based on sensitivity avatar emoticon
JP2019526875A (en) Projected image construction method and apparatus
CN108182097B (en) Volume bar implementation method and device
JP2023547616A (en) Methods, devices and programs for quality assessment
CN116112761B (en) Method and device for generating virtual image video, electronic equipment and storage medium
CN116828215A (en) Video rendering method and system for reducing local computing power load
CN113810755B (en) Panoramic video preview method and device, electronic equipment and storage medium
CN110719415A (en) Video image processing method and device, electronic equipment and computer readable medium
US20220318566A1 (en) Neural networks for accompaniment extraction from songs
CN110598013B (en) Digital music painting interactive fusion method
WO2015178085A1 (en) Image processing device, image processing method, and program
JP2001051579A (en) Method and device for displaying video and recording medium recording video display program
US20230069614A1 (en) High-definition real-time view synthesis
US11954810B2 (en) Augmented reality object rendering based on camera quality
CN115393685B (en) Text travel data processing method and system based on expandable model

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination
GR01 Patent grant
GR01 Patent grant