Reverse Video Playback Using Ping-Pong Buffer Decoding
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Conventional entertainment devices struggle to play high definition video streams in reverse smoothly due to memory and computational limitations, resulting in choppy playback experiences for users.
Innovation Solution
A method involving the use of multiple buffers to decode and store sequences of presentable frames in a forward direction, allowing for seamless reverse playback by alternating between buffers in a ping-pong operation, enabling smooth reverse video playback on low-cost set-top box hardware.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Quantity of substance
If conventional entertainment devices decode and store video frames in a single buffer for reverse playback, then memory usage is reduced, but playback smoothness deteriorates due to insufficient memory resources
Solution Approach 1:
The patent divides the video frame storage into multiple separate buffers (first buffer, second buffer, third buffer, fourth buffer) instead of using a single buffer. This segmentation allows the system to manage memory resources more effectively while maintaining sufficient capacity for smooth reverse playback. Each buffer stores specific sequences of frames (e.g., first buffer stores frames from first to second I-frames, second buffer stores frames from third to fourth I-frames), enabling efficient memory utilization without compromising playback quality.
2Manufacturing precision
If conventional devices use complex decoding processes for high definition video, then video quality is improved, but computational complexity increases causing choppy playback
Solution Approach 1:
The patent performs preliminary decoding of video frames into multiple buffers before reverse playback is required. By pre-decoding and storing frame sequences in the first, second, third, and fourth buffers during forward playback or idle periods, the system prepares the necessary data in advance. This preliminary action reduces the computational burden during actual reverse playback, allowing smooth high-definition playback without real-time decoding complexity.
Solution Approach 2:
The patent introduces multiple buffers as intermediary storage structures between the video data source and the display output. These buffers act as mediators that decouple the complex decoding process from the playback process. The buffers store pre-decoded frame sequences, allowing the display system to retrieve and show frames in reverse order without requiring complex real-time decoding operations, thus reducing computational complexity while maintaining video quality.
3Quantity of substance
If conventional devices play reverse video by decoding frames in real-time, then memory resources are conserved, but playback speed and smoothness deteriorate
Solution Approach 1:
The patent segments video frame storage across multiple buffers (first buffer for frames 1-2, second buffer for frames 3-4, etc.) rather than using a single large buffer or real-time decoding. This segmentation allows efficient memory resource distribution while enabling fast retrieval of frames for reverse playback. The system can quickly switch between buffers to maintain continuous playback at normal or faster speeds without requiring excessive memory resources.
Data Source
Figure 1
Figure 2
Figure 3
AI summary
There is disclosed a method to play video in reverse and a related entertainment device and computer program. The entertainment device (214) includes an input circuit (117) to receive a stream of video data, a memory (130) configurable as a plurality of buffers (132,134), a video decoder module, an on-screen display controller, and a processing unit. The processing unit (119) directs the video decoder module (118) to decode a first segment of the stream of video data into a first series of presentable frames and store the first series of presentable frames in a first buffer. The processing unit (119) further directs the video decoder module (118) to decode a second segment of the stream of video data into a second series of presentable frames for storage in a second buffer, and concurrent with the decoding of the second segment, the processing unit (119) directs the on-screen display controller (124) to output the first series of presentable frames from the first buffer in a reverse direction.