Server-Based Encoded Version Selection for Low Latency Streaming

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 often overwhelms provider resources and increases latency compared to point-to-point transmissions.

Innovation Solution

The solution involves encoding video content into multiple rendition versions with varying latencies and forward error correction (FEC) levels, using protocols like UDP and WebRTC that do not require packet retransmission, and employing edge nodes for dynamic rendition and FEC selection based on network conditions, allowing for lower latency streaming without compromising quality.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Adaptability or versatility

If video content is transmitted to multiple viewers simultaneously in broadcast scenarios, then the ability to serve multiple viewers is improved, but latency increases compared to point-to-point transmissions

Engineering Contradiction:
Improveability to serve multiple viewersVSAvoidlatency
Core Design Contradiction:
Adaptability or versatilityVSLoss of time

Solution Approach 1:

The video stream is segmented into multiple encoded versions with different latency characteristics. The system divides the single broadcast stream into parallel tracks: low-latency tracks for real-time interaction and high-latency tracks for quality assurance, allowing viewers to receive appropriate segments based on their needs.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The system dynamically selects and switches between different encoded versions based on real-time network conditions and viewer requirements. Edge nodes continuously monitor network state and adaptively switch viewers between low-latency and high-latency streams, making the broadcast system flexible and responsive to changing conditions.

Inventive Principle:
Principle #15Dynamics

2Loss of time

If provider resources are focused on a single viewer in point-to-point transmissions, then latency is reduced, but the ability to serve multiple viewers simultaneously is limited

Engineering Contradiction:
ImprovelatencyVSAvoidability to serve multiple viewers
Core Design Contradiction:
Loss of timeVSAdaptability or versatility

Solution Approach 1:

The video content is segmented into multiple encoded versions with different latency optimizations. Low-latency versions use aggressive compression and fewer retransmission protocols, while high-latency versions use more robust error correction. This segmentation allows the system to provide point-to-point optimized streams to multiple viewers simultaneously without resource conflicts.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

Different portions of the broadcast system are optimized for different quality requirements. Edge nodes closer to viewers with low-latency needs provide optimized low-latency streams, while other nodes serve viewers who prioritize quality. This local optimization allows simultaneous service to multiple viewers with different requirements.

Inventive Principle:
Principle #3Local quality

3Adaptability or versatility

If multiple encoded versions with varying latencies are transmitted, then latency flexibility is improved, but device complexity increases

Engineering Contradiction:
Improvelatency flexibilityVSAvoidencoding complexity
Core Design Contradiction:
Adaptability or versatilityVSDevice complexity

Solution Approach 1:

Edge nodes serve as intermediaries between the central encoding system and end viewers. The central system generates multiple encoded versions, and edge nodes selectively distribute appropriate versions to viewers based on network conditions. This intermediary architecture distributes the complexity burden and allows efficient management of multiple encoded versions without overwhelming any single component.

Inventive Principle:
Principle #24Intermediary (Mediator)

4Reliability

If dynamic rendition and FEC selection is implemented based on network conditions, then streaming quality is improved, but system complexity increases

Engineering Contradiction:
Improvestreaming qualityVSAvoidselection system complexity
Core Design Contradiction:
ReliabilityVSDevice complexity

Solution Approach 1:

The system implements feedback loops where edge nodes continuously monitor network conditions (bandwidth, packet loss, latency) and use this information to dynamically select appropriate renditions and FEC levels. This feedback mechanism automates the quality optimization process, improving streaming reliability while managing complexity through algorithmic decision-making rather than manual configuration.

Inventive Principle:
Principle #23Feedback

Data Source

PatentUS11146834B1Server-based encoded version selection
Publication Date: 2021.10.12 TWITCH INTERACTIVE INC
  • US11146834B1 patent drawing
  • US11146834B1 patent drawing
  • US11146834B1 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.