Live Streaming Packager Failover via Staleness Detection
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Live streaming video experiences issues with liveness, dropout, and partial content due to service interruptions and connectivity problems between the encoder and packager, leading to a poor viewing experience for clients.
Innovation Solution
A method and apparatus for failover support in live streaming video, where the packager determines the current status of media content by comparing the bootstrap file timestamp to the current time, generates dummy URL entries for missing fragments, and automatically switches to a different packager if the content is stale or incomplete, ensuring uninterrupted playback.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Reliability
If the packager continues to serve stale media content after connection loss, then the client device can maintain playback without interruption, but the viewing experience deteriorates due to liveness degradation
Solution Approach 1:
The packager performs preliminary actions by detecting connection status and preparing fallback mechanisms before complete failure occurs. The system monitors bootstrap file timestamps and connection status, proactively identifying when content becomes stale and preparing to notify the reverse proxy server for failover before the client experiences degraded playback quality.
Solution Approach 2:
The system implements feedback loops where the packager continuously monitors its own content freshness status via bootstrap file timestamps and connection status. When staleness is detected, the packager sends feedback signals to the reverse proxy server, enabling dynamic adjustment of content delivery and triggering failover procedures to maintain playback continuity while preserving liveness information.
2Loss of information
If the packager detects stale content and notifies the reverse proxy server, then failover can be triggered to maintain liveness, but the system complexity increases due to additional monitoring and communication mechanisms
Solution Approach 1:
The packager performs self-service by autonomously monitoring its own content freshness status through bootstrap file timestamp comparison and connection status detection. This self-monitoring capability eliminates the need for complex external monitoring systems, as the packager independently identifies staleness conditions and initiates appropriate failover procedures without requiring additional centralized control mechanisms.
Solution Approach 2:
The system extracts critical monitoring functions from complex centralized control systems and embeds them directly within the packager component. By taking out the staleness detection and failover initiation logic from external management systems and placing it within the packager itself, the overall system complexity is reduced while maintaining effective liveness monitoring and failover capability.
3Reliability
If the packager generates dummy URL entries for missing fragments, then playback continuity is maintained, but the content completeness deteriorates due to dropout or partial content
Solution Approach 1:
The reverse proxy server acts as an intermediary between the packager and the client device. When the packager generates dummy URL entries for missing fragments due to dropout or partial content, the reverse proxy server intercepts these requests and provides alternative content sources or error handling, thereby maintaining playback continuity while managing content completeness issues through intermediary coordination.
Solution Approach 2:
The system segments the media delivery process into distinct components: the packager generates content and dummy entries, the reverse proxy server manages failover and content substitution, and the client device handles playback. This segmentation allows each component to focus on specific aspects of maintaining continuity while managing content completeness, with the reverse proxy coordinating between packager capabilities and client requirements.
Data Source
AI summary
A computer implemented method and apparatus for receiving, at a first media content packager, a request for at least one of an index file of media segments or a media segment; creating, in response to the request for an index file, an index file comprising a plurality of universal resource locators (URLs); and sending, from the media content packager an error message when at least one of: (i) in response to a request for an index file, the created index file is determined to comprise media segments that have previously been sent from a media packager, or (ii) in response to a request for a media segment, at least one of the URLs in the index file references media content that is not available on the first packager, or a media segment is incomplete, wherein sending the error message results in receiving the request at a second media content packager.


