IP Library Granted Patent US 10,929,391
Granted Patent B2
US 10,929,391 · App. 14/241,250 · Granted Feb 23, 2021

System and method for identifying availability of media items

Inventors: Gregory Allan Funk (San Francisco, CA); Yongsung Kim (Menlo Park, CA); Richard Bragg (Los Altos, CA)
Assignee: Google LLC
G06F16/244G06F16/41G06F16/43G06F16/48
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 10,929,391
App. No.
14/241,250
Granted
Feb 23, 2021
Kind
B2
Abstract

A system, computer-readable storage medium storing at least one program, and a computer-implemented method for identifying availability of media items is presented. A search query is received from a client device of a user. Instances of media items that satisfy the search query and that are available on content sources accessible to the client device of the user are identified. Aggregate information for the media items is determined based on the instances of the media items. The aggregate information for the media items is transmitted to the client device.

Claims (121)

1. A computer-implemented method for identifying availability of media items, performed on a server having at least one processor and memory storing at least one program for execution by the at least one processor to perform the method, comprising:

receiving a search query from a client device of a user;

in response to receiving the search query, determining content sources accessible to the client device of the user, wherein the content sources accessible to the client device of the user include at least one of: a first content source from which the client device has purchased rights to obtain media items and a second content source for which the client device has a subscription;

determining instances of media items that satisfy the search query and that are available on the content sources accessible to the client device of the user, wherein one of the media items is associated with two or more of the instances that are provided by two or more of the content sources accessible to the client device of the user;

aggregating information for each of the media items based on the instances of the media items to determine the aggregate information for each of the media items, including, for each media item,

determining a number of unique content sources on which the instances of the media item are accessible to the client device of the user, wherein the number of unique content sources for a respective media item of the media items that satisfy the search query and that are available on the content sources accessible to the client device of the user is two or more; and

determining the aggregate information regarding the instances of the media item that are provided by the number of unique content sources accessible to the client device of the user; and

enabling display of the aggregate information for each of the media items in a respective entry on a graphical user interface of the client device, wherein the aggregate information for the media items includes, for the respective media item, information regarding the two or more unique content sources on which instances of the respective media item are accessible to the client device of the user.

2. The computer-implemented method of claim 1 , wherein identifying the instances of the media items that satisfy the search query and that are available on the content sources accessible to the client device of the user includes:

querying a search index using the search query to identify content identifiers for the media items that satisfy the search query; and

querying an availability database using the content identifiers and information relating to the content sources accessible to the client device of the user to identify the instances of the media items that satisfy the search query and that are available on the content sources accessible to the client device of the user.

3. The computer-implemented method of claim 2 , wherein a respective content identifier is selected from the group consisting of:

a respective identifier for a respective series of related media items; and

a respective identifier for a respective media item.

4. The computer-implemented method of claim 2 , wherein prior to querying the search index using the search query to identify the content identifiers for the media items that satisfy the search query, the method includes:

obtaining metadata for the instances of the media items from metadata providers;

identifying unique media items based on the metadata for the instances of the media items; and

for each unique media item,

assigning a content identifier for the unique media item; and

storing the metadata for the unique media item and the content identifier for the unique media item in the search index.

5. The computer-implemented method of claim 4 , wherein the method includes:

identifying unique series of media items based on the metadata for the instances of the media items; and

for each unique series of media items,

assigning a content identifier for the unique series of media items; and

storing the metadata for the unique series of media items and the content identifier for the unique series of media items in the search index.

6. The computer-implemented method of claim 4 , wherein the method includes:

for each instance of the media item,

identifying a content source of the instance of the media item;

identifying the content identifier of the media item; and

storing the metadata for the instance of the media item, the content identifier for the media items, and the content source of the instance of the media item in the availability database.

7. The computer-implemented method of claim 1 , wherein determining the aggregate information for the media items based on the instances of the media items includes:

