IP Library Granted Patent US 12,013,890
Granted Patent B2
US 12,013,890 · App. 17/570,632 · Granted Jun 18, 2024

Retrieving and playing out media content for a personalized playlist

Inventor: Venkatarama Anilkumar Panguluri (Milpitas, CA)
Assignee: Gracenote Digital Ventures, LLC
G06F16/4387
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 12,013,890
App. No.
17/570,632
Granted
Jun 18, 2024
Kind
B2
Abstract

An example method involves receiving a playlist defining a sequence of media content items including a first media content item and a second media content item; retrieving, from one or more server devices, first data representing the media content items of the received playlist, and using the retrieved first data to play out the media content items in accordance with the sequence defined by the playlist; making a determination of whether a condition has been satisfied, wherein the condition corresponds to a content category type; and responsive to the determination being that the condition has been satisfied, (i) retrieving second data representing a media content item of the content category type, and (ii) using the retrieved second data to play out the media content item of the content category type in between playing out the first and second media content items.

Claims (74)

1. A method comprising:

receiving, by a client device, a playlist defining a sequence of media content items including a first media content item and a second media content item, wherein the first and second media content items are immediately adjacent to each other in the defined sequence, wherein in the sequence, the first media content item is immediately followed by the second media content item;

retrieving, by the client device, from one or more server devices, first data representing the media content items of the received playlist, and using the retrieved first data to play out the media content items; and

while playing out at least one of the media content items represented by the retrieved first data:

making, by the client device, a determination of whether a condition has been satisfied, wherein the condition comprises a condition that a content category type has a particular relationship with at least one of the media content items that has been played out, wherein the particular relationship is at least that a client device has played out a threshold number of media content items of the content category type, and wherein the content category type is one of a plurality of different predetermined content category types; and

responsive to the determination being that the condition has been satisfied, (i) retrieving, by the client device, from the one or more server devices, second data representing a media content item that has the content category type and that is not specified in the accessed playlist, and (ii) using, by the client device, the retrieved second data to play out the media content item of the content category type in between playing out the first and second media content items.

2. The method of claim 1 , wherein the retrieved playlist is outlined by a playlist template defining a sequence of media content placeholders for media content attribute data, and

wherein media content attribute data of a particular media content placeholder of the sequence of media content placeholders includes one or more of:

a quantity tag specifying a quantity of media content items that the one or more server devices is configured to select for the media content placeholder, or

a type tag specifying a particular content category type of media content item that the one or more server devices is configured to select for the media content placeholder.

3. The method of claim 1 , wherein making the determination while playing out at least one of the media content items represented by the retrieved first data comprises making the determination after at least one of the media content items represented by the retrieved first data has been played out, and

wherein retrieving second data representing the media content item of the content category type while playing out at least one of the media content items represented by the retrieved first data comprises retrieving second data representing the media content item of the content category type after at least one of the media content items represented by the retrieved first data has been played out.

4. The method of claim 3 , wherein making the determination while playing out at least one of the media content items represented by the retrieved first data comprises making the determination while the first media content item is being played out, and

wherein retrieving second data representing the media content item of the content category type while playing out at least one of the media content items represented by the retrieved first data comprises retrieving second data representing the media content item of the content category type while the first media content item is being played out.

5. The method of claim 1 , wherein the condition comprises a condition that the first media content item is within a particular position with respect to the sequence defined by the playlist.

6. The method of claim 1 , wherein the particular relationship is further that a threshold duration has passed since the client device has played out another media content item of the content category type.

7. A non-transitory computer-readable medium having stored thereon program instructions that when executed by a processor cause performance of a set of functions, the set of functions comprising:

receiving a playlist defining a sequence of media content items including a first media content item and a second media content item, wherein the first and second media content items are immediately adjacent to each other in the defined sequence, wherein in the sequence, the first media content item is immediately followed by the second media content item;

retrieving, from one or more server devices, first data representing the media content items of the received playlist, and using the retrieved first data to play out the media content items; and

while playing out at least one of the media content items represented by the retrieved first data:

making a determination of whether a condition has been satisfied, wherein the condition comprises a condition that a content category type has a particular relationship with at least one of the media content items that has been played out, wherein the particular relationship is at least that the client device has played out a threshold number of media content items of the content category type, and wherein the content category type is one of a plurality of different predetermined content category types; and

