IP Library Granted Patent US 12,634,489
Granted Patent B2
US 12,634,489 · App. 18/101,968 · Granted May 19, 2026

Faster hybrid three pass encoding for video streaming

Inventors: Adithyan Ilangovan (Klagenfurt am Wörthersee, AT); Radu Ruse (Berlin, DE); Martin Smole (Klagenfurt am Wörthersee, AT); Armin Trattnig (Klagenfurt am Wörthersee, AT)
Assignee: Bitmovin GmbH
H04N19/192G06V20/49H04N19/14
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,634,489
App. No.
18/101,968
Granted
May 19, 2026
Kind
B2
Abstract

The technology described herein relates to hybrid three pass encoding for video streaming. A method for hybrid three pass encoding may include performing a first pass encoding of a video input using a lower complexity encoder, splitting the video input into segments, performing a two pass encoding of each of the segments using a higher complexity encoder and the complexity curve generated in the first pass encoding, and outputting an encoded version of the video input. The first pass using a lower complexity encoder significantly reduces the encoding time and end-to-end encoding complexity. In some embodiments, the first pass may be performed on one of many renditions of the video input, the resulting complexity curve being used for subsequent two pass encodings of many or all renditions of the video input.

Claims (43)

1 . A method for hybrid three pass encoding, comprising:

performing a first pass encoding of a rendition of a video input using a lower complexity encoder, thereby generating a complexity curve for the video input;

splitting the rendition of the video input into a plurality of segments;

performing a two pass encoding of each of the plurality of segments using a higher complexity encoder and the complexity curve generated in the first pass encoding; and

outputting an encoded rendition of the video input,

wherein a first encoding time for performing the first pass encoding is at least 25% less than a second encoding time for performing the two pass encoding.

2 . The method of claim 1 , wherein the complexity curve from the first pass encoding characterizes an overarching shape of a complexity of the video input as a whole.

3 . The method of claim 1 , wherein the first pass encoding of the video input comprises an H.264 encoding.

4 . The method of claim 1 , wherein the two pass encoding of each of the plurality of segments comprises an AV1 encoding.

5 . The method of claim 1 , wherein the first pass encoding comprises a constant rate factor encoding.

6 . The method of claim 1 , further comprising performing the first pass encoding on another rendition of the video input, thereby generating another complexity curve.

7 . The method of claim 6 , further comprising combining the complexity curve with the other complexity curve using a mapping function configured to output a combined complexity curve, wherein the two pass encoding is performed using the combined complexity curve.

8 . The method of claim 1 , wherein the first encoding time for performing the first pass encoding is at least 40% less than the second encoding time for performing the two pass encoding.

9 . The method of claim 1 , wherein the first encoding time for performing the first pass encoding is at least 50% less than the second encoding time for performing the two pass encoding.

10 . A system for hybrid three pass encoding, comprising:

a memory comprising non-transitory computer-readable storage medium configured to store video data;

one or more processors configured to execute instructions stored on the non-transitory computer-readable storage medium to:

perform a first pass encoding of a video input using a lower complexity encoder, thereby generating a complexity curve for the video input;

split the video input into a plurality of segments;

perform a two pass encoding of each of the plurality of segments using a higher complexity encoder and the complexity curve generated in the first pass encoding; and

output an encoded rendition of the video input,

wherein a first encoding time for performing the first pass encoding is at least 25% less than a second encoding time for performing the two pass encoding.

11 . The system of claim 10 , wherein the lower complexity encoder comprises an H.264 encoder.

12 . The method of claim 10 , wherein the higher complexity encoder comprises an AV1 encoder.

13 . A method for hybrid three pass encoding, comprising:

performing a first pass encoding of a rendition of a video input using a lower complexity encoder, thereby generating a complexity curve for the rendition of the video input, the rendition comprising one of a plurality of renditions;

splitting each of the plurality of renditions into a plurality of segments;

performing two pass encoding on each of the plurality of segments for the plurality of renditions using a higher complexity encoder and the complexity curve for the rendition; and

outputting a plurality of encoded renditions of the video input,

wherein a first encoding time for performing the first pass encoding is at least 25% less than a second encoding time for performing the two pass encoding.

14 . The method of claim 13 , wherein the complexity curve from the first pass encoding characterizes an overarching shape of a complexity of the video input as a whole.

15 . The method of claim 13 , wherein the first pass encoding of the video input comprises an H.264 encoding.

16 . The method of claim 13 , wherein the two pass encoding of each of the plurality of segments comprises an AV1 encoding.

17 . The method of claim 13 , wherein the first pass encoding comprises a constant rate factor encoding.

18 . The method of claim 13 , wherein the first encoding time for performing the first pass encoding is at least 40% less than the second encoding time for performing the two pass encoding.

19 . A system for hybrid three pass encoding, comprising:

a memory comprising non-transitory computer-readable storage medium configured to store video data;

one or more processors configured to execute instructions stored on the non-transitory computer-readable storage medium to:

perform a first pass encoding of a rendition of a video input using a lower complexity encoder, thereby generating a complexity curve for the rendition of the video input, the rendition comprising one of a plurality of renditions;

split each of the plurality of renditions into a plurality of segments;

perform two pass encoding on each of the plurality of segments for the plurality of renditions using a higher complexity encoder and the complexity curve for the rendition; and

output a plurality of encoded renditions of the video input,

wherein a first encoding time for performing the first pass encoding is at least 25% less than a second encoding time for performing the two pass encoding.

