Compressed Domain Motion Graphics Keying via Selective Macroblock Decoding
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Existing keying systems require decoding and re-encoding of compressed video streams to baseband format, leading to increased equipment costs, latency, and degraded video quality due to the need for processing uncompressed video.
Innovation Solution
Implementing a system that performs motion graphics keying directly in the compressed domain by decoding only overlapping macroblocks, combining them with the keyed graphics stream, and re-encoding the composited video within the compressed stream, thereby avoiding unnecessary decoding and re-encoding of the entire video.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Ease of operation
If compressed video streams are decoded to baseband format for keying, then keying can be performed with existing keyers, but equipment cost increases and video quality degrades due to decoding and re-encoding
Solution Approach 1:
The video stream is divided into macroblocks, and only the specific macroblocks that overlap with the keyed graphics are decoded to baseband format. This segmented approach allows keying to be performed on only the necessary portions of the video, avoiding the quality degradation associated with decoding and re-encoding the entire video stream.
Solution Approach 2:
Different processing approaches are applied to different regions of the video stream. Overlapping macroblocks undergo decoding and keying operations, while non-overlapping macroblocks remain in compressed format. This local quality principle ensures that video quality is maintained in regions where keying is not needed, while still achieving the keying effect where required.
2Ease of operation
If compressed video streams are decoded to baseband format for keying, then keying can be performed with existing keyers, but processing time increases due to additional decoding and re-encoding steps
Solution Approach 1:
The video stream is divided into macroblocks, and only the specific macroblocks that overlap with the keyed graphics are decoded to baseband format. This segmented approach allows keying to be performed on only the necessary portions of the video, reducing the total processing time compared to decoding and re-encoding the entire video stream.
Solution Approach 2:
Instead of performing the complete decode-key-encode cycle on the entire video stream, the system performs partial decoding only on the macroblocks that require keying. This partial action significantly reduces processing time while still achieving the desired keying effect on the overlapping regions.
3Ease of operation
If compressed video streams are decoded to baseband format for keying, then keying can be performed, but equipment cost increases due to additional decoding and re-encoding equipment
Solution Approach 1:
The system integrates multiple functions into a single processing pipeline that can handle both compressed video streaming and selective macroblock decoding within the same device. This multi-functionality eliminates the need for separate decoding and re-encoding equipment, reducing overall system cost while maintaining keying capability.
Solution Approach 2:
The video stream is divided into macroblocks, and only the specific macroblocks that overlap with the keyed graphics are decoded to baseband format. This segmented approach allows keying to be performed on only the necessary portions of the video, avoiding the need for complete video decoding infrastructure and reducing equipment costs.
Data Source
AI summary
Motion graphics keying in the compressed domain may be accomplished by receiving a compressed video stream comprising one or more source macroblocks, receiving a keyed graphics stream, determining which of the one or more source macroblocks overlaps with the keyed graphics stream, decoding only the one or more overlapping macroblocks to create one or more decoded macroblocks, combining the keyed graphics stream with the one or more decoded macroblocks to create a composited video stream, encoding the composited video stream to create an encoded composited video stream, and restoring the encoded composited video stream in the compressed video stream in place of the one or more overlapping macroblocks.


