CN114268626B - Window processing system, method and device - Google Patents

Window processing system, method and device Download PDF

Info

Publication number
CN114268626B
CN114268626B CN202010975950.1A CN202010975950A CN114268626B CN 114268626 B CN114268626 B CN 114268626B CN 202010975950 A CN202010975950 A CN 202010975950A CN 114268626 B CN114268626 B CN 114268626B
Authority
CN
China
Prior art keywords
window
cloud
client
application
window processing
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
CN202010975950.1A
Other languages
Chinese (zh)
Other versions
CN114268626A (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.)
Alibaba Group Holding Ltd
Original Assignee
Alibaba Group Holding 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 Alibaba Group Holding Ltd filed Critical Alibaba Group Holding Ltd
Priority to CN202010975950.1A priority Critical patent/CN114268626B/en
Publication of CN114268626A publication Critical patent/CN114268626A/en
Application granted granted Critical
Publication of CN114268626B publication Critical patent/CN114268626B/en
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Landscapes

  • User Interface Of Digital Computer (AREA)
  • Information Transfer Between Computers (AREA)

Abstract

The embodiment of the specification provides a window processing system, a window processing method and a window processing device, wherein the window processing system comprises a client and a cloud server, the cloud server is in communication connection with the client, the client is configured to send a window processing request of a cloud application to the cloud server based on window processing instructions submitted by a user for the cloud application of a cloud desktop, the cloud server is configured to intercept a currently running window picture of the cloud application based on the received window processing request and return the window picture to the client as a virtual window, and the client is configured to display the received virtual window according to a pre-created window processing style layout in response to the window processing instructions.

Description

