IP Library Granted Patent US 9,705,951
Granted Patent B2
US 9,705,951 · App. 14/703,659 · Granted Jul 11, 2017

Method and apparatus for instant playback of a movie

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 9,705,951
App. No.
14/703,659
Granted
Jul 11, 2017
Kind
B2
Abstract

Method and systems for classifying and segmenting a file or a collection of media data are disclosed. According one aspect, each title in a library of titles are divided into a header and a plurality of segments. Furthermore, a library of titles is categorized into a first band and a second band, based on popularity. Titles in the first band are more popular and segments of the titles are distributed to all subscriber units. Titles in the second band are less popular and only a percentage of the segments of titles in the second band are distributed to each subscriber unit. In some embodiments, each subscriber unit has segments of approximately five percent of titles in the second band. The header of each title is distributed to each subscriber unit. When a subscriber unit requests a title, an instruction is made to a set of subscriber units that have segments of the title to distribute the segments to the requesting subscriber unit. Other embodiments are disclosed.

Claims (74)

1. A method comprising:

categorizing, by a computer system, a library of titles into a first band and a second band, wherein first titles of the library of titles placed in the first band have a greater popularity than second titles of the library of titles placed in the second band;

dividing, by the computer system, each title in the library of titles into a header and a sequence of data blocks;

defining, by the computer system, segments from the sequence of data blocks;

distributing, by the computer system, the header of each title of the library of titles into each of a plurality of subscriber units;

distributing, by the computer system, at least one segment of each title of the first titles categorized in the first band to each of the plurality of subscriber units;

distributing, by the computer system, at least one segment of a portion of the second titles categorized in the second band to each subscriber unit in the plurality subscriber units;

determining (1) minimum uploading and downloading speeds in bits per second and (2) a required transmission rate in bits per second of a network associated with each of the plurality of subscriber units;

receiving, by the computer system, from a requesting subscriber unit within the plurality of subscriber units, a request for one title from the library of titles; and

transmitting, by the computer system, an instruction to the plurality of subscriber units to simultaneously transmit segments of the one title to the requesting subscriber unit.

2. The method of claim 1 wherein:

the plurality of subscriber units transmit the segments of the one title to the requesting subscriber unit at a rate at least as great as a playback rate of the one title at the requesting subscriber unit.

3. The method of claim 1 wherein:

for each subscriber unit in the plurality of subscriber units, the portion of the second titles categorized in the second band to be distributed comprises approximately only 5 percent of the second titles categorized in the second band.

4. The method of claim 3 wherein:

for each subscriber unit in the plurality of subscriber units, the portion of the second titles categorized in the second band to be distributed is randomly selected from the second titles categorized in the second band.

5. The method of claim 1 wherein:

for each subscriber unit in the plurality of subscriber units, the portion of the second titles categorized in the second band to be distributed is randomly selected from the second titles categorized in the second band.

6. The method of claim 1 wherein:

for each subscriber unit in the plurality of subscriber units, the portion of the second titles categorized in the second band to be distributed to a particular subscriber unit of the plurality of subscriber units is chosen using a learning engine that calculates a likelihood of the particular subscriber unit requesting a specific title of the second titles based on criteria selected from the following: previously viewed titles of the library of titles on the particular subscriber unit; previously rated titles of the library of titles on the particular subscriber unit; a wish list created by a person associated with the particular subscriber unit; and a browsing history of the particular subscriber unit.

7. The method of claim 6 wherein:

the learning engine uses collaborative filtering to determine a similarity between two titles of the library of titles; and

the collaborative filtering is used to match title attributes to preferred attributes associated with each subscriber unit of the plurality of subscriber units.

8. The method of claim 1 wherein:

the segments comprise interleaved non-consecutive data blocks from the sequence of data blocks.

9. The method of claim 1 further comprising:

further dividing the second band to create a third band, wherein the second titles of the library of titles placed in the second band have a greater popularity than third titles of the library of titles placed in the third band.

10. The method of claim 1 wherein:

each title of the library of titles includes one or both of audio and video data.

11. A system comprising:

one or more processing modules; and

one or more non-transitory storage modules storing computing instructions configured to run on the one or more processing modules and perform acts of:

categorizing a library of titles into a first band and a second band, wherein first titles of the library of titles placed in the first band have a greater popularity than second titles of the library of titles placed in the second band;

dividing each title in the library of titles into a header and a sequence of data blocks;

defining segments from the sequence of data blocks;

distributing the header of each title of the library of titles into each of a plurality of subscriber units;

