IP Library Granted Patent US 10,353,952
Granted Patent B2
US 10,353,952 · App. 14/525,035 · Granted Jul 16, 2019

Performance metadata for media

Inventors: Allen P. Haughay, Jr. (San Jose, CA); Benjamin Rottler (San Francisco, CA)
Assignee: Apple Inc.
G06F16/639A63B24/0062A63B71/0622G06F3/0482G06F3/04842G06F19/3481A63B2071/0625A63B2220/803A63B2225/20A63B2225/50A63B2230/00
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,353,952
App. No.
14/525,035
Granted
Jul 16, 2019
Kind
B2
Abstract

Systems and methods for generating and using performance metadata associated with a media piece (e.g., music or video) are provided. An electronic device can monitor a user's workout performance while playing a particular media piece. Workout performance may include the user's rate of motion and/or one or more physiological metrics of the user. Based on the user's workout performance, the electronic device can create new or modify existing performance metadata associated with the media piece. In some embodiments, the performance metadata based on a particular user's workout performance in response to a media piece may be combined with collective performance metadata based on the workout performances of multiple users in response to the media piece. The combined performance metadata may then be stored as new collective metadata. Accordingly, the collective performance metadata can represent the average response to a media piece over multiple users.

Claims (48)

1. A method for selecting media pieces based on performance metadata, the method comprising:

receiving a user input specifying an exercise activity profile having a plurality of activity intervals, wherein each of the activity intervals has a respective performance target;

accessing collective performance metadata associated with a plurality of media pieces, wherein the collective performance metadata represents combined workout performances of multiple users in response to each of the plurality of media pieces, and wherein the collective performance metadata includes a comparison measure representing a difference between a performance target of an activity interval and a combined workout performance value representing a combination of individual workout performance values of the multiple users in response to a media piece being provided during the activity interval;

arranging the plurality of media pieces in an order corresponding to the activity intervals in the exercise activity profile, wherein the media piece is arranged in the order based on the comparison measure; and

providing the plurality of media pieces in the arranged order.

2. The method of claim 1 , wherein the comparison measure represents combined workout performances of the multiple users in response to a segment of the media piece.

3. The method of claim 2 , wherein the arranging comprises:

specifying the segment of the media piece as corresponding to the activity interval in a sequence based on the comparison measure corresponding to the performance target of the activity interval.

4. A machine readable non-transitory storage medium storing executable instructions which when executed cause a data processing system to perform a method for selecting media pieces based on performance metadata, the method comprising:

receiving a user input specifying an exercise activity profile having a plurality of activity intervals, wherein each of the activity intervals has a respective performance target;

accessing collective performance metadata associated with a plurality of media pieces, wherein the collective performance metadata represents combined workout performances of multiple users in response to each of the plurality of media pieces, and wherein the collective performance metadata includes a comparison measure representing a difference between a performance target of an activity interval and a combined workout performance value representing a combination of individual workout performance values of the multiple users in response to a media piece being provided during the activity interval;

arranging the plurality of media pieces in an order corresponding to the activity intervals in the exercise activity profile, wherein the media piece is arranged in the order based on the comparison measure; and

providing the plurality of media pieces in the arranged order.

5. The medium of claim 4 , wherein the comparison measure represents combined workout performances of the multiple users in response to a segment of the media piece.

6. The medium of claim 5 , wherein the arranging comprises:

specifying the segment of the media piece as corresponding to the activity interval in a sequence based on the comparison measure corresponding to the performance target of the activity interval.

7. A data processing system comprising a processing system coupled to a memory and the memory containing program instructions which configure the processing system to:

receive a user input specifying an exercise activity profile having a plurality of activity intervals, wherein each of the activity intervals has a respective performance target;

access collective performance metadata associated with a plurality of media pieces, wherein the collective performance metadata represents combined workout performances of multiple users in response to each of the plurality of media pieces, and wherein the collective performance metadata includes a comparison measure representing a difference between a performance target of an activity interval and a combined workout performance value representing a combination of individual workout performance values of the multiple users in response to a media piece being provided during the activity interval;

arrange the plurality of media pieces in an order corresponding to the activity intervals in the exercise activity profile, wherein the media piece is arranged in the order based on the comparison measure; and

providing the plurality of media pieces in the arranged order.

8. A method for selecting media pieces, the method comprising:

receiving an input specifying an exercise activity profile having a plurality of activity intervals, wherein each of the activity intervals has a respective performance target;

