IP Library › Granted Patent US 12,335,488
Granted Patent B2
US 12,335,488 · App. 18/455,939 · Granted Jun 17, 2025

Content-aware predictive bitrate ladder

Inventors: Weidong Mao (West Windsor, NJ); Alexander Giladi (Princeton, NJ); Alex Balk (Mountlake Terrace, WA)
Assignee: Comcast Cable Communications, LLC
H04N19/147H04N19/115H04N19/127H04N19/184H04N19/197H04N19/36H04N19/463H04N21/23418H04N21/23439H04N21/2353H04N21/2402H04L65/70H04L65/80H04N19/124H04N19/15H04N19/154H04N21/21815H04N21/222H04N21/231
View Patent ↗
Loading inventors, assignments & file history…
Monitor This Case
Get email alerts when status or documents change.
Order Certified Copies
Most orders are placed with the USPTO same day — all within 24 business hours.
Order via The Patent Place →
Pre-filled with this patent's details
Quick Facts
Patent No.
US 12,335,488
App. No.
18/455,939
Granted
Jun 17, 2025
Kind
B2
Abstract

Methods, systems, and apparatuses may encode a media content item based on metadata from previous encoding. The encoding may also generate encoding metadata, which may comprise a qualitative or quantitative characterization of the encoded media content item. A prediction engine may, based on this metadata, determine new encoding settings for the same or a different video resolution. The prediction engine may cause an encoded media content item to be stored and may cause encoding of the media content item using the new encoding settings.

Claims (67)

1. A method comprising:

receiving, by a computing device, first metadata indicative of encoding of a media content item at a first resolution and in accordance with a first Quantization Parameter (QP);

determining, based on the first metadata and different metadata indicative of one or more other encodings of the media content item, a metadata trend;

determining, based on a quality of the encoding of the media content item at the first resolution and in accordance with the first QP, to encode the media content item at a second resolution, wherein the second resolution is higher than the first resolution;

determining, based on the metadata trend and based on the determining to encode the media content item at the second resolution, a second QP for encoding the media content item at the second resolution; and

sending, to an encoder, an indication of the determined second QP for encoding of the media content item at the second resolution.

2. The method of claim 1 , further comprising:

determining, based on the metadata trend and second metadata indicative of encoding of the media content item at the second resolution and in accordance with the second QP, a third QP for encoding the media content item at the second resolution; and

sending an indication of the determined third QP for encoding the media content item at the second resolution.

3. The method of claim 1 , further comprising:

determining, based on the metadata trend and second metadata indicative of encoding of the media content item at the second resolution and in accordance with the second QP, that a quality of the media content item encoded at the second resolution and in accordance with the second QP is not optimized; and

sending, based on the determining that the quality of the media content item encoded at the second resolution and in accordance with the second QP is not optimized, an indication of a different QP for encoding the media content item at the second resolution.

4. The method of claim 1 , further comprising:

determining, based on the metadata trend and second metadata indicative of encoding of the media content item at the second resolution and in accordance with the second QP, that a quality of the media content item encoded at the second resolution and in accordance with the second QP is optimized; and

sending, based on the determining that the quality of the media content item encoded at the second resolution and in accordance with the second QP is optimized, an indication of a new QP for encoding the media content item at a third resolution higher than the second resolution.

5. The method of claim 1 , further comprising:

determining, based on the metadata trend and second metadata indicative of encoding of the media content item at the second resolution and in accordance with the second QP, that a quality of the media content item encoded at the second resolution and in accordance with the second QP is not optimized; and

sending, based on the determining that the quality of the media content item encoded at the second resolution and in accordance with the second QP is not optimized, an indication of a lower QP for encoding the media content item at the second resolution.

6. The method of claim 1 , further comprising:

sending, to a second encoder different from the encoder, and based on second metadata indicative of encoding of the media content item at the second resolution and in accordance with the second QP, an indication to encode the media content item.

7. The method of claim 1 , further comprising:

determining, based on the metadata trend and second metadata indicative of encoding of the media content item at the second resolution and in accordance with the second QP, a third QP for encoding the media content item at a third resolution higher than the second resolution; and