distributing at least one segment of each title of the first titles categorized in the first band to each of the plurality of subscriber units;

distributing one segment of a portion of the second titles categorized in the second band to each of the plurality of subscriber units;

determining (1) minimum uploading and downloading speeds in bits per second and (2) a required transmission rate in bits per second of a network associated with each of the plurality of subscriber units;

receiving, from a requesting subscriber unit within the plurality of subscriber units, a request for one title from the library of titles; and

transmitting an instruction to the plurality of subscriber units to simultaneously transmit segments of the one title to the requesting subscriber unit.

12. The system of claim 11 wherein:

for each subscriber unit in the plurality of subscriber units, the portion of the second titles categorized in the second band to be distributed comprises approximately 5 percent of the second titles categorized in the second band.

13. The system of claim 12 wherein:

for each subscriber unit in the plurality of subscriber units, the portion of the second titles categorized in the second band to be distributed is randomly selected from the second titles categorized in the second band.

14. The system of claim 11 wherein:

for each subscriber unit in the plurality of subscriber units, the portion of the second titles categorized in the second band to be distributed is randomly selected from the second titles categorized in the second band.

15. The system of claim 11 wherein:

for each subscriber unit in the plurality of subscriber units, the portion of the second titles categorized in the second band to be distributed to a particular subscriber unit of the plurality of subscriber units is chosen using a learning engine that calculates a likelihood of the particular subscriber unit requesting a specific title of the second titles based on criteria selected from the following: previously viewed titles of the library of titles on the particular subscriber unit; previously rated titles of the library of titles on the particular subscriber unit; a wish list created by a person associated with the particular subscriber unit; and a browsing history of the particular subscriber unit.

16. The system of claim 15 wherein:

the learning engine uses collaborative filtering to determine a similarity between two titles of the library of titles within the library of titles; and

the collaborative filtering is used to match title attributes to preferred attributes associated with each subscriber unit of the plurality of subscriber units.

17. The system of claim 11 wherein:

the segments comprise interleaved non-consecutive data blocks from the sequence of data blocks.

18. The system of claim 11 wherein:

the computing instructions are further configured to run on the one or more processing modules and perform an act of:

further dividing the second band to create a third band, wherein the second titles of the library of titles placed in the second band have a greater popularity than third titles of the library of titles placed in the third band.

19. The system of claim 11 wherein:

each title of the library of titles includes one or both of audio and video data.

20. The system of claim 11 wherein:

the plurality of subscriber units transmit the segments at a rate at least as great as a playback rate of the one title of the requesting subscriber unit.

21. A method comprising:

determining a number of bands for a library of titles;

classifying titles in the library of titles into one of the number of bands;

determining a number of segments for the titles in each of the number of bands, the number of segments comprising interleaved non-consecutive data blocks from a sequence of data blocks for each title in the library of titles;

determining (1) minimum uploading and downloading speeds in bits per second and (2) a required transmission rate in bits per second of a network associated with each of a plurality of subscriber boxes; and

determining which subscriber box within the plurality of subscriber boxes to cache no segments of the number of segments or at least one segment of the number of segments for each title in the library of titles in accordance with a scheme.

22. The method of claim 21 further comprising:

receiving information about a new title added to the library of titles;

determining that the new title is to be classified in a first band of the number of bands;

determining which pre-existing title of the library of titles previously classified in the first band is to be moved to a different band within the number of bands;

moving the pre-existing title to the different band;

adding the new title into the first band; and

distributing release of the new title according to criteria of the first band.

Assignments (4)
CORRECTIVE ASSIGNMENT TO CORRECT THE COVERSHEET TO EXCLUDE APP. NO. 11368308, WHICH WAS INADVERTENTLY ADDED AT THE TIME OF RECORDING THE ASSIGNMENT PREVIOUSLY RECORDED AT REEL: 053609 FRAME: 0302. ASSIGNOR(S) HEREBY CONFIRMS THE ASSIGNMENT. Recorded Jan 18, 2022
From: VUDU, LLC
To: NBCUNIVERSAL MEDIA LLC
Reel/Frame 058756/0244 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Aug 26, 2020
From: VUDU, LLC
To: NBCUNIVERSAL MEDIA LLC
Reel/Frame 053609/0302 →
CHANGE OF NAME Recorded Aug 24, 2020
From: VUDU, INC.
To: VUDU, LLC
Reel/Frame 053585/0162 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded May 5, 2015
From: GANESAN, PRASANNA
To: VUDU, INC.
Reel/Frame 035569/0316 →