Video Encoding Convex Hull Optimization

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Conventional video encoding techniques require the same encoding parameters for the entire media title to meet a target quality metric, leading to inefficiencies as not all portions of the media title need the same resources, resulting in excessive computational and storage resource consumption.

Innovation Solution

A computer-implemented method that generates encoded chunks with optimized encoding parameters for each portion of the video sequence, using convex hull operations to compute data points that maximize bitrate for a given level of distortion, allowing for different encoding parameters across the sequence.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Manufacturing precision

If the same encoding parameters are used for the entire media title to meet a target quality metric, then the quality metric is satisfied, but computational and storage resources are excessively consumed

Engineering Contradiction:
Improvequality metricVSAvoidcomputational and storage resources
Core Design Contradiction:
Manufacturing precisionVSLoss of energy

Solution Approach 1:

The patent divides the video sequence into multiple chunks and performs separate convex hull operations on each chunk's data points. This segmentation allows different encoding parameters to be applied to different portions of the video, avoiding the need to use high encoding parameters for the entire video sequence and thereby reducing overall computational and storage resource consumption while maintaining quality where needed.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The patent applies different encoding parameters to different chunks of the video sequence based on their specific characteristics. By performing convex hull operations independently on each chunk's data points and selecting optimal points based on local slope values, the system achieves local optimization rather than uniform encoding, reducing resources spent on portions that don't require high quality encoding.

Inventive Principle:
Principle #3Local quality

2Manufacturing precision

If high bitrate encoding is used to achieve high visual quality, then visual quality increases, but bitrate and storage resources increase

Engineering Contradiction:
Improvevisual qualityVSAvoidbitrate and storage resources
Core Design Contradiction:
Manufacturing precisionVSQuantity of substance

Solution Approach 1:

The patent changes encoding parameters dynamically across different video chunks by performing convex hull operations on data points generated from each chunk. This allows the system to adjust bitrate and quality parameters locally based on content characteristics, achieving high visual quality only where necessary and reducing overall bitrate and storage requirements compared to uniform high-bitrate encoding.

Inventive Principle:
Principle #35Parameter changes

Data Source

PatentEP3656129B1Encoding techniques for optimizing distortion and bitrate
Publication Date: 2024.11.20 NETFLIX INC
  • EP3656129B1 patent drawingFigure 1A
  • EP3656129B1 patent drawingFigure 1B
  • EP3656129B1 patent drawingFigure 2

AI summary

An encoding engine encodes a video sequence to provide optimal quality for a given bitrate. The encoding engine cuts the video sequence into a collection of shot sequences. Each shot sequence includes video frames captured from a particular capture point. The encoding engine resamples each shot sequence across a range of different resolutions, encodes each resampled sequence with a range of quality parameters, and then upsamples each encoded sequence to the original resolution of the video sequence. For each upsampled sequence, the encoding engine computes a quality metric and generates a data point that includes the quality metric and the resample resolution. The encoding engine collects all such data points and then computes the convex hull of the resultant data set. Based on all convex hulls across all shot sequences, the encoding engine determines an optimal collection of shot sequences for a range of bitrates.