Abstract:
A virtual desktop can be remoted to a client device by transmitting a video stream using a video coding format, such as H.264, where higher resolution video can be streamed than natively supported by the encoder or decoder. The encoder framebuffer is divided into a plurality of equal size child buffers, each child buffer is assigned an identifier for identifying the child buffer. Padding pixels can be added to the child buffers to make the child buffer size acceptable for the video coding format. The child buffers are encoded using the video coding format and the encoded frames are transmitted to a client. On the decoder side, the encoded child frames are decoded, padding pixels are removed, and the data is used to update corresponding child buffers in a framebuffer on the client display system.
Abstract:
A virtual desktop can be remoted to a client device by transmitting a video stream using a video coding format, such as H.264, where higher resolution video can be streamed than natively supported by the encoder or decoder. The encoder framebuffer is divided into a plurality of equal size child buffers, each child buffer is assigned an identifier for identifying the child buffer. Padding pixels can be added to the child buffers to make the child buffer size acceptable for the video coding format. The child buffers are encoded using the video coding format and the encoded frames are transmitted to a client. On the decoder side, the encoded child frames are decoded, padding pixels are removed, and the data is used to update corresponding child buffers in a framebuffer on the client display system.
Abstract:
A method for caching images in a virtual environment uses hash tables to store information about an application or window and to store updated images. Suitable areas of applications or windows are fixed relative to the window for many cases, and also include a relatively small number of possible display statuses. Hash tables are used on an agent side and a client side to track previous image updates. When an updated image is determined to be already stored in a cache, the agent side can transmit a hash identifying the image to the client side, and the client side can update the display with the cached image.
Abstract:
Left- and right-click buttons of a virtual touchpad each have two modes, a “click” mode and an “on/off” mode. In “click” mode, touching a finger to the left- or right-click button triggers a mouse button down event while releasing a finger from the button triggers a mouse button up event. In “on/off” mode, the left- and right-click buttons each have two states, “on” and “off.” If the current state of the left- or right-click button is “off,” then touching the button triggers the mouse button down event, while releasing the button changes the state of the button to “on” but does not trigger any mouse events. Conversely, if the current state of the left- or right-click button is “on,” then touching the button does not trigger any mouse events, but releasing the button thereafter changes the state of the button to “off” and triggers the mouse button up event.
Abstract:
Embodiments are described for placing a watermark over application windows in a desktop. For each application window that is opened in the desktop, the system can determine whether the application requires a watermark, for example, based on a predefined list that specifies which applications require watermarks. For each application window that requires a watermark, a uncovered watermark region can be calculated where the watermark will appear. An overlay can be placed over the application windows, for example in a top-level window that does not receive mouse and keyboard inputs, and the watermark can be drawn in the overlay over the location of the uncovered watermark region of each application. As a result, watermarks can be placed over a plurality of specified application windows in an efficient and convenient manner.
Abstract:
Techniques for implementing 3DI API redirection for VDI desktops are provided. In one set of embodiments, a server system can intercept a call to a 3D API made by a 3D application running within a VM on the server system, where the VM hosts a desktop that is presented to a user of a client system. The server system can determine metadata associated with the call, where the metadata including a name of the 3D API and one or more input parameter values to the call, and can transmit the metadata to the client system. In response, the client system can reconstruct the call to the 3D API using the metadata and execute the call using one or more physical GPUs residing on the client system.
Abstract:
A method of connecting to a remote virtual application is carried out at a remote desktop client. The steps of the method include transmitting a request for virtual application connection information, receiving, in response to the request, a path to an executable file, a name or identifier of a remote display protocol, and an indication of a protocol configuration associated with a first virtual application, and causing the executable file for the first virtual application to be launched in a virtual computing instance and accessing the first virtual application using the remote display protocol and the protocol configuration.
Abstract:
A virtual desktop can be remoted to a client device by transmitting a video stream using a video coding format, such as H.264, where higher resolution video can be streamed than natively supported by the encoder or decoder. The encoder framebuffer is divided into a plurality of equal size child buffers, each child buffer is assigned an identifier for identifying the child buffer. Padding pixels can be added to the child buffers to make the child buffer size acceptable for the video coding format. The child buffers are encoded using the video coding format and the encoded frames are transmitted to a client. On the decoder side, the encoded child frames are decoded, padding pixels are removed, and the data is used to update corresponding child buffers in a framebuffer on the client display system.
Abstract:
A method is provided to perform enhanced image encoding in a virtual desktop infrastructure (VDI) environment that includes a client device having a first graphical user interface (GUI) and a server device having a second GUI associated with the first GUI. One example method may include receiving, from the client device, user interface (UI) events based on which the first GUI is to be updated, and obtaining, by an agent on the server device, UI information relating to a UI element on the second GUI. The method may further include determining, by the agent on the server device, an encoding configuration for an encoder based at least in part on the UI information, encoding image data of the second GUI based on the encoding configuration, and sending encoded image data to the client device to update the first GUI on a screen of the client device.
Abstract:
An example method is provided for a computing device, coupled to a first display and a second display, to conceal sensitive information on a display. The method may comprise in response to detecting sensitive information in a desktop shown on the first display, generating a replacement image that conceals the detected sensitive information in the desktop and sending the replacement image to the second display for display. Otherwise, a mirror image of the desktop shown on the first display may be sent to the second display for display.