Warm Input Buffering for Live Video Transcoding CPU Reduction

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Current live video transcoding services, such as AWS Elemental MediaLive, face inefficiencies in preparing live inputs for streaming due to the computing-intensive decoding process, which leads to high CPU utilization and increased costs.

Innovation Solution

The implementation of 'warm' inputs, which are actively ingested and demuxed but not actively decoded, allows for reduced CPU usage by delaying decoding until an input switch is necessary, enabling efficient preparation and partial decoding of frames, thereby reducing overall computational requirements.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Productivity

If inputs are actively decoded in preparation for switching, then content switching capability is improved, but CPU utilization increases significantly

Engineering Contradiction:
Improvecontent switching capabilityVSAvoidCPU utilization
Core Design Contradiction:
ProductivityVSUse of energy by moving object

Solution Approach 1:

The patent applies preliminary action by having the demultiplexer prepare and buffer compressed video frames in advance before a switch is needed. The warm standby consumer pre-positions decoded frames in a buffer, so when switching is required, the decoded frames are already ready for immediate output. This eliminates the need for continuous active decoding while maintaining the ability to switch quickly when needed.

Inventive Principle:
Principle #10Preliminary action

Solution Approach 2:

The patent implements dynamics by creating a flexible system where the warm standby consumer can dynamically adjust its behavior. The consumer monitors when frames need to be decoded and can dynamically switch between active decoding mode and warm standby mode. This dynamic adaptation allows the system to optimize CPU utilization based on actual switching needs rather than maintaining constant high CPU usage.

Inventive Principle:
Principle #15Dynamics

2Reliability

If decoding is performed continuously for input preparation, then content availability is improved, but computational resources are exhausted

Engineering Contradiction:
Improvecontent availabilityVSAvoidcomputational resources
Core Design Contradiction:
ReliabilityVSPower

Solution Approach 1:

The demultiplexer performs preliminary action by continuously extracting and buffering compressed video frames from the input stream before decoding is actually needed. This pre-positioning of compressed data allows the system to maintain content availability while avoiding continuous computational decoding, as the compressed frames can be quickly decoded only when required for switching.

Inventive Principle:
Principle #10Preliminary action

Solution Approach 2:

The patent applies partial action by having the warm standby consumer decode only the specific number of frames needed for switching rather than continuously decoding all incoming frames. The consumer maintains a buffer of pre-decoded frames, but only actively decodes frames when switching is anticipated or required, thus reducing overall computational resource consumption while ensuring content availability.

Inventive Principle:
Principle #16Partial or excessive action

3Speed

If a hot standby consumer decodes frames continuously, then input switching speed is improved, but CPU cost increases

Engineering Contradiction:
Improveinput switching speedVSAvoidCPU cost
Core Design Contradiction:
SpeedVSUse of energy by moving object

Solution Approach 1:

The warm standby consumer performs preliminary decoding of frames and buffers them in advance. When switching is needed, the pre-decoded frames are immediately available from the buffer, achieving fast switching without requiring continuous active decoding. This preliminary preparation maintains switching speed while significantly reducing CPU cost by limiting active decoding to only when necessary.

Inventive Principle:
Principle #10Preliminary action

Solution Approach 2:

The patent uses copying by having the warm standby consumer create copies of decoded frames in a buffer. Instead of continuously decoding new frames for switching, the system copies and stores decoded frames in advance. When switching is required, these copied frames are immediately transferred to the output, achieving fast switching with reduced computational cost.

Inventive Principle:
Principle #26Copying

Data Source

PatentUS11638044B1Preparation of warm inputs for digital content streaming
Publication Date: 2023.04.25 AMAZON TECH INC
  • US11638044B1 patent drawing
  • US11638044B1 patent drawing
  • US11638044B1 patent drawing

AI summary

Systems and methods, to efficiently prepare for live and stored file content, implement one or more warm inputs, which actively ingest and demux content, but do not actively decode the content until an input switch is commanded. Each warm input can cache a most recent instantaneous decoder refresh and subsequent reference frames (I-frames and P-frames). Upon an input switch being commanded, the subject input commences decoding of such preserved frames. The formerly-warm input then acts as a hot input (decoding every frame) until the input switch completes. The use of warm inputs, which avoid the decoding stage, reduces computational resource use, allows preparation of all inputs by default, and permits metrics, status reports, and thumbnails to be generated regarding non-active inputs.