US 11,700,376 B1
Optimizing and assigning video encoding ladders
Deepthi Nandakumar, Bengaluru (IN); Vishal Jain, Rohtak (IN); Sriram Sethuraman, Bangalore (IN); and Sandesh Ghanta, Visakhapatnam (IN)
Assigned to Amazon Technologies, Inc., Seattle, WA (US)
Filed by Amazon Technologies, Inc., Seattle, WA (US)
Filed on Sep. 28, 2021, as Appl. No. 17/449,183.
Int. Cl. H04N 19/132 (2014.01); H04N 19/146 (2014.01); H04N 19/154 (2014.01); G06N 20/00 (2019.01); H04N 19/179 (2014.01); G06F 18/23 (2023.01); G06F 18/20 (2023.01)
CPC H04N 19/132 (2014.11) [G06F 18/23 (2023.01); G06F 18/285 (2023.01); G06N 20/00 (2019.01); H04N 19/146 (2014.11); H04N 19/154 (2014.11); H04N 19/179 (2014.11)] 20 Claims
OG exemplary drawing
 
1. A computer-implemented method, comprising:
receiving a plurality of video samples, each of the video samples being associated with one of a plurality of clusters based on an optimal rate-quality (RQ) curve associated with the video sample, each cluster of the plurality of clusters having a cluster encoding ladder associated therewith, the cluster encoding ladder for each cluster being based on a first optimal RQ curve for a first video sample associated with the cluster, the cluster encoding ladder for each cluster minimizing a sum of differences for the cluster, each difference in the sum of differences being between the optimal RQ curve for one of the other video samples associated with the cluster and a candidate RQ curve derived by encoding that video sample with the cluster encoding ladder;
for each video sample of the plurality of video samples, generating a feature set representing spatial and temporal complexity of the video sample;
training a classifier to associate the video samples with the clusters using the feature set;
for a first new video sample, generating a feature set representing spatial and temporal complexity of the first new video sample;
using the classifier, associating the first new video sample with a first cluster of the plurality of clusters based on the feature set for the first new video sample, the first new video sample being one of a plurality of new video samples of a media presentation;
selecting a cluster encoding ladder associated with the first cluster from among cluster encoding ladders associated with the plurality of clusters based on a majority voting scheme;
encoding the first new video sample using the cluster encoding ladder associated with the first cluster; and
encoding all of the plurality of new video samples of the media presentation using the cluster encoding ladder associated with the first cluster.