INTEGRATED MEDIA JUKEBOX AND PHYSIOLOGIC DATA HANDLING APPLICATION
A method is provided to operate a computer to interoperate with a portable media player. The method includes processing signals provided from the portable media player to the computer that are indicative of whether an accessory has been connected to the portable media player, to determine whether the accessory has been connected to the portable media player. Based on a determination that the accessory has been connected to the portable media player, physiologic data of a user that was provided to the portable media player from a wireless physiologic data gathering device, is received from the portable media player, into the computer, via the accessory.
Latest Patents:
- DRUG DELIVERY DEVICE FOR DELIVERING A PREDEFINED FIXED DOSE
- NEGATIVE-PRESSURE DRESSING WITH SKINNED CHANNELS
- METHODS AND APPARATUS FOR COOLING A SUBSTRATE SUPPORT
- DISPLAY PANEL AND MANUFACTURING METHOD THEREOF, AND DISPLAY DEVICE
- MAIN BODY SHEET FOR VAPOR CHAMBER, VAPOR CHAMBER, AND ELECTRONIC APPARATUS
This application is related to U.S. patent application Ser. No. ______, filed May 22, 2006, and entitled “ACTIVITY MONITORING SYSTEM” [Att.Dkt.No.: APL1P490P/P4398USP1], which is hereby incorporated by reference herein. This application is also related to U.S. patent application Ser. No. ______, filed May 22, 2006, and entitled “COMMUNICATION PROTOCOL FOR USE WITH PORTABLE ELECTRONIC DEVICES” [Att.Dkt.No.: APL1P492/P4400US1], which is hereby incorporated by reference herein.
BACKGROUND OF THE INVENTIONThe use of devices to obtain exercise performance information is known. For example, simple mechanical pedometers have been used to obtain information relating to walking or running. A typical mechanical pedometer is a standalone device merely displays an indication of number of steps taken which, typically at most, can be converted to distance traveled by multiplying the number of steps taken by an estimated average stride size.
Recently, more sophisticated devices are known. For example, as described in U.S. Pat. No. 6,898,550 (the '550 patent), a foot-mounted unit, including a sensor for sensing motion of the foot of a user, is configured to provide motion information-wirelessly—to a wrist-mounted unit. The wrist-mounted unit includes a display for displaying information to the user based upon data accumulated by the foot-mounted unit and transmitted wirelessly to the wrist-mounted unit. In addition, as described in the '550 patent, the wrist-mounted unit may be coupled to a computer and/or a network server via a network. The user can operate software running on the computer and/or the server to analyze received data and/or to select operating parameters for the wrist-mounted unit and/or the foot-mounted unit.
The inventors have realized that a media jukebox computer application, including functionality to interact with a portable media player, may be synergistically combined with functionality to handle physiologic data from a physiologic data gathering device that is in communication with the portable media player for providing physiologic data to the portable media player.
SUMMARYA method is provided to operate a computer to interoperate with a portable media player. The method includes processing signals provided from the portable media player to the computer that are indicative of whether an accessory has been connected to the portable media player, to determine whether the accessory has been connected to the portable media player. Based on a determination that the accessory has been connected to the portable media player, physiologic data of a user that was provided to the portable media player from a wireless physiologic data gathering device, is received from the portable media player, into the computer, via the accessory.
In operation, while a user 108 is exercising, physiological data of the user is accumulated by the data gathering device 102 and is provided wirelessly (via radio frequency waves 110, in one example) to the portable media player 104. Meanwhile, cues relative to the exercise (e.g., audio cues) as indicated by exercise templates, are being provided from the portable media player 104 to the user 108 (e.g., via a wire 112 and headphones 114). In addition to providing the cues relative to the exercise, the portable media player 104 may also be configured to provide playback of media (such as audio media) to the user 108 (e.g., like with the audio cues, via the wire 112 and headphones 114).
The playback of media may be coordinated with the exercise cues. For example, the playback of media may be using a playlist such as created using the iTunes® software application, provided by Apple Computer, Inc., running on a host computer 116 connectable to the portable media player 104. The playlists may be incorporated with, or corresponded to, the exercise templates on which the exercise cues are based.
Going in the direction from the portable media player 104 to the host computer 116, the portable media player 104 is configured to provide physiologic data to a workout data service 118, for storage 122, via the host computer 116 and a network 120 such as the internet. In some examples, the host computer 116 operates substantially as a conduit for providing the physiologic data to the workout data service 118 for storage 122. In other examples, the host computer 116 performs some processing on the physiologic data, temporarily stores the physiologic data for later forwarding (e.g., during a temporary loss of connection between the host computer 116 and the service 118 via the network 120), or both.
In yet other examples, not explicitly represented in
In still other examples, the physiological data is provided from the portable media player 104 to the workout data service 118 without being provided to a host computer such as the host computer 116. For example, the portable media player 104 may be incorporated into or, may be incorporated with, a telephone or other communication device that is connectable (e.g., wirelessly) to the workout data service 118.
With regard to the workout data service 118 and storage 122, in some examples, the physiologic data is processed at the workout data service 118. In one example, the physiologic data from one user is processed in view of physiologic data from other users to, for example, compare the users in terms of the physiologic data. In another example, the physiologic data is processed at the workout data service 118 to determine a suggested template change. For example, based on the processing at the workout data service 118, it may be suggested to change the clues to provide motivation at a particular portion of the workout. As another example, based on playlists associated with that workout by other users, a different playlist (or changes to the playlist) may be suggested for a particular workout.
The determination of whether the accessory 106 has been connected is, in one example, via configuration data that is provided to the host computer 116 when the portable media player 104 and the host computer 116 are connected, in a portion of a handshake protocol in which the portable media player 104 provides information to the host computer 116 regarding characteristics, capabilities and/or activities of the portable media player 104. In other examples, the accessory 106 is one of a plurality of possible accessories, and the check for the accessory 106 is merely part of a check for accessories generally. In yet other examples, mentioned below, processing like that in step 202 is not carried out at all.
If it is determined at step 202 that the accessory 106 has not been connected to the portable media player 104, then the
The physiologic data may be provided from the portable media player 104 to the host computer 116, and further to the workout data service 118, in an XML-formatted file. In some examples, a portion of the provided data is retained on the portable media player 104, for easy reference by the user (e.g., during or in preparation for a workout). Communication between the host computer 116 and the workout data service 118 is typically via Secure Socket Layer, using the HTTPS protocol. In one example, a portion of the physiologic data is retained in storage of the portable media player 104 (e.g., the last “n” workouts) and can be displayed via a user interface of the portable media player 104. Furthermore, while the physiologic data is passed on to the workout data service 118 from the host computer 116, the host computer 116 may retain some or all of the physiologic data to, for example, display the data via a physiologic data user interface of a music store application operating on the host computer 116. An example user interface display of the music store application operation on the host computer 116, including a display of physiologic data, is described later, with reference to
In addition, the signal 308 represents feedback of user behavior information relative to the playback of media (which may also correspond to use/operation of the device 102 that provides physiologic data via the accessory 106) and, concomitantly, relative to the exercise cues. This feedback user behavior information signal 308 may be used to modify (or suggest modifications to) the playlists, templates, or some combination thereof, based on the user's behavior as indicated by the signal 308. The modifications and/or suggested modifications may be a result of processing within the host computer 116 or, as discussed above, the modifications and/or suggested modifications may be a result of processing within the workout data service 118 (typically resulting from processing of physiologic data from the particular user and related data from a community of users, and not just from processing of physiologic data and related data from the particular user alone).
It is noted that, as alluded to above, while
As also shown in
Once an account is matched between the portable media player 104 and the workout data service 118 for physiologic data received by the portable media player 104 via the accessory 106, account access credentials may be saved at the host computer 116 for later use. The account access credentials may even be saved at the portable media player 104 (to, for example, be subsequently provided to the host computer 116 along with physiologic data). In one example, account access credentials such as login ID and password are not themselves saved on either the host computer 116 or the portable media player 104. Rather, the workout data service 118 provides back to the host computer 116 an account access “token” that uniquely corresponds to the account access credentials and that provides only limited access to the workout data service 118, for providing physiologic data to the workout data service 118. For example, the full account access credentials may provide access to workout data service 118 functions such as e-commerce or other security-sensitive functions, for which it may be considered undesirable to store access credentials on the host computer 116 or on the portable media player 104.
In the
In some examples, the user behavior information may not be clearly indicative of a definite suggestion at step 704. For example, the user may have skipped one song each of ten times of processing the playlist, whereas the user may have skipped a second song only one time of processing the playlist. The suggestions may provide gradations of suggestion. For example, it may be strongly suggested to delete the first song (the one skipped ten times) from the playlist, whereas it may be mildly suggested to delete the second song (the one skipped only one time) from the playlist.
In the next steps shown in the
As mentioned above, in some examples, physiologic data provided from a portable media player (such as the portable media player 104) to a workout data service (such as the workout data service 118) may be provided through a host computer (such as the host computer 116).
While much of the previous description has described methods, applications and systems in the context of a single physiologic data gathering device, it has been mentioned above that there may be more than one physiologic data gathering device.
A menu item 902, in this case a pull down menu item, is provided to allow the user to choose which physiologic data gathering devices (listed as “sensors”) for which data is to be considered and/or otherwise handled from within the application executing in the host computer. In
In summary, then, we have described an overall architecture of a system, including a portable media player, generally usable for, among other things, monitoring and/or controlling user exercise or other activity or physiology. In addition, we have described how an application of a host computer, such as a media store application, operates in the context of such a system.
Claims
1. A method of operating a computer to interoperate with a portable media player, the method comprising:
- processing signals provided from the portable media player to the computer that are indicative of whether an accessory has been connected to the portable media player, to determine whether the accessory has been connected to the portable media player; and
- based on a determination that the accessory has been connected to the portable media player, receiving from the portable media player, into the computer, physiologic data of a user that was provided to the portable media player from at least one wireless physiologic data gathering device, via the accessory.
2. The method of claim 1, wherein:
- the computer is a computer of a centralized data storage service.
3. The method of claim 1, wherein:
- the computer is a host computer; and
- the method further comprises providing at least a portion of the data, received from the portable media player, to at least one server computer of a centralized data storage service, via a network.
4. The method of claim 3, further comprising:
- a handshake step between the host computer and the centralized data storage service, regarding an account of the user at the centralized data storage service for data from the portable media player.
5. The method of claim 4, wherein:
- the handshake step includes the host computer automatically providing an account token to the centralized data storage service, that uniquely identifies the account of the user at the centralized data storage service.
6. The method of claim 5, further comprising:
- receiving the account token from the centralized data storage service based on an account identification and password provided to the centralized data storage service in response to the account identification and password being received by the host computer via a user interface of the host computer.
7. The method of claim 3, further comprising:
- by the host computer, providing a token to the centralized data storage service, via the network, wherein the token uniquely corresponds to a particular account for the user on the centralized data storage service; and
- providing the at least a portion of the data, received from the portable media player, to the centralized data storage service via the network, in association with providing the token to the centralized data storage service.
8. The method of claim 1, further comprising:
- by the host computer, causing display of an indication of at least a portion of the data received from the portable media player.
9. The method of claim 1, wherein:
- the portable media player is included as functionality of a smart wireless telephone device.
10. The method of claim 1, wherein:
- the at least one physiologic data gathering device includes a data gathering device that gathers physiologic data indicative of foot activity of a user.
11. The method of claim 1, wherein:
- the at least one wireless physiologic data gathering device is a plurality of wireless physiologic data gathering devices.
12. A method of operating a computer to interoperate with a portable mobile device, the method comprising:
- processing signals, provided from the portable mobile device to the computer, that are indicative of whether an accessory has been connected to the portable mobile device, to determine whether the accessory has been connected to the portable mobile device, wherein the portable mobile device is configured to receive physiologic data of a user from at least one physiologic data gathering device wirelessly, via the accessory; and
- controlling a user interface of the computer, based on a determination that the accessory has been connected to the portable mobile device, such that a user interface of the computer facilitates receiving from the portable mobile device, into the computer, the physiologic data that was provided wirelessly to the portable mobile device from the at least one physiologic data gathering device, via the accessory.
13. The method of claim 12, wherein:
- the user interface of the computer that facilitates receiving the physiologic data into the computer from the portable mobile device further includes functionality to display an indication of at least a portion of the received physiologic data.
14. The method of claim 12, further comprising:
- controlling the user interface of the computer to facilitate functions of the portable mobile device other than the function to receive physiologic data into the computer.
15. The method of claim 12, wherein:
- the portable mobile device includes functionality of a portable media player.
16. The method of claim 14, wherein:
- the portable mobile device includes functionality of a portable media player; and
- the functions of the portable mobile device other than the function to receive physiologic data into the computer include the functionality of the portable media player.
17. The method of claim 12, wherein:
- the at least one physiologic data gathering device includes a data gathering device that gathers physiologic data indicative of foot activity of a user.
18. The method of claim 12, wherein:
- the at least one wireless physiologic data gathering device is a plurality of wireless physiologic data gathering devices; and
- the method further comprises controlling the user interface of the computer to control for which of the plurality of wireless physiologic data gathering devices to facilitate receiving data, from the portable mobile device.
19. A method of operating a host computer to interoperate with a portable media player and at least one physiologic data gathering device coupled to the portable media player, the method comprising:
- providing, to the portable media player, a workout template that defines exercise cues to be provided to a user of the portable media player; and
- providing, to the portable media player, a playlist that defines media playback to be provided to the user of the portable media player, wherein the playlist is associated with the workout template.
20. The method of operating the host computer of claim 19, further comprising:
- receiving, from the portable media player, an indication of behavior of a user with respect to play back of media in association with a particular workout template; and
- processing the indication of the behavior and, based at least in part thereon, associating a playlist with the particular workout template.
21. The method of claim 20, wherein:
- associating a playlist with the particular workout template, based at least in part on processing the indication of the behavior, includes modifying an existing playlist associated with the particular workout template.
22. The method of claim 19, further comprising:
- interoperating with a media commerce server to purchase and receive media of the playlist, associated with the workout template.
23. The method of claim 22, further comprising:
- receiving, from the media commerce server, the workout template with which the playlist is associated.
24. The method of claim 19, further comprising:
- receiving, from the portable media player, physiologic data that was provided to the portable media player from the at least one physiologic data gathering device.
25. The method of claim 19, wherein the at least one physiologic data gathering device includes a physiologic data gathering device that gathers physiologic data indicative of foot activity of a user.
26. A computer-implemented media jukebox application tangibly embodied in a computer-readable medium, comprising:
- media handling code means to cause a computer to provide media to a portable media player; and
- physiologic data handling code means, integrated with the media handling code means, to cause the computer to interact with the portable media player relative to physiologic data for a user received by the portable media player wirelessly from a physiologic data gathering device.
27. The computer-implemented media jukebox application of claim 26, wherein:
- the physiologic data handling code means includes code means to cause the computer to process signals provided from the portable media player to the computer that are indicative of whether an accessory has been connected to the portable media player, to determine whether the accessory has been connected to the portable media player; and code means to cause the computer, based on a determination that the accessory has been connected to the portable media player, receive from the portable media player, into the computer, physiologic data of a user that was provided to the portable media player wirelessly from at least one physiologic data gathering device, via the accessory.
28. The application of claim 26, further comprising:
- data providing code means to cause the computer to provide at least a portion of the physiologic data, received from the portable media player, to at least one server computer of a centralized data storage service, via a network.
29. The application of claim 28, further comprising:
- handshake code means to cause the computer to accomplish a handshake between the host computer and the centralized data storage service, regarding an account of the user at the centralized data storage service for data from the portable media player.
30. The application of claim 29, wherein:
- the handshake code means includes code means to cause the computer to automatically provide an account token to the centralized data storage service, that uniquely identifies the account of the user at the centralized data storage service.
31. The application of claim 30, further comprising:
- account token handling code means to cause the computer to receive the account token from the centralized data storage service based on an account identification and password provided to the centralized data storage service in response to the account identification and password being received by the host computer via a user interface of the host computer.
32. The application of claim 26, further comprising:
- physiologic data display code means to cause the computer to display an indication of at least a portion of the physiologic data received from the portable media player.
33. The application of claim 26, further comprising:
- token providing code means to cause the computer to provide a token to the centralized data storage service, via the network, wherein the token uniquely corresponds to a particular account for the user on the centralized data storage service; and
- physiologic data providing code means to cause the computer to provide at least a portion of the physiologic data, received from the portable media player, to the centralized data storage service via the network, in association with providing the token to the centralized data storage service.
34. The application of claim 26, wherein:
- the at least one physiologic data gathering device includes a data gathering device that gathers physiologic data indicative of foot activity of a user.
35. The application of claim 26, wherein:
- the at least one wireless physiologic data gathering device is a plurality of wireless physiologic data gathering devices.
Type: Application
Filed: May 22, 2006
Publication Date: Nov 22, 2007
Applicant:
Inventors: Christopher R. Wysocki (Los Gatos, CA), David Heller (San Jose, CA), Amandeep Jawa (San Francisco, CA), Sandeep Gupta (Freemont, CA), Greg Marriott (Honolulu, HI), Max Sprauer (San Jose, CA), David A. Shayer (Palo Alto, CA), John Wesley Archibald (Sunnyvale, CA), Shannon E. Wells (Santa Clara, CA)
Application Number: 11/419,737
International Classification: G06Q 10/00 (20060101); A63B 71/00 (20060101);