IP Library Granted Patent US 12673237
Granted Patent B2
US 12673237 · App. 17/407,607 · Granted Jul 7, 2026

Personal performance feedback relative to workout community

Inventors: Anthony D'Auria (San Francisco, CA); Brady J. White (San Jose, CA); Brian R. Drell (San Jose, CA); Joel J. Angelone (San Francisco, CA); Rex Carroll Ross (San Jose, CA); Julie A. Arney (Los Gatos, CA); Jay K. Blahnik (San Francisco, CA); Michael D. Ford (Menlo Park, CA); Chandler S. Bachman (San Francisco, CA)
Assignee: Apple Inc.
A63B24/0062A63B71/0622G06F3/167A63B2024/0068A63B2071/0625A63B2230/01A63B2230/75
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 12673237
App. No.
17/407,607
Granted
Jul 7, 2026
Kind
B2
Abstract

In some implementations, a computing system can provide personal performance feedback relative to a workout community during a workout. For example, while performing a workout, a wearable device worn by a user can provide user activity data describing the user's activity during the workout to a playback device that is presenting the workout. The playback device can obtain community statistics describing the performance of a community of users who have previously completed the workout. The playback device can present information comparing the user's performance during the workout to the community's past performance during the workout.

Claims (82)

1 . A method comprising:

obtaining, by a playback device, a workout from a server device, the workout including workout content and community statistics for the workout, wherein the playback device comprises a processor, a memory, and a wireless communication component;

displaying, by the playback device, the workout content;

in real time, while presenting the workout content to a user:

receiving, using the wireless communication component by the playback device from a wearable device via a wireless connection, user activity data related to the workout, the wearable device being worn by the user currently performing the workout;

generating, by the playback device, workout feedback comparing the user activity data to the community statistics for the workout, the community statistics comprising previously generated data describing past user activity data of a community of users who previously performed the workout;

wherein the community statistics include a community statistics timeline, the community statistics timeline corresponding to a duration of the workout content and including a plurality of time indices having corresponding time indexed community statistics for the workout,

wherein generating the workout feedback comprises:

determining, by the playback device, a first time index corresponding to a current location in a presentation of the workout to the user;

mapping the first time index, corresponding to the current location in the presentation of the workout to the user, to a second time index of the plurality of time indices; and

generating, by the playback device, the workout feedback based on a particular time indexed community statistic associated with the second time index in the community statistics timeline; and

displaying, by the playback device, the workout feedback.

2 . The method of claim 1 , wherein the user activity data includes individual user data describing a first number of calories burned by the user during performance of the workout, the community statistics include community data describing statistics related to a second number of calories burned by a community of users who previously performed the workout, and further comprising:

generating the workout feedback comparing the first number of calories burned to the community statistics related to a second number of calories burned.

3 . The method of claim 2 , further comprising:

receiving, using the wireless communication component by the playback device, information describing a weight of the user from the wearable device; and

adjusting the community statistics related to a second number of calories burned based on the weight of the user.

4 . The method of claim 1 , wherein the user activity data is received periodically during the presentation of the workout content, wherein the first time index corresponds to a first time at which the user activity data was received.

5 . The method of claim 4 , further comprising:

obtaining, by the playback device, a range of values from the community statistics corresponding to the first time index, the range of values representing a range of energy expenditures of the community of users who previously performed the workout;

obtaining, by the playback device, a current energy expenditure value for the user performing the workout based on the user activity data corresponding to the first time;

determining, by the playback device, a position in the range of values based on the current energy expenditure value for the user;

generating, by the playback device, a performance status notification describing the position relative to the range of values; and

displaying, by the playback device, the performance status notification.

6 . The method of claim 5 , wherein the performance status notification is a verbal audio notification.

7 . The method of claim 1 , wherein the wearable device comprises one of a smart watch, a pair of smart glasses, or an item of smart clothing.

8 . The method of claim 1 , wherein the wearable device comprises at least one sensor.

9 . The method of claim 8 , wherein the at least one sensor comprises one of a motion sensor or a heartbeat sensor.

10 . The method of claim 8 , wherein the wearable device is configured to:

generate biometric data based on data received from the at least one sensor; and

send the biometric data to the playback device while the workout content is being displayed.

11 . A non-transitory computer readable medium including one or more sequences of instructions that, when executed by one or more processors, cause the processors to perform operations comprising:

obtaining, by a playback device, a workout from a server device, the workout including workout content and community statistics for the workout, wherein the playback device comprises a processor, a memory, and a wireless communication component;

displaying, by the playback device, the workout content;

in real time, while presenting the workout content to a user:

receiving, using the wireless communication component by the playback device from a wearable device via a wireless connection, user activity data related to the workout, the wearable device being worn by the user currently performing the workout;

