Video Encoding Memory Sharing via Block Comparison

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Video encoders require significant memory space and bandwidth for storing reference and reconstructed frames, which increases costs as resolution increases, and existing technologies do not efficiently manage memory access.

Innovation Solution

A video encoding apparatus that generates encoded data using residual frames and determines whether to output reconstructed blocks to memory based on comparison with co-located reference blocks, eliminating identical blocks to reduce memory access and sharing memory space between reconstructed and reference frames.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Reliability

If a general video encoder uses separate frame buffers for storing reference frames and reconstructed frames, then encoding quality is maintained, but memory space requirements and memory access bandwidth demands increase significantly

Engineering Contradiction:
Improveencoding qualityVSAvoidmemory space requirements
Core Design Contradiction:
ReliabilityVSQuantity of substance

Solution Approach 1:

The patent merges the reference frame buffer and reconstructed frame buffer into a single shared memory space. The determination circuit identifies when reconstructed blocks match reference blocks, allowing the system to write once to shared memory instead of writing to separate buffers, thereby reducing total memory space requirements while maintaining encoding quality through selective sharing of frame data

Inventive Principle:
Principle #5Merging (Combining)

Solution Approach 2:

The shared memory buffer serves multiple functions: it stores both reference frames and reconstructed frames, and the determination circuit enables the memory to be efficiently accessed for both reading reference blocks and writing reconstructed blocks. This multi-functional use of a single memory space reduces the need for dedicated separate buffers while maintaining all necessary encoding operations

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

2Reliability

If a general video encoder uses separate frame buffers for reference frames and reconstructed frames, then data integrity is ensured, but memory access bandwidth demands increase

Engineering Contradiction:
Improvedata integrityVSAvoidmemory access bandwidth
Core Design Contradiction:
ReliabilityVSProductivity

Solution Approach 1:

The patent extracts and eliminates redundant memory write operations by identifying when reconstructed blocks are identical to reference blocks. The determination circuit detects these identical blocks and prevents unnecessary writes to the shared memory buffer, thereby reducing memory access bandwidth demands while maintaining data integrity through selective writing only when changes occur

Inventive Principle:
Principle #2Taking out (Extraction)

3Manufacturing precision

If resolution increases in a video encoder, then video quality improves, but memory size and cost increase

Engineering Contradiction:
Improvevideo qualityVSAvoidmemory size
Core Design Contradiction:
Manufacturing precisionVSQuantity of substance

Solution Approach 1:

The patent merges reference frame and reconstructed frame storage into a single shared buffer, which becomes increasingly beneficial as resolution increases. By eliminating the need for separate dedicated buffers for each frame type, the system achieves linear memory space reduction rather than the quadratic growth that would otherwise be required to maintain both separate buffers at high resolutions

Inventive Principle:
Principle #5Merging (Combining)

Data Source

PatentUS10638145B2Video encoding apparatus and operating method thereof
Publication Date: 2020.04.28 NOVATEK MICROELECTRONICS CORP
  • US10638145B2 patent drawing
  • US10638145B2 patent drawing
  • US10638145B2 patent drawing

AI summary

A video encoding apparatus and an operating method thereof are provided. The video encoding apparatus includes an encoding circuit, a reconstructed frame generating circuit, a deblocking filter and a determination circuit. The encoding circuit generates encoded data according to a residual frame and generates a reconstructed residual frame. The reconstructed frame generating circuit generates a first reconstructed frame according to the reconstructed residual frame and a predicted frame. The deblocking filter generates a second reconstructed frame by eliminating discontinuities in reconstructed blocks of the first reconstructed frame. The current reconstructed block is not output to the memory when a current reconstructed block is identical to a co-located reference block of a reference frame stored in the memory. The current reconstructed block is output to the memory when the current reconstructed block is different from the co-located reference block in the reference frame.