# US 12,216,668 B2 · Media content playback for a group of users

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

- Number: US 12,216,668 B2
- Document ID: US12216668B2
- Status: Granted
- Kind: B2
- Application number: 18/329,442
- Filed: 2023-06-05
- Published: 2024-05-09
- Granted: 2025-02-04
- Earliest claimed: 2019-10-24
- Assignees: Spotify AB
- Applicants: Spotify AB
- Inventors: Mark Kizelshteyn; Andreas Jansson; Tracey Churray; Mark Koh
- Web page: https://patentgrep.com/patent/US12216668B2

## CPC

- G06F 16/24578: {using ranking}
- G06F 16/41: Indexing; Data structures therefor; Storage structures
- G06F 16/44: Browsing; Visualisation therefor
- H04N 21/252: {Processing of multiple end-users' preferences to derive collaborative data}
- 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/44227: {Monitoring of local network, e.g. connection or bandwidth variations; Detecting new devices in the local network (configuring of peripheral devices in general G06F9/4411; monitoring connectivity in data switched networks H04L43/0811)}
- H04N 21/26258: {for generating a list of items to be played back in a given order, e.g. playlist, or scheduling item distribution according to such list (retrieval of multimedia data based on playlists G06F16/40)}
- H04N 21/2668: Creating a channel for a dedicated end-user group, e.g. insertion of targeted commercials based on end-user profiles {(information retrieval from the Internet by querying with filtering and personalisation G06F16/9535; arrangements for replacing or switching information during the broadcast H04H20/10; push services over packet-switching network H04L12/1859; adaptation of message content in packet-switching networks H04L51/063)}
- G06F: ELECTRIC DIGITAL DATA PROCESSING (computer systems based on specific computational models G06N)
- H04N: PICTORIAL COMMUNICATION, e.g. TELEVISION

## Abstract

Methods, systems, and computer programs for generating a playlist of media content items for a group of users. Media content items listened to by the selected users are compared to an average user taste profile to select media content items for playback to the group of users.

## Claims

### Claim 1

A method of generating a playlist of media content items for a group of users, the method comprising:
generating a list of candidate media content items selected from at least a media consumption history of a first user and a media consumption history of a second user;
comparing a group taste profile with the candidate media content items in the list of candidate media content items;
ranking the list of candidate media content items based on the comparison; and
generating a playlist selected from the ranked list of candidate media content items, wherein:
the playlist includes contributions of media content items from the first user and the second user; and
the contribution of each user is no more than fifty percent of a total number of media content items in the playlist.

### Claim 2 (depends on 1)

The method of claim 1, wherein the playlist includes a plurality of media content items arranged in a sequence to rotate between contributions from each user.

### Claim 3 (depends on 1)

The method of claim 1, wherein generating the playlist comprises arranging selected media content items into a particular sequence.

### Claim 4 (depends on 3)

The method of claim 3, wherein arranging the selected media content items into the particular sequence comprises ordering the selected media content items according to a minimum separation threshold for media content items by a same artist.

### Claim 5 (depends on 3)

The method of claim 3, wherein the particular sequence comprises, in order, a first media content item of the media consumption history of the first user, one or more media content items with similarity scores compared to the first media content item above a threshold, a second media content item of the media consumption history of the second user, and one or more media content items with similarity scores compared to the second media content item above the threshold.

### Claim 6 (depends on 5)

The method of claim 5, wherein the first media content item has a highest similarity score of the list of the media content items and the second media content item has a next highest similarity score of the list of media content items.

### Claim 7 (depends on 1)

The method of claim 1, further comprising generating the group taste profile based at least in part on individual user taste profiles of the first user and the second user.

### Claim 8 (depends on 1)

The method of claim 1, further comprising:
representing the group taste profile as a group taste profile vector in a multi-dimensional vector space, the dimensions of the multi-dimensional vector space corresponding to characteristics of media content; and
representing media content item vectors for each of the candidate media content items of the list of candidate media content items in the multi-dimensional vector space,
wherein comparing the group taste profile with the candidate media content items in the list of candidate media content items is based at least in part on a distance between the respective media content item vector and the group taste profile vector.

### Claim 9 (depends on 8)

The method of claim 8, wherein ranking the list of candidate media content items is based at least in part on the distance.

### Claim 10 (depends on 1)

The method of claim 1, further comprising:
generating a first user taste profile vector of the first user and a second user taste profile vector of the second user in a multi-dimensional vector space, the dimensions of the multi-dimensional vector space corresponding to characteristics of media content;
generating a group taste profile vector of the group taste profile in the multi-dimensional vector space based on an average of the first user taste profile vector and the second user taste profile vector; and
generating media content item vectors for each of the candidate media content items of the list of candidate media content items in the multi-dimensional vector space,
wherein comparing the group taste profile with the candidate media content items in the list of candidate media content items is based at least in part on a distance between the respective media content item vector and the group taste profile vector.

### Claim 11 (depends on 1)

The method of claim 1, wherein the contributions are uniform.

### Claim 12

A system comprising non-transitory memory and at least one processing device in data communication with the memory, wherein the memory stores data instructions that, when executed by the at least one processing device, cause the at least one processing device to:
generate a list of candidate media content items selected from at least a media consumption history of a first user and a media consumption history of a second user;
compare a group taste profile with the candidate media content items in the list of candidate media content items;
rank the list of candidate media content items based on the comparison; and
generate a playlist selected from the ranked list of candidate media content items, wherein:
the playlist includes contributions of media content items from the first user and the second user; and
the contribution of each user is no more than fifty percent of a total number of media content items in the playlist.

### Claim 13 (depends on 12)

The system of claim 12, wherein to generate the playlist comprises to arrange selected media content items into a particular sequence.

### Claim 14 (depends on 13)

The system of claim 13, wherein to arrange the selected media content items into the particular sequence comprises to order the selected media content items according to a minimum separation threshold for media content items by a same artist.

### Claim 15 (depends on 13)

The system of claim 13, wherein the particular sequence comprises, in order, a first media content item of the media consumption history of the first user, one or more media content items with similarity scores compared to the first media content item above a threshold, a second media content item of the media consumption history of the second user, and one or more media content items with similarity scores compared to the second media content item above the threshold.

### Claim 16 (depends on 15)

The system of claim 15, wherein the first media content item has a highest similarity score of the list of the media content items and the second media content item has a next highest similarity score of the list of media content items.

### Claim 17 (depends on 12)

The system of claim 12, wherein the instructions further cause the at least one processing device to generate the group taste profile based at least in part on individual user taste profiles of the first user and the second user.

### Claim 18 (depends on 12)

The system of claim 12, wherein the instructions further cause the at least one processing device to:
represent the group taste profile as a group taste profile vector in a multi-dimensional vector space, the dimensions of the multi-dimensional vector space corresponding to characteristics of media content; and
represent media content item vectors for each of the candidate media content items of the list of candidate media content items in the multi-dimensional vector space,
wherein to compare the group taste profile with the candidate media content items in the list of candidate media content items is based at least in part on a distance between the respective media content item vector and the group taste profile vector.

### Claim 19 (depends on 12)

The system of claim 12, wherein the instructions further cause the at least one processing device to:
generate a first user taste profile vector of the first user and a second user taste profile vector of the second user in a multi-dimensional vector space, the dimensions of the multi-dimensional vector space corresponding to characteristics of media content;
generate a group taste profile vector of the group taste profile in the multi-dimensional vector space based on an average of the first user taste profile vector and the second user taste profile vector; and
generate media content item vectors for each of the candidate media content items of the list of candidate media content items in the multi-dimensional vector space,
wherein to compare the group taste profile with the candidate media content items in the list of candidate media content items is based at least in part on a distance between the respective media content item vector and the group taste profile vector.

### Claim 20

At least one non-transitory computer-readable medium storing data instructions that, when executed by at least one processing device of a system, cause the system to:
generate a list of candidate media content items selected from at least a media consumption history of a first user and a media consumption history of a second user;
compare a group taste profile with the candidate media content items in the list of candidate media content items;
rank the list of candidate media content items based on the comparison; and
generate a playlist selected from the ranked list of candidate media content items, wherein:
the playlist includes contributions of media content items from the first user and the second user; and
the contribution of each user is no more than fifty percent of a total number of media content items in the playlist.
