# US 9,521,452 B2 · System and method for pre-caching a first portion of a video file on a media device

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

- Number: US 9,521,452 B2
- Document ID: US9521452B2
- Status: Granted
- Kind: B2
- Application number: 14/516,041
- Filed: 2014-10-16
- Published: 2015-02-05
- Granted: 2016-12-13
- Earliest claimed: 2004-07-29
- Assignees: AT&T Intellectual Property I, L.P.
- Applicants: At&T Intellectual Property I, L.P.
- Inventors: Philip Ted Kortum; Marc Andrew Sullivan
- Web page: https://patentgrep.com/patent/US9521452B2

## CPC

- H04N 21/4331: {Caching operations, e.g. of an advertisement for later insertion during playback}
- H04N 7/17318: {Direct or substantially direct transmission and handling of requests}
- H04N 21/2401: {Monitoring of the client buffer}
- H04N 21/25891: {being end-user preferences (retrieval of video data in a video database based on user preferences G06F16/739; arrangements for recognizing users' preferences H04H60/46; user profiles in network data switching protocols H04L67/306; processing of user preferences or user profiles in wireless networks H04W8/18)}
- H04N 21/44209: {Monitoring of downstream path of the transmission network originating from a server, e.g. bandwidth variations of a wireless network (arrangements for maintenance or administration in data switching networks involving bandwidth and capacity management H04L41/0896)}
- H04N 21/4755: {for defining user preferences, e.g. favourite actors or genre (retrieval personalisation and generation of user profiles for the retrieval of video data G06F16/739; user profiles in network data switching protocols H04L67/306)}
- H04N 21/6582: {Data stored in the client, e.g. viewing habits, hardware capabilities, credit card number (arrangements where receivers interact with the broadcast H04H20/38)}
- H04N 21/812: {involving advertisement data (advertising per se G06Q30/02)}
- H04N: PICTORIAL COMMUNICATION, e.g. TELEVISION

## Abstract

A method includes determining an available bandwidth of a data interface connected to a media device. The method includes receiving a first portion of each of a plurality of video files and storing the first portion of each of the plurality of video files in a memory. A size of the memory to store each first portion is determined based on a pre-cache file size associated with a video file of the plurality of video files. The pre-cache file size is based on the available bandwidth. The method further includes, in response to detecting a change in the available bandwidth, adjusting the pre-cache file size associated with the video file, where the pre-cache file size decreases when the available bandwidth increases to a second available bandwidth.

## Claims

### Claim 1

A method comprising:
determining an available bandwidth of a network interface connected to a media device;
receiving a first portion of each of a plurality of video files, wherein the first portion of each of the plurality of video files includes a corresponding first sub-portion and a corresponding second sub-portion;
storing the first portion of each of the plurality of video files in a memory within the media device, wherein a size of the memory to store each first portion is determined based on a pre-cache file size associated with a particular video file of the plurality of video files; and
in response to detecting an increase in the available bandwidth, adjusting content of each first portion, wherein adjusting content of each first portion includes removing, for each first portion of each of the plurality of video files, the corresponding second sub-portion from the memory.

### Claim 2 (depends on 1)

The method of claim 1, further comprising displaying a list of video titles at a display device, each video title on the list corresponding to a particular video file having the first portion stored in the memory and a second portion that is downloadable from a source while the first portion is displayed at the display device.

### Claim 3 (depends on 1)

The method of claim 1, further comprising, prior to receiving the first portion of each of the plurality of video files, determining, based on the available bandwidth, the pre-cache file size associated with each first portion of the plurality of video files.

### Claim 4 (depends on 1)

The method of claim 1, further comprising increasing a number of video files that have a corresponding first portion stored in the memory, wherein the pre-cache file size decreases to a second file size, and wherein the second file size corresponds to a play length equal to a period of time to download a second portion of the particular video file at a threshold bandwidth.

### Claim 5 (depends on 4)

The method of claim 4, wherein the number of video files that have a corresponding first portion stored in the memory is based on a selected portion of the memory of the media device and based on the second file size.

### Claim 6 (depends on 1)

The method of claim 1, wherein the available bandwidth is an average available bandwidth over a period of time.

### Claim 7 (depends on 1)

The method of claim 1, further comprising changing a number of video files that have a corresponding first portion stored in the memory.

### Claim 8 (depends on 7)

The method of claim 7, wherein changing the number comprises increasing the number, and further comprising:
receiving a first portion of each of a second plurality of video files in response to increasing the number of video files; and
storing the first portion of each of the second plurality of video files in the memory.

### Claim 9

An apparatus comprising:
a processor connectable to a display device, the processor configured to communicate via a network interface to a remote video content source; and
a computer-readable medium accessible by the processor, the computer-readable medium including instructions executable by the processor to perform operations including:
measuring an available bandwidth of the network interface;
receiving a first portion of each of a plurality of video files, wherein the first portion of each of the plurality of video files includes a corresponding first sub-portion and a corresponding second sub-portion;
storing the first portion of each of the plurality of video files in a memory, wherein a size of each first portion stored in the memory is determined based on a pre-cache file size associated with a video file of the plurality of video files; and
in response to detecting an increase in the available bandwidth, adjusting content of each first portion, wherein adjusting content of each first portion includes removing, for each first portion of each of the plurality of video files, the corresponding second sub-portion from the memory.

### Claim 10 (depends on 9)

The apparatus of claim 9, wherein the operations further include displaying a list of video titles at the display device, each video title on the list corresponding to a particular video file having the first portion stored in the memory and a second portion that is downloadable from a source while the first portion is displayed at the display device.

### Claim 11 (depends on 10)

The apparatus of claim 10, wherein the operations further include determining a total number of video titles in the list, the total number of video titles determined based on the available bandwidth.

### Claim 12 (depends on 10)

The apparatus of claim 10, wherein the operations further include:
receiving a selected video title from the list via a remote control unit signal; and
displaying a particular first portion that corresponds to the selected video title.

### Claim 13 (depends on 12)

The apparatus of claim 12, wherein the operations further include displaying a particular second portion that corresponds to the selected video title after the first portion has been displayed.

### Claim 14 (depends on 9)

The apparatus of claim 9, further comprising increasing a number of video files that have a corresponding first portion stored in the memory.

### Claim 15 (depends on 9)

The apparatus of claim 9, wherein the available bandwidth is a minimum available bandwidth over a period of time.

### Claim 16 (depends on 9)

The apparatus of claim 9, wherein the operations further include:
delaying playback of a selected video file that has a particular first portion downloaded to the memory;
downloading a particular second portion for the selected video file while playback of the particular first portion is delayed; and
starting playback of the selected video file in response to completing downloading of the particular second portion.

### Claim 17

A computer-readable storage device including instructions executable by a processor to perform operations including:
measuring an available bandwidth of a network interface;
receiving a first portion of each of a plurality of video files, wherein the first portion of each of the plurality of video files includes a corresponding first sub-portion and a corresponding second sub-portion;
storing the first portion of each of the plurality of video files in a memory, wherein a size of each first portion stored in the memory is determined based on a pre-cache file size associated with a video file of the plurality of video files; and
in response to detecting an increase in the available bandwidth, adjusting content of each first portion, wherein adjusting content of each first portion includes removing, for each first portion of each of the plurality of video files, the corresponding second sub-portion from the memory.

### Claim 18 (depends on 17)

The computer-readable storage device of claim 17, wherein the operations further include displaying a list of video titles at a display device coupled to the processor, each video title on the list corresponding to a particular video file having the first portion stored in the memory and a second portion that is downloadable from a source while the first portion is displayed at the display device.

### Claim 19 (depends on 18)

The computer-readable storage device of claim 18, wherein the operations further include determining a total number of video titles in the list, the total number of video titles determined based on the available bandwidth.

### Claim 20 (depends on 18)

The computer-readable storage device of claim 18, wherein the operations further include:
receiving a selected video title from the list via a remote control unit signal; and
displaying a particular first portion that corresponds to the selected video title.
