Media Playback Seeking via Key-Frame Decoding and Frame Freeze
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Existing media playback technologies face inaccuracies in positioning due to the inability to decode media directly from non-key frames, leading to user experience issues during fast forwarding or rewinding operations.
Innovation Solution
The method involves determining a target key frame immediately before the desired playback position, freezing the current frame, decoding media data from this frame, and resuming playback at the target time, ensuring accurate positioning and continuous playback.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Measurement precision
If media is decoded from non-key frames, then playback positioning accuracy is improved, but decoding reliability deteriorates because non-key frames cannot be decoded independently
Solution Approach 1:
The system performs preliminary identification of the target key frame before decoding begins. By pre-determining which key frame should be the decoding starting point based on the desired playback position, the system ensures that decoding always begins from a reliable key frame while aiming to achieve accurate playback positioning. This preliminary action resolves the contradiction by preparing the correct decoding starting point in advance.
Solution Approach 2:
The system introduces an intermediary mechanism that maps the desired playback position to the nearest preceding key frame. This intermediary layer (the key frame identification and selection process) mediates between the user's requested playback position and the actual decoding starting point, allowing the system to aim for precise positioning while ensuring reliable decoding from key frames.
2Reliability
If decoding starts from key frames, then decoding reliability is improved, but playback positioning accuracy deteriorates due to the gap between key frame positions and desired playback positions
Solution Approach 1:
Before decoding begins, the system performs a preliminary search to identify the target key frame that is immediately preceding the desired playback position. This preliminary identification ensures that while decoding must start from a key frame (maintaining reliability), the system selects the closest possible key frame to the desired position, minimizing the positioning gap.
Solution Approach 2:
The system changes the parameter of the decoding starting point by dynamically selecting different key frames based on the desired playback position. Instead of always starting from a fixed key frame or the nearest key frame regardless of position, the system adjusts which key frame serves as the decoding start point to optimize the balance between reliability and positioning accuracy for each seek operation.
3Measurement precision
If the system searches for the nearest key frame before playback, then playback positioning accuracy is improved, but processing time increases
Solution Approach 1:
The system performs the key frame search and identification as a preliminary action before actual playback or seeking begins. By completing this identification process in advance, the system ensures accurate positioning is achieved while the time cost is incurred before the user perceives the playback action, minimizing the perceived delay.
Solution Approach 2:
Once the target key frame is identified through the search process, the system skips directly to decoding from that key frame without unnecessary intermediate steps. This rushing through of the decoding process from the identified key frame minimizes the time spent in the actual playback preparation, balancing the initial search time with efficient subsequent processing.
4Reliability
If the system buffers media data from key frames, then decoding reliability is improved, but memory usage increases
Solution Approach 1:
The system extracts and buffers only the necessary media data segments required for reliable decoding, specifically focusing on data from identified key frames and their associated segments. By taking out only the essential data portions needed for reliable playback rather than buffering entire media files or excessive data, the system maintains decoding reliability while controlling memory consumption.
Data Source
Figure 1~2-B
Figure 2-C~3
Figure 4
AI summary
The present disclosure provides a method and an apparatus for playing media. According to an embodiment, the method comprises: generating an instruction for play progress adjustment by receiving an input from a user used for triggering play progress adjustment to the media; determining a target key frame immediately before a target time corresponding to the target position; decoding data of the media starting from the target key frame and blocking presentation of the decoded media data starting from the target key frame; and playing media data decoded starting from the target time in response to a system time clock progressing to the target time.