Websocket Media Server Push for Live Streaming Delay

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Adaptive streaming technologies face significant end-to-end delays and clock drift issues in live media streaming due to client-controlled request methodologies and lack of synchronization between clients and servers, leading to undesirable delays and HTTP 404 errors.

Innovation Solution

Implementing a persistent websocket connection over HTTP for live media streaming, allowing media servers to push media segments directly to clients in real-time, eliminating the need for client requests and enabling frequent clock synchronization, thus minimizing delays and avoiding HTTP 404 responses.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Adaptability or versatility

If client-controlled request methodology is used for adaptive streaming, then the system is compatible with widespread HTTP infrastructure, but end-to-end delay increases due to padding and client buffering

Engineering Contradiction:
ImproveHTTP infrastructure compatibilityVSAvoidend-to-end delay
Core Design Contradiction:
Adaptability or versatilityVSLoss of time

Solution Approach 1:

The patent inverts the traditional client-controlled request model by implementing a server-push model where the server proactively sends media segments to clients without waiting for requests. This reversal eliminates the need for client buffering and padding delays while maintaining HTTP infrastructure compatibility through the use of websockets and HTTP/2 server push capabilities

Inventive Principle:
Principle #13The other way round (Inversion)

Solution Approach 2:

The server prepares and sends media segments to clients in advance of when they are strictly needed for playback. By pushing segments proactively through persistent websocket connections, the system eliminates the padding delay that occurs in traditional models where clients must wait for segments to become available before requesting them

Inventive Principle:
Principle #10Preliminary action

2Reliability

If padding delay is added to account for server time variations, then segment availability issues are avoided, but overall end-to-end delay increases

Engineering Contradiction:
Improvesegment availabilityVSAvoidpadding delay
Core Design Contradiction:
ReliabilityVSLoss of time

Solution Approach 1:

The patent implements a feedback mechanism where the server tracks client playback position and segment reception status in real-time. This feedback allows the server to push segments at the optimal time - neither too early (causing padding delay) nor too late (causing availability issues) - by continuously adjusting push timing based on actual client state

Inventive Principle:
Principle #23Feedback

Solution Approach 2:

The server pushes media segments to clients in advance of when they are needed for playback, but uses the feedback mechanism to determine the optimal advance time. This preliminary action eliminates the need for arbitrary padding delays while ensuring segments are available when needed

Inventive Principle:
Principle #10Preliminary action

3Device complexity

If clock synchronization is not implemented, then system complexity is reduced, but HTTP 404 errors occur due to clock drift between client and server

Engineering Contradiction:
Improvesynchronization mechanismVSAvoidrequest accuracy
Core Design Contradiction:
Device complexityVSReliability

Solution Approach 1:

The patent implements a feedback-based clock synchronization mechanism where the server monitors client playback timing and adjusts segment push timing to compensate for clock drift. This feedback loop prevents HTTP 404 errors by ensuring segments are pushed at the correct time relative to client playback position, without requiring complex explicit clock synchronization protocols

Inventive Principle:
Principle #23Feedback

Solution Approach 2:

The server automatically detects and compensates for clock drift between itself and clients through the feedback mechanism, without requiring clients to perform complex synchronization operations. The system self-corrects timing issues through continuous monitoring and adjustment of segment push timing

Inventive Principle:
Principle #25Self-service

4Stability of the object's composition

If client buffering is increased to handle jitter, then playback stability is improved, but end-to-end delay increases

Engineering Contradiction:
Improveplayback stabilityVSAvoidbuffering delay
Core Design Contradiction:
Stability of the object's compositionVSLoss of time

Solution Approach 1:

The patent maintains a persistent websocket connection between server and client that continuously delivers media segments in real-time. This continuous delivery eliminates the need for large client buffers by ensuring segments arrive steadily and on-time, maintaining playback stability through continuous useful action rather than pre-buffering

Inventive Principle:
Principle #20Continuity of useful action

Data Source

PatentUS10110657B2System and method for pushing live media content in an adaptive streaming environment
Publication Date: 2018.10.23 TELEFONAKTIEBOLAGET LM ERICSSON (PUBL)
  • US10110657B2 patent drawing
  • US10110657B2 patent drawing
  • US10110657B2 patent drawing

AI summary

A system and method for pushing live media to a client device in an adaptive streaming environment. In one aspect, a media server configured to transmit live media includes a storage unit for storing media segments of a live media programming stream, wherein the media segments are encoded at multiple bitrates identified in respective media presentation data structures associated therewith. A websocket interface is provided that is operative to facilitate a websocket session with the client device. One or more processors of the system are operative to execute service logic for pushing the media segments to the client device substantially in real time during the websocket session.