Remote Access Encoding for Static Block Compression

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Existing remote access technologies face challenges in efficiently transmitting high-resolution video over limited bandwidth communications channels, particularly in rendering and encoding static content within operating environments for display on client devices.

Innovation Solution

The method involves identifying static blocks within frames of the operating environment's display area, determining their coding quality, and encoding them as skipped blocks using high or low quality configurations based on reference blocks, thereby improving coding efficiency and quality by prioritizing high-quality encoding for static content.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Measurement precision

If high resolution video is transmitted over limited bandwidth communications channels, then video quality is improved, but bandwidth consumption increases

Engineering Contradiction:
Improvevideo qualityVSAvoidbandwidth consumption
Core Design Contradiction:
Measurement precisionVSQuantity of substance

Solution Approach 1:

The video content is divided into multiple blocks, and each block is independently analyzed to determine if it is static or dynamic. This segmentation allows differential encoding where static blocks use skipped block encoding and dynamic blocks use traditional encoding, optimizing bandwidth usage while maintaining video quality.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

Different encoding quality levels are applied to different regions of the video frame. Static blocks are encoded with high compression (skipped block encoding) while dynamic blocks receive full encoding resources. This local quality adjustment maintains perceived video quality while reducing overall bandwidth consumption.

Inventive Principle:
Principle #3Local quality

2Productivity

If traditional encoding is used for all blocks, then coding simplicity is maintained, but coding efficiency decreases

Engineering Contradiction:
Improvecoding efficiencyVSAvoidcoding complexity
Core Design Contradiction:
ProductivityVSDevice complexity

Solution Approach 1:

The encoding approach dynamically adapts based on the content characteristics of each block. The encoder determines whether each block is static or dynamic and selects the appropriate encoding mode accordingly. This dynamic adaptation improves coding efficiency without requiring complex manual configuration.

Inventive Principle:
Principle #15Dynamics

Solution Approach 2:

The encoding system automatically analyzes each block's characteristics and selects the optimal encoding mode without external intervention. The skipped block encoding is self-applied to static blocks based on automatic detection, reducing the need for complex external control mechanisms while improving overall coding efficiency.

Inventive Principle:
Principle #25Self-service

3Quantity of substance

If skipped block encoding is used for static blocks, then bandwidth usage is reduced, but encoding quality may deteriorate

Engineering Contradiction:
Improvebandwidth usageVSAvoidencoding quality
Core Design Contradiction:
Quantity of substanceVSMeasurement precision

Solution Approach 1:

The encoding parameters are changed based on block characteristics. For static blocks, the encoder uses skipped block encoding with reference to previous high-quality blocks, effectively reducing bandwidth while maintaining quality. For dynamic blocks, full encoding parameters are applied to preserve quality. This parameter adaptation resolves the quality-bandwidth tradeoff.

Inventive Principle:
Principle #35Parameter changes

Data Source

PatentUS9225979B1Remote access encoding
Publication Date: 2015.12.29 GOOGLE LLC
  • US9225979B1 patent drawing
  • US9225979B1 patent drawing
  • US9225979B1 patent drawing

AI summary

A method and apparatus for remote access encoding is provided. Remote access encoding may include receiving, at a host device, from a client device, a remote access request indicating a portion of a display area of an operating environment of the host device, rendering a representation of the portion of the display area, wherein rendering includes generating rendered content including a plurality of frames, generating an encoded block, and transmitting encoded content to the client device, wherein the encoded content includes the encoded block. Generating the encoded block may include identifying a current block from a plurality of blocks in a current frame, wherein the current frame is one of the plurality of frames, determining whether the current block is a static block, determining a coding quality for encoding the current block, and determining whether to encode the current block as a skipped block.