accessing first performance metadata associated only with a first media piece;

accessing first collection performance metadata associated with a first collection of media pieces comprising at least the first media piece and a second media piece arranged in a first order, wherein the first collection performance metadata represents combined workout performances of multiple users in response to the first media piece and the second media piece, and wherein the collection performance metadata includes a comparison measure representing a difference between a performance target of an activity interval and a combined workout performance value representing a combination of individual workout performance values of the multiple users in response to a first media segment of the first media piece being provided during the activity interval; and

arranging a second collection of media pieces in a second order corresponding to activity intervals in the exercise activity profile based on the exercise activity profile, the first performance metadata, and the first collection performance metadata, wherein the second collection of media pieces includes segments of the first media piece and the second media piece, and wherein the first media segment of the first media piece is arranged in the second order based on the comparison measure.

9. The method of claim 8 , wherein the first media piece comprises a second media piece segment, and wherein the second order comprises at least a portion of the second media piece between the first media piece segment and the second media piece segment.

10. The method of claim 8 further comprising providing the second collection of media pieces in the second order.

11. The method of claim 10 , wherein the providing comprises crossfading between two media pieces of the second collection of media pieces in the second order.

12. The method of claim 10 , wherein the providing comprises using a beat-matching algorithm to match the timing of two media pieces of the second collection of media pieces in the second order.

13. The method of claim 8 , wherein the receiving comprises receiving the input from a particular user.

14. The method of claim 13 , wherein the first performance metadata includes a performance measure representing a past workout performance of the particular user.

15. A machine readable non transitory storage medium storing executable instructions which when executed cause a data processing system to perform a method for selecting media pieces, the method comprising:

receiving an input specifying an exercise activity profile having a plurality of activity intervals, wherein each of the activity intervals has a respective performance target;

accessing first performance metadata associated only with a first media piece;

accessing first collection performance metadata associated with a first collection of media pieces comprising at least the first media piece and a second media piece arranged in a first order, wherein the first collection performance metadata represents combined workout performances of multiple users in response to the first media piece and the second media piece, and wherein the collection performance metadata includes a comparison measure representing a difference between a performance target of an activity interval and a combined workout performance value representing a combination of individual workout performance values of the multiple users in response to a first media segment of the first media piece being provided during the activity interval; and

arranging a second collection of media pieces in a second order corresponding to activity intervals in the exercise activity profile based on the exercise activity profile, the first performance metadata, and the first collection performance metadata, wherein the second collection of media pieces includes segments of the first media piece and the second media piece, and wherein the first media segment of the first media piece is arranged in the second order based on the comparison measure.

16. The medium of claim 15 , wherein the first media piece comprises a second media piece segment, and wherein the second order comprises at least a portion of the second media piece between the first media piece segment and the second media piece segment.

17. The medium of claim 15 further comprising providing the second collection of media pieces in the second order.

18. The medium of claim 17 , wherein the providing comprises crossfading between two media pieces of the collection of media pieces in the second order.

19. The medium of claim 17 , wherein the providing comprises using a beat-matching algorithm to match the timing of two media pieces of the second collection of media pieces in the second order.

20. The medium of claim 19 , wherein the receiving comprises receiving the input from a particular user.

21. The medium of claim 20 , wherein the first performance metadata is based on a past workout performance of the particular user.

22. A data processing system comprising a processing system coupled to a memory and the memory containing program instructions which configure the processing system to:

receive an input specifying an exercise activity profile having a plurality of activity intervals, wherein each of the activity intervals has a respective performance target;

access first performance metadata associated only with a first media piece;

access first collection performance metadata associated with a first collection of media pieces comprising at least the first media piece and a second media piece arranged in a first order, wherein the first collection performance metadata represents combined workout performances of multiple users in response to the first media piece and the second media piece, and wherein the collection performance metadata includes a comparison measure representing a difference between a performance target of an activity interval and a combined workout performance value representing a combination of individual workout performance values of the multiple users in response to a first media segment of the first media piece being provided during the activity interval; and

arrange a second collection of media pieces in a second order corresponding to activity intervals in the exercise activity profile based on the exercise activity profile, the first performance metadata, and the first collection performance metadata, wherein the second collection of media pieces includes segments of the first media piece and the second media piece, and wherein the first media segment of the first media piece is arranged in the second order based on the comparison measure.

Continuity (2)
Division 12503743 · Jul 15, 2009
Related Publication 20150046814A1 · Feb 12, 2015