responsive to the determination being that the condition has been satisfied, (i) retrieving, from the one or more server devices, second data representing a media content item that has the content category type and that is not specified in the accessed playlist, and (ii) using the retrieved second data to play out the media content item of the content category type in between playing out the first and second media content items.

8. The computer-readable medium of claim 7 , wherein the retrieved playlist is outlined by a playlist template defining a sequence of media content placeholders for media content attribute data, and

wherein media content attribute data of a particular media content placeholder of the sequence of media content placeholders includes one or more of:

a quantity tag specifying a quantity of media content items that the one or more server devices is configured to select for the media content placeholder, or

a type tag specifying a particular content category type of media content item that the one or more server devices is configured to select for the media content placeholder.

9. A client computing device comprising:

a processor; and

a non-transitory computer-readable medium having stored thereon program instructions that, when executed by the processor, cause the client computing device to perform a set of operations comprising:

receiving a playlist defining a sequence of media content items including a first media content item and a second media content item, wherein the first and second media content items are immediately adjacent to each other in the defined sequence, wherein in the sequence, the first media content item is immediately followed by the second media content item;

retrieving, from one or more server devices, first data representing the media content items of the received playlist, and using the retrieved first data to play out the media content items; and

while playing out at least one of the media content items represented by the retrieved first data:

making a determination of whether a condition has been satisfied, wherein the condition comprises a condition that a content category type has a particular relationship with at least one of the media content items that has been played out, wherein the particular relationship is at least that the client device has played out a threshold number of media content items of the content category type, and wherein the content category type is one of a plurality of different predetermined content category types; and

responsive to the determination being that the condition has been satisfied, (i) retrieving, from the one or more server devices, second data representing a media content item that has the content category type and that is not specified in the accessed playlist, and (ii) using the retrieved second data to play out the media content item of the content category type in between playing out the first and second media content items.

10. The client computing device of claim 9 , wherein the retrieved playlist is outlined by a playlist template defining a sequence of media content placeholders for media content attribute data, and

wherein media content attribute data of a particular media content placeholder of the sequence of media content placeholders includes one or more of:

a quantity tag specifying a quantity of media content items that the one or more server devices is configured to select for the media content placeholder, or

a type tag specifying a particular content category type of media content item that the one or more server devices is configured to select for the media content placeholder.

11. The client computing device of claim 9 , wherein the particular relationship is further that a threshold duration has passed since the client device has played out another media content item of the content category type.

12. A method comprising:

accessing, by a computing device, a playlist defining a sequence of media content items including a first media content item and a second media content item, wherein the first and second media content items are immediately adjacent to each other in the defined sequence, wherein in the sequence, the first media content item is immediately followed by the second media content item;

while a client device is playing out at least one of the media content items:

making, by the computing device, a determination of whether a condition has been satisfied, wherein the condition comprises a condition that a content category type has a particular relationship with at least one of the media content items that has been played out, wherein the particular relationship is at least that the client device has played out a threshold number of media content items of the content category type, and wherein the content category type is one of a plurality of different predetermined content category types; and

responsive to the determination being that the condition has been satisfied, (i) retrieving, by the computing device, data representing a media content item that has the content category type and that is not specified in the accessed playlist, and (ii) transmitting, by the computing device, to the client device, the retrieved data representing the media content item of the content category type, for playout in between playout of the first and second media content items.

13. The method of claim 12 , wherein the retrieved playlist is outlined by a playlist template defining a sequence of media content placeholders for media content attribute data, and

wherein media content attribute data of a particular media content placeholder of the sequence of media content placeholders includes one or more of:

a quantity tag specifying a quantity of media content items that the computing device is configured to select for the media content placeholder, or

a type tag specifying a particular content category type of media content item that the computing device is configured to select for the media content placeholder.

14. The method of claim 12 , wherein the particular relationship is further that a threshold duration has passed since the client device has played out another media content item of the content category type.

15. The method of claim 12 , further comprising:

before accessing the playlist:

determining a set of attributes associated with a user of the client device; and

generating the playlist based on the determined set of attributes.

16. A non-transitory computer-readable medium having stored thereon program instructions that when executed by a processor cause performance of a set of functions, the set of functions comprising:

accessing a playlist defining a sequence of media content items including a first media content item and a second media content item, wherein the first and second media content items are immediately adjacent to each other in the defined sequence, wherein in the sequence, the first media content item is immediately followed by the second media content item;

