Outer Rim Archives
Archives · 2026 · 12739453

Granted patent

Dynamic selection of candidate bitrates for video encoding

Number
12739453
Published
2026-09-15
Filed
2024-12-20
Assignee
Disney Enterprises, Inc.
Inventors
Liu; Chen, Zhang; Wenhao, Labrozzi; Scott, Xue; Yuanyi, Huangfu; Xuchang, Liu; Xiaobo
CPC
H04N21/238; H04N21/23418; H04N21/2662; H04N21/8456
Verdict
Set aside streaming, codec
In edition
2026-W38
Source
Google Patents · FreePatentsOnline

The keeper's note

a method generates a first representation of a first relationship between bitrate and quality based on first features of a first portion of a video.

Abstract

In some embodiments, a method generates a first representation of a first relationship between bitrate and quality based on first features of a first portion of a video. The first representation is analyzed to determine a first list of potential bitrates for the first portion of video. The method analyzes potential bitrates and quality associated with the respective potential bitrates to refine the first list of potential bitrates to a second list of bitrates. The second list of bitrates includes a different list of bitrates than the first list of potential bitrates. The method outputs the second list of bitrates for encoding the first portion of video.

Background

BACKGROUND (1) One method of delivering videos to client devices uses Adaptive Bitrate Streaming (ABR). Adaptive bitrate streaming is predicated on providing multiple streams (often referred to as variants or profiles) that are encoded at different levels of video attributes, such as different levels of bitrate and/or quality. A profile ladder lists different profiles that are available for a client to use when streaming segments of a video. Clients can dynamically select profiles based on network conditions and other factors. The video is segmented (e.g., split into discrete segments, usually a few seconds long each), and clients can switch from one profile to another at segment boundaries as network conditions change. For example, a video delivery system would like to provide clients with a profile that has a higher bitrate when network conditions with higher available bandwidth are being experienced, which improves the quality of the video being streamed. When network conditions with lower available bandwidth are being experienced, the video delivery system would like to provide clients with a profile with a lower bitrate such that the clients can play the video without any playback issues, such as rebuffering or downloading failures.

Claims

1. A method comprising: generating a first representation of a first relationship between bitrate and quality based on first features of a first portion of a video; analyzing the first representation to determine a first list of potential bitrates for the first portion of video; analyzing potential bitrates and quality associated with the respective potential bitrates to refine the first list of potential bitrates to a second list of bitrates, wherein the second list of bitrates includes a different list of bitrates than the first list of potential bitrates, and wherein analyzing potential bitrates and quality associated with the respective potential bitrates to refine the first list of potential bitrates to the second list of bitrates comprises: refining the first list of potential bitrates based on a quality associated with the potential bitrates to determine the second list of bitrates, wherein refining the first list of potential bitrates comprises: adding a first potential bitrate to the list of potential bitrates; and outputting the second list of bitrates for encoding the first portion of video. || 16. A method comprising: generating a first representation of a first relationship between bitrate and quality based on first features of a first portion of a video; analyzing the first representation to determine a first list of potential bitrates for the first portion of video; analyzing potential bitrates and quality associated with the respective potential bitrates to refine the first list of potential bitrates to a second list of bitrates, wherein the second list of bitrates includes a different list of bitrates than the first list of potential bitrates; outputting the second list of bitrates for encoding the first portion of video, generating a second representation of a second relationship between bitrate and quality based on second features of a second portion of the video; analyzing the second representation to determine a third list of potential bitrates for the first portion of video; analyzing potential bitrates and quality associated with the respective potential bitrates to refine the third list of potential bitrates to a fourth list of bitrates; and outputting the fourth list of bitrates for encoding the second portion of video, wherein the fourth list of bitrates is different from the second list of bitrates. || 17. A non-transitory computer-readable storage medium having stored thereon computer executable instructions, which when executed by a computing device, cause the computing device to be operable for: generating a first representation of a first relationship between bitrate and quality based on first features of a first portion of a video; analyzing the first representation to determine a first list of potential bitrates for the first portion of video; analyzing potential bitrates and quality associated with the respective potential bitrates to refine the first list of potential bitrates to a second list of bitrates, wherein the second list of bitrates includes a different list of bitrates than the first list of potential bitrates, and wherein analyzing potential bitrates and quality associated with the respective potential bitrates to refine the first list of potential bitrates to the second list of bitrates comprises: refining the first list of potential bitrates based on a quality associated with the potential bitrates to determine the second list of bitrates, wherein refining the first list of potential bitrates comprises: adding a first potential bitrate to the list of potential bitrates; and outputting the second list of bitrates for encoding the first portion of video. || 19. An apparatus comprising: one or more computer processors; and a computer-readable storage medium comprising instructions for controlling the one or more computer processors to be operable for: generating a first representation of a first relationship between bitrate and quality based on first features of a first portion of a video; analyzing the first representation to determine a first list of potential bitrates for the first portion of video; analyzing potential bitrates and quality associated with the respective potential bitrates to refine the first list of potential bitrates to a second list of bitrates, wherein the second list of bitrates includes a different list of bitrates than the first list of potential bitrates, and wherein analyzing potential bitrates and quality associated with the respective potential bitrates to refine the first list of potential bitrates to the second list of bitrates comprises: refining the first list of potential bitrates based on a quality associated with the potential bitrates to determine the second list of bitrates, wherein refining the first list of potential bitrates comprises: adding a first potential bitrate to the list of potential bitrates; and outputting the second list of bitrates for encoding the first portion of video.