# US 10,372,757 B2 · Search media content based upon tempo

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

- Number: US 10,372,757 B2
- Document ID: US10372757B2
- Status: Granted
- Kind: B2
- Application number: 14/883,295
- Filed: 2015-10-14
- Published: 2016-11-24
- Granted: 2019-08-06
- Earliest claimed: 2015-05-19
- Assignees: Spotify AB
- Applicants: Spotify AB
- Inventors: Tristan Jehan; Dariusz Dziuk; Rahul Sen; Nikolaos Toumpelis
- Web page: https://patentgrep.com/patent/US10372757B2

## CPC

- G06F 16/683: using metadata automatically derived from the content
- G06F: ELECTRIC DIGITAL DATA PROCESSING (computer systems based on specific computational models G06N)

## Abstract

A media system includes: media-playback device including: a media-output device that plays media content items; and a tempo control engine configured to: receive a selection of a desired tempo; and suggest additional media content associated with the desired tempo.

## Claims

### Claim 1

A media system comprising:
at least one processor; and
at least one non-transitory computer-readable data storage device storing data instructions that, when executed by the at least one processor, cause the media system to:
receive a selected tempo corresponding to a cadence of a repetitive-motion activity;
identify a first set of media content comprising a plurality of media content items based upon at least a first range encompassing the selected tempo and a first threshold for a runnability score associated with each of the plurality of media content items, wherein the runnability score is computed by a runnability model, the runnability model being trained from a plurality of positive example media content items to consider characteristics including at least a beat strength and a tempo regularity, and the runnability model computes the runnability score at least based on one or more similarities between each of the plurality of media content items and the plurality of positive example media content items, and wherein the first threshold is decreased for media content items previously liked by a user of the media system;
determine whether the first set contains at least a particular number of media content items; and
when a determination is made that the first set does not contain at least the particular number of media content items:
expand the first range to determine a second range encompassing the selected tempo;
identify, based on the second range, additional media content to generate a second set of media content;
add the second set of media content to the first set of media content; and
provide the first set of media content and the second set of media content for playback during the repetitive-motion activity.

### Claim 2 (depends on 1)

The system of claim 1, wherein the media system further comprises a server including the at least one processor.

### Claim 3 (depends on 1)

The system of claim 1, wherein the media system uses the first threshold to filter the runnability score to identify the first set of media content, and a second threshold to filter the runnability score to identify the additional media content to generate the second set of media content, wherein the second threshold is less than the first threshold.

### Claim 4 (depends on 1)

The system of claim 1, wherein the second range of tempos is larger than the first range of tempos.

### Claim 5 (depends on 1)

The system of claim 1, wherein the media system uses repetitive-motion activity media metadata to identify portions of media content items suited for playback during a repetitive-motion activity.

### Claim 6

A media system, comprising:
a media-playback device configured to receive a selection of a tempo corresponding to a cadence of a repetitive-motion activity of a user; and
a server comprising at least one processor; and at least one non-transitory computer-readable data storage device storing data instructions that, when executed by the at least one processor, cause the server to:
receive a selected tempo corresponding to a cadence of a repetitive-motion activity;
identify a first set of media content comprising a plurality of media content items based upon at least a first range encompassing the selected tempo and a first threshold for a runnability score associated with each of the plurality of media content items, wherein the runnability score is computed by a runnability model, the runnability model being trained from a plurality of positive example media content items to consider characteristics including at least a beat strength and a tempo regularity, and the runnability model computes the runnability score at least based on one or more similarities between each of the plurality of media content items and the plurality of positive example media content items, and wherein the first threshold is decreased for media content items previously liked by a user of the media system;
determine whether the first set contains at least a particular number of media content items; and
when a determination is made that the first set does not contain at least the particular number of media content items:
expand the first range to determine a second range encompassing the selected tempo;
identify, based on the second range, additional media content to generate a second set of media content;
add the second set of media content to the first set of media content; and
provide the first set of media content and the second set of media content to the media-playback device for playback during the repetitive-motion activity.

### Claim 7 (depends on 6)

The system of claim 6, wherein the server is programmed to identify the first set of media content by filtering a plurality of the media content items based upon one or more criteria including at least the first range encompassing the selected tempo and the first threshold for the runnability score.

### Claim 8 (depends on 6)

The system of claim 6, wherein the server uses the first threshold to filter the runnability score to identify the first set of media content, and a second threshold to filter the runnability score to identify the additional media content to generate the second set of media content, wherein the second threshold is less than the first threshold.

### Claim 9 (depends on 6)

The system of claim 6, wherein the second range of tempos is larger than the first range of tempos.

### Claim 10

A method for selecting media content based upon a tempo corresponding to a cadence of a repetitive-motion activity of a user, the method comprising:
receiving a selected tempo corresponding to a cadence of the repetitive-motion activity;
identifying a first set of media content comprising a plurality of media content items based upon at least a first range encompassing the selected tempo and a first threshold for a runnability score associated with each of the plurality of media content items, wherein the runnability score is computed by a runnability model, the runnability model being trained from a plurality of positive example media content items to consider characteristics including at least a beat strength and a tempo regularity, and the runnability model computes the runnability score at least based on one or more similarities between each of the plurality of media content items and the plurality of positive example media content items, and wherein the first threshold is decreased for media content items previously liked by a user of the media system;
determining whether the first set contains at least a particular number of media content items; and
when a determination is made that the first set does not contain at least the particular number of media content items:
expanding the first range to determine a second range encompassing the selected tempo;
identifying, based on the second range, additional media content to generate a second set of media content;
add the second set of media content to the first set of media content; and
providing the first set of media content and the second set of media content for playback during the repetitive-motion activity.

### Claim 11 (depends on 10)

The method of claim 10, wherein identifying the first set of media content includes:
filtering the plurality of media content items to identify media content items having tempos falling within the first range of tempos.

### Claim 12 (depends on 11)

The method of claim 11, wherein identifying the first set of media content further includes filtering the plurality of media content items based upon the first threshold for the runnability score associated with each of the plurality of media content items.

### Claim 13 (depends on 12)

The method of claim 12, further comprising relaxing the filtering of the plurality of media content items when identifying the additional media content to generate the second set of media content.

### Claim 14

A media system, comprising:
a server comprising at least one processor; and
at least one non-transitory computer-readable data storage device storing data instructions that, when executed by the at least one processor, cause the server to:
receive a selected tempo corresponding to a cadence of a repetitive-motion activity from a media-playback device;
identify a first set of media content comprising a plurality of media content items based on at least the selected tempo and a first threshold for a runnability score associated with each media content item, the runnability score being computed by a runnability model, the runnability model being trained by a plurality of positive example media content items to consider characteristics including at least a beat strength and a tempo regularity, and the runnability model computes the runnability score at least based on one or more similarities between each media content item and the plurality of positive example media content items, and wherein the first threshold is decreased for media content items previously liked by a user of the media system;
determine whether the first set contains at least a particular number of media content items; and
when a determination is made that the first set does not contain at least the particular number of media content items:
identify additional media content to generate a second set of media content using a second threshold for the runnability score, the second threshold for the runnability score being less than the first threshold for the runnability score;
add the second set of media content to the first set of media content; and
provide the first set of media content and the second set of media content to the media-playback device for playback during the repetitive-motion activity.