Window processing system, method and device
Technical Field
The embodiment of the specification relates to the technical field of computers, in particular to a window processing system. One or more embodiments of the present specification relate to a window processing method, a window processing apparatus, a computing device, and a computer-readable storage medium.
Background
The window processing technology refers to a technology of simultaneously displaying a plurality of active windows in a terminal screen, in which a user can use different applications, respectively. During window processing, a user can not only see the application programs displayed in the plurality of active windows in the terminal screen at the same time, but also interact with the plurality of application programs respectively through switching among the plurality of active windows.
In a cloud desktop scene, a client needs to establish multi-path video stream connection with a cloud server to realize multi-path video stream transmission from the cloud server to the client so as to realize multi-window display of the client, but establishing multi-path video stream link needs to occupy a large amount of resources of the client and easily affects the service processing efficiency of the client, so that an effective method is needed to solve the problems.
Disclosure of Invention
In view of this, embodiments of the present disclosure provide a window processing system. One or more embodiments of the present specification relate to a window processing method, a window processing apparatus, a computing device, and a computer-readable storage medium that solve the technical drawbacks of the related art.
According to a first aspect of embodiments of the present specification, there is provided a window processing system, comprising:
the cloud server is in communication connection with the client;
the client is configured to send a window processing request of a cloud application to the cloud server based on a window processing instruction submitted by a user for the cloud application of the cloud desktop;
The cloud server is configured to intercept a currently running window picture of the cloud application based on the received window processing request, and return the window picture to the client as a virtual window;
The client is configured to respond to the window processing instruction and lay out and display the received virtual window according to a pre-created window processing style.
Optionally, the cloud server is further configured to set identification information for the virtual window, so as to establish a mapping relationship between the identification information and the virtual window, and return the mapping relationship to the client.
Optionally, the client is further configured to send a window running picture rendering request to the cloud server according to a window running picture rendering instruction submitted by the user for a target virtual window, where the window running picture rendering request carries identification information of the target virtual window;
The cloud server is further configured to receive the window running picture rendering request, determine a target cloud application corresponding to the target virtual window according to the identification information, render picture content to be rendered corresponding to the target cloud application, and transmit a window running picture which is rendered and output to the client.
Optionally, the client is further configured to send a window processing request of the cloud application to the cloud server based on a window processing instruction submitted by a user for the cloud application of the cloud desktop, where the window processing request carries the number of foreground application windows and/or background application windows and identification information of each window;
The cloud server is further configured to receive and intercept a running window picture of the foreground application window and/or the background application window based on the window processing request, and return the running window picture to the client as a virtual window.
Optionally, the client is further configured to receive the virtual window in response to the window processing instruction, adjust the position and/or the size of the virtual window according to a pre-created window processing style layout, and display according to an adjustment result.
Optionally, the client is further configured to send a window activation request to the cloud server according to an activation instruction submitted by the user for a target virtual window, where the window activation request carries identification information of the target virtual window.
Optionally, the cloud server is further configured to receive the activation request, determine a target cloud application corresponding to the target virtual window according to the identification information, acquire a video stream to be output corresponding to the target cloud application, and transmit the video stream to be output to the client;
The client is further configured to receive the video stream to be output, and perform foreground display on the video stream to be output as a real window display picture of the target cloud application.
Optionally, the cloud server is further configured to encode the window running picture and transmit the generated encoded data to the client.
Optionally, the cloud server is further configured to encode the video stream to be output, and transmit the generated encoded data to the client.
Optionally, the client is further configured to receive and decode the encoded data, obtain the window running picture, and perform foreground exhibition.
Optionally, the video stream to be output includes picture data and/or audio data corresponding to a current running window of the target cloud application;
The cloud server is further configured to encode the picture data according to a picture coding function and/or to encode the audio data with an audio coding function.
Optionally, the client is further configured to send a window switching request to the cloud server based on a window switching instruction submitted by a user;
the cloud server is further configured to receive the window switching request, intercept a window running picture of a foreground application window, acquire a video stream to be output corresponding to a target virtual window to be switched in a background application window, and transmit the video stream to be output to the client;
The client is further configured to receive the video stream to be output, and perform foreground display on the video stream to be output as a real window display picture of the target cloud application.
Optionally, the client is further configured to send a multi-window processing request of at least two cloud applications of a cloud desktop to the cloud server based on multi-window processing instructions submitted by a user for the at least two cloud applications;
The cloud server is configured to intercept at least two window frames of the at least two cloud applications currently running based on the received multi-window processing request, and return the at least two window frames to the client as virtual windows;
The client is configured to respond to the window processing instruction and display the received virtual window according to a pre-created multi-window processing style layout.
Optionally, the client is further configured to send a window processing request of a single cloud application of a cloud desktop to the cloud server based on a window processing instruction submitted by a user for the single cloud application;
the cloud server is configured to intercept a currently running window picture of the single cloud application based on the received window processing request, and return the window picture to the client as a virtual window;
the client is configured to respond to the window processing instruction and display the received virtual window according to a preset single window processing style layout.
According to a second aspect of embodiments of the present disclosure, there is provided a window processing method, applied to a cloud server, including:
receiving a window processing request submitted by a client for cloud application of a cloud desktop;
Intercepting a currently running window picture of the cloud application based on the window processing request;
and respectively returning the window frames to the client as virtual windows.
Optionally, the method further comprises:
Setting identification information for the virtual window to establish a mapping relation between the identification information and the virtual window, and returning the mapping relation to the client.
Optionally, the intercepting, based on the window processing request, a currently running window screen of the cloud application includes:
And intercepting window frames of a foreground application window and/or a background application window based on the window processing request, and returning the window frames to the client as virtual windows respectively.
Optionally, the method further comprises:
receiving a window activation request submitted by a client for a target virtual window;
determining a target cloud application corresponding to the target virtual window according to the identification information of the target virtual window carried in the window activation request;
and acquiring a video stream to be output corresponding to the target cloud application, and transmitting the video stream to be output to the client.
Optionally, the streaming the video to be output to the client includes:
And encoding the video stream to be output, and transmitting the generated encoded data to the client.
Optionally, the video stream to be output includes picture data and/or audio data corresponding to a current running window of the target cloud application;
Correspondingly, the transmitting the video stream to be output to the client includes:
the picture data is encoded according to a picture coding function and/or the audio data is encoded with an audio coding function.
Optionally, the receiving a window processing request submitted by the client for the cloud application of the cloud desktop includes:
receiving a multi-window processing request submitted by a client for at least two cloud applications of a cloud desktop;
Correspondingly, the intercepting the currently running window picture of the cloud application based on the window processing request comprises the following steps:
and intercepting at least two window pictures of the at least two cloud applications currently running based on the multi-window processing request.
Optionally, the receiving a window processing request submitted by the client for the cloud application of the cloud desktop includes:
receiving a window processing request submitted by a client for a single cloud application of a cloud desktop;
Correspondingly, the intercepting the currently running window picture of the cloud application based on the window processing request comprises the following steps:
And intercepting a currently running window picture of the single cloud application based on the window processing request.
According to a third aspect of embodiments of the present specification, there is provided a window processing apparatus, comprising:
the receiving module is configured to receive a window processing request submitted by a client for cloud application of a cloud desktop;
an intercepting module configured to intercept a currently running window picture of the cloud application based on the window processing request;
and the return module is configured to return the window frames to the client side as virtual windows respectively.
According to a fourth aspect of embodiments of the present disclosure, there is provided another window processing method, applied to a client, including:
based on a window processing instruction submitted by a user aiming at a cloud application of a cloud desktop, sending a window processing request of the cloud application to a cloud server;
Receiving a currently running window picture of the cloud application intercepted by the cloud server based on the window processing request;
And responding to the window processing instruction, respectively taking the window frames as virtual windows, and displaying the virtual windows according to a pre-created window processing style layout.
Optionally, the method further comprises:
And sending a window activation request to the cloud server according to an activation instruction submitted by the user aiming at the target virtual window, wherein the window activation request carries identification information of the target virtual window.
Optionally, the method further comprises:
Receiving a video stream to be output returned by the cloud server, wherein the video stream to be output corresponds to a target cloud application, the target cloud application corresponds to the target virtual window, and the target virtual window is determined according to the identification information;
And taking the video stream to be output as a real window display picture of the target cloud application for foreground display.
Optionally, the method further comprises:
receiving coded data returned by the cloud server, wherein the coded data is generated by coding the video stream to be output by the cloud server;
and decoding the encoded data to obtain the window operation picture and performing foreground display.
Optionally, the sending, based on a window processing instruction submitted by a user for a cloud application of a cloud desktop, a window processing request of the cloud application to a cloud server includes:
based on a multi-window processing instruction submitted by a user aiming at least two cloud applications of a cloud desktop, sending multi-window processing requests of the at least two cloud applications to a cloud server;
Correspondingly, the receiving the currently running window picture of the cloud application intercepted by the cloud server based on the window processing request comprises the following steps:
And receiving at least two currently running window pictures of the at least two cloud applications intercepted by the cloud server based on the multi-window processing request.
Optionally, the sending, based on a window processing instruction submitted by a user for a cloud application of a cloud desktop, a window processing request of the cloud application to a cloud server includes:
Based on a window processing instruction submitted by a user aiming at a single cloud application of a cloud desktop, sending a window processing request of the single cloud application to a cloud server;
Correspondingly, the receiving the currently running window picture of the cloud application intercepted by the cloud server based on the window processing request comprises the following steps:
And receiving a currently running window picture of the single cloud application intercepted by the cloud server based on the window processing request.
According to a fifth aspect of embodiments of the present specification, there is provided another window processing apparatus, comprising:
the cloud desktop cloud application processing module is configured to send a window processing request of a cloud application to a cloud server based on a window processing instruction submitted by a user aiming at the cloud application of the cloud desktop;
the receiving module is configured to receive a currently running window picture of the cloud application intercepted by the cloud server based on the window processing request;
And the display module is configured to respond to the window processing instruction, respectively take the window frames as virtual windows, and display the virtual windows according to a pre-created window processing style layout.
According to a sixth aspect of embodiments of the present specification, there is provided a computing device comprising:
A memory and a processor;
The memory is for storing computer executable instructions and the processor is for executing the computer executable instructions to implement the steps of the window processing method.
According to a seventh aspect of embodiments of the present specification, there is provided a computer readable storage medium storing computer executable instructions which, when executed by a processor, implement the steps of the window processing method.
In one embodiment of the specification, after a cloud server receives a window processing request submitted by a client, a running window picture of a cloud application running in a cloud desktop is intercepted, the running window picture is returned to the client as a virtual window, and the client performs window processing in a mode of displaying the running window picture, namely, the client performs multi-window static display by taking a window screenshot of the cloud application returned by the cloud server as the virtual window, so that a multi-path video stream is prevented from being established between the client and the cloud server, the resource occupation of the client is reduced, and window processing can be realized through a single-path video stream, so that the requirement of user window processing is met.
Drawings
FIG. 1 is a schematic diagram of a window treatment system provided in one embodiment of the present disclosure;
FIG. 2 is a process flow diagram of a window processing method provided in one embodiment of the present disclosure;
FIG. 3 is a schematic diagram of a window treatment apparatus according to one embodiment of the present disclosure;
FIG. 4 is a process flow diagram of another window processing method provided by one embodiment of the present disclosure;
FIG. 5 is a schematic diagram of another window treatment apparatus according to one embodiment of the present disclosure;
FIG. 6 is an interactive schematic diagram of a window processing method according to an embodiment of the present disclosure;
FIG. 7 is a block diagram of a computing device provided in one embodiment of the present description.
Detailed Description
In the following description, numerous specific details are set forth in order to provide a thorough understanding of the present description. This description may be embodied in many other forms than described herein and similarly generalized by those skilled in the art to whom this disclosure pertains without departing from the spirit of the disclosure and, therefore, this disclosure is not limited by the specific implementations disclosed below.
The terminology used in the one or more embodiments of the specification is for the purpose of describing particular embodiments only and is not intended to be limiting of the one or more embodiments of the specification. As used in this specification, one or more embodiments and the appended claims, the singular forms "a," "an," and "the" are intended to include the plural forms as well, unless the context clearly indicates otherwise. It should also be understood that the term "and/or" as used in one or more embodiments of the present specification refers to and encompasses any or all possible combinations of one or more of the associated listed items.
It should be understood that, although the terms first, second, etc. may be used in one or more embodiments of this specification to describe various information, these information should not be limited by these terms. These terms are only used to distinguish one type of information from another. For example, a first may also be referred to as a second, and similarly, a second may also be referred to as a first, without departing from the scope of one or more embodiments of the present description. The term "if" as used herein may be interpreted as "at..once" or "when..once" or "in response to a determination", depending on the context.
First, terms related to one or more embodiments of the present specification will be explained.
Cloud desktop, which is a desktop system actually operated at a service (cloud) end, and a terminal only displays pictures and sounds.
The zero terminal is a terminal product without CPU, memory and hard disk operating system, is a hardware product for displaying cloud desktop, and is a load bearing of a service (cloud) end.
Multiple windows-application windows are tiled with certain rules.
Cloud application-an application running on the service (cloud) side.
The cloud server (Elastic Compute Service, ECS), also called as cloud host, is a host product in a cloud computing service system, and is a simple, efficient, safe and reliable computing service with elastically scalable processing capacity.
In the present specification, a window processing system is provided, and the present specification relates to a window processing method, a window processing apparatus, a computing device, and a computer-readable storage medium, which are described in detail in the following embodiments one by one.
FIG. 1 shows a schematic diagram of a window processing system provided according to one embodiment of the present disclosure, including a client 102 and a cloud server 104, the cloud server 104 being communicatively connected to the client 102;
The client 102 is configured to send a window processing request of a cloud application to the cloud server 104 based on a window processing instruction submitted by a user for the cloud application of the cloud desktop;
The cloud server 104 is configured to intercept a currently running window screen of the cloud application based on the received window processing request, and return the window screen to the client 102 as a virtual window;
The client 102 is configured to respond to the window processing instruction and lay out and display the received virtual window according to a pre-created window processing style.
In the embodiment of the present disclosure, the number of clients 102 is not limited, and is generally plural. The client 102 may be any device having communication capability and screen display capability, for example, a smart phone, a tablet, a desktop, a wearable device, a game console, or the like. Compared with a physical server, the cloud server 104 is actually a service platform deployed in the cloud, and can provide comprehensive service capability for various internet users.
The cloud application is an application program running on the cloud based on the cloud computing technology, the cloud application runs on the cloud server 104, the client 102 does not need to download, install or consider the configuration of the client 102, the running of the application program can be realized only through a network, in practical application, the client 102 can also be a zero terminal with a display, the zero terminal is used as a carrier of a load-bearing service (cloud) end, and the current running window of the cloud application program can be displayed through the display.
The cloud application can be an independent application program, a user can communicate with the cloud server 104 by using the client 102 to operate the cloud application, the cloud application can also be subordinate to an application platform, the user can log in the cloud application platform by inputting a user name and a password through the client 102, and one cloud application can be selected from a plurality of applications of the cloud application platform to operate, wherein the cloud application comprises, but is not limited to, various application products such as games, news, social categories, life categories and the like which are operated at the cloud.
In the case that the user sends the operation request of the target cloud application to the cloud server 104 through the client 102, the cloud server 104 may transmit the window parameter information of the operation window of the target cloud application to the client for display in the form of a video stream.
Because the number of cloud applications that can be run simultaneously in the cloud server 104 is not limited, in the embodiment of the present disclosure, in the case where only a single cloud application is running, the client 102 is further configured to send, to the cloud server, a window processing request of the single cloud application based on a window processing instruction submitted by a user for the single cloud application of the cloud desktop;
The cloud server 104 is configured to intercept a currently running window screen of the single cloud application based on the received window processing request, and return the window screen to the client 102 as a virtual window;
the client 102 is configured to respond to the window processing instruction and display the received virtual window according to a preset single window processing style layout.
Or in the case that there are multiple cloud applications running in the cloud server 104 at the same time, in this embodiment of the present disclosure, the client 102 is further configured to send, to the cloud server 104, a multi-window processing request of at least two cloud applications based on a multi-window processing instruction submitted by a user for the at least two cloud applications of the cloud desktop;
The cloud server 104 is configured to intercept at least two currently running window frames of the at least two cloud applications based on the received multi-window processing request, and return the at least two window frames to the client 102 as virtual windows;
the client 102 is configured to present the received virtual window in a pre-created multi-window processing style layout in response to the window processing instruction.
In the case where the cloud desktop stores running cloud applications (the number of running cloud applications may be one or more), the user may send a window processing instruction to the client 102, so that the client 102 sends a window processing request to the cloud server 104, and after receiving the window processing request, the cloud server 104 intercepts a currently running window screen of the running single cloud application if the window processing request is a window processing request for the single cloud application, intercepts a plurality of currently running window screens of the running cloud applications if the window processing request is a window processing request for the plurality of cloud applications, that is, captures a screenshot of a window of the running cloud application or cloud applications, and returns the screenshot obtained window screen as a virtual window to the client 102.
The window processing instruction may be a window display instruction, the window processing request is a window display request, and the window processing style layout is a window display style layout.
In addition, if the client 102 sends a window display request for a single cloud application, the cloud server 104 returns a single screenshot to the client 102 after screenshot of a currently running window screen of the running single cloud application, if the client 102 sends a multi-window display request for a plurality of cloud applications, the cloud server 104 captures the currently running window screen of the running cloud applications to obtain a plurality of window screens of the cloud applications, the cloud server 104 may return all of the plurality of window screens obtained by the screenshot to the client 102 as virtual windows, or return part of the window screens in the plurality of window screens obtained by the screenshot to the client 102 as virtual windows, and the number of the virtual windows returned specifically may be determined according to the actual needs of the user, without limitation.
After receiving the screenshot, the client 102 displays the screenshot according to a window processing style layout, so as to respond to a window processing instruction of a user.
In practical application, after the cloud server 104 intercepts a plurality of currently running window frames of a plurality of cloud applications, the window frames can be transmitted to the client 102 through a single-channel video stream, or can be transmitted through multiple channels of video streams.
Further, the client 102 may create different window display style layouts for different numbers of virtual windows in advance, so that, when receiving different numbers of virtual windows, the client 102 may display the virtual windows through window display style layouts corresponding to the numbers of virtual windows, or the client 102 may create a window display style layout in advance, where the number of virtual windows that can be displayed in the window display style layout is as large as possible, and when receiving different numbers of virtual windows, the client 102 may display the virtual windows according to the window display style layout.
In the process of creating the window display style layout, different window display sizes may be set for different windows, as shown in fig. 1, in the set window display style layout, the window display sizes of the windows 1 to 4 are larger relative to the window 5 and the window 6, in practical applications, the virtual window display position of the target cloud application may be set at a fixed position in the window display style layout, and the fixed window display size is set, for example, for the cloud application of the payment class, the virtual window may be set at the position of the window 1 in fig. 1, and the window display size is relatively larger relative to other windows.
Taking the multi-window display style layout shown in fig. 1 as an example, if the window display style layout is a window display style layout corresponding to the case that the number of virtual windows is 6, and if the client 102 receives that the cloud server 104 returns 6 virtual windows, the received virtual windows are displayed according to the window display style layout; if the window display style layout is a general display style layout that is independent of the number of received virtual windows, the window display style layout may be displayed when the client 102 receives 1, 2, and/or 6 virtual windows, and if 1 virtual window is received, the window display style layout may be displayed in any one of the windows 1 to 6 in fig. 1, and if 2, 3, and/or 6 virtual windows are received, the window display style layout may be displayed in any 2, 3, and/or 6 windows in the windows 1 to 6 in fig. 1.
The cloud server returns the intercepted running window picture of the running cloud application in the cloud desktop to the client as a virtual window, and the client performs window processing in a mode of displaying the virtual window (screenshot), so that a plurality of paths of video streams are prevented from being established between the client and the cloud server, the resource occupation of the client is reduced, and the window processing can be realized through a single path of video stream, so that the requirement of user window processing is met.
Further, the client 102 is further configured to send a window processing request of the cloud application to the cloud server 104 based on a window processing instruction submitted by a user for the cloud application of the cloud desktop, where the window processing request carries the number of foreground application windows and/or background application windows and identification information of each window;
The cloud server 104 is further configured to receive and intercept a running window screen of the foreground application window and/or the background application window based on the window processing request, and return the running window screen to the client 102 as a virtual window.
Specifically, in the case where there are multiple running cloud applications in the cloud server 104, if the display mode of the client 102 is single window display, the client 102 can only display the running window of any one cloud application in the running process through the single window, that is, only one foreground application window exists, and the running windows of other running cloud applications can only be used as background application windows, so when a user sends a window processing instruction to the client 102, the window processing instruction carries the number of the foreground application windows and the background application windows and the identification information of each window.
After receiving the window processing instruction sent by the user, the client 102 sends a window processing request to the cloud server 104 according to the number of foreground application windows and background application windows carried in the instruction and the identification information of each window.
Similarly, after receiving the window processing request, the cloud server 104 intercepts running window frames of a plurality of cloud applications in running, where the running windows of the plurality of cloud applications include a foreground application window and a background application window, that is, captures the foreground application window and the background application window, and returns the capturing result as a virtual window to the client 102.
After receiving the virtual window, the client 102 displays the virtual window according to the window processing style layout, so as to respond to the window processing instruction of the user.
In implementation, after receiving the virtual window returned by the cloud server 104, the client 102 may adjust the position and/or size of the virtual window according to the pre-created window processing style layout, and display the virtual window according to the adjustment result.
The cloud server returns window pictures of a foreground application window and a background application window which are running in the cloud desktop to the client as virtual windows, and the client performs window processing in a mode of displaying the virtual windows (screenshot), so that a plurality of paths of video streams are prevented from being established between the client and the cloud server, the occupation of resources of the client is reduced, and window processing can be realized through a single path of video stream, so that the requirement of user window processing is met.
In implementation, the cloud server 104 is further configured to set identification information for the virtual window, so as to establish a mapping relationship between the identification information and the virtual window, and return the mapping relationship to the client 102.
Specifically, after the cloud server 104 intercepts a currently running window frame of the cloud application, before returning the window frame as a virtual window to the client 102, identification information needs to be set for the virtual window to establish a mapping relationship between the identification information and the virtual window, and the mapping relationship and the virtual window are returned to the client, where different identification information is used to point to a unique virtual window respectively.
In addition, the client 102 receives the mapping relationship, and after the virtual window is subjected to window processing, the user can submit a virtual window activation instruction for any one target virtual window in the window processing picture;
Correspondingly, the client 102 is further configured to send a window activation request to the cloud server 104 according to an activation instruction submitted by the user for a target virtual window, where the window activation request carries identification information of the target virtual window;
The cloud server 104 is further configured to receive the activation request, determine a target cloud application corresponding to the target virtual window according to the identification information, obtain a video stream to be output corresponding to the target cloud application, and transmit the video stream to be output to the client 102;
The client 102 is further configured to receive the video stream to be output, and perform foreground display on the video stream to be output as a real window display screen of the target cloud application.
Specifically, after receiving a window activation instruction submitted by a user for a target virtual window, the client 102 may determine, according to a mapping relationship between identification information returned by the cloud server 104 and the virtual window, the identification information of the target virtual window, and send a window activation request of the target virtual window to the cloud server 104 based on the identification information of the target virtual window, so that the cloud server 104 determines, in response to the window activation request, the target virtual window according to the identification information, and determines a target cloud application corresponding to the target virtual window, so as to transmit a video stream to be output of the target cloud application to the client 102, and the client 102 receives the video stream to be output and performs foreground display with the video stream to be output as a real window display picture of the target cloud application, thereby implementing activation of the target virtual window.
Because the window activation request submitted by the client 102 carries the identification information of the target virtual window, after receiving the window activation request, the cloud server 104 can determine the target virtual window having a mapping relationship with the identification information and the target cloud application corresponding to the target virtual window according to the mapping relationship between the identification information and the virtual window, so as to obtain the video stream to be output corresponding to the target cloud application, and transmit the video stream to be output to the client 102.
In addition, when a user submits a window activation instruction to a client aiming at a target virtual window, window parameters such as the window size, the window display position and the like of a real window of the target cloud application can be added in the window activation instruction, so that a flexible display effect on the real window is realized.
Different from the current window processing technology in which real running windows of all application programs are dynamically displayed, in the embodiment of the specification, by displaying the screenshot (virtual window) of the running window of the cloud application, the static display of multiple windows is realized, when a user selects to activate the static virtual window, the cloud server 104 transmits video streams to the client 102 through a single-channel video stream so as to activate the corresponding real window, thereby avoiding the establishment of multiple channels of video streams, being beneficial to reducing the resource occupation of the client, and realizing window processing through the single-channel video stream so as to meet the requirement of user window processing;
Through the window processing mode, the screenshot of the cloud server is used by the client to simulate a real window for a user, the screenshot is tiled and displayed, the user can browse conveniently, one screenshot is selected by the user, and meanwhile, the corresponding real window is activated for the user by the cloud server, so that the user experience is improved.
In implementation, the cloud server 104 is further configured to encode the video stream to be output, and transmit the generated encoded data to the client 102;
The client 102 is further configured to receive and decode the encoded data, obtain the window running picture, and perform foreground presentation.
Specifically, after the cloud server 104 obtains the video stream to be output, the video stream to be output may be transmitted to the client 102, in practical application, the cloud server 104 may encode the video stream to be output, transmit encoded data obtained by encoding to the client 102, decode the encoded data by the client 102, and configure a corresponding display window according to a decoding result, so that a window operation picture obtained by decoding is displayed in a foreground through the display window.
If the target cloud application is a video playing application, the video stream to be output may include picture data and/or audio data corresponding to a current running window of the target cloud application, and the cloud server 104 encodes the video stream to be output, that is, encodes the picture data according to a picture encoding function to obtain picture encoded data, and/or encodes the audio data by using an audio encoding function to obtain audio encoded data, encapsulates the picture encoded data and the audio encoded data, and transmits the encapsulated data to the client 102 through a network.
In addition, as mentioned above, the cloud application includes, but is not limited to, various application products such as games, news, social, life, etc. running in the cloud, because the requirements of different products on image quality are different, the video stream to be output corresponding to the current running window of different cloud applications can be encoded by the encoding standards of different code rates, for example, for the application products such as games, etc. video stream encoding needs to be performed by using the encoding technology of higher code rate, while for the application products such as news, etc. text, or non-interactive application products, video stream encoding can be performed by using the encoding technology of lower code rate, in practical application, video stream encoding can be performed by using the video encoding standards such as H264 and H265, etc. so as to reduce the data transmission amount while meeting the requirements of different cloud applications on image quality, thereby improving the data transmission efficiency.
After capturing the running window picture of the target application, the cloud server 104 performs network transmission after coding compression due to huge data volume, which is beneficial to improving the data transmission efficiency and improving the user experience quality.
In this embodiment of the present disclosure, the client 102 is further configured to send a window switching request to the cloud server 104 based on a window switching instruction submitted by a user;
The cloud server 104 is further configured to receive the window switching request, intercept a window running picture of a foreground application window, obtain a video stream to be output corresponding to a target virtual window to be switched in a background application window, and transmit the video stream to be output to the client 102;
The client 102 is further configured to receive the video stream to be output, and perform foreground display on the video stream to be output as a real window display screen of the target cloud application.
Specifically, because the cloud server 104 can simultaneously run multiple cloud applications, if the display mode of the client 102 is single window display in the case where the cloud desktop simultaneously runs multiple (at least two) cloud applications, the client 102 can only display the running window of any one cloud application in the running process through the single window, that is, only one foreground application window exists, and the running windows of other running cloud applications can only be used as background application windows, so when a user can submit a window switching instruction to the client 102, the client 102 sends a window switching request to the cloud server 104, where the window switching request can carry the identification information of the current running window and the identification information of the target virtual window to be switched.
After receiving the window switching request, the cloud server 104 needs to intercept the window operation picture of the foreground application window before switching the window, and returns the intercepting result to the client 102 for storage, so as to save the display picture of the foreground application window before switching, so that when switching the foreground application window before switching to the foreground operation again, the display picture corresponding to the intercepting result can be displayed.
After a window running picture of a foreground application window is intercepted, a video stream to be output corresponding to a target virtual window to be switched in a background application window is obtained, and the video stream to be output is transmitted to the client 102, or the video stream to be output is encoded, the obtained encoded data is transmitted to the client 102, the client 102 decodes the encoded data, and the decoding result is used as a real window display picture of the target cloud application to be displayed in the foreground.
Similarly, after capturing the running window picture of the target application to be switched, the cloud server 104 performs network transmission after encoding and compression due to huge data volume, which is beneficial to improving the data transmission efficiency and improving the user experience quality.
In implementation, the client 102 is further configured to send a window running picture rendering request to the cloud server 104 according to a window running picture rendering instruction submitted by the user for a target virtual window, where the window running picture rendering request carries identification information of the target virtual window;
the cloud server 104 is further configured to receive the window running picture rendering request, determine a target cloud application corresponding to the target virtual window according to the identification information, render the picture content to be rendered corresponding to the target cloud application, and transmit the window running picture output by rendering to the client 102.
Specifically, the foregoing cloud server 104 obtains a video stream to be output corresponding to a target virtual window to be switched in a background application window, and transmits the video stream to be output to the client 102, which may be understood that the cloud server 104 activates a dynamic real window of a target cloud application for a client, and is applicable to application products of video or interactive types such as games, and if the target cloud application is a static non-interactive application product, a user sends a cloud application activation request to the cloud server 104 through the client 102, which may be understood that the user sends a window running picture rendering instruction of the target virtual window to the cloud server 104 through the client 102, and the cloud server 104 renders the content of the window to be rendered corresponding to the target cloud application, and sends the window running picture to be rendered and output to the client 102, where the client 102 displays the static window of the activated target cloud application for the user.
In addition, the cloud server 104 renders the content of the frame to be rendered corresponding to the target cloud application, after obtaining the window running frame to be rendered and output, the window running frame can be encoded, the encoded data is sent to the client 102, the client 102 decodes the encoded data, and the decoding result is used as the real window display frame of the target cloud application to be displayed in the foreground.
Different activation modes are adopted for different types of cloud applications, namely, a mode of transmitting video streams or single pictures to the client 102 is adopted, so that the data transmission quantity is reduced while the requirements of different cloud applications on image quality are met, and the improvement of the data transmission efficiency is facilitated.
In one embodiment of the present disclosure, after receiving a window processing request submitted by a client 102, a cloud server 104 intercepts an running window picture of a cloud application running in a cloud desktop, returns the running window picture to the client 102 as a virtual window, and the client 102 performs window processing by displaying the running window picture, that is, the client 102 performs multi-window static display by using a window screenshot of the cloud application returned by the cloud server 104 as the virtual window, thereby avoiding establishing multiple paths of video streams between the client 102 and the cloud server 104, reducing resource occupation of the client, and realizing window processing by a single path of video stream so as to meet the requirement of user window processing.
In the case that the window processing request is a multi-window display request, after receiving the multi-window display request submitted by the client 102, the cloud server 104 intercepts running window pictures of at least two cloud applications running in the cloud desktop, returns the running window pictures to the client 102 as virtual windows, so that the client 102 performs multi-window display in a manner of displaying the virtual windows (screenshots), thereby avoiding the establishment of multiple paths of video streams between the client 102 and the cloud server 104, reducing the resource occupation of the client 102, realizing multi-window display through a single path of video stream, meeting the requirement of multi-window display of a user, enabling the client 102 to simulate a real window for the user by using the screenshots of the cloud server 104 in a multi-window display manner, and performing tiling display on the screenshots for the user, facilitating the user browsing, and enabling the corresponding real window to be activated for the user by the cloud server 104 while facilitating the user to promote the user experience.
Fig. 2 shows a process flow diagram of a window processing method according to an embodiment of the present disclosure, including steps 202 to 206.
Step 202, a window processing request submitted by a client for a cloud application of a cloud desktop is received.
And step 204, intercepting a currently running window picture of the cloud application based on the window processing request.
And step 206, returning the window picture to the client as a virtual window.
The window processing method provided by the embodiment of the specification is applied to a cloud server, and the cloud server is actually a service platform deployed at a cloud end and can provide comprehensive service capability for various internet users.
The cloud application is an application program running on the cloud based on a cloud computing technology, the cloud application runs on a cloud server, a client does not need to download, install or consider configuration of the client, running of the application program can be achieved only through a network, in practical application, the client can also be a zero terminal with a display, the zero terminal is used as a carrier of a bearing service (cloud) end, and a current running window of the cloud application program can be displayed through the display.
The cloud application can be an independent application program, a user can communicate with the cloud server by using the client side to operate the cloud application, the cloud application can also be an application platform, the user logs in the cloud application platform by inputting a user name and a password through the client side, and one cloud application is selected from a plurality of applications of the cloud application platform to operate, wherein the cloud application comprises, but is not limited to, various application products such as games, news, social categories, life categories and the like which are operated at the cloud.
Under the condition that a user sends an operation request of a target cloud application to a cloud server through a client, the cloud server can transmit window parameter information of an operation window of the target cloud application to the client for display in a video stream mode, so that under the condition that a cloud desktop exists in operation (one or more cloud applications in operation), the user can send a window processing instruction to the client so that the client sends the window processing request to the cloud server, after receiving the window processing request, the cloud server intercepts window pictures of a plurality of cloud applications in operation, namely, captures windows of the cloud applications in operation, returns the captures to the client as virtual windows, and after receiving the captures, the client displays the captures according to a window processing mode layout so as to respond to the window processing instruction of the user.
Optionally, the method further comprises:
Setting identification information for the virtual window to establish a mapping relation between the identification information and the virtual window, and returning the mapping relation to the client.
Optionally, the intercepting, based on the window processing request, a currently running window screen of the cloud application includes:
and intercepting window frames of a foreground application window and/or a background application window based on the window processing request, and returning the window frames to the client as virtual windows.
Optionally, the method further comprises:
receiving a window activation request submitted by a client for a target virtual window;
determining a target cloud application corresponding to the target virtual window according to the identification information of the target virtual window carried in the window activation request;
and acquiring a video stream to be output corresponding to the target cloud application, and transmitting the video stream to be output to the client.
Optionally, the streaming the video to be output to the client includes:
And encoding the video stream to be output, and transmitting the generated encoded data to the client.
Optionally, the video stream to be output includes picture data and/or audio data corresponding to a current running window of the target cloud application;
Correspondingly, the transmitting the video stream to be output to the client includes:
the picture data is encoded according to a picture coding function and/or the audio data is encoded with an audio coding function.
Optionally, the receiving a window processing request submitted by the client for the cloud application of the cloud desktop includes:
receiving a multi-window processing request submitted by a client for at least two cloud applications of a cloud desktop;
Correspondingly, the intercepting the currently running window picture of the cloud application based on the window processing request comprises the following steps:
and intercepting at least two window pictures of the at least two cloud applications currently running based on the multi-window processing request.
Optionally, the receiving a window processing request submitted by the client for the cloud application of the cloud desktop includes:
receiving a window processing request submitted by a client for a single cloud application of a cloud desktop;
Correspondingly, the intercepting the currently running window picture of the cloud application based on the window processing request comprises the following steps:
And intercepting a currently running window picture of the single cloud application based on the window processing request.
In one embodiment of the present disclosure, after receiving a window processing request (window display request) submitted by a client, a cloud server intercepts an running window picture of a cloud application running in a cloud desktop, and returns the running window picture to the client as a virtual window, so that the client performs window processing by displaying the virtual window (screenshot), thereby avoiding establishing multiple paths of video streams between the client and the cloud server, reducing resource occupation of the client, and realizing window processing by using a single path of video stream, so as to meet the requirements of user window processing.
The above is a schematic scheme of a window processing method applied to a cloud server in this embodiment. It should be noted that, the technical solution of the window processing method and the technical solution of the window processing system described above belong to the same concept, and details of the technical solution of the window processing method which are not described in detail can be referred to the description of the technical solution of the window processing system described above.
Corresponding to the method embodiment, the present disclosure further provides an embodiment of a window processing apparatus, and fig. 3 shows a schematic diagram of a window processing apparatus provided in one embodiment of the present disclosure. As shown in fig. 3, the apparatus includes:
A receiving module 302, configured to receive a window processing request submitted by a client for a cloud application of a cloud desktop;
an intercepting module 304 configured to intercept a currently running window screen of the cloud application based on the window processing request;
A return module 306 configured to return the window frame to the client as a virtual window.
Optionally, the apparatus further comprises:
the identification information setting module is configured to set identification information for the virtual window so as to establish a mapping relation between the identification information and the virtual window, and return the mapping relation to the client.
Optionally, the intercepting module 304 includes:
And the intercepting sub-module is configured to intercept window frames of the foreground application window and the background application window based on the window processing request and return the window frames to the client as virtual windows.
Optionally, the apparatus further comprises:
The window activation request receiving module is configured to receive a window activation request submitted by a client for a target virtual window;
The target cloud application determining module is configured to determine a target cloud application corresponding to the target virtual window according to the identification information of the target virtual window carried in the window activation request;
And the video stream transmission module is configured to acquire a video stream to be output corresponding to the target cloud application and transmit the video stream to be output to the client.
Optionally, the video streaming module includes:
And the first encoding submodule is configured to encode the video stream to be output and transmit the generated encoded data to the client.
Optionally, the video stream to be output includes picture data and/or audio data corresponding to a current running window of the target cloud application;
correspondingly, the video streaming module comprises:
A second encoding sub-module configured to encode the picture data according to a picture coding function and/or to encode the audio data with an audio coding function.
Optionally, the receiving module 302 includes:
The first receiving sub-module is configured to receive, the method comprises the steps of receiving a multi-window processing request submitted by a client for at least two cloud applications of a cloud desktop;
accordingly, the intercepting module 304 includes:
A first intercepting sub-module configured to intercept at least two window pictures of a current running of the at least two cloud applications based on the multi-window processing request.
Optionally, the receiving module 302 includes:
The second receiving sub-module is configured to receive a window processing request submitted by a client for a single cloud application of the cloud desktop;
Accordingly, the intercepting module 304, correspondingly, includes:
and a second interception sub-module configured to intercept a currently running window screen of the single cloud application based on the window processing request.
The above is a schematic solution of a window processing apparatus of the present embodiment. It should be noted that, the technical solution of the window processing apparatus and the technical solution of the window processing method described above belong to the same concept, and details of the technical solution of the window processing apparatus that are not described in detail may be referred to the description of the technical solution of the window processing method described above.
Fig. 4 shows a process flow diagram of another window processing method provided in accordance with one embodiment of the present disclosure, including steps 402 through 406.
Step 402, based on a window processing instruction submitted by a user for a cloud application of a cloud desktop, sending a window processing request of the cloud application to a cloud server.
Step 402, receiving a currently running window picture of the cloud application intercepted by the cloud server based on the window processing request.
And step 406, responding to the window processing instruction, taking the window picture as a virtual window, and displaying the virtual window according to a pre-created window processing style layout.
The window processing method provided in the embodiments of the present disclosure is applied to a client, where the client 102 may be any device having communication capability and having a screen display capability, for example, may be a smart phone, a tablet computer, a desktop computer, a wearable device, or a game console.
Compared with a physical server, the cloud server is actually a service platform deployed at the cloud end and can provide comprehensive service capability for various internet users.
The cloud application is an application program running on the cloud based on a cloud computing technology, the cloud application runs on a cloud server, a client does not need to download, install or consider configuration of the client, running of the application program can be achieved only through a network, in practical application, the client can also be a zero terminal with a display, the zero terminal is used as a carrier of a bearing service (cloud) end, and a current running window of the cloud application program can be displayed through the display.
The cloud application can be an independent application program, a user can communicate with the cloud server by using the client side to operate the cloud application, the cloud application can also be an application platform, the user logs in the cloud application platform by inputting a user name and a password through the client side, and one cloud application is selected from a plurality of applications of the cloud application platform to operate, wherein the cloud application comprises, but is not limited to, various application products such as games, news, social categories, life categories and the like which are operated at the cloud.
Under the condition that a user sends an operation request of a target cloud application to a cloud server through a client, the cloud server can transmit window parameter information of an operation window of the target cloud application to the client for display in a video stream mode, so that under the condition that a cloud desktop exists in operation (the number of the cloud applications in operation can be one or more), the user can send a window processing instruction to the client so that the client sends the window processing request to the cloud server, after receiving the window processing request, the cloud server intercepts window pictures of a plurality of cloud applications in operation, namely, captures a window of the plurality of cloud applications in operation, returns the screenshot to the client as a virtual window, and after receiving the screenshot, the client displays the screenshot according to a window processing style layout so as to respond to the window processing instruction of the user.
Optionally, the method further comprises:
And sending a window activation request to the cloud server according to an activation instruction submitted by the user aiming at the target virtual window, wherein the window activation request carries identification information of the target virtual window.
Optionally, the method further comprises:
Receiving a video stream to be output returned by the cloud server, wherein the video stream to be output corresponds to a target cloud application, the target cloud application corresponds to the target virtual window, and the target virtual window is determined according to the identification information;
And taking the video stream to be output as a real window display picture of the target cloud application for foreground display.
Optionally, the method further comprises:
receiving coded data returned by the cloud server, wherein the coded data is generated by coding the video stream to be output by the cloud server;
and decoding the encoded data to obtain the window operation picture and performing foreground display.
Optionally, the sending, based on a window processing instruction submitted by a user for a cloud application of a cloud desktop, a window processing request of the cloud application to a cloud server includes:
based on a multi-window processing instruction submitted by a user aiming at least two cloud applications of a cloud desktop, sending multi-window processing requests of the at least two cloud applications to a cloud server;
Correspondingly, the receiving the currently running window picture of the cloud application intercepted by the cloud server based on the window processing request comprises the following steps:
And receiving at least two currently running window pictures of the at least two cloud applications intercepted by the cloud server based on the multi-window processing request.
Optionally, the sending, based on a window processing instruction submitted by a user for a cloud application of a cloud desktop, a window processing request of the cloud application to a cloud server includes:
Based on a window processing instruction submitted by a user aiming at a single cloud application of a cloud desktop, sending a window processing request of the single cloud application to a cloud server;
Correspondingly, the receiving the currently running window picture of the cloud application intercepted by the cloud server based on the window processing request comprises the following steps:
And receiving a currently running window picture of the single cloud application intercepted by the cloud server based on the window processing request.
In one embodiment of the present disclosure, after receiving a window processing request (window display request) submitted by a client, a cloud server intercepts an running window picture of a cloud application running in a cloud desktop, and returns the running window picture to the client as a virtual window, so that the client performs window processing (window display) by displaying the virtual window (screenshot), thereby avoiding establishing multiple paths of video streams between the client and the cloud server, reducing resource occupation of the client, and realizing window processing by using a single path of video stream to meet the requirement of user window processing.
The above is a schematic scheme of a window processing method applied to a client in this embodiment. It should be noted that, the technical solution of the window processing method and the technical solution of the window processing system described above belong to the same concept, and details of the technical solution of the window processing method which are not described in detail can be referred to the description of the technical solution of the window processing system described above.
Corresponding to the above method embodiments, the present disclosure further provides another embodiment of a window processing apparatus, and fig. 5 shows a schematic diagram of another window processing apparatus provided in one embodiment of the present disclosure. As shown in fig. 5, the apparatus includes:
The sending module 502 is configured to send a window processing request of a cloud application to a cloud server based on a window processing instruction submitted by a user for the cloud application of a cloud desktop;
a receiving module 504 configured to receive a currently running window screen of the cloud application intercepted by the cloud server based on the window processing request;
and the display module 506 is configured to respond to the window processing instruction, take the window picture as a virtual window, and display the virtual window according to a pre-created window processing style layout.
Optionally, the apparatus further comprises:
The window activation request sending module is configured to send a window activation request to the cloud server according to an activation instruction submitted by the user for a target virtual window, wherein the window activation request carries identification information of the target virtual window.
Optionally, the apparatus further comprises:
The video stream receiving module is configured to receive a video stream to be output returned by the cloud server, the video stream to be output corresponds to a target cloud application, the target cloud application corresponds to the target virtual window, and the target virtual window is determined according to the identification information;
And the display module is configured to perform foreground display by taking the video stream to be output as a real window display picture of the target cloud application.
Optionally, the apparatus further comprises:
the coded data receiving module is configured to receive coded data returned by the cloud server, and the coded data is generated by coding the video stream to be output by the cloud server;
and the decoding module is configured to decode the encoded data, obtain the window operation picture and perform foreground display.
Optionally, the sending module 502 includes:
The cloud desktop processing system comprises a first sending submodule, a second sending submodule and a cloud server, wherein the first sending submodule is configured to send a multi-window processing request of at least two cloud applications to the cloud server based on multi-window processing instructions submitted by a user aiming at the at least two cloud applications of the cloud desktop;
accordingly, the receiving module 504 includes:
A first receiving sub-module configured to receive at least two window frames of the at least two cloud applications currently running, which are intercepted by the cloud server based on the multi-window processing request.
Optionally, the sending module 502 includes:
The second sending submodule is configured to send a window processing request of a single cloud application to a cloud server based on a window processing instruction submitted by a user for the single cloud application of a cloud desktop;
accordingly, the receiving module 504 includes:
and a second receiving sub-module configured to receive a currently running window picture of the single cloud application intercepted by the cloud server based on the window processing request.
The above is another exemplary embodiment of the window processing apparatus of the present embodiment. It should be noted that, the technical solution of the window processing apparatus and the technical solution of the other window processing method belong to the same concept, and details of the technical solution of the window processing apparatus, which are not described in detail, can be referred to the description of the technical solution of the other window processing method.
The window processing method provided in the present specification is further described below with reference to fig. 6 by taking an application of the window processing method in an interaction scenario as an example. Fig. 6 is an interaction schematic diagram of a window processing method according to an embodiment of the present disclosure, and specific steps include steps 602 to 620.
In step 602, the client receives a multi-window display instruction of a user.
Specifically, the multi-window display instruction is submitted by a user for at least two cloud applications of a cloud desktop.
In step 604, the client sends a multi-window display request of the at least two cloud applications to the cloud server.
In step 606, the cloud server performs ID numbering on at least two running windows of the at least two cloud applications.
And the cloud server establishes a mapping relation between the at least two running windows and the ID numbers.
In step 608, the cloud server intercepts window frames of the at least two running windows.
And step 610, the cloud server returns the ID number and the window screen to the client.
Specifically, the cloud server returns the window picture to the client as a virtual window, and returns the mapping relation between the running window and the ID number to the client.
Step 612, the client displays the received virtual window according to the pre-created multi-window display style layout.
In step 614, the client receives an activation instruction submitted by the user for the target virtual window.
In step 616, the client sends a window activation request for the target virtual window to the cloud server.
Specifically, the window activation request carries identification information of the target virtual window.
And step 618, the cloud server activates the target virtual window and displays the real window of the activated target cloud application in front of the target virtual window.
Specifically, the cloud server determines a target cloud application corresponding to the target virtual window according to the identification information, and obtains a video stream to be output corresponding to a real window of the target cloud application.
And 620, the cloud server transmits the video stream to be output corresponding to the real window of the target cloud application to the client.
Step 622, the client performs foreground display by using the video stream to be output as a real window display screen of the target cloud application.
In one embodiment of the specification, after receiving a multi-window display request submitted by a client, a cloud server intercepts running window pictures of at least two cloud applications running in a cloud desktop, returns the running window pictures to the client as virtual windows, so that the client performs multi-window display in a manner of displaying the virtual windows (screenshots), thereby avoiding establishing multiple paths of video streams between the client and the cloud server, reducing the resource occupation of the client, realizing multi-window display through a single path of video streams, meeting the requirement of multi-window display of a user, enabling the screenshots of the client to simulate real windows for the user by using the screenshots of the cloud server in a multi-window display manner, and performing tiling display on the screenshots, facilitating the user to browse, enabling the corresponding real windows to be activated for the user by the cloud server when one of the screenshots is selected by the user, and facilitating the improvement of user experience.
Fig. 7 illustrates a block diagram of a computing device 700 provided in accordance with one embodiment of the present description. The components of computing device 700 include, but are not limited to, memory 710 and processor 720. Processor 720 is coupled to memory 710 via bus 730, and database 750 is used to store data.
Computing device 700 also includes access device 740, access device 740 enabling computing device 700 to communicate via one or more networks 760. Examples of such networks include the Public Switched Telephone Network (PSTN), a Local Area Network (LAN), a Wide Area Network (WAN), a Personal Area Network (PAN), or a combination of communication networks such as the internet. The access device 740 may include one or more of any type of network interface, wired or wireless (e.g., a Network Interface Card (NIC)), such as an IEEE802.11 Wireless Local Area Network (WLAN) wireless interface, a worldwide interoperability for microwave access (Wi-MAX) interface, an ethernet interface, a Universal Serial Bus (USB) interface, a cellular network interface, a bluetooth interface, a Near Field Communication (NFC) interface, and so forth.
In one embodiment of the present description, the above-described components of computing device 700, as well as other components not shown in FIG. 7, may also be connected to each other, such as by a bus. It should be understood that the block diagram of the computing device illustrated in FIG. 7 is for exemplary purposes only and is not intended to limit the scope of the present description. Those skilled in the art may add or replace other components as desired.
Computing device 700 may be any type of stationary or mobile computing device including a mobile computer or mobile computing device (e.g., tablet, personal digital assistant, laptop, notebook, netbook, etc.), mobile phone (e.g., smart phone), wearable computing device (e.g., smart watch, smart glasses, etc.), or other type of mobile device, or a stationary computing device such as a desktop computer or PC. Computing device 700 may also be a mobile or stationary server.
Wherein the memory 710 is configured to store computer executable instructions and the processor 720 is configured to execute the following computer executable instructions to implement the steps of the window processing method.
The foregoing is a schematic illustration of a computing device of this embodiment. It should be noted that, the technical solution of the computing device and the technical solution of the window processing method belong to the same concept, and details of the technical solution of the computing device, which are not described in detail, can be referred to the description of the technical solution of the window processing method.
An embodiment of the present disclosure also provides a computer-readable storage medium storing computer instructions that, when executed by a processor, are configured to implement the steps of the window processing method.
The above is an exemplary version of a computer-readable storage medium of the present embodiment. It should be noted that, the technical solution of the storage medium and the technical solution of the window processing method belong to the same concept, and details of the technical solution of the storage medium which are not described in detail can be referred to the description of the technical solution of the window processing method.
The foregoing describes specific embodiments of the present disclosure. Other embodiments are within the scope of the following claims. In some cases, the actions or steps recited in the claims can be performed in a different order than in the embodiments and still achieve desirable results. In addition, the processes depicted in the accompanying figures do not necessarily require the particular order shown, or sequential order, to achieve desirable results. In some embodiments, multitasking and parallel processing are also possible or may be advantageous.
The computer instructions include computer program code that may be in source code form, object code form, executable file or some intermediate form, etc. The computer readable medium may include any entity or device capable of carrying the computer program code, a recording medium, a U disk, a removable hard disk, a magnetic disk, an optical disk, a computer Memory, a Read-Only Memory (ROM), a random access Memory (RAM, random Access Memory), an electrical carrier signal, a telecommunications signal, a software distribution medium, and so forth. It should be noted that the computer readable medium contains content that can be appropriately scaled according to the requirements of jurisdictions in which such content is subject to legislation and patent practice, such as in certain jurisdictions in which such content is subject to legislation and patent practice, the computer readable medium does not include electrical carrier signals and telecommunication signals.
It should be noted that, for simplicity of description, the foregoing method embodiments are all expressed as a series of combinations of actions, but it should be understood by those skilled in the art that the embodiments are not limited by the order of actions described, as some steps may be performed in other order or simultaneously according to the embodiments of the present disclosure. Further, those skilled in the art will appreciate that the embodiments described in the specification are all preferred embodiments, and that the acts and modules referred to are not necessarily all required for the embodiments described in the specification.
In the foregoing embodiments, the descriptions of the embodiments are emphasized, and for parts of one embodiment that are not described in detail, reference may be made to the related descriptions of other embodiments.
The preferred embodiments of the present specification disclosed above are merely used to help clarify the present specification. Alternative embodiments are not intended to be exhaustive or to limit the invention to the precise form disclosed. Obviously, many modifications and variations are possible in light of the teaching of the embodiments. The embodiments were chosen and described in order to best explain the principles of the embodiments and the practical application, to thereby enable others skilled in the art to best understand and utilize the invention. This specification is to be limited only by the claims and the full scope and equivalents thereof.

