IP Library Granted Patent US 12676906
Granted Patent B2
US 12676906 · App. 17/368,668 · Granted Jul 7, 2026

Methods and systems for streaming content

Inventors: Alexander Giladi (Denver, CO); Alexander Balk (Denver, CO)
Assignee: Comcast Cable Communications, LLC
H04L65/70G06F11/1448G06F11/1464H04N21/2402H04N21/2407
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 12676906
App. No.
17/368,668
Granted
Jul 7, 2026
Kind
B2
Abstract

A computing device may receive a stream of content (e.g., a live stream of content). The computing device may determine a plurality of representations for the stream of content. The computing device may determine a primary encoder associated with each of the plurality of representations. Determining the primary encoder may be based on the plurality of representations. The computing device may determine viewer data associated with the stream of content. The computing device may determine whether to encode a backup representation for at least one of the plurality of representations. Determining whether to encode the backup representation may be based on the viewer data associated with the stream of content. The computing device may cause at least one backup encoder to encode the backup representation for the at least one of the plurality of representations.

Claims (51)

1 . A method comprising:

receiving, by a computing device, a stream of content;

determining, an encoder to encode a first representation of the stream of content;

determining a probability that use of the encoder will be terminated; and

causing, based on the probability the use of the encoder will be terminated, a second encoder to begin encoding the first representation of the stream of content.

2 . The method of claim 1 , further comprising:

determining, based on a comparison of the probability to a probability threshold, that the probability satisfies the probability threshold,

wherein causing the second encoder to begin encoding the first representation comprises causing, based on the probability satisfying the probability threshold, the second encoder to begin encoding the first representation.

3 . The method of claim 1 , further comprising causing the encoder to encode the first representation of the stream of content.

4 . The method of claim 1 , wherein the first representation of the stream of content comprises at least one of a lowest video resolution, a lowest bitrate, a lowest sampling rate, or a fewest quantity of channels of a plurality of representations for the stream of content.

5 . The method of claim 1 , wherein the encoder comprises a preemptible instance computing device.

6 . The method of claim 1 , further comprising:

determining, based on a comparison of viewer data, for the first representation of the stream of content, to a viewer threshold, that the viewer data is greater than the viewer threshold; and

determining, based on the viewer data being greater than the viewer threshold, a quantity of backup representations of the first representation of the stream of content to encode.

7 . The method of claim 6 , wherein the viewer data comprises at least one of a current quantity of viewers viewing the content, a current quantity of user devices accessing the content, a historical quantity of viewers for the content, a historical quantity of user devices accessing the content, a historical average quantity of viewers of the content, or a historical average quantity of user devices accessing the content.

8 . The method of claim 1 , further comprising:

sending a request for access to a preemptible instance computing device, wherein the preemptible instance computing device comprises the encoder; and

receiving access to the preemptible instance computing device, wherein determining the encoder to encode the first representation comprises sending encoding instructions to the preemptible instance computing device.

9 . The method of claim 5 , further comprising:

determining that the access to the preemptible instance computing device will be terminated; and

causing the second encoder to begin encoding comprises receiving use rights to a second preemptible instance computing device comprising the second encoder to encode the first representation of the stream of content.

10 . The method of claim 1 , wherein determining that the use of the encoder will be terminated further comprises at least one of receiving a termination warning message.

11 . A method comprising:

receiving, by a computing device, a stream of content;

determining a first encoder to encode a first representation of a plurality of representations of the stream of content;

determining a probability that use of the first encoder will be terminated;

determining, based on the probability that use of the first encoder will be terminated, a backup encoder to encode a backup representation for the first representation of the stream of content, wherein the first representation is encoded at a first resolution and the backup representation is encoded at the first resolution; and

causing the backup encoder to encode the backup representation.

12 . The method of claim 11 , wherein the first encoder is associated with a preemptible instance computing device, the method further comprising:

determining, based on the probability satisfying a probability threshold, a second preemptible instance computing device comprising the backup encoder for encoding of the backup representation.

13 . The method of claim 11 , wherein determining the probability the use of the first encoder will be terminated comprises determining the probability based on at least one of an instance buffer depth, a current preemptible instance computing device price, a price paid for a preemptible instance computing device comprising the first encoder, uptime of the preemptible instance computing device comprising the first encoder, a receipt of a message of a probability of termination of access to the preemptible instance computing device comprising the first encoder within a period of time, a battery state, a processor temperature, or a probability of termination information associated with the preemptible instance computing device comprising the first encoder.

14 . The method of claim 11 , further comprising:

receiving, from a preemptible instance computing device associated with the backup encoder, a message indicating that access to the preemptible instance computing device will be terminated within a period of time; and

determining, based on the message, at least one second preemptible instance computing device comprising a second backup encoder for backup encoding of the backup representation associated with the backup encoder.

15 . The method of claim 11 , wherein the first representation comprises at least one of a lowest resolution, a lowest bitrate, a lowest sampling rate, or a fewest quantity of channels for the stream of content.

16 . The method of claim 11 , wherein determining the backup encoder to encode the backup representation further comprises:

determining, based on the plurality of representations comprising the first representation, the first representation is an essential representation encoded at the first resolution; and

determining, based on the first representation being the essential representation, the backup encoder to encode the backup representation at the first resolution.

17 . The method of claim 11 , further comprising:

determining viewer data associated with the first representation of the stream of content,

wherein determining the backup encoder to encode the backup representation is further based on the viewer data.

18 . A method comprising:

receiving, by a computing device, a stream of content;

determining a preemptible instance computing device comprising a first encoder to encode a first representation of the stream of content;

causing the preemptible instance computing device to begin encoding the first representation of the stream of content;

determining, based on a bid price associated with a second preemptible instance computing device, a probability the use of the preemptible instance computing device will be terminated;

determining, based on the probability the use of the preemptible instance computing device will be terminated, another preemptible instance computing device comprising a second encoder to encode a backup representation of the stream of content, wherein the first representation is encoded at a first resolution and the backup representation is encoded at the first resolution; and

causing the second encoder to encode the backup representation for the stream of content.

19 . The method of claim 18 , wherein the first resolution is a lowest resolution of a plurality of representations of the stream of content.

20 . The method of claim 18 , further comprising:

causing the preemptible instance computing device to terminate encoding of the first representation of the stream of content.