identifying subsets of media items that are members of a series of related media items;

for the series of related media items,

determining a number of unique instances of the media items across the content sources accessible to the client device of the user; and

associating in the aggregate information the series of related media items with the number of unique instances of the media item;

wherein enabling display of the aggregate information for the media items includes enabling display of the number of unique instances of the media item on the graphical user interface of the client device.

8. The computer-implemented method of claim 7 , further comprising:

for each series of related media items,

determining a most recent unique instance of the media item; and

associating in the aggregate information the series of related media items with the most recent unique instance of the media item.

9. The computer-implemented method of claim 7 , further comprising:

for each series of related media items,

determining an oldest instance of the media item; and

associating in the aggregate information the series of related media items with the oldest instance of the media item.

10. The computer-implemented method of claim 7 , further comprising:

for each series of related media items,

determining a completeness of the instances of the media item; and

associating in the aggregate information the series of related media items with the completeness of the instances of the media item.

11. The computer-implemented method of claim 1 , wherein determining the aggregate information for the media items based on the instances of the media items includes:

for each media item,

determining a content source that is most frequently selected; and

associating in the aggregate information the media item with content source that is most frequently selected;

wherein enabling display of the aggregate information for the media items includes enabling display of information of the content source on the graphical user interface of the client device.

12. The computer-implemented method of claim 1 , wherein determining the aggregate information for the media items based on the instances of the media items includes:

for each media item,

determining time periods during which the media item is available on the content sources; and

associating in the aggregate information the media item with the time periods during which the media item is available on the content sources.

13. The computer-implemented method of claim 1 , wherein determining the aggregate information for the media items based on the instances of the media items includes:

for each media item,

determining a future time at which the media item will available on the content sources; and

associating in the aggregate information the media item with the future time at which the media item will available on the content sources.

14. The computer-implemented method of claim 1 , wherein determining the aggregate information for the media items based on the instances of the media items includes:

for each media item,

determining that the media item is currently rented by the user of the client device;

determining a content source from which the media item is currently rented;

determining a remaining time that the media item is accessible on the content source; and

associating in the aggregate information the media item with the content source from which the media item is currently rented and the remaining time that the media item is accessible on the content source.

15. The computer-implemented method of claim 1 , wherein determining the aggregate information for the media items based on the instances of the media items includes:

for each media item,

determining that the media item was previously purchased by the user of the client device;

determining a content source from which the media item was purchased;

determining a date when the media item was purchased; and

associating in the aggregate information the media item with the content source from which the media item was purchased and the date when the media item was purchased.

16. The computer-implemented method of claim 1 , wherein prior to identifying the instances of media items that satisfy the search query and that are available on the content sources accessible to the client device of the user, the method includes receiving information relating to the content sources accessible to the client device of the user from the client device of the user.

17. The computer-implemented method of claim 1 , wherein prior to identifying the instances of media items that satisfy the search query and that are available on the content sources accessible to the client device of the user, the method includes:

identifying the user of the client device; and obtaining information relating to the content sources accessible to the client device of the user from a profile of the identified user stored on the server.

18. The computer-implemented method of claim 1 , wherein at least a portion of the aggregate information is displayed in a search bar in a user interface of the client device of the user.

19. The computer-implemented method of claim 1 , wherein a respective content source is selected from the group consisting of:

a digital video recorder;

a satellite radio channel;

an over-the-air radio channel;

an over-the-air television channel;

a satellite television channel;

a cable television channel;

a cable music channel;

an Internet Protocol television channel; and

a streaming media service.

20. The computer-implemented method of claim 1 , wherein a respective media item is selected from the group consisting of:

a movie;

a video;

a television program;

a book;

an issue of a magazine;

an article;

a song; and

a game.

21. A system for identifying availability of media items, comprising:

at least one processor;

memory; and

at least one program stored in the memory and executable by the at least one processor, the at least one program comprising instructions to:

receive a search query from a client device of a user;