Claims (31)

1. A window processing system, comprising:
the cloud server is in communication connection with the client;
the client is configured to send a window processing request of a cloud application to the cloud server based on a window processing instruction submitted by a user for the cloud application of the cloud desktop;
The cloud server is configured to intercept a currently running window picture of the cloud application based on the received window processing request, and return the window picture to the client as a virtual window through a single-channel video stream;
The client is configured to respond to the window processing instruction and lay out and display the received virtual window according to a pre-created window processing style;
The client is further configured to send a window processing request of the cloud application to the cloud server based on a window processing instruction submitted by a user for the cloud application of the cloud desktop, wherein the window processing request carries the number of foreground application windows and/or background application windows and identification information of each window;
The cloud server is further configured to receive and intercept a running window picture of the foreground application window and/or the background application window based on the window processing request, and return the running window picture to the client as a virtual window.
2. The system of claim 1, the cloud server further configured to set identification information for the virtual window to establish a mapping relationship between the identification information and the virtual window, and return the mapping relationship to the client.
3. The system of claim 2, the client further configured to send a window running picture rendering request to the cloud server according to a window running picture rendering instruction submitted by the user for a target virtual window, wherein the window running picture rendering request carries identification information of the target virtual window;
The cloud server is further configured to receive the window running picture rendering request, determine a target cloud application corresponding to the target virtual window according to the identification information, render picture content to be rendered corresponding to the target cloud application, and transmit a window running picture which is rendered and output to the client.
4. The system of claim 1, the client further configured to receive the virtual window in response to the window processing instruction, adjust a position and/or a size of the virtual window according to a pre-created window processing style layout, and display according to an adjustment result.
5. The system of claim 2, wherein the client is further configured to send a window activation request to the cloud server according to an activation instruction submitted by the user for a target virtual window, where the window activation request carries identification information of the target virtual window.
6. The system of claim 5, the cloud server further configured to receive the activation request, determine a target cloud application corresponding to the target virtual window according to the identification information, obtain a video stream to be output corresponding to the target cloud application, and transmit the video stream to be output to the client;
The client is further configured to receive the video stream to be output, and perform foreground display on the video stream to be output as a real window display picture of the target cloud application.
7. The system of claim 3, the cloud server further configured to encode the window running picture and transmit the generated encoded data to the client.
8. The system of claim 6, the cloud server further configured to encode the video stream to be output and transmit the generated encoded data to the client.
9. The system of claim 7 or 8, the client further configured to receive and decode the encoded data, obtain the window running picture and perform a foreground presentation.
10. The system of claim 6, wherein the video stream to be output includes screen data and/or audio data corresponding to a current running window of the target cloud application;
The cloud server is further configured to encode the picture data according to a picture coding function and/or to encode the audio data with an audio coding function.
11. The system of claim 1, the client further configured to send a window switching request to the cloud server based on a window switching instruction submitted by a user;
the cloud server is further configured to receive the window switching request, intercept a window running picture of a foreground application window, acquire a video stream to be output corresponding to a target virtual window to be switched in a background application window, and transmit the video stream to be output to the client;
The client is further configured to receive the video stream to be output, and perform foreground display by using the video stream to be output as a real window display picture of the target cloud application.
12. The system of claim 1, the client further configured to send a multi-window processing request of at least two cloud applications of a cloud desktop to the cloud server based on multi-window processing instructions submitted by a user for the at least two cloud applications;
The cloud server is configured to intercept at least two window frames of the at least two cloud applications currently running based on the received multi-window processing request, and return the at least two window frames to the client as virtual windows;
The client is configured to respond to the window processing instruction and display the received virtual window according to a pre-created multi-window processing style layout.
13. The system of claim 1, the client further configured to send a window processing request of a single cloud application for a cloud desktop to the cloud server based on window processing instructions submitted by a user for the single cloud application;
The cloud server is configured to intercept a currently running window picture of the single cloud application based on the received window processing request, and return the window picture to the client as a virtual window through a single-path video stream;
the client is configured to respond to the window processing instruction and display the received virtual window according to a preset single window processing style layout.
14. A window processing method is applied to a cloud server and comprises the following steps:
Receiving a window processing request submitted by a client for cloud application of a cloud desktop, wherein the window processing request is sent based on a window processing instruction submitted by a user for cloud application of the cloud desktop, and the window processing request carries the number of foreground application windows and/or background application windows and identification information of each window;
intercepting a running window picture of the foreground application window and/or the background application window based on the window processing request;
and respectively returning the running window pictures to the client side as virtual windows through a single-channel video stream.
15. The method of claim 14, further comprising:
Setting identification information for the virtual window to establish a mapping relation between the identification information and the virtual window, and returning the mapping relation to the client.
16. The method of claim 15, the intercepting a currently running window screen of the cloud application based on the window processing request, comprising:
And intercepting window frames of a foreground application window and/or a background application window based on the window processing request, and returning the window frames to the client through a single-path video stream as virtual windows respectively.
17. The method of claim 15, further comprising:
receiving a window activation request submitted by a client for a target virtual window;
determining a target cloud application corresponding to the target virtual window according to the identification information of the target virtual window carried in the window activation request;
and acquiring a video stream to be output corresponding to the target cloud application, and transmitting the video stream to be output to the client.
18. The method of claim 17, the streaming the video to be output to the client, comprising:
And encoding the video stream to be output, and transmitting the generated encoded data to the client.
19. The method of claim 18, wherein the video stream to be output includes screen data and/or audio data corresponding to a current running window of the target cloud application;
Correspondingly, the transmitting the video stream to be output to the client includes:
the picture data is encoded according to a picture coding function and/or the audio data is encoded with an audio coding function.
20. The method of claim 14, the receiving a window processing request submitted by a client for a cloud application of a cloud desktop, comprising:
receiving a multi-window processing request submitted by a client for at least two cloud applications of a cloud desktop;
Correspondingly, the intercepting the currently running window picture of the cloud application based on the window processing request comprises the following steps:
and intercepting at least two window pictures of the at least two cloud applications currently running based on the multi-window processing request.
21. The method of claim 14, the receiving a window processing request submitted by a client for a cloud application of a cloud desktop, comprising:
receiving a window processing request submitted by a client for a single cloud application of a cloud desktop;
Correspondingly, the intercepting the currently running window picture of the cloud application based on the window processing request comprises the following steps:
And intercepting a currently running window picture of the single cloud application based on the window processing request.
22. A window processing apparatus, applied to a cloud server, comprising:
The cloud application processing module is configured to receive a window processing request submitted by a client for cloud application of a cloud desktop, wherein the window processing request is sent based on a window processing instruction submitted by a user for the cloud application of the cloud desktop, and the window processing request carries the number of foreground application windows and/or background application windows and identification information of each window;
An intercepting module configured to intercept running window pictures of the foreground application window and/or the background application window based on the window processing request;
and the return module is configured to return the running window pictures to the client through a single-path video stream respectively as virtual windows.
23. A window processing method is applied to a client and comprises the following steps:
based on a window processing instruction submitted by a user aiming at a cloud application of a cloud desktop, sending a window processing request of the cloud application to a cloud server, wherein the window processing request carries the number of foreground application windows and/or background application windows and identification information of each window;
Receiving a running window picture of a foreground application window and/or a background application window intercepted by the cloud server based on the window processing request, wherein the window picture is transmitted to the client through a single-channel video stream;
And responding to the window processing instruction, respectively taking the window frames as virtual windows, and displaying the virtual windows according to a pre-created window processing style layout.
24. The method of claim 23, further comprising:
And sending a window activation request to the cloud server according to an activation instruction submitted by the user aiming at the target virtual window, wherein the window activation request carries identification information of the target virtual window.
25. The method of claim 24, further comprising:
Receiving a video stream to be output returned by the cloud server, wherein the video stream to be output corresponds to a target cloud application, the target cloud application corresponds to the target virtual window, and the target virtual window is determined according to the identification information;
And taking the video stream to be output as a real window display picture of the target cloud application for foreground display.
26. The method of claim 25, further comprising:
receiving coded data returned by the cloud server, wherein the coded data is generated by coding the video stream to be output by the cloud server;
and decoding the encoded data to obtain the window operation picture and performing foreground display.
27. The method of claim 23, the sending, to a cloud server, a window processing request of a cloud application based on window processing instructions submitted by a user for the cloud application of a cloud desktop, comprising:
based on a multi-window processing instruction submitted by a user aiming at least two cloud applications of a cloud desktop, sending multi-window processing requests of the at least two cloud applications to a cloud server;
Correspondingly, the receiving the currently running window picture of the cloud application intercepted by the cloud server based on the window processing request comprises the following steps:
And receiving at least two currently running window pictures of the at least two cloud applications intercepted by the cloud server based on the multi-window processing request.
28. The method of claim 23, the sending, to a cloud server, a window processing request of a cloud application based on window processing instructions submitted by a user for the cloud application of a cloud desktop, comprising:
Based on a window processing instruction submitted by a user aiming at a single cloud application of a cloud desktop, sending a window processing request of the single cloud application to a cloud server;
Correspondingly, the receiving the currently running window picture of the cloud application intercepted by the cloud server based on the window processing request comprises the following steps:
And receiving a currently running window picture of the single cloud application intercepted by the cloud server based on the window processing request.
29. A window processing apparatus, for use with a client, comprising:
the cloud desktop cloud application processing module is configured to send a window processing request of a cloud application to a cloud server based on a window processing instruction submitted by a user aiming at the cloud application of the cloud desktop, wherein the window processing request carries the number of foreground application windows and/or background application windows and identification information of each window;
The receiving module is configured to receive a running window picture of a foreground application window and/or a background application window intercepted by the cloud server based on the window processing request, wherein the window picture is transmitted to the client through a single-channel video stream;
And the display module is configured to respond to the window processing instruction, respectively take the window frames as virtual windows, and display the virtual windows according to a pre-created window processing style layout.
30. A computing device, comprising:
A memory and a processor;
The memory is for storing computer executable instructions and the processor is for executing the computer executable instructions to implement the steps of the method of any one of claims 14 to 21 or 23 to 28.
31. A computer readable storage medium storing computer instructions which, when executed by a processor, implement the steps of the method of any one of claims 14 to 21 or 23 to 28.
CN202010975950.1A 2020-09-16 2020-09-16 Window processing system, method and device Active CN114268626B (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202010975950.1A CN114268626B (en) 2020-09-16 2020-09-16 Window processing system, method and device

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202010975950.1A CN114268626B (en) 2020-09-16 2020-09-16 Window processing system, method and device

Publications (2)

Publication Number Publication Date
CN114268626A CN114268626A (en) 2022-04-01
CN114268626B true CN114268626B (en) 2025-06-06

Family

ID=80824397

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202010975950.1A Active CN114268626B (en) 2020-09-16 2020-09-16 Window processing system, method and device

Country Status (1)

Country Link
CN (1) CN114268626B (en)

Families Citing this family (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN115809106B (en) * 2022-09-19 2025-06-13 阿里巴巴(中国)有限公司 Cloud desktop system, cloud desktop display method, terminal device and storage medium
CN115396698A (en) * 2022-10-26 2022-11-25 讯飞幻境(北京)科技有限公司 Video stream display and processing method, client and cloud server
CN116149769B (en) * 2023-01-16 2025-01-07 深圳十沣科技有限公司 Virtual application system and method based on remote window
CN116149770A (en) * 2023-01-16 2023-05-23 深圳十沣科技有限公司 Virtual application multi-window opening method, device, equipment and storage medium

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN104679494A (en) * 2013-11-29 2015-06-03 华为技术有限公司 Method and device for achieving long-distance virtual desktop and application program
CN108021425A (en) * 2017-12-28 2018-05-11 南开大学 A kind of virtual desktop system and operation method for integrating multiple Graphics Application windows

Family Cites Families (15)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102810104B (en) * 2011-06-03 2015-05-20 阿里巴巴集团控股有限公司 Information adjusting method and device
CN103888485B (en) * 2012-12-19 2018-03-09 华为技术有限公司 The distribution method of cloud computing resources, apparatus and system
US9195849B2 (en) * 2013-03-06 2015-11-24 Kings Information & Network Co., Ltd. Cloud application installed in client terminal connected to cloud server
KR20160000911A (en) * 2014-06-25 2016-01-06 엔트릭스 주식회사 Method for providing of cloud service, computer readable storage medium storing web application for the same, cloud service system and apparatus usint the same
CN104202417A (en) * 2014-09-16 2014-12-10 腾讯科技(深圳)有限公司 Cloud computing based information processing method, client, cloud server and cloud computing based information processing system
KR20160093877A (en) * 2015-01-30 2016-08-09 엔트릭스 주식회사 Virtual client, cloud streaming server, cloud streaming server test system comprising the same, control method thereof and computer readable medium having computer program recorded therefor
KR102050735B1 (en) * 2015-02-23 2019-12-03 에스케이플래닛 주식회사 Proxy server for cloud streaming service, cloud streaming system and method using the same
US20160274736A1 (en) * 2015-03-16 2016-09-22 Microsoft Technology Licensing, Llc Synchronized multi-window interaction with hierarchical data on thin-client
WO2017019292A1 (en) * 2015-07-24 2017-02-02 Coscreen, Inc. Frictionless interface for virtual collaboration, communication and cloud computing
CN109146450A (en) * 2017-06-16 2019-01-04 阿里巴巴集团控股有限公司 Method of payment, client, electronic equipment, storage medium and server
KR102368826B1 (en) * 2017-08-18 2022-02-28 주식회사 엘지유플러스 Cloud Server And Method of Thereof
CN109992267A (en) * 2019-03-12 2019-07-09 厦门网宿有限公司 A kind of client of cloud application
CN110694267A (en) * 2019-11-14 2020-01-17 珠海金山网络游戏科技有限公司 Cloud game implementation method and device
CN111214828A (en) * 2020-01-03 2020-06-02 北京小米移动软件有限公司 Game running method, device, equipment, medium and cloud game platform
CN111652604B (en) * 2020-07-13 2025-08-08 腾讯科技(深圳)有限公司 Order payment method, order payment device and order payment system

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN104679494A (en) * 2013-11-29 2015-06-03 华为技术有限公司 Method and device for achieving long-distance virtual desktop and application program
CN108021425A (en) * 2017-12-28 2018-05-11 南开大学 A kind of virtual desktop system and operation method for integrating multiple Graphics Application windows

Also Published As

Publication number Publication date
CN114268626A (en) 2022-04-01

Similar Documents

Publication Publication Date Title
CN114268626B (en) Window processing system, method and device
US12134035B2 (en) Method and system for a cloud native 3D scene game
CN112905289A (en) Application picture display method, device, terminal, screen projection system and medium
US20140074911A1 (en) Method and apparatus for managing multi-session
US12155835B2 (en) Video processing method, related apparatus, storage medium, and program product
CN110694267A (en) Cloud game implementation method and device
Xu et al. A cost-efficient cloud gaming system at scale
CN104660687A (en) Realization method and system for virtual desktop display
CN115767092B (en) Image transmission method, cloud desktop, image transmission system, device and product
CN104053019A (en) Video playing and processing method and device based on virtual desktop
CN113489805B (en) Butt joint method, device, equipment and storage medium of cloud desktop system
CN111773660A (en) A cloud game processing system, method and device
CN106797398B (en) For providing the method and system of virtual desktop serve to client
CN116405709B (en) A cloud rendering method and related equipment
CN102664939A (en) Method and device for mobile terminal of screen mirror image
CN109587118B (en) Distributed multi-terminal and multi-network supporting system for Android online game
CN111464828A (en) Virtual special effect display method, device, terminal and storage medium
KR20160131829A (en) System for cloud streaming service, method of image cloud streaming service using alpha value of image type and apparatus for the same
WO2024037110A9 (en) Data processing method and apparatus, device, and medium
CN104067627A (en) Video redirecting method, device, system and computer readable medium
CN111782299A (en) Game access method and device
Wu et al. EyeNexus: Adaptive Gaze-Driven Quality and Bitrate Streaming for Seamless VR Cloud Gaming Experiences
Ma et al. Interactive screen video streaming-based pervasive mobile workstyle
CN106658070B (en) Method and device for redirecting video
CN114827692A (en) System for operating cloud desktop based on smart television

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