Patent application number | Description | Published |
20110141133 | Real-Time Compression With GPU/CPU - Example embodiments of the present disclosure provide techniques for efficiently processing and transmitting graphics data when sub-regions of the screen represented by the graphics data are updated at different relative update rates. In an embodiment, when the screen is divided into tiles and a plurality of the tiles have been determined as being changed, some of the sublevels resulting from the image transform may not be encoded and transmitted. The decoding process may use zeroes for any data not received. The rendering subsystem may render the image with the partial data, and the remaining data may be received in subsequent transmissions. | 06-16-2011 |
20120268469 | Parallel Entropy Encoding On GPU - An invention is disclosed for performing entropy encoding in a parallelized manner, using a GPU. In embodiments, an input sequence of integers is received, and run-length encoding is performed on any runs of zeros in parallel operations on the GPU. Then, a plurality of parallelized operations are performed on the run-length encoded sequence to entropy encode the sequence. The value N may be entropy encoded using only N and the value that precedes it in the sequence, N−1, so the encoding may be sub-divided into multiple operations that may be performed in parallel on the GPU. After entropy encoding is performed, a bitstream may be produced using parallelized operations on the GPU. | 10-25-2012 |
20120294541 | Transform Space Difference Compression - An invention is disclosed for performing differencing of graphical data in post-transform space for a remote presentation session. Graphical data is transformed from a first representation to a second representation (e.g. with a DWT), and then a difference is taken of the post-transform data and the post-transform data of the frame that preceded the current frame. This difference is then encoded and transmitted to a client, which decodes it, and creates a representation of the graphical data using the delta, and a previously determined representation of the previous frame. By performing differencing in post-transform space, fidelity of the remote presentation session is retained while it may decrease bandwidth. This may occur because the entropy of the delta representation is usually lower than a non-delta representation while the scheme retains the identical data of the final decoded image of the non-delta version of the same compression scheme. | 11-22-2012 |
20120317236 | Web-Browser Based Desktop And Application Remoting Solution - An invention is disclosed for conducting a remote presentation session with a client that uses a web browser to conduct the session. In embodiments, a proxy server exists between the remote presentation server and the client. The proxy server establishes a HTTP session with the client and a remote presentation session with the client. The server generates graphics encoded with a remote presentation protocol and sends them to the proxy, which re-encodes them as video and sends them to the client for display in the web browser. The client captures user input at the web browser and sends it to the proxy, which encodes it with the remote presentation protocol and sends it to the server to be processed. | 12-13-2012 |
20130060886 | Cross-Frame Progressive Spoiling Support for Reduced Network Bandwidth Usage - An invention is disclosed for efficiently processing and transmitting graphics data in a remote desktop environment. In embodiments of the invention, a connection is established between a remote desktop server computer and a remote desktop client computer. The remote desktop server computer may process graphics data representative of a remote user desktop. The remote desktop server computer may divide the remote desktop screen in data regions and portions. The remote desktop server computer may then encode and transmit each region to the remote desktop client computer at a certain quality that may be adjusted progressively across the screen frames. The remote desktop server computer may also stop encoding and transmitting the portions of the data region that would not be visible to a user when the region is rendered on a display. The remote desktop user experiences an image quality gradually improving with each frame containing information about the image. | 03-07-2013 |
20130070844 | Low-Complexity Remote Presentation Session Encoder - An invention is disclosed for encoding and decoding data in a 4:4:4 subsampling scheme, using an encoder/decoder that is not configured to encode or decode data in 4:4:4. In embodiments, an encoder planararizes an input frame into three component frames in a 4:0:0 scheme. The encoder then encodes each component frame in the 4:0:0 scheme, and aggregates the encoded component frames into a bit stream. A decoder receives such a bit stream, and decodes it with a component not configured to decode data in 4:4:4. The decoder decodes the bit stream to produce a representation of the three component frames in 4:0:0, then aggregates the three component frames into a representation of the original frame in 4:4:4. | 03-21-2013 |
20140056534 | TRANSFORM SPACE DIFFERENCE COMPRESSION - An invention is disclosed for performing differencing of graphical data in post-transform space for a remote presentation session. Graphical data is transformed from a first representation to a second representation (e.g. with a DWT), and then a difference is taken of the post-transform data and the post-transform data of the frame that preceded the current frame. This difference is then encoded and transmitted to a client, which decodes it, and creates a representation of the graphical data using the delta, and a previously determined representation of the previous frame. By performing differencing in post-transform space, fidelity of the remote presentation session is retained while it may decrease bandwidth. This may occur because the entropy of the delta representation is usually lower than a non-delta representation while the scheme retains the identical data of the final decoded image of the non-delta version of the same compression scheme. | 02-27-2014 |
20140092998 | FRAME PACKING AND UNPACKING HIGHER-RESOLUTION CHROMA SAMPLING FORMATS - Video frames of a higher-resolution chroma sampling format such as YUV 4:4:4 are packed into video frames of a lower-resolution chroma sampling format such as YUV 4:2:0 for purposes of video encoding. For example, sample values for a frame in YUV 4:4:4 format are packed into two frames in YUV 4:2:0 format. After decoding, the video frames of the lower-resolution chroma sampling format can be unpacked to reconstruct the video frames of the higher-resolution chroma sampling format. In this way, available encoders and decoders operating at the lower-resolution chroma sampling format can be used, while still retaining higher resolution chroma information. In example implementations, frames in YUV 4:4:4 format are packed into frames in YUV 4:2:0 format such that geometric correspondence is maintained between Y, U and V components for the frames in YUV 4:2:0 format. | 04-03-2014 |
20140192261 | CHROMA FRAME CONVERSION FOR THE VIDEO CODEC - Converting a first format frame to one or more second format frames. In one embodiment, a method includes accessing a first format frame using n coefficients, where n is the total number of coefficients used for the Y, U and V planes of the first format frame. The method further includes mapping the coefficients of the first format frame to coefficients of one or more second format frames. The one or more second format frames have n coefficients across all of the second format frames matching the n coefficients of the first format frame. | 07-10-2014 |
20140369421 | Screen Map and Standards-Based Progressive Codec for Screen Content Coding - Methods and systems for delivering screen content to a client device are disclosed. One method includes, for each of a plurality of coding units corresponding to screen regions included in a screen at a particular time, classifying screen content included in the coding unit as having a content type selected from among a plurality of content types, at least one of the content types comprising a screen image type, and, based on a determination that the screen content has a screen image type, applying a progressive standards-based encoding to the screen content of that coding unit. The method also includes transmitting encoded screen content for each of the screen regions to the client device. | 12-18-2014 |
20150063451 | Universal Screen Content Codec - Methods and systems for providing a universal screen content codec are described. One method includes receiving screen content comprising a plurality of screen frames, wherein at least one of the screen frames includes a plurality of types of screen content. The method also includes encoding the at least one of the screen frames, including the plurality of types of screen content, using a single codec, to generate an encoded bitstream compliant with a standards-based codec. The plurality of types of screen content can include text, video, or image content. Blocks containing the various content types can be individually and collectively encoded. | 03-05-2015 |
20150063471 | Post-Process Filter for Decompressed Screen Content - Methods and systems for processing graphical data received at a computing system from a remote source are described. One method includes decoding received graphical content, the received graphical content including an image being compressed using a plurality of codecs, wherein decoding the received graphical content includes creating a decoded image. The method also includes, based on quality of the received graphical content, selecting from among a plurality of filters to apply to the decoded image. The method further includes applying a plurality of filters to at least a portion of the decoded image. | 03-05-2015 |