while a client device is playing out at least one of the media content items:

making a determination of whether a condition has been satisfied, wherein the condition comprises a condition that a content category type has a particular relationship with at least one of the media content items that has been played out, wherein the particular relationship is at least that the client device has played out a threshold number of media content items of the content category type, and wherein the content category type is one of a plurality of different predetermined content category types; and

responsive to the determination being that the condition has been satisfied, (i) retrieving data representing a media content item that has the content category type and that is not specified in the accessed playlist, and (ii) transmitting to the client device, the retrieved data representing the media content item of the content category type, for playout in between playout of the first and second media content items.

17. The computer-readable medium of claim 16 , wherein the retrieved playlist is outlined by a playlist template defining a sequence of media content placeholders for media content attribute data, and

wherein media content attribute data of a particular media content placeholder of the sequence of media content placeholders includes one or more of:

a quantity tag specifying a quantity of media content items that one or more server devices are configured to select for the media content placeholder, or

a type tag specifying a particular content category type of media content item that the one or more server devices are configured to select for the media content placeholder.

18. The computer-readable medium of claim 16 , the set of functions further comprising:

before accessing the playlist:

determining a set of attributes associated with a user of the client device; and

generating the playlist based on the determined set of attributes.

19. A server computing device comprising:

a processor; and

a non-transitory computer-readable medium having stored thereon program instructions that, when executed by the processor, cause the server computing device to perform a set of operations comprising:

accessing a playlist defining a sequence of media content items including a first media content item and a second media content item, wherein the first and second media content items are immediately adjacent to each other in the defined sequence, wherein in the sequence, the first media content item is immediately followed by the second media content item;

while a client device is playing out at least one of the media content items:

making a determination of whether a condition has been satisfied, wherein the condition comprises a condition that a content category type has a particular relationship with at least one of the media content items that has been played out, wherein the particular relationship is at least that the client device has played out a threshold number of media content items of the content category type, and wherein the content category type is one of a plurality of different predetermined content category types; and

responsive to the determination being that the condition has been satisfied, (i) retrieving data representing a media content item that has the content category type and that is not specified in the accessed playlist, and (ii) transmitting to the client device, the retrieved data representing the media content item of the content category type, for playout in between playout of the first and second media content items.

20. The server computing device of claim 19 , wherein the particular relationship is further that a threshold duration has passed since the client device has played out another media content item of the content category type.

Assignments (6)
SECURITY INTEREST Recorded Jan 28, 2026
From: GRACENOTE DIGITAL VENTURES, LLC; GRACENOTE MEDIA SERVICES, LLC; GRACENOTE, INC.; TNC (US) HOLDINGS, INC.; THE NIELSEN COMPANY (US), LLC
To: CITIBANK, N.A.
Reel/Frame 074516/0114 →
SECURITY INTEREST Recorded May 8, 2023
From: GRACENOTE DIGITAL VENTURES, LLC; GRACENOTE MEDIA SERVICES, LLC; GRACENOTE, INC.; TNC (US) HOLDINGS, INC.; THE NIELSEN COMPANY (US), LLC
To: ARES CAPITAL CORPORATION
Reel/Frame 063574/0632 →
SECURITY INTEREST Recorded Apr 28, 2023
From: GRACENOTE DIGITAL VENTURES, LLC; GRACENOTE MEDIA SERVICES, LLC; GRACENOTE, INC.; TNC (US) HOLDINGS, INC.; THE NIELSEN COMPANY (US), LLC
To: CITIBANK, N.A.
Reel/Frame 063561/0381 →
SECURITY AGREEMENT Recorded Jan 31, 2023
From: GRACENOTE DIGITAL VENTURES, LLC; GRACENOTE MEDIA SERVICES, LLC; GRACENOTE, INC.; TNC (US) HOLDINGS, INC.; THE NIELSEN COMPANY (US), LLC
To: BANK OF AMERICA, N.A.
Reel/Frame 063560/0547 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Jan 10, 2022
From: PANGULURI, VENKATARAMA ANILKUMAR
To: TRIBUNE DIGITAL VENTURES, LLC
Reel/Frame 058681/0776 →
CHANGE OF NAME Recorded Jan 10, 2022
From: TRIBUNE DIGITAL VENTURES, LLC
To: GRACENOTE DIGITAL VENTURES, LLC
Reel/Frame 058681/0862 →