Low-Latency Video Streaming With Adaptive FEC Renditions

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

In video streaming, particularly in broadcast scenarios, reducing latency is challenging due to the need to transmit video content to multiple viewers simultaneously, which can hinder real-time viewing experiences of live events like gaming or sports.

Innovation Solution

The implementation of adaptive bitrate streaming with multiple rendition versions, including predictive frames only, and the use of protocols like WebRTC that do not require packet retransmission, along with edge node FEC coding, to minimize latency while maintaining quality.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Reliability

If traditional broadcast streaming protocols are used to transmit video to multiple viewers, then reliability and error correction are improved, but latency increases

Engineering Contradiction:
Improveerror correctionVSAvoidlatency
Core Design Contradiction:
ReliabilityVSLoss of time

Solution Approach 1:

Forward error correction (FEC) codes are pre-encoded into the video stream before transmission. This preliminary encoding allows the receiver to reconstruct lost packets without requiring retransmission, thereby reducing latency while maintaining reliability. The FEC data is prepared in advance and embedded in the stream, enabling immediate error recovery upon packet loss.

Inventive Principle:
Principle #10Preliminary action

Solution Approach 2:

FEC codes act as an intermediary mechanism between the transmitter and receiver. Instead of direct retransmission requests (which add latency), the FEC codes mediate the error recovery process by providing redundant information that allows the receiver to autonomously correct errors, eliminating the need for interactive retransmission protocols.

Inventive Principle:
Principle #24Intermediary (Mediator)

2Reliability

If packet retransmission protocols are used to ensure data integrity, then reliability is improved, but latency increases due to retransmission delays

Engineering Contradiction:
Improvedata integrityVSAvoidretransmission delay
Core Design Contradiction:
ReliabilityVSLoss of time

Solution Approach 1:

Redundant FEC code data is prepared and embedded in the video stream before transmission occurs. This preliminary preparation eliminates the need for post-transmission retransmission requests and responses, allowing immediate error recovery and significantly reducing the retransmission delay that would otherwise occur with traditional protocols.

Inventive Principle:
Principle #10Preliminary action

3Adaptability or versatility

If video is encoded with multiple renditions and versions for adaptive bitrate streaming, then adaptability to network conditions is improved, but device complexity increases

Engineering Contradiction:
Improveadaptive bitrate streamingVSAvoidencoding complexity
Core Design Contradiction:
Adaptability or versatilityVSDevice complexity

Solution Approach 1:

The video content is segmented into multiple renditions (different resolutions, bitrates, and frame rates) and further divided into versions with different FEC code rates. This segmentation allows the system to offer varied quality levels and error protection levels to match different network conditions and device capabilities, improving adaptability while distributing the encoding complexity across multiple standardized streams.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The system dynamically selects and switches between different rendition versions based on real-time network conditions and device capabilities. This dynamic adaptation allows the streaming service to optimize quality and latency for each viewer without requiring complex real-time encoding decisions, as the encoding complexity is resolved during the initial creation of multiple static versions.

Inventive Principle:
Principle #15Dynamics

4Loss of time

If low latency encoding settings are used (predictive frames only), then latency is reduced, but reliability decreases due to fewer reference frames for error recovery

Engineering Contradiction:
ImprovelatencyVSAvoiderror recovery
Core Design Contradiction:
Loss of timeVSReliability

Solution Approach 1:

FEC codes are pre-encoded into the stream during low-latency encoding, providing error recovery capability without requiring additional reference frames or retransmission. This preliminary embedding of redundancy allows the system to use aggressive low-latency encoding settings (predictive frames only) while maintaining reliability through the pre-prepared FEC data that compensates for the reduced natural error recovery capability.

Inventive Principle:
Principle #10Preliminary action

Data Source

PatentUS10327040B1Forward error correction for low latency streaming
Publication Date: 2019.06.18 TWITCH INTERACTIVE INC
  • US10327040B1 patent drawing
  • US10327040B1 patent drawing
  • US10327040B1 patent drawing

AI summary

Techniques for low latency streaming, for example in a broadcasting environment, are described herein. In some examples, one or more individual renditions may be encoded into multiple rendition versions associated with different respective latencies. Also, in some examples, one or more individual renditions may be encoded into multiple rendition versions having different respective amounts of forward error correction (FEC), for example by an edge node of a video streaming service. Also, in some examples, video may be broadcast using a protocol that does not require retransmission of lost packets, such as Web Real-Time Communication (WebRTC), which is commonly used for point-to-point transmissions. Also, in some examples, one or more servers may receive quality of service feedback information from each player to which video content is transmitted. The one or more servers may use this feedback information to select and switch between appropriate renditions and rendition versions for each player.