Raster Segment Motion Detection for Thin Client Bandwidth Reduction

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Existing remoting methods for thin clients are inefficient in processing updates to rich user interfaces, leading to suboptimal performance due to high network bandwidth and resource usage when transmitting bitmapped graphics.

Innovation Solution

Implementing a caching mechanism that detects similarities between raster segments in consecutive frames and replaces redundant payloads with motion or cache commands, utilizing a raster segment cache to reduce payload sizes and enhance processing efficiency.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Manufacturing precision

If bitmapped graphics are transmitted for rich user interface frames, then graphical quality is improved, but network bandwidth usage increases

Engineering Contradiction:
Improvegraphical qualityVSAvoidnetwork bandwidth usage
Core Design Contradiction:
Manufacturing precisionVSQuantity of substance

Solution Approach 1:

The frame is divided into multiple rasters, and each raster is further divided into segments. Only segments containing changed pixels are encoded and transmitted, rather than transmitting the entire frame bitmap. This segmentation allows high graphical quality to be maintained in changed areas while reducing overall network bandwidth usage.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The invention extracts only the necessary information for frame updates by identifying changed pixels and encoding them as differential values relative to the previous frame. Instead of transmitting complete bitmapped graphics, only the differential segment data is transmitted, significantly reducing network bandwidth consumption while preserving graphical quality.

Inventive Principle:
Principle #2Taking out (Extraction)

2Manufacturing precision

If complete frame data is transmitted, then rendering accuracy is improved, but client processing resources increase

Engineering Contradiction:
Improverendering accuracyVSAvoidclient processing resources
Core Design Contradiction:
Manufacturing precisionVSUse of energy by moving object

Solution Approach 1:

Instead of processing and rendering complete frame data, the client only processes and renders the differential segment data representing changed pixels. This partial action approach maintains rendering accuracy for changed areas while significantly reducing client processing resource consumption.

Inventive Principle:
Principle #16Partial or excessive action

Solution Approach 2:

The client maintains a copy of the previous frame in memory and applies differential updates to it. This copying mechanism allows the client to reconstruct current frame imagery with high accuracy by combining the previous frame copy with the transmitted differential data, avoiding the need to process complete frame data from scratch.

Inventive Principle:
Principle #26Copying

3Quantity of substance

If differential encoding is applied, then network bandwidth usage is reduced, but encoding complexity increases

Engineering Contradiction:
Improvenetwork bandwidth usageVSAvoidencoding complexity
Core Design Contradiction:
Quantity of substanceVSDevice complexity

Solution Approach 1:

The encoding process is simplified by segmenting the frame into rasters and further into segments. This segmentation allows the encoder to focus only on changed segments, reducing the overall encoding complexity compared to differential encoding of complete frames, while still achieving significant network bandwidth reduction.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

Different encoding approaches are applied to different segments: segments with changes use differential encoding, while unchanged segments are not transmitted at all. This local quality approach optimizes the balance between encoding complexity and network bandwidth usage by applying complex encoding only where necessary.

Inventive Principle:
Principle #3Local quality

Data Source

PatentUS8358879B2Remote user interface raster segment motion detection and encoding
Publication Date: 2013.01.22 MICROSOFT TECHNOLOGY LICENSING LLC
  • US8358879B2 patent drawing
  • US8358879B2 patent drawing
  • US8358879B2 patent drawing

AI summary

Raster segment commands are generated by a delta encoder and are encoded for raster segments detected to have moved in the current frame with respect to a location of the raster segment in a previous frame. Raster segment motion commands are stored in a queue and, when written, copy a raster segment into the current frame from a previous payload or cache. When written from the queue to a payload, raster segment motion commands are applied to a copy of the current frame maintained at the server using a copy of the previous payload sent. When copying a raster segment from a raster segment cache, a raster segment cache command retrieves identified raster segment data from the raster segment cache and copies the raster segment into a particular location in the current frame at the client. The raster segment commands are sent to a client via a payload to copy a raster segment from a previous payload into the current frame at the client or from a raster segment cache to the current frame.