Shared Memory Architecture for Video Transcoding Frame Duplication
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Existing video transcoding systems require significant memory resources due to the need to store multiple frames simultaneously during decoding, encoding, and displaying, especially when dealing with videos of different bit rates and resolutions, which leads to increased memory usage and costs.
Innovation Solution
A video processing system that includes a video decoder, encoder, and display controller sharing memory to generate and display decompressed frames without duplication, allowing only a limited number of frames to be stored at any given time, thereby reducing memory requirements by coordinating the decoding, encoding, and displaying processes to avoid frame duplication and overlapping usage.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Reliability
If multiple memory buffers are used to store frames during decoding, encoding, and displaying processes, then the video processing can be performed correctly with proper frame sequencing, but the memory usage increases significantly
Solution Approach 1:
The patent merges the memory resources used by the video decoder and video encoder into a shared memory space. The decoder and encoder coordinate to write to and read from the same memory buffers, eliminating the need for separate dedicated memory spaces for each component. This combining of previously separate memory resources directly reduces total memory usage while maintaining the reliability of frame processing through coordinated access protocols.
Solution Approach 2:
The memory buffers are designed to serve multiple functions and multiple components simultaneously. The same memory buffers are used by both the decoder and encoder for storing and retrieving frames, making the memory system universal rather than dedicated to a single function. This multi-functionality allows the system to perform decoding, encoding, and frame buffering operations with a unified memory resource pool, reducing overall memory requirements.
2Reliability
If frames are stored in memory during transcoding to maintain proper display order, then the video quality and synchronization are maintained, but the memory cost increases
Solution Approach 1:
The patent combines the frame storage function into a shared memory space that serves both decoding and encoding operations. By merging the previously separate storage requirements of the decoder and encoder into a unified memory system, the patent reduces redundant frame storage while maintaining the necessary frame sequences for proper video synchronization and display timing.
3Reliability
If separate memory spaces are allocated for decoder and encoder, then each component has dedicated resources for reliable operation, but the total memory requirement doubles
Solution Approach 1:
The patent merges separate memory spaces for the decoder and encoder into a shared memory resource. Instead of allocating dedicated memory buffers for each component, the system uses a unified memory space that both components access according to coordinated protocols, thereby halving the total memory requirement while maintaining operational reliability through synchronization mechanisms.
Solution Approach 2:
The patent introduces a memory management intermediary that coordinates access between the decoder and encoder to the shared memory space. This intermediary manages frame writing and reading operations, ensuring that both components can reliably access the memory they need without conflicts, thus maintaining component operation reliability while enabling memory sharing.
Data Source
AI summary
A video processing apparatus includes a video decoder and a video encoder to process video frames. The video decoder generates decompressed frames from first compressed video frames and write the decompressed frames to a memory, at least one of the decompressed frames being generated using information from a previously generated decompressed frame. The video encoder generates second compressed video frames from the decompressed frames without duplicating the decompressed frames.


