Accelerated Screen Codec via GPU Segmentation

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Real-time screen capture systems face challenges in processing power due to complex computations for compressing varied screen content and bandwidth limitations, particularly in transferring data from video memory to system memory.

Innovation Solution

The accelerated screen codec technique employs a GPU-friendly screen compression framework that segments screen images into text and pictorial blocks, using different compression methods for each, and leverages GPU acceleration to reduce processing burden and bandwidth requirements, achieving better performance than current standards in compression ratio and speed.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Loss of information

If complex compression computations are performed on varied screen content, then compression ratio is improved, but processing power burden increases

Engineering Contradiction:
Improvecompression ratioVSAvoidprocessing power burden
Core Design Contradiction:
Loss of informationVSDevice complexity

Solution Approach 1:

The patent segments screen content into distinct regions (text regions, image regions, video regions) and applies different compression algorithms to each region. This segmentation allows the system to achieve high compression ratios for each specific content type while avoiding the need to apply complex compression to the entire screen, thereby reducing overall processing power burden.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The patent applies different compression qualities and methods to different regions of the screen based on content type. Text regions use lossless compression, image regions use JPEG compression, and video regions use H.264 compression. This local quality approach ensures optimal compression ratio for each content type while minimizing the processing complexity required for each region.

Inventive Principle:
Principle #3Local quality

2Ease of operation

If data is transferred from video memory to system memory, then screen capture is enabled, but bandwidth cost increases

Engineering Contradiction:
Improvescreen capture capabilityVSAvoidbandwidth cost
Core Design Contradiction:
Ease of operationVSLoss of energy

Solution Approach 1:

The patent extracts only the necessary screen content data for compression and transmission, rather than transferring entire frame buffers. By segmenting the screen and compressing each region independently, the system reduces the total amount of data that needs to be transferred from video memory to system memory, thereby reducing bandwidth cost.

Inventive Principle:
Principle #2Taking out (Extraction)

Solution Approach 2:

The patent performs compression operations on screen content before transferring the compressed data to system memory. This preliminary compression action reduces the data volume that needs to be transferred, thereby reducing bandwidth cost while maintaining screen capture capability.

Inventive Principle:
Principle #10Preliminary action

3Reliability

If traditional compression standards are used, then compatibility is maintained, but compression speed is insufficient for real-time requirements

Engineering Contradiction:
ImprovecompatibilityVSAvoidcompression speed
Core Design Contradiction:
ReliabilityVSProductivity

Solution Approach 1:

The patent segments the screen into multiple regions and processes each region in parallel using different compression algorithms. This segmentation enables real-time compression speed by distributing the computational load across multiple processing units, while maintaining compatibility through the use of standard compression formats for each region type.

Inventive Principle:
Principle #1Segmentation

Data Source

PatentUS8180165B2Accelerated screen codec
Publication Date: 2012.05.15 MICROSOFT TECHNOLOGY LICENSING LLC
  • US8180165B2 patent drawing
  • US8180165B2 patent drawing
  • US8180165B2 patent drawing

AI summary

An accelerated screen codec technique is described that provides a general screen compression framework, which, in one embodiment, is Graphics Processor Unit (GPU) friendly. In one embodiment, in order to compress screen data, blocks in a compound screen image containing both images and text are segmented into text blocks and pictorial blocks using a simple gradient-based procedure. The text and pictorial blocks are then compressed respectively via different compression techniques. Additionally, a GPU acceleration architecture of one embodiment of the accelerated screen codec technique provides a screen codec that maximally exploits a GPU's high parallelism and reduces the download bandwidth from GPU to Computer Processing Unit (CPU).