Assignments (1)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded May 1, 2023
From: ILANGOVAN, ADITHYAN; RUSE, RADU; SMOLE, MARTIN; TRATTNIG, ARMIN
To: BITMOVIN, GMBH
Reel/Frame 063491/0446 →
Continuity (1)
Related Publication 20240259574A1 · Aug 1, 2024
References Cited (40)
US 10104413B2 · Phillips et al. · 2018 [cited by applicant]
US 10419773B1 · Wei et al. · 2019 [cited by applicant]
US 10499081B1 · Wang et al. · 2019 [cited by applicant]
US 10798399B1 · Wei et al. · 2020 [cited by applicant]
US 10958947B1 · Wei et al. · 2021 [cited by applicant]
US 11445168B1 · Wei et al. · 2022 [cited by applicant]
US 20050018881A1 · Peker et al. · 2005 [cited by applicant]
US 20100189183A1 · Gu et al. · 2010 [cited by applicant]
US 20110305273A1 · He et al. · 2011 [cited by applicant]
US 20120147958A1 · Ronca · 2012 [cited by applicant]
US 20130089142A1 · Begen et al. · 2013 [cited by applicant]
US 20130282917A1 · Reznik et al. · 2013 [cited by applicant]
US 20160073106A1 · Su · 2016 [cited by applicant]
US 20160134881A1 · Wang · 2016 [cited by applicant]
US 20170078574A1 · Puntambekar · 2017 [cited by examiner]
US 20170078686A1 · Coward et al. · 2017 [cited by applicant]
US 20180014050A1 · Phillips et al. · 2018 [cited by applicant]
US 20180338146A1 · John · 2018 [cited by applicant]
US 20190028745A1 · Katsavounidis · 2019 [cited by applicant]
US 20190075301A1 · Chou et al. · 2019 [cited by applicant]
US 20190132591A1 · Zhang et al. · 2019 [cited by applicant]
US 20190289296A1 · Kottke et al. · 2019 [cited by applicant]
US 20200412784A1 · Yamagishi et al. · 2020 [cited by applicant]
US 20230012862A1 · Kossentini et al. · 2023 [cited by applicant]
Bentaleb et al., “A Survey on Bitrate Adaptation Schemes for Streaming Media Over HTTP,”, IEEE Communications Surveys & Tutorials, vol. 21, No. 1, 2019, pp. 562-585. [cited by applicant]
Jain et al., “Throughput Fairness Index: An Explaination”, 1984, p. - 13. [cited by applicant]
Mehrabi et al., “Edge Computing Assisted Adaptive Mobile Video Streaming”, IEE Transactions on Mobile Computing, vol. 18, No. 4, Apr. 2019, pp. 787-800. [cited by applicant]
Lederer et al., “Dynamic Adaptive Streaming over HTTP Dataset”, Proceedings of the 3rd Multimedia Systems Conference, Feb. 2012, pp. 89-94. [cited by applicant]
Ericsson, “Ericsson Mobility Report”, Nov. 2019, pp. 1-36. [cited by applicant]
ETSI, “Mobile Edge Computing A Key Technology Towards 5G”, ETSI White Paper No. 11, Sep. 2015, pp. 1-16. [cited by applicant]
Nguyen et al., “Adaptation Method for Video Streaming over HTTP/2”, IEICE Communications Express Comex, vol. 1, pp. 1-6, https://www.researchgate.netpublication/292213198_Adaptation_Method_for_Video_Streaming_over_HTTP2… [cited by applicant]
3GPP “3GPP TS 26.247. Progressive Download and Dynamic Adaptive Streaming over HTTP (3GP-DASH)”, 2015, pp. 1, https://portal.3gpp.org/desktopmodules/Specifications/SpecificationDetails.aspx?specificationId=1444. [cited by applicant]
Gernot Zwantschko, “What is Per-Title Encoding? How to Efficiently Compress Video”, Bitmovin, pp. 1-14, https://bitmovin.com/per-title-encoding/. [cited by applicant]
V.V Menon et al., “Efficient Content-Adaptive Feature-Based Shot Detection for HTTP Adaptive Streaming” IEEE, May 20, 2021, pp. 1-2, https://www.youtube.com/watch?v=jkA1R0shpTc. [cited by applicant]
Liu et al., “Video Super-Resolution Based on Deep Learning: A Comprehensive Survey”, arXiv:2007.12928v3 [cs.CV], Mar. 16, 2022, pp. 1-33. [cited by applicant]
Jon Dahl, “Instant Per-Title Encoding”, MUX, Apr. 17, 2018, pp. 1-8, https://mux.com/blog/instant-per-title-encoding/. [cited by applicant]
Ledig et al., “Photo-Realistic Single Image Super-Resolution Using a Generative Adversarial Network”, arXiv:1609.04802, May 25, 2017, pp. 1-19, http:/arxiv.org/abs/1609.04802. [cited by applicant]
Mishra et al., “A Survey on Deep Neural Network Compression: Challenges, Overview, and Solutions”, arXiv:2010.03954, Oct. 5, 2020, pp. 1-19, https://arxiv.org/abs/2010.03954. [cited by applicant]
Li et al., “Toward A Practical Perceptual Video Quality Metric”, Netflix Technology Blog, Jun. 5, 2016, pp. 1-23, https://netflixtechblog.com/toward-a-practical-perceptual-video-quality-metric-653f208b9652. [cited by applicant]
Menon et al., “ETPS: Efficient Two-pass Encoding Scheme for Adaptive Live Streaming,” Athena, https://www.youtube.com/watch?v=-pb3VJtrBN4, Oct. 16-19, 2022, pp. 1-2. [cited by applicant]