in response to receiving the search query, determine content sources accessible to the client device of the user, wherein the content sources accessible to the client device of the user include at least one of: a first content source from which the client device has purchased rights to obtain media items and a second content source for which the client device has a subscription;

determine instances of media items that satisfy the search query and that are available on the content sources accessible to the client device of the user, wherein one of the media items is associated with two or more of the instances that are provided by two or more of the content sources accessible to the client device of the user;

aggregating information for each of the media items based on the instances of the media items to determine the aggregate information for each of the media items, including, for each media item,

determining a number of unique content sources on which the instances of the media item is accessible to the client device of the user, wherein the number of unique content sources for a respective media item of the media items that satisfy the search query and that are available on the content sources accessible to the client device of the user is two or more; and

determining the aggregate information regarding the instances of the media item that are provided by the number of unique content sources accessible to the client device of the user; and

enable display of the aggregate information for each of the media items in a respective entry on a graphical user interface of the client device, wherein the aggregate information for the media items includes, for the respective media item, information regarding the two or more unique content sources on which instances of the respective media item are accessible to the client device of the user.

22. The system of claim 21 , wherein the instructions to identify the instances of the media items that satisfy the search query and that are available on the content sources accessible to the client device of the user include instructions to:

query a search index using the search query to identify content identifiers for the media items that satisfy the search query; and

query an availability database using the content identifiers and information relating to the content sources accessible to the client device of the user to identify the instances of the media items that satisfy the search query and that are available on the content sources accessible to the client device of the user.

23. A non-transitory computer-readable storage medium storing at least one program configured for execution by at least one processor of a computer system, the at least one program comprising instructions to:

receive a search query from a client device of a user;

in response to receiving the search query, determine content sources accessible to the client device of the user, wherein the content sources accessible to the client device of the user include at least one of: a first content source from which the client device has purchased rights to obtain media items and a second content source for which the client device has a subscription;

determine instances of media items that satisfy the search query and that are available on the content sources accessible to the client device of the user, wherein one of the media items is associated with two or more of the instances that are provided by two or more of the content sources accessible to the client device of the user;

aggregating information for each of the media items based on the instances of the media items to determine the aggregate information for each of the media items, including, for each media item,

determining a number of unique content sources on which the instances of the media item is accessible to the client device of the user, wherein the number of unique content sources for a respective media item of the media items that satisfy the search query and that are available on the content sources accessible to the client device of the user is two or more; and

determining the aggregate information regarding the instances of the media item that are provided by the number of unique content sources accessible to the client device of the user; and

enable display of the aggregate information for each of the media items in a respective entry on a graphical user interface of the client device, wherein the aggregate information for the media items includes, for the respective media item, information regarding the two or more unique content sources on which instances of the respective media item are accessible to the client device of the user.

24. The non-transitory computer-readable storage medium of claim 23 , wherein the instructions to identify the instances of the media items that satisfy the search query and that are available on the content sources accessible to the client device of the user include instructions to:

query a search index using the search query to identify content identifiers for the media items that satisfy the search query; and

query an availability database using the content identifiers and information relating to the content sources accessible to the client device of the user to identify the instances of the media items that satisfy the search query and that are available on the content sources accessible to the client device of the user.

Assignments (3)
ENTITY CONVERSION Recorded Sep 23, 2024
From: GOOGLE INC.
To: GOOGLE LLC
Reel/Frame 069018/0376 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Sep 23, 2024
From: FUNK, GREGORY ALLAN; KIM, YONGSUNG; BRAGG, RICHARD
To: GOOGLE INC.
Reel/Frame 069018/0422 →
CHANGE OF NAME Recorded Dec 5, 2017
From: GOOGLE INC.
To: GOOGLE LLC
Reel/Frame 044695/0115 →
Continuity (2)
Provisional Application 61528095 · Aug 26, 2011
Related Publication 20150088891A1 · Mar 26, 2015