Manifest Synchronization for Adaptive Video Streaming
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Current adaptive video streaming systems do not effectively utilize locally cached content, leading to suboptimal video quality as clients may request segments from content servers without considering higher quality versions available in local caches.
Innovation Solution
A method that involves receiving a manifest file, identifying locally stored encoded segments of higher quality, and generating an updated manifest file to replace lower quality segment references with those of higher quality segments cached locally, ensuring the video client retrieves the highest quality segments available.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Manufacturing precision
If clients request video segments from content servers based on the original manifest, then network delivery is simplified, but video quality is suboptimal because higher quality cached segments are not utilized
Solution Approach 1:
The system performs preliminary actions by generating an updated manifest file before video playback, which identifies and replaces references to lower quality segments with references to higher quality locally cached segments. This preliminary manifest update ensures that when clients request segments, they automatically receive the highest quality versions available without requiring complex real-time decisions during playback
Solution Approach 2:
The synchronisation module acts as an intermediary between the original manifest, local cache, and video client. It receives the original manifest, compares it with locally cached segments, generates an updated manifest with optimized segment references, and provides this to the client. This intermediary process resolves the contradiction by adding quality optimization logic without exposing complexity to the client
2Loss of time
If video segments are streamed from remote content servers, then content delivery is straightforward, but network latency and bandwidth usage increase
Solution Approach 1:
The system applies local quality by prioritizing locally cached video segments over remote server segments. The synchronisation module identifies segments available in the local cache and generates manifest references pointing to these local resources, thereby reducing network latency and bandwidth consumption while maintaining or improving video quality
3Manufacturing precision
If the manifest file is updated to reference locally cached higher quality segments, then video quality improves, but the synchronisation module and cache management become more complex
Solution Approach 1:
The synchronisation module performs the complex manifest update operation in advance, before video playback begins. It compares the original manifest with the local cache contents, identifies higher quality cached segments, and generates an updated manifest with optimized references. This preliminary processing consolidates the complexity into a one-time operation rather than continuous complexity during playback
Data Source
Figure 1
Figure 2
Figure 3
AI summary
The invention presents a method of providing a modified manifest to a video client for streaming a video sequence associated with the manifest. An original manifest is modified to replace references to locations of lower quality, or bit rate, segments with references to equivalent segments at a higher quality, or bit rate, if the higher quality segment is cached locally. Then, when the video client determines that a given quality of segment should be streamed, it uses the modified manifest to retrieve the appropriate reference for that segment, and if a replacement has taken place, will be provided with the reference to the replacement segment at the higher quality. Thus, the client will always be provided with the highest possible quality segment taking into account local caching.