# US 12,120,381 B2 · Systems and methods for pre-caching media content

> Agents: this data is available as JSON from the patentgrep API and MCP server — see https://patentgrep.com/llms.txt

- Number: US 12,120,381 B2
- Document ID: US12120381B2
- Status: Granted
- Kind: B2
- Application number: 18/503,087
- Filed: 2023-11-06
- Published: 2024-02-29
- Granted: 2024-10-15
- Earliest claimed: 2014-12-29
- Assignees: DISH Technologies L.L.C.
- Applicants: DISH Technologies LL.C.
- Inventors: Christopher Tirpak
- Web page: https://patentgrep.com/patent/US12120381B2

## CPC

- H04N 21/4331: {Caching operations, e.g. of an advertisement for later insertion during playback}
- H04L 65/612: for unicast
- H04N 21/431: Generation of visual interfaces {for content selection or interaction}; Content or additional data rendering
- H04N 21/4384: {involving operations to reduce the access time, e.g. fast-tuning for reducing channel switching latency}
- H04N 21/472: End-user interface for requesting content, additional data or services; End-user interface for interacting with content, e.g. for content reservation or setting reminders, for requesting event notification, for manipulating displayed content {(end-user interfaces for retrieving video data from a database G06F16/739; network services for supporting unicast streaming H04L65/612)}
- H04N 21/482: End-user interface for programme selection
- H04N: PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04L: TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION (arrangements common to telegraphic and telephonic communication H04M)

## Abstract

Methods, systems and devices to stream media content are described. A user interface is presented to a user via a media device. When the media device has determined that an interaction with the user interface has occurred (e.g., the user has begun scrolling through a list, or has performed a keyword search), the media device requests, from a media content source, a subset of first media content based on the interaction with the user interface and prior to selection of the first media content via the user interface. The subset of first media content is then displayed in response to the selection of the first media content.

## Claims

### Claim 1

A system for streaming media content from a media content server via a network, the system comprising a processor and a non-transitory data storage configured to store computer-executable instructions that, when executed by the processor, perform an automated process comprising: presenting a user interface on a display, wherein the user interface lists a plurality of available media content programs for a selection by a user of the system; determining a predicted media content program, comprising selecting the predicted media content program based on the user's historical interaction with the user interface, wherein the predicted media content program is at least one of the plurality of available media content programs, and wherein the user's historical interaction with the user interface comprises a learned likelihood, based on a plurality of historical data for the user, of the user of selecting each of the plurality of available media content programs; obtaining, prior to receiving the selection by the user, a manifest associated with the predicted media content program from the media content server, wherein the manifest comprises location information for each of a plurality of different segments of the predicted media content program; obtaining, prior to receiving the selection by the user and based on the obtained manifest, at least one segment of the predicted media content program from the media content server via the network; and displaying the obtained at least one segment upon the selection by the user of the predicted media content.

### Claim 2 (depends on 1)

The system of claim 1, wherein the automated process comprises obtaining media segments corresponding to multiple media content programs of the plurality of available media content programs until the user selects one of the available media content programs for playback, wherein the media segments are obtained from the media content server based upon the location information contained in received manifests associated with the multiple media content programs.

### Claim 3 (depends on 1)

The system of claim 1, wherein the learned likelihood is further based on a popularity of the available media content programs.

### Claim 4 (depends on 3)

The system of claim 3, wherein the user interface is configured to display the available media content programs sorted by popularity.

### Claim 5 (depends on 1)

The system of claim 1, wherein the predicted media content program selection is further based on the available media content program of the plurality of available media content programs that is currently highlighted on the user interface.

### Claim 6 (depends on 1)

The system of claim 1, wherein the learned likelihood comprises a machine learning model.

### Claim 7 (depends on 1)

The system of claim 1, wherein the location information in the manifest further associates the plurality of different segments of the predicted media content program with two or more bitrate encoded versions of the respective segments.

### Claim 8 (depends on 1)

The system of claim 1, further comprising: in response to a second plurality of available media content programs for selection by the user being presented on the display, selecting a second predicted media content based on the user's historical interaction with the user interface.

### Claim 9

An automated process performed by a media player device having a processor, a data storage, and an interface to a network, the automated process comprising: presenting a user interface on a display, wherein the user interface lists a plurality of available media content programs for a selection by a user of the media player device; determining a predicted media content program, comprising selecting the predicted media content program based on the user's historical interaction with the user interface, wherein the predicted media content program is at least one of the plurality of available media content programs, and wherein the user's historical interaction with the user interface comprises a learned likelihood, based on a plurality of historical data for the user, of the user of selecting each of the plurality of available media content programs; obtaining, prior to receiving the selection by the user, a manifest associated with the predicted media content program from a media content server via the network, wherein the manifest comprises location information for each of a plurality of different segments of the predicted media content program; obtaining, prior to receiving the selection by the user and based on the obtained manifest, at least one segment of the predicted media content program from the media content server via the network; and displaying the obtained at least one segment upon the selection by the user of the predicted media content.

### Claim 10 (depends on 9)

The automated process of claim 9, comprising obtaining media segments corresponding to multiple media content programs of the plurality of available media content programs until the user selects one of the available media content programs for playback, wherein the media segments are obtained from the media content server based upon the location information contained in received manifests associated with the multiple media content programs.

### Claim 11 (depends on 9)

The automated process of claim 9, wherein the learned likelihood is further based on a popularity of the available media content programs.

### Claim 12 (depends on 11)

The automated process of claim 11, wherein the user interface is configured to display the available media content programs sorted by popularity.

### Claim 13 (depends on 9)

The automated process of claim 9, wherein the predicted media content program selection is further based on the available media content program of the plurality of available media content programs that is currently highlighted on the user interface.

### Claim 14 (depends on 9)

The automated process of claim 9, wherein the learned likelihood comprises a machine learning model.

### Claim 15 (depends on 9)

The automated process of claim 9, wherein the location information in the manifest further associates the plurality of different segments of the predicted media content program with two or more bitrate encoded versions of the respective segments.

### Claim 16 (depends on 9)

The automated process of claim 9, further comprising: in response to a second plurality of available media content programs for selection by the user being presented on the display, selecting a second predicted media content based on the user's historical interaction with the user interface.

### Claim 17

An automated process performed by a media player device having a processor, a data storage, and an interface to a network, the automated process comprising: presenting, on a display, a plurality of available media content programs for a selection by a user of the media player device; determining a predicted media content program, comprising selecting the predicted media content program based on a learned user behavior, wherein: the predicted media content program is at least one of the plurality of available media content programs; the learned user behavior is based on a plurality of historical data for the user; wherein the learned user behavior comprises the user's historical interaction with a user interface on which the plurality of available media content programs is presented; and the learned user behavior comprises a machine learning model; obtaining, prior to receiving the selection by the user, a manifest associated with the predicted media content program from a media content server via the network, wherein the manifest comprises location information for each of a plurality of different segments of the predicted media content program;
obtaining, prior to receiving the selection by the user and based on the obtained manifest, at least one segment of the predicted media content program from the media content server via the network; and displaying the obtained at least one segment upon the selection by the user of the predicted media content.

### Claim 18 (depends on 17)

The automated process of claim 17, wherein the learned user behavior is further based on a popularity of the available media content programs.

### Claim 19 (depends on 17)

The automated process of claim 17, wherein the machine learning model is updated over time based on additional user historical interaction with the user interface.
