H.264 Slice Encoding with Motion Constraints

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Video encoding using the H.264 standard, particularly in the Main and High profiles, faces challenges in distributing computational tasks effectively across multiple processors without introducing boundary errors due to the lack of Motion Constrained Slice Groups, which are only available in the Extended Profile.

Innovation Solution

A slice-based encoding system that divides video frames into blocks and uses upper and lower extrapolation areas for prediction, constraining motion vectors and search areas to minimize boundary errors, employing a combination of hardware-based Video Acceleration Modules and general-purpose processing units to optimize processing and ensure accurate decoding.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Productivity

If video encoding is divided into multiple slices and processed in parallel across multiple processors, then processing speed and throughput are improved, but boundary errors occur at slice edges due to lack of motion constraints

Engineering Contradiction:
Improveprocessing speedVSAvoidboundary error rate
Core Design Contradiction:
ProductivityVSReliability

Solution Approach 1:

The video frame is divided into multiple independent slices that can be processed in parallel by separate processors. Each slice is self-contained with its own motion vector constraints, allowing independent encoding without requiring global motion information from other slices.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

Motion vector constraints are applied locally at slice boundaries rather than globally across the entire frame. The constraint mechanism is tailored specifically to boundary regions where errors occur, applying different processing rules to boundary pixels versus interior pixels within each slice.

Inventive Principle:
Principle #3Local quality

2Adaptability or versatility

If H.264 Main Profile or High Profile is used without Motion Constrained Slice Groups, then encoding flexibility and compatibility are improved, but boundary matching errors occur between adjacent slices

Engineering Contradiction:
Improveprofile compatibilityVSAvoidboundary matching accuracy
Core Design Contradiction:
Adaptability or versatilityVSManufacturing precision

Solution Approach 1:

Motion vector constraints are pre-applied to boundary pixels before the actual motion compensation process. By constraining the motion vectors of boundary pixels in advance, the encoding process ensures that adjacent slices will match at their boundaries without requiring post-processing correction.

Inventive Principle:
Principle #10Preliminary action

Solution Approach 2:

A constraint mechanism acts as an intermediary between adjacent slices, ensuring compatibility at boundaries. This intermediary layer of constraint logic mediates the interaction between slices, allowing independent processing while maintaining boundary coherence through enforced motion constraints.

Inventive Principle:
Principle #24Intermediary (Mediator)

3Measurement precision

If extrapolation areas are used for motion prediction at slice boundaries, then prediction accuracy is improved, but boundary errors increase when slices are processed independently

Engineering Contradiction:
Improveprediction accuracyVSAvoidboundary consistency
Core Design Contradiction:
Measurement precisionVSReliability

Solution Approach 1:

The patent applies preliminary constraints to prevent the harmful effect of extrapolation at boundaries. By constraining motion vectors before extrapolation can cause errors, the system anticipates and counteracts potential boundary mismatches that would otherwise occur when slices are processed independently.

Inventive Principle:
Principle #9Preliminary anti-action

Data Source

PatentUS8687691B1Image sliced high definition scalable array encoding system and method
Publication Date: 2014.04.01 GOOGLE TECHNOLOGY HOLDINGS LLC
  • US8687691B1 patent drawing
  • US8687691B1 patent drawing
  • US8687691B1 patent drawing

AI summary

An array encoding system and method for use with high definition digital video data streams includes method and means for analyzing the incoming data stream, splitting the data stream in accordance with video complexity or other criteria, encoding each of the subsidiary data streams in accordance with a desired encoding standard, and combining the data streams to generate an output. The encoding system and method is particularly suited to encoding data streams to provide an output with is substantially consistent with the H.264 video communications standard. The system and method are scalable.