Manifest Synchronization for Adaptive Video Streaming

Resolve Bottlenecks,
Find Innovative Solutions
Generate 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

VSEngineering 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

Engineering Contradiction:
Improvevideo qualityVSAvoidmanifest management complexity
Core Design Contradiction:
Manufacturing precisionVSDevice complexity

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

Inventive Principle:
Principle #10Preliminary action

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

Inventive Principle:
Principle #24Intermediary (Mediator)

2Loss of time

If video segments are streamed from remote content servers, then content delivery is straightforward, but network latency and bandwidth usage increase

Engineering Contradiction:
Improvestreaming latencyVSAvoidnetwork bandwidth consumption
Core Design Contradiction:
Loss of timeVSLoss of energy

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

Inventive Principle:
Principle #3Local 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

Engineering Contradiction:
Improvevideo qualityVSAvoidsynchronisation module complexity
Core Design Contradiction:
Manufacturing precisionVSDevice complexity

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

Inventive Principle:
Principle #10Preliminary action

Data Source

PatentEP3028467B1Video caching
Publication Date: 2019.06.12 BRITISH TELECOM PLC
  • EP3028467B1 patent drawingFigure 1
  • EP3028467B1 patent drawingFigure 2
  • EP3028467B1 patent drawingFigure 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.