Video Encoder Buffer Continuous Addressing for Macroblock Units

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Existing video encoding systems face inefficiencies due to the need for multiple discontinuous buffer accesses when encoding macroblock units in standards like H.264/AVC, which increases access time and complexity.

Innovation Solution

Storing multiple information types of each macroblock unit in a continuous address space within a single buffer, allowing for reduced discontinuous buffer access operations by organizing data into head, body, and tail sections, and using a motion processor to optimize access.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Ease of operation

If information types are separated into different buffer spaces, then information types can be organized and accessed, but buffer access time increases due to discontinuous accesses

Engineering Contradiction:
Improvebuffer access organizationVSAvoidbuffer access time
Core Design Contradiction:
Ease of operationVSLoss of time

Solution Approach 1:

The patent merges multiple information types (luminance, chrominance, motion vectors, motion vector differences, and other encoding parameters) into a single continuous buffer space, eliminating the need for multiple separate buffer spaces. This allows the encoder to access all required information types for a macroblock unit in one continuous memory access operation, significantly reducing buffer access time while maintaining proper data organization through offset calculations.

Inventive Principle:
Principle #5Merging (Combining)

2Loss of time

If parallel buffers are used to minimize buffer access operations, then access time is reduced, but system complexity and cost increase due to requiring twenty-two parallel buffers

Engineering Contradiction:
Improvebuffer access operationsVSAvoidbuffer system complexity
Core Design Contradiction:
Loss of timeVSDevice complexity

Solution Approach 1:

Instead of implementing twenty-two separate parallel buffers for different information types, the patent combines all information types into a single buffer structure. The encoder accesses this unified buffer using calculated offsets based on the macroblock unit position and information type, achieving efficient parallel access semantics without the physical complexity of multiple buffer structures.

Inventive Principle:
Principle #5Merging (Combining)

Solution Approach 2:

The single buffer space serves multiple functions by storing all types of macroblock unit information (luminance, chrominance, motion vectors, motion vector differences, and other encoding parameters). The buffer is designed to handle diverse data types universally through offset-based addressing, eliminating the need for specialized buffer structures for each information type.

Inventive Principle:
Principle #6Universality (Multi-functionality)

3Loss of information

If multiple discontinuous buffer accesses are performed for encoding a macroblock unit, then all required information types can be retrieved, but encoding complexity and access overhead increase

Engineering Contradiction:
Improveinformation retrieval completenessVSAvoidencoding process complexity
Core Design Contradiction:
Loss of informationVSDevice complexity

Solution Approach 1:

The patent pre-organizes all information types for each macroblock unit in a continuous buffer space with predictable offset patterns. Before encoding begins, the buffer is structured so that all required information (luminance, chrominance, motion vectors, motion vector differences) is positioned at known locations, allowing the encoder to retrieve all data in a single access operation without complex multi-step retrieval processes.

Inventive Principle:
Principle #10Preliminary action

Data Source

PatentUS8737469B1Video encoding system and method
Publication Date: 2014.05.27 MEDIATEK INC
  • US8737469B1 patent drawing
  • US8737469B1 patent drawing
  • US8737469B1 patent drawing

AI summary

A method for encoding macroblock units of a video image, and a related system are disclosed. The method includes: receiving the video image; generating a plurality of information types of a first macroblock unit; and storing the information types of the first macroblock unit in a continuous address space in the buffer. The system includes: an encoder, for receiving the video image, and generating a plurality of information types of a first macroblock unit; and a buffer, coupled to the encoder, for storing the information types of the first macroblock unit in a continuous address space in the buffer.