Manifest File Patch Recovery for Live Streaming

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Existing HTTP adaptive streaming systems face disruptions due to missed patches during live media streaming, as they lack mechanisms to detect and recover from missed patches, leading to potential discontinuities in playback.

Innovation Solution

A method and system that enable client devices to detect missed patches by monitoring received patches and requesting them from the server using manifest file version identifiers, ensuring continuous playback by applying the missed patches to the current manifest file.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Loss of energy

If a patch mechanism is used to update manifest files, then bandwidth consumption is reduced, but the risk of missed patches increases

Engineering Contradiction:
Improvebandwidth consumptionVSAvoidpatch reception reliability
Core Design Contradiction:
Loss of energyVSReliability

Solution Approach 1:

The server sends the publish time of the manifest file before the patch data, allowing the client to prepare and check its current manifest version in advance. This preliminary information provision enables the client to detect version mismatches and request retransmission of missed patches, thereby maintaining reliable patch reception while using the efficient patch mechanism.

Inventive Principle:
Principle #10Preliminary action

Solution Approach 2:

The client compares the publish time received from the server with its current manifest version and provides feedback by requesting retransmission of missed patches when a version mismatch is detected. This feedback mechanism ensures that patch reception reliability is maintained while still benefiting from the bandwidth efficiency of the patch mechanism.

Inventive Principle:
Principle #23Feedback

2Ease of operation

If the client skips certain segments due to pause/resume or jump start, then user control flexibility is improved, but the likelihood of missing patches increases

Engineering Contradiction:
Improveuser control flexibilityVSAvoidpatch reception completeness
Core Design Contradiction:
Ease of operationVSReliability

Solution Approach 1:

The server provides the publish time of the manifest file in advance, before the patch data is sent. This allows the client to maintain awareness of the current manifest version even when skipping segments. When the client resumes or jumps to a later segment, it can compare the published time with its stored version and detect any missed patches, ensuring complete patch reception while maintaining user control flexibility.

Inventive Principle:
Principle #10Preliminary action

3Loss of energy

If patches are sent inside segment boxes, then bandwidth efficiency is improved, but patch detection complexity increases

Engineering Contradiction:
Improvebandwidth efficiencyVSAvoidpatch detection difficulty
Core Design Contradiction:
Loss of energyVSDifficulty of detecting and measuring

Solution Approach 1:

The manifest update information including publish time is placed in the SegmentBox before the patch data. This preliminary placement of version information allows the client to easily detect patch relevance by comparing timestamps without having to parse and analyze the complex patch structure itself, thereby reducing detection complexity while maintaining bandwidth efficiency.

Inventive Principle:
Principle #10Preliminary action

Data Source

PatentUS11005906B2Updating part of a manifest file on the basis of patches
Publication Date: 2021.05.11 KONINK KPN NV
  • US11005906B2 patent drawing
  • US11005906B2 patent drawing
  • US11005906B2 patent drawing

AI summary

A method is described for providing one or more patches to a client device. The method may comprise determining manifest file version information of a manifest file that is used by the client device; detecting an indication that one or more patches have been missed, a patch comprising information for updating at least part of information in the manifest file; requesting one or more missed patches on the basis of the manifest file version information (and the version information of the manifest file that the client would obtain after having applied the last missed patch—if available); and, receiving the one or more missed patches for updating the information in the manifest file.