The present invention relates to a Peer-to-Peer (P2P) media recommendation network and more specifically relates to matching participants in a P2P recommendation network.
In recent years, there has been an enormous increase in the amount of digital media, such as music, available online. Services such as Apple's iTunes enable users to legally purchase and download music. Other services such as Yahoo! Music Unlimited and RealNetwork's Rhapsody provide access to millions of songs for a monthly subscription fee. As a result, music has become much more accessible to listeners worldwide. However, the increased accessibility of music has only heightened a long-standing problem for the music industry, which is namely the issue of linking audiophiles with new music that matches their listening preferences.
Many companies, technologies, and approaches have emerged to address this issue of music recommendation. Some companies have taken an analytical approach. They review various attributes of a song, such as melody, harmony, lyrics, orchestration, vocal character, and the like, and assign a rating to each attribute. The ratings for each attribute are then assembled to create a holistic classification for the song that is then used by a recommendation engine. The recommendation engine typically requires that the user first identify a song that he or she likes. The recommendation engine then suggests other songs with similar attributes. Companies using this type of approach include Pandora (http://www.pandora.com), SoundFlavor (http://www.soundflavor.com), MusicIP (http://www.musicip.com), and MongoMusic (purchased by Microsoft in 2000).
Other companies take a communal approach. They make recommendations based on the collective wisdom of a group of users with similar musical tastes. These solutions first profile the listening habits of a particular user and then search similar profiles of other users to determine recommendations. Profiles are generally created in a variety of ways such as looking at a user's complete collection, the playcounts of their songs, their favorite playlists, and the like. Companies using this technology include Last.fm (http://www.last.fm), Music Strands (http://www.musicstrands.com), WebJay (http://www.webjay.org), Mercora (http://www.mercora.com), betterPropaganda (http://www.betterpropaganda.com), Loomia (http://www.loomia.com), eMusic (http://www.emusic.com), musicmatch (http://www.mmguide.musicmatch.com), genielab (http://genielab.com/), upto11 (http://www.upto11.net/), Napster (http://www.napster.com), and iTunes (http://www.itunes.com) with its celebrity playlists.
The problem with these traditional recommendation systems is that they fail to consider peer influences. One approach that addresses this issue is commonly owned and assigned U.S. patent application Ser. No. 11/484,130, entitled P2P NETWORK FOR PROVIDING REAL TIME MEDIA RECOMMENDATIONS, filed Jul. 11, 2006, which is hereby incorporated herein by reference in its entirety. In general, this approach provides for real-time Peer-to-Peer (P2P) media recommendations. In such a system, when the number of peer devices is large, there is a need for a method of intelligently recommending “friends” to a particular user for the purpose of identifying participants for a P2P recommendation group.
The present invention relates to a system and method for matching participants in a Peer-to-Peer (P2P) recommendation network that is loosely coupled to a subscription music service. In general, the system includes a central server and a number of peer devices. For each of the peer devices, an associated user is either a subscriber to the subscription music service or a non-subscriber. When a user of a peer device desires to identify new friends with which to exchange recommendations in the P2P recommendation network, a friend recommendation function of the central server identifies new friends for the user of the peer device based on the user's status as either a subscriber or a non-subscriber to the subscription music service.
More specifically, if the user is a subscriber, the friend recommendation function compares a user profile and a music collection of the user to user profiles and music collections of other users in the P2P recommendation network that are also subscribers to the subscription music service. A number of the other subscribers having user profiles that have a high correlation to the user profile of the user of the peer device and music collections that have a low correlation to the music collection of the user of the peer device are selected as the new friends for the user of the peer device. If the user is a non-subscriber, the friend recommendation function compares a music collection of the user to music collections of other non-subscribers in the P2P recommendation network. A number of the other non-subscribers having music collections that have a high correlation to the music collection of the user of the peer device are selected as the new friends for the user of the peer device.
Those skilled in the art will appreciate the scope of the present invention and realize additional aspects thereof after reading the following detailed description of the preferred embodiments in association with the accompanying drawing figures.
The accompanying drawing figures incorporated in and forming a part of this specification illustrate several aspects of the invention, and together with the description serve to explain the principles of the invention.
The embodiments set forth below represent the necessary information to enable those skilled in the art to practice the invention and illustrate the best mode of practicing the invention. Upon reading the following description in light of the accompanying drawing figures, those skilled in the art will understand the concepts of the invention and will recognize applications of these concepts not particularly addressed herein. It should be understood that these concepts and applications fall within the scope of the disclosure and the accompanying claims.
In general, the system 10 includes a number of peer devices 12-1 through 12-N connected to a central server 14 via a network 16, which may be a distributed public network such as, but not limited to, the Internet. The peer devices 12-1 through 12-N and the central server 14 form the P2P recommendation network. The system 10 also includes a number of subscription music services 18-1 through 18-M, where users 20-1 through 20-N of the peer devices 12-1 through 12-N are either subscribers of one or more of the subscription music services 18-1 through 18-M or non-subscribers. Note that while multiple subscription music services 18-1 through 18-M are shown, the system 10 may include any number of one or more subscription music services.
The peer devices 12-1 through 12-N may be, for example, personal computers, portable media players, mobile telephones, Personal Digital Assistants (PDAs), or the like having audio playback and network capabilities. Using the peer device 12-1 as an example, the peer device 12-1 includes a music player 22-1, a recommendation engine 24-1, a music collection 26-1, and a registry 28-1. Note that this discussion is equally applicable to all of the peer devices 12-1 through 12-N. The music player 22-1 may be implemented in software, hardware, or a combination of hardware and software. In general, the music player 22-1 operates to play songs from the music collection 26-1. The recommendation engine 24-1 may be implemented in software, hardware, or a combination of hardware and software. The recommendation engine 24-1 may alternatively be incorporated into the music player 22-1. The music collection 26-1 includes any number of songs stored in one or more digital storage units such as, for example, one or more hard-disc drives, one or more memory cards, internal Random-Access Memory (RAM), one or more associated external digital storage devices, or the like. Note that if the peer device 12-1 includes a log-in feature, the music collection 26-1 may vary depending on the user 20-1 that is currently logged-in at the peer device 12-1.
The registry 28-1 operates to store a registry entry for each song in the music collection 26. In one embodiment, each registry entry includes a Globally Unique Identifier (GUID) for the corresponding song in the music collection 26-1 and a reference to the song in the local storage of the peer device 12-1. In addition or as an alternative to the GUID, the registry entry may include metadata identifying the corresponding song such as, for example, the title and artist of the song. The registry entry may also include a Uniform Resource Locator (URL) or other network reference to the song at one or more remote content sources such as one or more of the subscription music services 18-1 through 18-M, a score of the song computed by the recommendation engine 24-1 as discussed below, and a status of the song, where the status may be an indicator of download progress if the song is currently being downloaded from one of the subscription music services 18-1 through 18-M.
In operation, each time a song is played by the music player 22-1, the recommendation engine 24-1 operates to provide a recommendation identifying the song to a number of other peer devices associated with other users in a P2P recommendation group of the user 20-1 of the peer device 12-1. In one embodiment, the P2P recommendation group of the user 20-1 of the peer device 12-1 includes a number of the other users 20-2 through 20-N of the other peers devices 12-2 through 12-N that are on a “friends list” of the user 20-1 of the peer device 12-1. The recommendation does not include the song. In one embodiment, the recommendation may be a recommendation file including the GUID for the song and optionally the URL or other network reference enabling the other peer devices to obtain the song from one or more of the subscription music services 18-1 through 18-M. In addition, as discussed below in detail, the recommendation engine 24-1 operates to programmatically, or automatically, select a next song to be played by the music player 22-1 from a group of songs including songs identified by recommendations received from one or more of the other peer devices 12-2 through 12-N in the P2P recommendation group of the peer device 12-1 based on user preferences of the user 20-1 of the peer device 12-1. If the selected song is not stored locally at the peer device 12-1, the peer device 12-1 may obtain the selected song from one of the subscription music services 18-1 through 18-M.
In this embodiment, the central server 14 includes a content identification function 30, a friend recommendation function 32, and a proxy function 34. Note that while the central server 14 is illustrated as a single server, it may alternatively be implemented as a number of servers that operate in a collaborative fashion for purposes of load balancing and redundancy. The content identification function 30 is optional and may be implemented in software, hardware, or a combination thereof. In operation, the content identification function 30 identifies songs in the music collections 26-1 through 26-N of the users 20-1 through 20-N of the peer devices 12-1 through 12-N by comparing identification parameters for the songs to content descriptors in a content descriptors database 36. The content descriptors database 36 operates to store a content descriptor for each of a number of songs known to the central server 14. In one embodiment, the content descriptors database 36 stores a content descriptor for each song hosted by one or more of the subscription music services 18-1 through 18-M. Each content descriptor may include one or more digital fingerprints for the associated song, the GUID for the song, metadata for the song, and a URL for the song at one or more of the subscription music services 18-1 through 18-M. The metadata for the song may include, for example, the title of the song, artist, album, date of release, lyrics, an album cover image, and the like.
The friend recommendation function 32 may be implemented in software, hardware, or combination thereof. In general, using the peer device 12-1 as an example, the friend recommendation function 32 operates to select friends, or new friends, for the user 20-1 of the peer device 12-1 upon request. Note that friends may also be entered manually by the user 20-1. Generally, the friend recommendation function 32 selects new friends for the peer device 12-1 based on information stored in a user accounts database 38. For each of the users 20-1 through 20-N, the user accounts database 38 stores a user account. Using the user 20-1 as an example, the user account of the user 20-1 includes subscriber status information indicating whether the user 20-1 is a subscriber of one or more of the subscription music services 18-1 through 18-M or a non-subscriber, a list of songs in the music collection 26-1, and a user profile. The user account may also include a friends list for the user 20-1 of the peer device 12-1. In addition or alternatively, the friends list may be stored by the peer device 12-1. The friends list identifies one or more of the other users 20-2 through 20-N in the P2P recommendation group of the user 20-1 of the peer device 12-1. The user account may also include a play history of the peer device 12-1 and an online status of the peer device 12-1.
The user profile of the user 20-1 stored in the corresponding user account includes statistical information describing the music collection 26-1 such as, for example, a genre distribution, an artist distribution, and a release year distribution. In addition or alternatively, the user profile may include statistical information describing the songs in the play history of the user 20-1 of the peer device 12-1 such as, for example, a genre distribution, an artist distribution, and a release year distribution. In addition, the user profile may include information identifying the user 20-1 such as a name, address, e-mail address, and the like and demographic information describing the user 20-1 such as age, sex, marital status, and the like.
Note that the list of songs in the music collection 26-1 stored in the corresponding user account may be generated by the central server 14 in various manners. In a first embodiment, the songs in the music collection 26-1 are identified by the content identification function 30. In another embodiment, the list of songs in the music collection 26-1 may be generated by monitoring recommendations from the peer device 12-1 provided to others of the peer devices 12-1 through 12-N via the proxy function 34.
The proxy function 34 may be implemented in software, hardware, or a combination thereof. In general, the proxy function 34 operates as an intermediary for sending recommendations among the peer devices 12-1 through 12-N. In addition, the proxy function 34 may perform various functions such as filtering recommendations based on various filtering criteria, monitoring recommendations to ascertain play histories for the users 20-1 through 20-N of the peer devices 12-1 through 12-N, and monitoring recommendations to generate the lists of songs in the music collections 26-1 through 26-N stored in the user accounts database 38.
The subscription music services 18-1 through 18-M may each be a service hosted by a server connected to the network 16. Exemplary subscription based music services that may be modified to operate according to the present invention are Yahoo! Music Unlimited digital music service and RealNetwork's Rhapsody digital music service. Note that one or more of the subscription music services 18-1 through 18-M may alternatively be hosted by the central server 14. Further, while the subscription services 18-1 through 18-M are discussed herein as music services, the present invention is not limited thereto. For example, each of the subscription services 18-1 through 18-M may alternatively be video services. Still further, some of the subscription services 18-1 through 18-M may be music services while others are video services.
The peer device 12-1 then provides one or more identification parameters for each of the songs to the content identification function 30 (step 102). In a first embodiment, the identification parameters include one or more digital fingerprints for each of the songs. In order to generate the fingerprints, the peer device 12-1 may analyze one or more segments of a song to determine, for example, beats-per-minute and/or compute a Fast Fourier Transform (FFT). The segments of the song analyzed to generate the fingerprints may be selected at random or in some predetermined fashion. For a more detailed discussion of generating fingerprints for a song and identifying the song based on the fingerprints, see U.S. Pat. No. 6,990,453, entitled SYSTEM AND METHODS FOR RECOGNIZING SOUND AND MUSIC SIGNALS IN HIGH NOISE AND DISTORTION, issued Jan. 24, 2006, which is hereby incorporated by reference in its entirety.
In a second embodiment, the identification parameters include one or more samples of each of the songs, rather than fingerprints. The content identification function 30 may then generate fingerprints for the songs using the samples of the songs. In a third embodiment, the identification parameters include metadata describing each of the songs and optionally fingerprints for a select number of the songs. The fingerprints of the select number of songs may be used for verification purposes in order to determine whether the peer device 12-1 is spoofing the content identification function 30 with metadata for songs that are not in fact stored in the music collection 26-1 of the peer device 12-1. In a fourth embodiment, the identification parameters include metadata describing each of the songs and one or more samples of a select number of the songs. The samples of the select number of songs may be used to generate fingerprints for the songs, which may then be used for verification purposes as described above.
The content identification function 30 then identifies the songs using the song identification parameters and the content descriptors in the content descriptors database 36 (step 104). The manner in which the songs are identified varies depending on the identification parameters. If the identification parameters are fingerprints for the songs, the content identification function 30 may identify the songs by comparing the fingerprints to the fingerprints of the content descriptors in the content descriptors database 36. A song is identified when the fingerprints for the song match the fingerprints of a particular content descriptor. If the identification parameters are samples of the songs, the content identification function 30 may generate fingerprints for the songs from the samples and then identify the songs by comparing the fingerprints to the fingerprints of the content descriptors. If the identification parameters include metadata describing the songs, the content identification function 30 may identify the songs by comparing the metadata to the metadata of the content descriptors. When the metadata of a song matches the metadata of a particular content descriptor, the song is identified as the song corresponding to the matching content descriptor.
In this example, once the songs are identified, the GUIDs for the songs from the corresponding content descriptors are provided to the peer device 12-1 (step 106). Optionally, the metadata for the songs and the URLs for obtaining the songs from one or more of the subscription music services 18-1 through 18-M may also be provided to the peer device 12-1. The peer device 12-1 then generates registry entries for the songs in the registry 28-1 (step 108). The registry entries may include the GUIDs for the songs. In addition or as an alternative to the GUIDs, the registry entries may include metadata describing the songs. The registry entries may also include URLs for the songs. The metadata provided to the peer device 12-1 may additionally or alternatively be used to add, update, or correct metadata for the songs stored in the corresponding song files. Note that in an alternative embodiment, the registry entries may be implemented within the headers of the corresponding song files.
It should be noted that in addition to or as an alternative to the content identification function 30, various schemes may be used to obtain or otherwise provide the GUIDs for the songs in the music collections 26-1 through 26-N. For example, if the songs are downloaded from a remote content source such as one of the subscription music services 18-1 through 18-M, the GUIDs may be provided along with the songs or be included as metadata within the song files. As another example, if the songs are imported from a Compact Disc (CD), the GUIDs for the songs may be obtained from a remote database as part of the importing process. More specifically, when importing the songs from the CD, information such as, for example, the number of tracks on the CD and the length of each track may be provided to a remote service such as Gracenote (http://www.gracenote.com). In response, the remote service may provide the GUIDs and optionally metadata to the corresponding peer device 12-1 through 12-N for each of the songs imported from the CD.
Upon receiving the request at the central server 14, the friend recommendation function 32 identifies new friends for the user 20-1 of the peer device 12-1 (step 202). As discussed below, the friend recommendation function 32 selects the new friends from the other users 20-2 through 20-N of the other peer devices 12-2 through 12-N differently depending on whether the user 20-1 is a subscriber of one or more of the subscription music services 18-1 through 18-M or a non-subscriber. Once the new friends are selected, the friend recommendation function 32 may update the friends list of the user 20-1 to include the new friends (step 204). Note that the recommendation engine 32 may request approval from the user 20-1 before adding the new friends to the friends list of the user 20-1. The friend recommendation function 32 may also provide the updated friends list to the peer device 12-1 (step 206). By adding the new friends to the friends list of the user 20-1 and optionally providing the updated friends list to the peer device 12-1, the central server 14 effects addition of the peer devices associated with the new friends to the P2P recommendation group of the user 20-1 of the peer device 12-1.
The friend recommendation function 32 then selects a number of the other subscribers having user profiles that have a high correlation to the user profile of the user 20-1 and music collections that have a low correlation to the music collection 26-1 of the user 20-1 at the peer device 12-1 as new friends for the user 20-1 of the peer device 12-1 (step 304). As used herein, in one embodiment, a low correlation between two music collections occurs when the two music collections have less than a static or dynamic threshold number of songs in common. For example, a number of the other subscribers with less than X songs in common with the user 20-1 may be said to have a low correlation in music collections, where X may be a static threshold or a dynamic threshold selected such that the desired number of new friends are selected. In another embodiment, a low correlation between two music collections occurs when less than a static or dynamic threshold percentage of the songs in one of the music collections is also in the other music collection.
In a similar fashion, two user profiles have a high correlation when the statistical information in the user profiles are substantially similar in that they indicate that the users like the same genres of music, the same artists, the same time period, or any combination thereof. More specifically, the statistical information may include, for example, a genre distribution, an artist distribution, and a release year distribution. The genre distribution for a user may be computed by determining the number of songs in the corresponding music collection in each of a number of genres and dividing the number of songs in each genre by the total number of songs in the music collection in order to normalize the results. In a similar fashion, the artist distribution and the release year distribution may be computed. Two user profiles may have a high correlation when one or more of the genre distributions, the artist distributions, and the release year distributions for the two user profiles are substantially the same. For example, a score indicative of a similarity of the statistical information from two user profiles may be generated. The score may then be compared to a threshold score to determine whether the two profiles are substantially similar (i.e., that the corresponding users have similar tastes in music). The score may be generated using, for example, a least mean squared algorithm that compares the statistical information for the two profiles.
Note that when the user 20-1 is a subscriber, it is beneficial to select new friends having music collections that have a low correlation to the music collection 26-1 of the user 20-1 such that the peer device 12-1 is more likely to receive recommendations for new songs that are not already in the music collection 26-1. Thus, it enables the user 20-1 to experience new songs. Further, by selecting users having user profiles that have a high correlation to the user profile of the user 20-1, the friend recommendation function 32 ensures that the new friends have tastes in music similar to the tastes of the user 20-1.
If the user 20-1 is a non-subscriber, the friend recommendation function 32 compares the music collection 26-1 to the music collections of others of the users 20-1 through 20-N that are also non-subscribers (step 306). More specifically, the friend recommendation function 32 compares the list of songs in the music collection 26-1 stored in the user account of the user 20-1 to the lists of songs for other ones of the users 20-1 through 20-N that are also non-subscribers. The friend recommendation function 32 then selects a number of the other non-subscribers having music collections that have a high correlation with the music collection 26-1 of the user 20-1 as the new friends for the user 20-1 of the peer device 12-1 (step 308). As used herein, in one embodiment, a high correlation between two music collections occurs when the two music collections have greater than a static or dynamic threshold number of songs in common or have greater than a static or dynamic percentage of their songs in common. For example, a number of the other non-subscribers having more than X songs in common with the user 20-1 may be said to have a high correlation in music collections, where X may be a static threshold or a dynamic threshold selected such that the desired number of new friends is selected.
Note that when the user 20-1 is a non-subscriber, it is beneficial to select new friends having music collections that have a high correlation to the music collection 26-1 of the user 20-1 such that the peer device 12-1 is more likely to receive recommendations for songs that are already in the music collection 26-1. This is beneficial because the peer device 12-1 is unable to access new songs at the subscription music services 18-1 through 18-M. Also note that the friend recommendation function 32 may also consider other user profile information, play history, user preferences, or the like when selecting the new friends for the user 20-1 of the peer device 12-1.
The proxy function 34 may additionally or alternatively filter recommendations based on various criteria. For example, the proxy function 34 may filter recommendations such that the peer device 12-1 only receives recommendations for songs in the music collection 26-1. This may be beneficial if the user 20-1 is a non-subscriber. As another example, the proxy function 34 may filter recommendations such that the peer device 12-1 only receives recommendations for songs in the music collection 26-1 or accessible to the peer device 12-1 from one or more of the subscription music services 18-1 through 18-M. This may be beneficial where the user 20-1 is a subscriber of one or more of the subscription music services 18-1 through 18-M. The proxy function 34 may also filter the recommendations based on filtering criteria such as, for example, user, genre, artist, title, album, lyrics, date of release, or the like. The filtering criteria may be defined by the user 20-1 of the peer device 12-1.
The proxy function 34 may also monitor the recommendations to generate and store the play history for users 20-1 through 20-4 of the peer devices 12-1 through 12-4. Using the user 20-1 as an example, the play history may include a list of GUIDs and time stamps corresponding to the recommendations received by the proxy function 34 from the peer device 12-1 while the user 20-1 is logged-in or otherwise using the peer device 12-1.
The proxy function 34 forwards the recommendation to the peer device 12-1 (step 404). While not illustrated for clarity and ease of discussion, the proxy function 34 may also send the recommendation to the peer devices 12-3 and 12-4. Note that the proxy function 34 may identify the peer devices 12-1, 12-3, and 12-4 to which the recommendation is to be forwarded using, for example, the friends list of the user 20-2 of the peer device 12-2 stored in the user accounts database 38. Alternatively, the recommendation from the peer device 12-2 may identify the desired recipients of the recommendation.
Like the peer device 12-2, the peer device 12-3 also plays a song and sends a song recommendation to the peer device 12-1 via the proxy function 34 of the central server 14 (steps 406-410). Again, while not illustrated for clarity, the recommendation for the song may also be provided to the peer devices 12-2 and 12-4 via the proxy function 34 of the central server 14. Likewise, the peer device 12-4 also plays a song and sends a song recommendation to the peer device 12-1 via the proxy function 34 of the central server 14 (steps 412-416). Again, while not illustrated for clarity, the recommendation for the song may also be provided to the peer devices 12-2 and 12-3 via the proxy function 34 of the central server 14.
The recommendation engine 24-1 of the peer device 12-1 may optionally filter the recommendations from the other peer devices 12-2 through 12-4 (step 418). Note that if the proxy function 34 has already filtered the recommendations, no filtering or limited filtering may be desired at the recommendation engine 24-1. Based on user preferences, the recommendation engine 24-1 automatically selects a next song to play from the songs identified by the recommendations received from the other peer devices 12-2 through 12-4, optionally songs identified by previously received recommendations from the peer devices 12-2 through 12-4, and optionally one or more songs from the music collection 26-1 (step 420). In the preferred embodiment discussed below, the songs identified by the recommendations from the other peer devices 12-2 through 12-4 and the songs from the music collection 26-1 are scored based on the user preferences. Then, based on the scores, the recommendation engine 24-1 selects the next song to play.
Once the next song to play is selected, the peer device 12-1 obtains the selected song (step 422). If the selected song is part of the music collection 26-1, the peer device 12-1 obtains the selected song from the music collection 26-1. If the selected song is not part of the music collection 26-1 and the user 20-1 is a subscriber to one or more of the subscription music services 18-1 through 18-M, the recommendation engine 24-1 obtains the selected song from one of the subscription music services 18-1 through 18-M. Note that in one embodiment, the recommendations include the GUIDs of the corresponding songs. In order to determine whether the recommended songs are part of the music collection 26-1 of the user 20-1 of the peer device 12-1, the recommendation engine 24-1 may compare the GUIDs from the recommendations to the GUIDs of the songs in the music collection 26-1 stored in the registry 28-1. Once obtained, the selected song is played (step 424), and a recommendation for the song is provided to the other peer devices 12-2 through 12-4 via the proxy function 34 (steps 426-432).
Returning to step 420, the recommendation engine 24-1 may provide a download queue for downloading songs or previews of songs using a background process such that the songs or previews will be available when desired to be played. If the user 20-1 is a subscriber to one or more of the subscription music services 18-1 through 18-M, songs having a score greater than a first threshold that are not already in the music collection 26-1 are added to the download queue such that the songs are downloaded from one or more of the subscription music services 18-1 through 18-M. Registry entries for the songs may be generated and added to the registry 28-1 before, during, or after download. Songs having a score less than the first threshold but greater than a second threshold may be added to the download queue such that previews of the songs are downloaded from a remote source such as one or more of the subscription music services 18-1 through 18-M.
Once recommendations are received from the other peer devices 12-2 through 12-4 (
For more information regarding the real-time recommendations, scoring, and automatic selection process, the interested reader is directed to U.S. patent application Ser. No. 11/484,130, entitled P2P NETWORK FOR PROVIDING REAL TIME MEDIA RECOMMENDATIONS, filed Jul. 11, 2006; U.S. patent application Ser. No. 11/609,945, entitled MAINTAINING A MINIMUM LEVEL OF REAL TIME MEDIA RECOMMENDATIONS IN THE ABSENCE OF ONLINE FRIENDS, filed Dec. 13, 2006; and U.S. patent application Ser. No. 11/609,948, entitled SYSTEM AND METHOD FOR IDENTIFYING MUSIC CONTENT IN A P2P REAL TIME RECOMMENDATION NETWORK, filed Dec. 13, 2006; all of which are hereby incorporated herein by reference their entireties.
The accounts database 38′ stores an account for each of the peer devices 12-1 through 12-N. The accounts may be associated with the peer devices 12-1 through 12-N via identifiers of the peer devices 12-1 through 12-N or identifiers of the owners of the peer devices 12-1 through 12-N. Again, the owners may or may not be the current users 20-1 through 20-N of the peer devices 12-1 through 12-N. Using the peer device 12-1 as an example, the account of the peer device 12-1 includes subscriber status information indicating whether the owner of the peer device 12-1 is a subscriber of one or more of the subscription music services 18-1 through 18-M or a non-subscriber, a list of songs in the music collection 26-1 of the peer device 12-1, and a profile. The account may also include a recommender list for the peer device 12-1 identifying others of the peer devices 12-2 through 12-N in the P2P recommendation group of the peer device 12-1. In addition or alternatively, the recommender list may be stored by the peer device 12-1. The recommender list identifies one or more of the other peer devices 12-2 through 12-N in the P2P recommendation group of the peer device 12-1. The account may also include a play history of the peer device 12-1 and an online status of the peer device 12-1.
The profile of the peer device 12-1 stored in the corresponding account includes statistical information describing the music collection 26-1 such as, for example, a genre distribution, an artist distribution, and a release year distribution. In addition or alternatively, the profile may include statistical information describing the songs in the play history of the peer device 12-1 such as, for example, a genre distribution, an artist distribution, and a release year distribution. In addition, the profile may include information identifying the owner of the peer device 12-1 such as a name, address, e-mail address, and the like and demographic information describing the owner such as age, sex, marital status, and the like.
Note that the list of songs in the music collection 26-1 stored in the account of the peer device 12-1 may be generated by the central server 14′ in various manners. In a first embodiment, the songs in the music collection 26-1 are identified by the content identification function 30. In another embodiment, the list of songs in the music collection 26-1 may be generated by monitoring recommendations from the peer device 12-1 provided to others of the peer devices 12-2 through 12-N via the proxy function 34.
Upon receiving the request at the central server 14′, the peer recommendation function 32′ identifies new peer devices for the P2P recommendation group of the peer device 12-1 (step 602). As discussed below, the peer recommendation function 32′ selects the new peer devices from the other peer devices 12-2 through 12-N differently depending on whether the owner of the peer device 12-1 is a subscriber of one or more of the subscription music services 18-1 through 18-M or a non-subscriber. Once the new peer devices are selected, the peer recommendation function 32′ may update the recommender list of the peer device 12-1 to include the new peer devices (step 604). Note that the peer recommendation function 32′ may request approval from the user 20-1 before adding the new peer devices to the recommender list of the peer device 12-1. The peer recommendation function 32′ may also provide the updated recommender list to the peer device 12-1 (step 606). By adding the new peer devices to the recommender list of the peer device 12-1 and optionally providing the updated recommender list to the peer device 12-1, the central server 14′ effects addition of the new peer devices to the P2P recommendation group of the peer device 12-1.
The peer recommendation function 32′ then selects a number of the other subscribing peer devices having profiles that have a high correlation to the profile of the peer device 12-1 and music collections that have a low correlation to the music collection 26-1 of the peer device 12-1 as new peer devices for the P2P recommendation group of the peer device 12-1 (step 704). As used herein, in one embodiment, a low correlation between two music collections occurs when the two music collections have less than a static or dynamic threshold number of songs in common. For example, a number of the other subscribing devices with less than X songs in common with the peer device 12-1 may be said to have a low correlation in music collections, where X may be a static threshold or a dynamic threshold selected such that the desired number of new peer devices are selected. In another embodiment, a low correlation between two music collections occurs when less than a static or dynamic threshold percentage of the songs in one of the music collections are also in the other music collection.
In a similar fashion, two profiles have a high correlation when the statistical information in the profiles indicate that the peer devices host the same genres of music, the songs by the same artists, songs from the same time period, or any combination thereof. More specifically, the statistical information may include, for example, a genre distribution, an artist distribution, and a release year distribution. The genre distribution for a peer device may be computed by determining the number of songs in the corresponding music collection in each of a number of genres and dividing the number of songs in each genre by the total number of songs in the music collection in order to normalize the results. In a similar fashion, the artist distribution and the release year distribution may be computed. Two profiles may have a high correlation when one or more of the genre distributions, the artist distributions, and the release year distributions for the two profiles are substantially the same.
Note that when the owner of the peer device 20-1 is a subscriber, it is beneficial to select new peer devices having music collections that have a low correlation to the music collection 26-1 of the peer device 12-1 such that the peer device 12-1 is more likely to receive recommendations for new songs that are not already in the music collection 26-1. Thus, it enables the user 20-1 to experience new songs. Further, by selecting peer devices having profiles that have a high correlation to the profile of the peer device 12-1, the peer recommendation function 32′ ensures that the owners or users of the new peer devices have tastes in music similar to the tastes of the owner or user 20-1 of the peer device 12-1.
If the owner 20-1 of the peer device 12-1 is a non-subscriber, the peer recommendation function 32′ compares the music collection 26-1 to the music collections of others of the peer devices 12-2 through 12-N that are also non-subscribing peer devices (step 706). More specifically, the peer recommendation function 32′ compares the list of songs in the music collection 26-1 stored in the account of the peer device 12-1 to the lists of songs for ones of the peer devices 12-2 through 12-N that are also non-subscribing peer devices. The peer recommendation function 32′ then selects a number of the other non-subscribing peer devices having music collections that have a high correlation with the music collection 26-1 of the peer device 12-1 as the new peer devices for the P2P recommendation group of the peer device 12-1 (step 708). As used herein, in one embodiment, a high correlation between two music collections occurs when the two music collections have greater than a static or dynamic threshold number of songs in common or have greater than a static or dynamic percentage of their songs in common. For example, a number of the other non-subscribing peer devices having more than X songs in common with the peer device 12-1 may be said to have a high correlation in music collections, where X may be a static threshold or a dynamic threshold selected such that the desired number of new peer devices are selected.
Note that when the owner of the peer device 12-1 is a non-subscriber, it is beneficial to select new peer devices having music collections that have a high correlation to the music collection 26-1 of the peer device 12-1 such that the peer device 12-1 is more likely to receive recommendations for songs that are already in the music collection 26-1. This is beneficial because the peer device 12-1 is unable to access new songs at the subscription music services 18-1 through 18-M. Also note that the peer recommendation function 32′ may also consider other profile information, play history, user preferences, or the like when selecting the new peer devices for the P2P recommendation group of the peer device 12-1.
The present invention provides substantial opportunity for variation without departing from the spirit or scope of the present invention. For example, while the discussion herein focuses on song recommendations, the present invention is not limited thereto. The present invention is equally applicable to recommendations for other types of media presentations such as video presentations. Thus, the present invention may additionally or alternatively provide movie recommendations, television program recommendations, or the like. As another example, while the discussion above describes a system where recommendations are provided from, for example, the peer device 12-1 to the other peer devices 12-2 through 12-4 via the proxy function 34, the present invention is not limited thereto. The peer device 12-1 may alternatively provide recommendations to the other peer devices 12-2 through 12-4 via direct P2P connections.
Those skilled in the art will recognize improvements and modifications to the preferred embodiments of the present invention. All such improvements and modifications are considered within the scope of the concepts disclosed herein and the claims that follow.
Number | Name | Date | Kind |
---|---|---|---|
4870579 | Hey | Sep 1989 | A |
5621456 | Florin et al. | Apr 1997 | A |
5963916 | Kaplan | Oct 1999 | A |
6195657 | Rucker et al. | Feb 2001 | B1 |
6266649 | Linden et al. | Jul 2001 | B1 |
6317722 | Jacobi et al. | Nov 2001 | B1 |
6353823 | Kumar | Mar 2002 | B1 |
6388714 | Schein et al. | May 2002 | B1 |
6438579 | Hosken | Aug 2002 | B1 |
6526411 | Ward | Feb 2003 | B1 |
6567797 | Schuetze et al. | May 2003 | B1 |
6615208 | Behrens et al. | Sep 2003 | B1 |
6629104 | Parulski et al. | Sep 2003 | B1 |
6636836 | Pyo | Oct 2003 | B1 |
6662231 | Drosset et al. | Dec 2003 | B1 |
6670537 | Hughes et al. | Dec 2003 | B2 |
6694482 | Arellano et al. | Feb 2004 | B1 |
6757517 | Chang | Jun 2004 | B2 |
6757691 | Welsh et al. | Jun 2004 | B1 |
6801909 | Delgado et al. | Oct 2004 | B2 |
6865565 | Rainsberger et al. | Mar 2005 | B2 |
6904264 | Frantz | Jun 2005 | B1 |
6941275 | Swierczek | Sep 2005 | B1 |
6941324 | Plastina et al. | Sep 2005 | B2 |
6947922 | Glance | Sep 2005 | B1 |
6976228 | Bernhardson | Dec 2005 | B2 |
6990453 | Wang et al. | Jan 2006 | B2 |
7013301 | Holm et al. | Mar 2006 | B2 |
7072846 | Robinson | Jul 2006 | B1 |
7072886 | Salmenkaita et al. | Jul 2006 | B2 |
7075000 | Gang et al. | Jul 2006 | B2 |
7089248 | King et al. | Aug 2006 | B1 |
7096234 | Plastina et al. | Aug 2006 | B2 |
7120619 | Drucker et al. | Oct 2006 | B2 |
7139757 | Apollonsky et al. | Nov 2006 | B1 |
7177872 | Schwesig et al. | Feb 2007 | B2 |
7222187 | Yeager et al. | May 2007 | B2 |
7283992 | Liu et al. | Oct 2007 | B2 |
7496623 | Szeto et al. | Feb 2009 | B2 |
7594246 | Billmaier et al. | Sep 2009 | B1 |
20010013009 | Greening et al. | Aug 2001 | A1 |
20010021914 | Jacobi et al. | Sep 2001 | A1 |
20020052207 | Hunzinger | May 2002 | A1 |
20020052873 | Delgado et al. | May 2002 | A1 |
20020082901 | Dunning et al. | Jun 2002 | A1 |
20020087382 | Tiburcio | Jul 2002 | A1 |
20020103796 | Hartley | Aug 2002 | A1 |
20020116533 | Holliman et al. | Aug 2002 | A1 |
20020138836 | Zimmerman | Sep 2002 | A1 |
20020165793 | Brand et al. | Nov 2002 | A1 |
20020178057 | Bertram et al. | Nov 2002 | A1 |
20030001907 | Bergsten et al. | Jan 2003 | A1 |
20030014407 | Blatter et al. | Jan 2003 | A1 |
20030046399 | Boulter et al. | Mar 2003 | A1 |
20030055516 | Gang et al. | Mar 2003 | A1 |
20030055657 | Yoshida et al. | Mar 2003 | A1 |
20030089218 | Gang et al. | May 2003 | A1 |
20030115167 | Sharif et al. | Jun 2003 | A1 |
20030135513 | Quinn et al. | Jul 2003 | A1 |
20030149612 | Berghofer et al. | Aug 2003 | A1 |
20030160770 | Zimmerman | Aug 2003 | A1 |
20030191753 | Hoch | Oct 2003 | A1 |
20030229537 | Dunning et al. | Dec 2003 | A1 |
20030237093 | Marsh | Dec 2003 | A1 |
20040003392 | Trajkovic et al. | Jan 2004 | A1 |
20040034441 | Eaton et al. | Feb 2004 | A1 |
20040091235 | Gutta | May 2004 | A1 |
20040107821 | Alcalde et al. | Jun 2004 | A1 |
20040128286 | Yasushi et al. | Jul 2004 | A1 |
20040162830 | Shirwadkar et al. | Aug 2004 | A1 |
20040181540 | Jung et al. | Sep 2004 | A1 |
20040186733 | Loomis et al. | Sep 2004 | A1 |
20040199527 | Morain et al. | Oct 2004 | A1 |
20040216108 | Robbin | Oct 2004 | A1 |
20040224638 | Fadell et al. | Nov 2004 | A1 |
20040252604 | Johnson et al. | Dec 2004 | A1 |
20040267604 | Gross | Dec 2004 | A1 |
20050021420 | Michelitsch et al. | Jan 2005 | A1 |
20050021678 | Simyon et al. | Jan 2005 | A1 |
20050026559 | Khedouri | Feb 2005 | A1 |
20050038819 | Hicken et al. | Feb 2005 | A1 |
20050038876 | Chaudhuri | Feb 2005 | A1 |
20050060264 | Schrock et al. | Mar 2005 | A1 |
20050060666 | Hoshino et al. | Mar 2005 | A1 |
20050065976 | Holm et al. | Mar 2005 | A1 |
20050120053 | Watson | Jun 2005 | A1 |
20050125222 | Brown et al. | Jun 2005 | A1 |
20050154764 | Riegler et al. | Jul 2005 | A1 |
20050154767 | Sako | Jul 2005 | A1 |
20050158028 | Koba | Jul 2005 | A1 |
20050166245 | Shin et al. | Jul 2005 | A1 |
20050197961 | Miller et al. | Sep 2005 | A1 |
20050228830 | Plastina et al. | Oct 2005 | A1 |
20050246391 | Gross | Nov 2005 | A1 |
20050251455 | Boesen | Nov 2005 | A1 |
20050251807 | Weel | Nov 2005 | A1 |
20050256756 | Lam et al. | Nov 2005 | A1 |
20050256866 | Lu et al. | Nov 2005 | A1 |
20050267944 | Little, II | Dec 2005 | A1 |
20050278758 | Bodlaender | Dec 2005 | A1 |
20050286546 | Bassoli et al. | Dec 2005 | A1 |
20060004640 | Swierczek | Jan 2006 | A1 |
20060004704 | Gross | Jan 2006 | A1 |
20060008256 | Khedouri et al. | Jan 2006 | A1 |
20060010167 | Grace et al. | Jan 2006 | A1 |
20060020662 | Robinson | Jan 2006 | A1 |
20060026048 | Kolawa et al. | Feb 2006 | A1 |
20060048059 | Etkin | Mar 2006 | A1 |
20060064716 | Sull et al. | Mar 2006 | A1 |
20060074750 | Clark et al. | Apr 2006 | A1 |
20060083119 | Hayes | Apr 2006 | A1 |
20060085383 | Mantle et al. | Apr 2006 | A1 |
20060100924 | Tevanian, Jr. | May 2006 | A1 |
20060126135 | Stevens et al. | Jun 2006 | A1 |
20060143236 | Wu | Jun 2006 | A1 |
20060156242 | Bedingfield | Jul 2006 | A1 |
20060174277 | Sezan et al. | Aug 2006 | A1 |
20060195479 | Spiegelman et al. | Aug 2006 | A1 |
20060195514 | Rogers et al. | Aug 2006 | A1 |
20060195515 | Beaupre et al. | Aug 2006 | A1 |
20060195516 | Beaupre | Aug 2006 | A1 |
20060195521 | New et al. | Aug 2006 | A1 |
20060195789 | Rogers et al. | Aug 2006 | A1 |
20060195790 | Beaupre et al. | Aug 2006 | A1 |
20060200435 | Flinn et al. | Sep 2006 | A1 |
20060218187 | Plastina et al. | Sep 2006 | A1 |
20060227673 | Yamashita et al. | Oct 2006 | A1 |
20060253417 | Brownrigg et al. | Nov 2006 | A1 |
20060259355 | Farouki et al. | Nov 2006 | A1 |
20060265409 | Neumann et al. | Nov 2006 | A1 |
20060271959 | Jacoby et al. | Nov 2006 | A1 |
20060271961 | Jacoby et al. | Nov 2006 | A1 |
20060277098 | Chung et al. | Dec 2006 | A1 |
20060282856 | Errico et al. | Dec 2006 | A1 |
20060288041 | Plastina et al. | Dec 2006 | A1 |
20060293909 | Miyajima et al. | Dec 2006 | A1 |
20070005793 | Miyoshi et al. | Jan 2007 | A1 |
20070022437 | Gerken | Jan 2007 | A1 |
20070028171 | MacLaurin | Feb 2007 | A1 |
20070043766 | Nicholas et al. | Feb 2007 | A1 |
20070044010 | Sull et al. | Feb 2007 | A1 |
20070078714 | Ott, IV et al. | Apr 2007 | A1 |
20070079352 | Klein, Jr. | Apr 2007 | A1 |
20070083471 | Robbin et al. | Apr 2007 | A1 |
20070083553 | Minor | Apr 2007 | A1 |
20070100904 | Casey et al. | May 2007 | A1 |
20070106672 | Sighart et al. | May 2007 | A1 |
20070106693 | Houh et al. | May 2007 | A1 |
20070118657 | Kreitzer et al. | May 2007 | A1 |
20070118853 | Kreitzer et al. | May 2007 | A1 |
20070118873 | Houh et al. | May 2007 | A1 |
20070162502 | Thomas et al. | Jul 2007 | A1 |
20070214182 | Rosenberg | Sep 2007 | A1 |
20070238427 | Kraft et al. | Oct 2007 | A1 |
20070244880 | Martin et al. | Oct 2007 | A1 |
20070265870 | Song et al. | Nov 2007 | A1 |
20070269169 | Stix et al. | Nov 2007 | A1 |
20080010372 | Khedouri et al. | Jan 2008 | A1 |
20080016205 | Svendsen | Jan 2008 | A1 |
20080032723 | Rosenberg | Feb 2008 | A1 |
20080052371 | Partovi et al. | Feb 2008 | A1 |
20080091771 | Allen et al. | Apr 2008 | A1 |
20080120501 | Jannink et al. | May 2008 | A1 |
20080133601 | Martin Cervera et al. | Jun 2008 | A1 |
20080133763 | Clark et al. | Jun 2008 | A1 |
20080208823 | Hicken | Aug 2008 | A1 |
20080270561 | Tang et al. | Oct 2008 | A1 |
20080319833 | Svendsen | Dec 2008 | A1 |
20090077220 | Svendsen et al. | Mar 2009 | A1 |
20090129671 | Hu et al. | May 2009 | A1 |
Number | Date | Country |
---|---|---|
1536352 | Jun 2005 | EP |
2372850 | Sep 2002 | GB |
2397205 | Jul 2004 | GB |
2005-321668 | Nov 2005 | JP |
0184353 | Nov 2001 | WO |
0221335 | Mar 2002 | WO |
2004017178 | Feb 2004 | WO |
2004043064 | May 2004 | WO |
2005026916 | Mar 2005 | WO |
2005071571 | Aug 2005 | WO |
2006126135 | Nov 2006 | WO |
Entry |
---|
“Ringo: Social Information Filtering for Music Recommendation,” http://jolomo.net/ringo.html, printed Aug. 3, 2009, 1 page. |
“Tour's Profile,” http://mog.com/Tour, copyright 2006-2009 Mog Inc., printed Aug. 3, 2009, 11 pages. |
Soundflavor DJ for iTunes, http://www.soundflavor.com/. |
MusicIP—The Music Search Engine, http://www.musicip.com/. |
last fm the social music revolution, http://www.last.fm/. |
Webjay—Playlist Community, http://www.webjay.org/. |
Better Propaganda—Free MP3s and music videos, http://www.betterpropaganda.com/. |
Mercora—Music Search and Internet Radio Network, http://search.mercora.com/v6/—front/web.jsp. |
MP3 music download website, eMusic, http://www.emusic.com/. |
Welcome to the Musicmatch Guide, http://mmguide.musicmatch.com/. |
UpTo11.net—Music Recommendations and Search, http://www.upto11.net/. |
Loomia—Personalized Recommendations for Media, Content and Retail Sites, http://www.loomia.com/. |
Try Napster free for 7 Days, http://www.napster.com/choose/index.html. |
Apple—iPod+iTunes, http://www.apple.com/itunes/. |
Pandora Internet Radio, http://www.pandora.com/. |
MyStrands Download, http://www.mystrands.com/overview.vm. |
Napster—All the Music You Want, http://www.napstercom/using—napster/all—the—music—you—want.html. |
Take a look at the Future of Mobile Music :: Music GURU, http://www.symbian-freak.com/news/006/02/music—guru.htm. |
Gracenote, http://www.gracenote.com/. |
Wired News, http://www.wired.com/news/digiwood/1,57634-0.html. |
“MUSICSTRANDS.COM Because Music is Social,” 2006. |
GenieLab.com grants music lovers' wishes, http://barometer.orst.edu/home/index.cfm?event=displayArticlePrinterFriendly&uStory—id=5c420acf-a1fb-448c-8ffd-39ec5c448b6f. |
That canadian girl blog archive—GenieLab, http://www.thatcanadiangirl.co.uk/blog/2005/02/22/genielab/. |
Digital Tech Life Download of the Week, http://www.digitaltechlife.com/category/download-of-the-week/. |
Music Recommendations 1.0, http://www.macupdate.com/info.php/id/19575. |
“Amazon.com: Online Shopping for Electronics, Apparel, Computers, Books, DVDs & m . . . ,” http://www.amazon.com/, copyright 1996-2007 Amazon.com, Inc., printed Oct. 26, 2007, 4 pages. |
“Apple—iPod classic,” http://www.apple.com/ipodclassic./, printed Oct. 26, 2007, 1 page. |
“Billboard.biz—Music Business—Billboard Charts—Album Sales—Concert Tours,” http://www.billboard.biz/bbbiz/index.jsp, copyright 2007 Nielsen Business Media, Inc., printed Oct. 26, 2007, 3 pages. |
“Bluetooth.com—Learn,” http://www.bluetooth.com/Bluetooth/Learn/, copyright 2007 Bluetooth SIG, Inc., printed Oct. 26, 2007, 1 page. |
“The Classic TV Database—Your Home for Classic TVI—www.classic-tv.com,” http://www.classic-tv.com, copyright The Classic TV Database—www.classic-tv.com, printed Feb. 7, 2007, 3 pages. |
“GenieLab::Music Recommendation System,” http://web.archive.org/web/20060813000442/http://genielab.com/, copyright 2005 GenieLab, LLC, printed Oct. 26, 2007, 1 page. |
“Gracenote Playlist,” Revised Dec. 29, 2005, 2 pages. |
“Gracenote Playlist Plus,” Revised Dec. 29, 2005, 2 pages. |
“IEEE 802.11—Wikipedia, the free encyclopedia,” http://en.wikipedia.org/wiki/IEEE—802.11, printed Oct. 26, 2007, 5 pages. |
“iLikeTM—Home,” http://www.ilike.com/, copyright 2007 iLike, printed May 17, 2007, 2 pages. |
“The Internet Movie Database (IMDb),” http://www.imdb.com/, copyright 1990-2007 Internet Movie Database Inc., printed Feb. 7, 2007, 3 pages. |
“liveplasma music, movies, search engine and discovery engine,” http://www.liveplasma.com, printed May 17, 2007, 1 page. |
“Mongomusic.com—The Best Download mp3 Resources and Information. This website is for sale!,” http://www.mongomusic.com/, printed May 17, 2007, 2 pages. |
“MusicGremlin,” http://www.musicgremlin.com/StaticContent.aspx?id=3, copyright 2005, 2006, 2007 MusicGremlin, Inc., printed Oct. 26, 2007, 1 page. |
“MyStrands for Windows 0.7.3 Beta,” copyright 2002-2006 ShareApple.com networks, printed Jul. 16, 2007, 3 pages. |
“MyStrands for Windows Change Log,” http://www.mystrands.com/mystrands/windows/changelog.vm, printed Jul. 16, 2007, 6 pages. |
“FAQ,” http://blog.pandora.com/faq/, copyright 2005-2006 Pandora Media, Inc., printed Aug. 8, 2006, 20 pages. |
“Pandora Radio—Listen to Free Internet Radio, Find New Music,” http://www.pandora.com/mgp, copyright 2005-2007 Pandora Media, Inc., printed Oct. 26, 2007, 1 page. |
“Rhapsody—Full-length music, videos and more—Free,” http://www.rhapsody.com/welcome.html, copyright 2001-2007 Listen.com, printed Feb. 7, 2007, 1 page. |
“Yahoo! Messenger—Chat, Instant message, SMS, PC Calls and More,” http://messengeryahoo.com/webmessengerpromo.php, copyright 2007 Yahoo! Inc., printed Oct. 26, 2007, 1 page. |
“Music Downloads—Over 2 Million Songs—Try It Free—Yahoo! Music,” http://music.yahoo.com/ymu/default.asp, copyright 2006 Yahoo! Inc., printed Feb. 7, 2007, 1 page. |
“YouTube—Broadcast Yourself.,” http://www.youtube.com/, copyright 2007 YouTube, LLC, printed Oct. 26, 2007, 2 pages. |
“Mercora—Music Search and Internet Radio Network,” http://www.mercora.com/overview.asp, copyright 2004-2006 Mercora, Inc., printed Aug. 8, 2006, 1 page. |
“Instant Messenger—AIM—Instant Message Your Online Buddies for Free—AIM,” http://dashboard.aim.com/aim, copyright 2007 AOL LLC, printed Nov. 8, 2007, 6 pages. |
“Outlook Home Page—Microsoft Office Online,” http://office.microsoft.com/en-us/outlook/default.aspx, copyright 2007 Microsoft Corporation, printed Nov. 8, 2007. 1 page. |
“Thunderbird—Reclaim your inbox,” http://www.mozilla.com/en-US/thunderbird/, copyright 2005-2007 Mozilla, printed Nov. 8, 2007, 2 pages. |
“RYM FAQ—Rate Your Music,” http://rateyourmusic.com/faq/, copyright 2000-2007 rateyourmusic.com, printed Nov. 8, 2007, 14 pages. |
“Trillian (software)—Wikipedia, the free encyclopedia,” http://en.wikipedia.org/wiki/Trillian—(instant—messenger), printed Nov. 8, 2007, 11 pages. |
“Not safe for work—Wikipedia, the free encyclopedia,” http://en.wikipedia.org/wiki/Work—safe, printed Nov. 8, 2007, 2 pages. |
“Zune.net—How-To-Share Audio Files Zune to Zune,” http://web.archive.org/web/20070819121705/http://www.zune.net/en-us/support/howto/z . . . , copyright 2007 Microsoft Corporation, printed Nov. 14, 2007, 2 pages. |
“LAUNCHcast Radio—Yahoo! Messenger,” http://messenger.yahoo.com/launch.php, copyright 2007 Yahoo! Inc., printed Nov. 8, 2007, 1 page. |
“Goombah—Preview,” http://www.goombah.com/preview.html, printed Jan. 8, 2008, 5 pages. |
Jeff Mascia et al., “Lifetrak: Music in Tune With Your Life,” copyright 2006, 11 pages. |
Jun Wang et al., “Music Recommender System for Wi-Fi Walkman,” Delft University of Technology, 23 pages. |
“ChoiceStream, Technology Brief, Review of Personalization Technologies: Collaborative Filtering vs. ChoiceStream's Attributized Bayesian Choice Modelling.” |
Badrul M. Sarwar et al., “Recommendation Systems for Large-scale E-Commerce: Scalable Neighborhood Formation Using Clustering,”2002. |
“Last.fm” Wikipedia, http://en.wikipedia.org/wiki/Last.fm. |
“MusicStrands Rusties Funding Following Mobile Announcement,” http://www.digitalmusicnews.com/results?title=musicstrands, Digital Music News, Mar. 6, 2006, p. 3 of 5. |
“Yahoo Music Jukebox” from Wikipedia, http://en.wikipedia.org/wiki/Yahoo—music—engine. |
Mercora—Music Search and Internet Radio Network, http://www.mercora.com/overview.asp. |
“LimeWire” Wikipedia, http://en.wikipedia.org/wiki/Limewire. |
Number | Date | Country | |
---|---|---|---|
20090083117 A1 | Mar 2009 | US |