generating, by the playback device, workout feedback comparing the user activity data to the community statistics for the workout, the community statistics comprising previously generated data describing past user activity data of a community of users who previously performed the workout;

wherein the community statistics include a community statistics timeline, the community statistics timeline corresponding to a duration of the workout content and including a plurality of time indices having corresponding time indexed community statistics for the workout,

wherein generating the workout feedback comprises:

determining, by the playback device, a first time index corresponding to a current location in a presentation of the workout to the user;

mapping the first time index, corresponding to the current location in the presentation of the workout to the user, to a second time index of the plurality of time indices; and

generating, by the playback device, the workout feedback based on a particular time indexed community statistic associated with the second time index in the community statistics timeline; and

displaying, by the playback device, the workout feedback.

12 . The non-transitory computer readable medium of claim 11 , wherein the user activity data includes individual user data describing a first number of calories burned by the user during performance of the workout, the community statistics include community data describing statistics related to a second number of calories burned by a community of users who previously performed the workout, and wherein the instructions cause the processors to perform operations comprising:

generating the workout feedback comparing the first number of calories burned to the community statistics related to a second number of calories burned.

13 . The non-transitory computer readable medium of claim 12 , wherein the instructions cause the processors to perform operations comprising:

receiving, using the wireless communication component by the playback device, information describing a weight of the user from the wearable device; and

adjusting the community statistics related to a second number of calories burned based on the weight of the user.

14 . The non-transitory computer readable medium of claim 11 , wherein the user activity data is received periodically during the presentation of the workout content, and wherein the first time index corresponds to a first time at which the user activity data was received.

15 . The non-transitory computer readable medium of claim 14 , wherein the instructions cause the processors to perform operations comprising:

obtaining, by the playback device, a range of values from the community statistics corresponding to the first time index, the range of values representing a range of energy expenditures of the community of users who previously performed the workout;

obtaining, by the playback device, a current energy expenditure value for the user performing the workout based on the user activity data corresponding to the first time;

determining, by the playback device, a position in the range of values based on the current energy expenditure value for the user;

generating, by the playback device, a performance status notification describing the position relative to the range of values; and

displaying, by the playback device, the performance status notification.

16 . The non-transitory computer readable medium of claim 15 , wherein the performance status notification is a verbal audio notification.

17 . A system comprising:

one or more processors; and

a non-transitory computer readable medium including one or more sequences of instructions that, when executed by the one or more processors, cause the processors to perform operations comprising:

obtaining, by a playback device, a workout from a server device, the workout including workout content and community statistics for the workout, wherein the playback device comprises a processor, a memory, and a wireless communication component;

displaying, by the playback device, the workout content;

in real time, while presenting the workout content to a user:

receiving, using the wireless communication component by the playback device from a wearable device via a wireless connection, user activity data related to the workout, the wearable device being worn by the user currently performing the workout;

generating, by the playback device, workout feedback comparing the user activity data to the community statistics for the workout, the community statistics comprising previously generated data describing past user activity data of a community of users who previously performed the workout;

wherein the community statistics include a community statistics timeline, the community statistics timeline corresponding to a duration of the workout content and including a plurality of time indices having corresponding time indexed community statistics for the workout,

wherein generating the workout feedback comprises:

determining, by the playback device, a first time index corresponding to a current location in a presentation of the workout to the user;

mapping the first time index, corresponding to the current location in the presentation of the workout to the user, to a second time index of the plurality of time indices; and

generating, by the playback device, the workout feedback based on a particular time indexed community statistic associated with the second time index in the community statistics timeline; and

displaying, by the playback device, the workout feedback.

18 . The system of claim 17 , wherein the user activity data includes individual user data describing a first number of calories burned by the user during performance of the workout, the community statistics include community data describing statistics related to a second number of calories burned by a community of users who previously performed the workout, and wherein the instructions cause the processors to perform operations comprising:

generating the workout feedback comparing the first number of calories burned to the community statistics related to a second number of calories burned.

19 . The system of claim 18 , wherein the instructions cause the processors to perform operations comprising:

receiving, using the wireless communication component by the playback device, information describing a weight of the user from the wearable device; and

adjusting the community statistics related to a second number of calories burned based on the weight of the user.

20 . The system of claim 17 , wherein the user activity data is received periodically during the presentation of the workout content, and wherein the first time index corresponds to a first time at which the user activity data was received.

21 . The system of claim 20 , wherein the instructions cause the processors to perform operations comprising:

obtaining, by the playback device, a range of values from the community statistics corresponding to the first time index, the range of values representing a range of energy expenditures of the community of users who previously performed the workout;

obtaining, by the playback device, a current energy expenditure value for the user performing the workout based on the user activity data corresponding to the first time;

determining, by the playback device, a position in the range of values based on the current energy expenditure value for the user;

generating, by the playback device, a performance status notification describing the position relative to the range of values; and

displaying, by the playback device, the performance status notification.