sending the determined third QP for encoding the media content item at the third resolution.

8. The method of claim 1 , further comprising:

determining, based on the metadata trend and second metadata indicative of encoding of the media content item at the second resolution and in accordance with the second QP, that a quality of the media content item encoded at the second resolution and in accordance with the second QP is not optimized; and

sending, based on the determining that the quality of the media content item encoded at the second resolution and in accordance with the second QP is not optimized, an indication of a lower frame rate for encoding the media content item at the second resolution.

9. The method of claim 1 , wherein the determining the metadata trend is further based on encodings of a second media content item.

10. A computing device comprising:

one or more processors; and

memory storing instructions that, when executed by the one or more processors, cause the computing device to:

receive first metadata indicative of encoding of a media content item at a first resolution and in accordance with a first Quantization Parameter (QP);

determine, based on the first metadata and different metadata indicative of one or more other encodings of the media content item, a metadata trend;

determine, based on a quality of the encoding of the media content item at the first resolution and in accordance with the first QP, to encode the media content item at a second resolution, wherein the second resolution is higher than the first resolution;

determine, based on the metadata trend and based on the determining to encode the media content item at the second resolution, a second QP for encoding the media content item at the second resolution; and

send, to an encoder, an indication of the determined second QP for encoding of the media content item at the second resolution.

11. The computing device of claim 10 , wherein the instructions, when executed, further cause the computing device to:

determine, based on the metadata trend and second metadata indicative of encoding of the media content item at the second resolution and in accordance with the second QP, a third QP for encoding the media content item at the second resolution; and

send an indication of the determined third QP for encoding the media content item at the second resolution.

12. The computing device of claim 10 , wherein the instructions, when executed, further cause the computing device to:

determine, based on the metadata trend and second metadata indicative of encoding of the media content item at the second resolution and in accordance with the second QP, that a quality of the media content item encoded at the second resolution and in accordance with the second QP is not optimized; and

send, based on the determining that the quality of the media content item encoded at the second resolution and in accordance with the second QP is not optimized, an indication of a different QP for encoding the media content item at the second resolution.

13. The computing device of claim 10 , wherein the instructions, when executed, further cause the computing device to:

determine, based on the metadata trend and second metadata indicative of encoding of the media content item at the second resolution and in accordance with the second QP, that a quality of the media content item encoded at the second resolution and in accordance with the second QP is optimized; and

send, based on the determining that the quality of the media content item encoded at the second resolution and in accordance with the second QP is optimized, an indication of a new QP for encoding the media content item at a third resolution higher than the second resolution.

14. The computing device of claim 10 , wherein the instructions, when executed, further cause the computing device to:

determine, based on the metadata trend and second metadata indicative of encoding of the media content item at the second resolution and in accordance with the second QP, that a quality of the media content item encoded at the second resolution and in accordance with the second QP is not optimized; and

send, based on the determining that the quality of the media content item encoded at the second resolution and in accordance with the second QP is not optimized, an indication of a lower QP for encoding the media content item at the second resolution.

15. The computing device of claim 10 , wherein the instructions, when executed, further cause the computing device to:

send, to a second encoder different from the encoder, and based on second metadata indicative of encoding of the media content item at the second resolution and in accordance with the second QP, an indication to encode the media content item.

16. One or more non-transitory computer-readable media storing instructions that, when executed, cause:

receiving, by a computing device, first metadata indicative of encoding of a media content item at a first resolution and in accordance with a first Quantization Parameter (QP);

determining, based on the first metadata and different metadata indicative of one or more other encodings of the media content item, a metadata trend;

determining, based on a quality of the encoding of the media content item at the first resolution and in accordance with the first QP, to encode the media content item at a second resolution, wherein the second resolution is higher than the first resolution;

determining, based on the metadata trend and based on the determining to encode the media content item at the second resolution, a second QP for encoding the media content item at the second resolution; and

sending, to an encoder, an indication of the determined second QP for encoding of the media content item at the second resolution.

17. The one or more non-transitory computer-readable media of claim 16 , wherein the instructions, when executed, further cause:

determining, based on the metadata trend and second metadata indicative of encoding of the media content item at the second resolution and in accordance with the second QP, a third QP for encoding the media content item at the second resolution; and

sending an indication of the determined third QP for encoding the media content item at the second resolution.

18. The one or more non-transitory computer-readable media of claim 16 , wherein the instructions, when executed, further cause:

determining, based on the metadata trend and second metadata indicative of encoding of the media content item at the second resolution and in accordance with the second QP, that a quality of the media content item encoded at the second resolution and in accordance with the second QP is not optimized; and

sending, based on the determining that the quality of the media content item encoded at the second resolution and in accordance with the second QP is not optimized, an indication of a different QP for encoding the media content item at the second resolution.

19. The one or more non-transitory computer-readable media of claim 16 , wherein the instructions, when executed, further cause:

determining, based on the metadata trend and second metadata indicative of encoding of the media content item at the second resolution and in accordance with the second QP, that a quality of the media content item encoded at the second resolution and in accordance with the second QP is optimized; and

sending, based on the determining that the quality of the media content item encoded at the second resolution and in accordance with the second QP is optimized, an indication of a new QP for encoding the media content item at a third resolution higher than the second resolution.

20. The one or more non-transitory computer-readable media of claim 16 , wherein the instructions, when executed, further cause:

determining, based on the metadata trend and second metadata indicative of encoding of the media content item at the second resolution and in accordance with the second QP, that a quality of the media content item encoded at the second resolution and in accordance with the second QP is not optimized; and

sending, based on the determining that the quality of the media content item encoded at the second resolution and in accordance with the second QP is not optimized, an indication of a lower QP for encoding the media content item at the second resolution.

Assignments (1)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded May 22, 2024
From: MAO, WEIDONG; GILADI, ALEXANDER; BALK, ALEX
To: COMCAST CABLE COMMUNICATIONS, LLC
Reel/Frame 067493/0097 →
Continuity (5)
Continuation 17725099 · Apr 20, 2022
Continuation 16918119 · Jul 1, 2020
Continuation 16235105 · Dec 28, 2018
Provisional Application 62611304 · Dec 28, 2017
Related Publication 20240107026A1 · Mar 28, 2024
References Cited (21)
US 10742708B2 · Katsavounidis et al. · 2020 [cited by applicant]
US 20120275512A1 · Bouton et al. · 2012 [cited by applicant]
US 20140359678A1 · Shivadas et al. · 2014 [cited by applicant]
US 20150341632A1 · Syed et al. · 2015 [cited by applicant]
US 20160088322A1 · Horev · 2016 [cited by examiner]
US 20160248474A1 · Gilson · 2016 [cited by applicant]
US 20160295216A1 · Aaron et al. · 2016 [cited by applicant]
US 20160337680A1 · Kalagi et al. · 2016 [cited by applicant]
US 20170048536A1 · Forehand et al. · 2017 [cited by applicant]
US 20170142417A1 · Deen · 2017 [cited by examiner]
US 20170264968A1 · Mao et al. · 2017 [cited by applicant]
US 20170359580A1 · Su et al. · 2017 [cited by applicant]
US 20180192070A1 · Dupuis et al. · 2018 [cited by applicant]
US 20180343468A1 · Harrell · 2018 [cited by examiner]
US 20190124392A1 · Chakra · 2019 [cited by examiner]
EP 1195992A1 · 2002 [cited by applicant]
Mar. 25, 2024—European Office Action—EP App. No. 18248184.6. [cited by applicant]
“Per-Title Encode Optimization,” Netflix Technology Blog, Medium, Dec. 14, 2015, https://medium.com/netflix-techblog/per-title-encode-optimization-7e99442b62a2. [cited by applicant]
“Command Line Options,” x265 Documentation, MulticoreWare Inc, 2014, https://x265.readthedocs.io/en/default/cli.html. [cited by applicant]
Mar. 41, 2019—Extended European Search Report—EP 18248184.6. [cited by applicant]
Jul. 21, 2021—European Office Action—EP 18248184.6. [cited by applicant]