WO2008008563A2 - P2p network for providing real time media recommendations - Google Patents
P2p network for providing real time media recommendations Download PDFInfo
- Publication number
- WO2008008563A2 WO2008008563A2 PCT/US2007/068863 US2007068863W WO2008008563A2 WO 2008008563 A2 WO2008008563 A2 WO 2008008563A2 US 2007068863 W US2007068863 W US 2007068863W WO 2008008563 A2 WO2008008563 A2 WO 2008008563A2
- Authority
- WO
- WIPO (PCT)
- Prior art keywords
- media
- recommendations
- peer
- presentations
- media presentation
- Prior art date
Links
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/40—Information retrieval; Database structures therefor; File system structures therefor of multimedia data, e.g. slideshows comprising image and additional audio data
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/01—Protocols
- H04L67/10—Protocols in which an application is distributed across nodes in the network
- H04L67/104—Peer-to-peer [P2P] networks
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/01—Protocols
- H04L67/10—Protocols in which an application is distributed across nodes in the network
- H04L67/104—Peer-to-peer [P2P] networks
- H04L67/1061—Peer-to-peer [P2P] networks using node-based peer discovery mechanisms
- H04L67/1068—Discovery involving direct consultation or announcement among potential requesting and potential source peers
Definitions
- the present invention relates to media recommendations, such as music or video recommendations, and more specifically relates to a peer-to- peer (P2P) network for providing real time media recommendations.
- P2P peer-to- peer
- 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 attributions. Companies using this type of approach include Pandora (http://www.pandora.com), SoundFlavor (http://www.soundflavor.com), MusiclP (http://www.musicip.com), and Mong ⁇ Music (purchased by Microsoft in 2000).
- Lastfm 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
- iTunes http://www.itunes.com with its celebrity playlists.
- the present invention provides a peer-to-peer (P2P) network for providing real time media recommendations.
- the media recommendations may be song recommendations or video recommendations.
- the peer device provides a recommendation identifying the media presentation to other peer devices in the P2P network.
- a peer device having received recommendations from the other peer devices in the P2P network then programmatically, or automatically, selects a next media presentation to play from the media presentations recently played by the other peer devices and one or more locally stored media presentations.
- the peer device may obtain the selected media presentation from a subscription based service enabling streaming or download of the selected media presentation, an e-commerce service enabling purchase and download of the selected media presentation, or another peer device.
- the peer devices are portable devices forming the P2P network via local wireless communication.
- the peer devices may be any type of device and form the P2P network via a Wide Area Network (WAN) such as the Internet.
- WAN Wide Area Network
- Figure 1 illustrates a system incorporating a peer-to-peer (P2P) network for real time media recommendations according to one embodiment of the present invention
- Figure 2 is a flow chart illustrating the operation of the peer devices of Figure 1 according to one embodiment of the present invention
- Figure 3 illustrates the operation of the system of Figure 1 according to one embodiment of the present invention
- Figure 4 illustrates a system incorporating a P2P network for real time media recommendations according to a second embodiment of the present invention
- Figure 5 illustrates the operation of the system of Figure 4 according to one embodiment of the present invention
- Figure 6 is a flow chart illustrating a method for automatically selecting media to play based on recommendations from peer devices and user preferences according to one embodiment of the present invention
- Figure 7 illustrates an exemplary graphical user interface (GUI) for configuring user preferences according to one embodiment of the present invention
- GUI graphical user interface
- Figure 8 illustrates an exemplary GUI for assigning weights to various categories of media content as part of configuring the user preferences according to one embodiment of the present invention
- Figure 9 illustrates an exemplary GUI for assigning weights to individual users within a user category as part of configuring the user preferences according to one embodiment of the present invention
- Figure 10 illustrates an exemplary GUI for assigning weights to individual genres from a genre category as part of configuring the user preferences according to one embodiment of the present invention
- Figure 11 illustrates an exemplary GUI for assigning weights to individual decades from a decade category as part of configuring the user preferences according to one embodiment of the present invention
- Figure 12 illustrates an exemplary GUI for assigning weights to individual availability types from an availability type category as part of configuring the user preferences according to one embodiment of the present invention
- Figure 13 illustrates an exemplary GUI
- Figure 1 illustrates a system 10 incorporating a P2P network for providing real time song recommendations according to one embodiment of the present invention.
- the system 10 includes a number of peer devices 12-16 which are optionally connected to a subscription music service 18 via a network 20, which may be a distributed public network such as, but not limited to, the Internet. Note that while three peer devices 12-16 are illustrated, the present invention may be used with any number of two or more peer devices.
- the peer devices 12-16 are preferably portable devices such as, but not limited to, portable audio players, mobile telephones, Personal Digital Assistants (PDAs), or the like having audio playback capabilities.
- the peer devices 12-16 may alternatively be stationary devices such as a personal computer or the like.
- the peer devices 12-16 include local wireless communication interfaces ( Figure 15) communicatively coupling the peer devices 12-16 to form a peer-to-peer (P2P) network.
- the wireless communication interfaces may provide wireless communication according to, for example, one of the suite of IEEE 802.11 standards, the Bluetooth standard, or the like.
- the peer device 12 includes a music player 22, a recommendation engine 24, and a music collection 26.
- the music player 22 may be implemented in software, hardware, or a combination of hardware and software. In general, the music player 22 operates to play songs from the music collection 26.
- the recommendation engine 24 may be implemented in software, hardware, or a combination of hardware and software. The recommendation engine 24 may alternatively be incorporated into the music player 22.
- the music collection 26 includes any number of song files 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.
- the recommendation engine 24 operates to provide a recommendation identifying the song to the other peer devices 14, 16 via the P2P network.
- the recommendation does not include the song.
- the recommendation may be a recommendation file including information identifying the song.
- the recommendation engine 24 operates to programmatically, or automatically, select a next song to be played by the music player 22 based on the recommendations received from the other peer device 14, 16 identifying songs recently played by the other peer devices 14, 16 and user preferences associated with the user of the peer device 12.
- the peer device 14 includes a music player 28, a recommendation engine 30, and a music collection 32
- the peer device 16 includes a music player 34, a recommendation engine 36, and a music collection 38.
- the subscription music service 18 may be a service hosted by a server connected to the network 20.
- 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.
- FIG. 2 illustrates the operation of the peer device 12 according to one embodiment of the present invention.
- the peer devices 12-16 cooperate to establish a P2P network (step 200).
- the P2P network may be initiated using, for example, an electronic or verbal invitation.
- invitations may be desirable when the user wishes to establish the P2P network with a particular group of other users, such as his or her friends. Note that this may be beneficial when the user desires that the music he or she listens to be influenced only by the songs listened to by, for example, the user's friends.
- invitations may also be desirable when the number of peer devices within a local wireless coverage area of the peer device 12 is large.
- the peer device 12 may maintain a "buddy list" identifying friends of the user of the peer device 12, where the peer device 12 may automatically establish a P2P network with the peer devices of the users identified by the "buddy list” when the peer devices are within a local wireless coverage area of the peer device 12.
- the peer device 12 may establish an ad-hoc P2P network with the other peer devices 14, 16 by detecting the other peer devices 14, 16 within the local wireless coverage area of the peer device 12 and automatically establishing the P2P network with at least a subset of the detected peer devices 14, 16.
- the peer device 12 may compare user profiles of the users of the other peer devices 14, 16 with a user profile of the user of the peer device 12 and determine whether to permit the other peer devices 14, 16 to enter the P2P network based on the similarities of the user profiles.
- the peer device 12 plays a song (step 202). Initially, before any recommendations have been received from the other peer devices 14, 16, the song may be a song from the music collection 26 selected by the user of the peer device 12. Prior to, during, or after playback of the so ⁇ g, the recommendation engine 24 sends a recommendation identifying the song to the other peer devices 14, 16 (step 204).
- the recommendation may include, but is not limited to, information identifying the song such as a Globally Unique Identifier (GUID) for the song, title of the song, or the like; a Uniform Resource Locator (URL) enabling other peer devices to obtain the song such as a URL enabling download or streaming of the song from the subscription music service 18 or a URL enabling purchase and download of the song from an e-commerce service; a URL enabling download or streaming of a preview of the song from the subscription music service 18 or a similar e-commerce service; metadata describing the song such as ID3 tags including, for example, genre, the title of the song, the artist of the song, the album on which the song can be found, the date of release of the song or album, the lyrics, and the like.
- GUID Globally Unique Identifier
- URL Uniform Resource Locator
- the recommendation may also include a list of recommenders including information identifying each user having previously recommended the song and a timestamp for each recommendation. For example, if the song was originally played at the peer device 14 and then played at the peer device 16 in response to a recommendation from the peer device 14, the list of recommenders may include information identifying the user of the peer device 14 or the peer device 14 and a timestamp identifying a time at which the song was played or recommended by the peer device 14, and information identifying the user of the peer device 16 or the peer device 16 and a timestamp identifying a time at which the song was played or recommended by the peer device 16. Likewise, if the peer device 12 then selects the song for playback, information identifying the user of the peer device 12 or the peer device 12 and a corresponding timestamp may be appended to the list of recommenders.
- the peer device 12, and more specifically the recommendation engine 24, also receives recommendations from the other peer devices 14, 16 (step 206).
- the recommendations from the other peer devices 14, 16 identify songs played by the other peer devices 14, 16.
- the recommendation engine 24 may filter the recommendations from the other peer devices 14, 16 based on, for example, user, genre, artist, title, album, lyrics, date of release, or the like (step 208).
- the recommendation engine 24 then automatically selects a next song to play from the songs identified by the recommendations received from the other peer devices 14, 16, optionally songs identified by previously received recommendations, and one or more songs from the music collection 26 based on user preferences (step 210). In one embodiment, the recommendation engine 24 considers only those songs identified by recommendations received since a previous song selection. For example, if the song played in step 202 was a song selected by the recommendation engine 24 based on prior recommendations from the peer devices 14, 16, the recommendation engine 24 may only consider the songs identified in new recommendations received after the song was selected for playback in step 202 and may not consider the songs identified in the prior recommendations.
- the recommendation engine 24 may consider all previously received recommendations, where the recommendations may expire after a predetermined or user defined period of time.
- the user preferences used to select the next song to play may include a weight or priority assigned to each of a number of categories such as user, genre, decade of release, and availability.
- availability identifies whether songs are stored locally in the music collection 26; available via the subscription music service 18; available for download, and optionally purchase, from an e-commerce service or one of the other peer devices 14, 16; or are not currently available where the user may search for the songs if desired.
- the user preferences may be stored locally at the peer device 12 or obtained from a central server via the network 20. If the peer device 12 is a portable device, the user preferences may be configured on an associated user system, such as a personal computer, and transferred to the peer device 12 during a synchronization process. The user preferences may alternatively be automatically provided or suggested by the recommendation engine 24 based on a play history of the peer device 12. In the preferred embodiment discussed below, the songs identified by the recommendations from the other peer devices 14, 16 and the songs from the music collection 26 are scored or ranked based on the user preferences. Then, based on the scores, the recommendation engine 24 selects the next song to play.
- the peer device 12 obtains the selected song (step 212). If the selected song is part of the music collection 26, the peer device 12 obtains the selected song from the music collection 26. If the selected song is not part of the music collection 26, the recommendation engine 24 obtains the selected song from the subscription music service 18, an e-commerce service, or one of the other peer devices 14, 16.
- the recommendation for the song may include a URL providing a link to a source from which the song may be obtained, and the peer device 12 may obtain the selected song from the source identified in the recommendation for the song. Once obtained, the selected song is played and the process repeats (steps 202-212).
- FIG 3 illustrates the operation of the peer devices 12-16 to provide real time song recommendations according to one embodiment of the present invention.
- the peer devices 14, 16 play songs and, in response, provide song recommendations to the peer device 12 (steps 300-306).
- the peer device 12 may optionally filter the recommendations from the peer devices 14, 16 (step 308).
- the recommendation engine 24 of the peer device 12 then automatically selects the next song to play from the songs identified by the recommendations, optionally songs identified by prior recommendations from the peer devices 14, 16, and locally stored songs from the music collection 26 based on user preferences of the user of the peer device 12 (step 310).
- the peer device 12 then obtains and plays the selected song (steps 312-314).
- FIG. 4 illustrates the system 10' according to second embodiment of the present invention.
- the peer devices 12'-16' form a P2P network via the network 20 and a proxy server 40.
- the peer devices 12'- 16' may be any device having a connection to the network 20 and audio playback capabilities.
- the peer devices 12'-16' may be personal computers, laptop computers, mobile telephones, portable audio players, PDAs, or the like having either a wired or wireless connection to the network 20.
- the peer device 12' includes music player 22', a recommendation engine 24', and a music collection 26'.
- the peer device 14' includes a music player 28', a recommendation engine 30', and a music collection 32'
- the peer device 16' includes a music player 34', a recommendation engine 36', and a music collection 38.
- FIG. 5 illustrates the operation of the system 10' of Figure 4.
- the peer devices 12'-16' Prior to beginning the process, the peer devices 12'-16' form a P2P network. Since the number of peer devices 12'-16' that may be connected to the network 20 may be very large, the peer devices 12'-16' may implement some technique for identifying a desired group of peer devices for the P2P network. For example, the P2P network may be initiated using, for example, an electronic or verbal invitation. As another example, the peer device 12' may maintain a "buddy list" identifying friends of the user of the peer device 12', where the peer device 12' may automatically establish a P2P network with the peer devices of the users identified by the "buddy list" when the peer devices are connected to the network 20. Alternatively, the peer devices 12'-16' may form an ad-hoc network where the participants for the ad-hoc network are selected based on similarities in user profiles.
- the peer device 14' plays a song and, in response, provides a song recommendation identifying the song to the peer device 12' via the proxy server 40 (steps 400- 404). While not illustrated for clarity, the peer device 14' also sends the recommendation for the song to the peer device 16' via the proxy server 40. The peer device 16' also plays a song and sends a song recommendation to the peer device 12' via the proxy server 40 (steps 406-410). Again, while not illustrated for clarity, the peer device 16' also sends the recommendation for the song to the peer device 14' via the proxy server 40.
- the recommendation engine 24' may optionally filter the recommendations from the other peer devices 14', 16' based on, for example, user, genre, artist, title, album, lyrics, date of release, or the like (step 412).
- the recommendation engine 24' then automatically selects a next song to play from the songs identified by the recommendations received from the other peer devices 14'-16', optionally songs identified by previously received recommendations from the peer devices 14'-16', and one or more songs from the music collection 26' based on user preferences (step 414).
- the songs identified by the recommendations from the other peer devices 14'-16' and the songs from the music collection 26' are scored based on the user preferences.
- the recommendation engine 24' selects the next song to play. [0045] Once the next song to play is selected, the peer device 12' obtains the selected song (step 416). If the selected song is part of the music collection 26', the peer device 12' obtains the selected song from the music collection 26'. If the selected song is not part of the music collection 26', the recommendation engine 24' obtains the selected song from the subscription music service 18, an e-commerce service, or one of the other peer devices 14'-16'. For example, the selected song may be obtained from a source identified in the recommendation for the song. Once obtained, the selected song is played and a recommendation for the song is provided to the other peer devices 14'-16' via the proxy server 40 (steps 418-426).
- Figure 6 illustrates the process of automatically selecting a song to play from the received recommendations and locally stored songs at the peer device 12' according to one embodiment of the present invention.
- the user preferences for the user of the peer device 12' are obtained (step 500).
- the user preferences may include a weight or priority assigned to each of a number of categories such as, but not limited to, user, genre, decade of release, and availability.
- the user preferences may be obtained from the user during an initial configuration of the recommendation engine 24'.
- the user preferences may be updated by the user as desired.
- the user preferences may alternatively be suggested by the recommendation engine 24' or the proxy server 40 based on a play history of the peer device 12'.
- proxy server 40 may ascertain the play history of the peer device 12' by monitoring the recommendations from the peer device 12' as the recommendations pass through the proxy server 40 on their way to the other peer devices 14'-16'.
- the user preferences may be stored locally at the peer device 12' or obtained from a central server, such as the proxy server 40, via the network 20.
- the recommendation engine 24' of the peer device 12' scores the songs identified by the recommendations based on the user preferences (step 502).
- the recommendation engine 24' also scores one or more local songs from the music collection 26' (step 504).
- the recommendation engine 24' selects the next song to play based, at least on part, on the scores of the recommended and local songs (step 506).
- FIG. 7 illustrates an exemplary graphical user interface (GUI) 42 for configuring user preferences.
- GUI graphical user interface
- the user assigns a weight to various categories.
- the categories are users, genre, decade, and availability.
- the weights for the categories may be assigned alphabetically by selecting radio button 44, customized by the user by selecting radio button 46, or automatically suggested based on a user profile of the user by selecting radio button 48. If alphabetical weighting is selected, the weights are assigned by alphabetically sorting the categories and assigning a weight to each of the categories based on its position in the alphabetically sorted list of categories. As illustrated in Figure 8, if customized weighting is selected, the user may be presented with a GUI 50 for customizing the weighting of the categories.
- the weights of the categories may be assigned by adjusting corresponding sliding bars 52-58.
- Sliding bar 60 may be adjusted to assign a weight to a "no repeat factor."
- the no repeat factor is a dampening factor used to alter a song's score based on when the song was previously played at the peer device 12' in order to prevent the same song from being continually repeated.
- the user may select an OK button 62 to return to the GUI 42 of Figure 7 or select a REVERT button 64 to return the weights of the categories to their previous settings.
- the user may select a SUGGEST FROM PROFILE button 66 to have the recommendation engine 24' or the proxy server 40 suggest weights for the categories based on a user profile.
- the button 66 has the same effect as the radio button 48 of Figure 7.
- radio buttons 68-72 are used to select a desired method for assigning weights to each user in the P2P network
- radio buttons 74-78 are used to select a desired method for assigning weights to each of a number of genres of music
- radio buttons 80-84 are used to select the desired method for assigning weights to each of a number of decades
- radio buttons 86-90 are used to select the desired method for assigning weights to a number of song availability types.
- a GUI 92 ( Figure 9) enabling the user to customize the weights assigned to a number of users from which recommendations are received.
- An exemplary embodiment of the GUI 92 is illustrated in Figure 9, where sliding bars 94-98 enable the user to assign customized weights to corresponding users.
- the recommendation engine 24' or the proxy server 40 generates suggested weights for the users based on a user profile associated with the peer device 12'.
- the genres are assigned weights based on their respective positions in an alphabetically sorted list of genres.
- a GUI 100 ( Figure 10) enabling the user to customize the weights assigned to a number of genres.
- An exemplary embodiment of the GUI 100 is illustrated in Figure 10, where sliding bars 102-116 enable the user to assign customized weights to corresponding genres.
- the radio button 78 is selected, the recommendation engine 24' or the proxy server 40 generates suggested weights for the genres based on a user profile associated with the peer device 12'. [0053] Regarding decades, if the radio button 80 is selected, the decades are assigned weights based on their respective positions in a chronologically sorted list of decades.
- a GU1 118 ( Figure 11) enabling the user to customize the weights assigned to a number of decades.
- An exemplary embodiment of the GUI 118 is illustrated in Figure 11, where sliding bars 120-130 enable the user to assign customized weights to corresponding decades.
- the radio button 84 is selected, the recommendation engine 24' or the proxy server 40 generates suggested weights for the decades based on a user profile associated with the peer device 12'.
- the availability types are assigned weights based on their respective positions in an alphabetically sorted list of availability types.
- a GUI 132 ( Figure 12) enabling the user to customize the weights assigned to a number of availability types.
- An exemplary embodiment of the GUI 132 is illustrated in Figure 12, where sliding bars 134-140 enable the user to assign customized weights to corresponding availability types.
- the recommendation engine 24' or the proxy server 40 generates suggested weights for the availability types based on a user profile associated with the peer device 12'.
- An exemplary equation for scoring a particular song is:
- NRF is the "no repeat factor"
- WU is the weight assigned to the user category
- WUA is the weight assigned to the user attribute of the song, which is the user recommending the song
- WG is the weight assigned to the genre category
- WGA is the weight assigned to the genre attribute of the song, which is the genre of the song
- WD is the weight assigned to the decade category
- WDA is the weight assigned to the decade attribute of the song, which is the decade in which the song or the album associated with the song was released
- WA is the weight assigned to the availability category
- WAA is the weight assigned to the availability attribute of the song, which is the availability of the song.
- the NRF may, for example, be computed as:
- NRF 10 - NRFW
- the score of the song may be computed as:
- Figure 13 is an exemplary GUI 142 showing a playlist for the peer device 12' including both local and recommended songs according to the present invention.
- a similar list may be maintained internally by the peer device 12 of Figure 1 and potentially optimized to display at least a portion of the GUI 142 on the display of the peer device 12.
- both the local and recommended songs are scored, as described above, and sorted according to their scores.
- the songs may be sorted based on another criterion, which in the illustrated example is genre, and score.
- the GUI 142 may optionally allow the user to block songs having particular identified fields.
- the user has identified the genre "country” and the artist "iron maiden” as fields to be blocked, as illustrated by the underlining.
- the user may select fields to block by, for example, clicking on or otherwise selecting the desired fields. Songs having the blocked fields are still scored but are not obtained or played by the peer device 12'.
- the recommendation engine 24' of the peer device 12' may provide a download queue containing all songs to be downloaded, and optionally purchased, from an external source such as the subscription music service 18, an e-commerce service, or another peer device 14'-16'. Songs in the download queue having scores above a first predetermined or user defined threshold and previews of other songs in the download queue having scores above a second predetermined or user defined threshold but below the first threshold may be automatically downloaded to the peer device 12'.
- FIG 15 is a block diagram of an exemplary embodiment of the peer device 12 of Figure 1.
- the peer device 12 includes a control system 144 having associated memory 146.
- the music player 22 and the recommendation engine 24 are at least partially implemented in software and stored in the memory 146.
- the peer device 12 also includes a storage unit 148 operating to store the music collection 26 ( Figure 1).
- the storage unit 148 may be any number of digital storage devices such as, for example, one or more hard-disc drives, one or more memory cards, RAM, one or more external digital storage devices, or the like.
- the music collection 26 may alternatively be stored in the memory 146.
- the peer device 12 also includes a communication interface 150.
- the communication interface 150 includes a local wireless communication interface for establishing the P2P network with the other peer devices 14, 16.
- the local wireless interface may operate according to, for example, one of the suite of IEEE 802.11 standards, the Bluetooth standard, or the like.
- the communication interface 150 may also include a network interface communicatively coupling the peer device 12 to the network 20 ( Figure 1).
- the peer device 12 also includes a user interface 152, which may include components such as a display, speakers, a user input device, and the like.
- Figure 16 is a block diagram of an exemplary embodiment of the peer device 12' of Figure 4. However, the following discussion is equally applicable to the other peer devices 14'-16'.
- the peer device 12' includes a control system 154 having associated memory 156.
- the music player 22' and the recommendation engine 24' are at least partially implemented in software and stored in the memory 156.
- the peer device 12' also includes a storage unit 158 operating to store the music collection 26' ( Figure 4).
- the storage unit 158 may be any number of digital storage devices such as, for example, one or more hard-disc drives, one or more memory cards, RAM, one or more external digital storage devices, or the like.
- the music collection 26' may alternatively be stored in the memory 156.
- the peer device 12' also includes a communication interface 160.
- the communication interface 160 includes a network interface communicatively coupling the peer device 12' to the network 20 ( Figure 4).
- the peer device 12' also includes a user interface 162, which may include components such as a display, speakers, a user input device, and the like.
- a user interface 162 which may include components such as a display, speakers, a user input device, and the like.
- the present invention provides substantial opportunity for variation without departing from the spirit or scope of the present invention.
- Figure 1 illustrates the peer devices 12-16 forming the P2P network via local wireless communication
- Figure 4 illustrates the peer devices 12'-16' forming the P2P network via the network
- the present invention is not limited to either a local wireless P2P network or a WAN P2P network in the alternative.
- a particular peer device such as the peer device 12, may form a P2P network with other peer devices using both local wireless communication and the network 20.
- the peer device 12 may receive recommendations from both the peer devices 14, 16 ( Figure 1) via local wireless communication and from the peer devices 14'-16' ( Figure 4) via the network 20.
- 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.
- the present invention may additionally or alternatively provide movie recommendations, television program recommendations, or the like.
Abstract
A peer-to-peer (P2P) network for providing real time media recommendations is provided. The media recommendations may be song recommendations or video recommendations. Each time a media presentation is played by a peer device, the peer device provides a recommendation identifying the media presentation to other peer devices in the P2P network. A peer device having received recommendations from the other peer devices in the P2P network then programmatically, or automatically, selects a next media presentation to play from the media presentations recently played by the other peer devices and one or more locally stored media presentations. If the selected media presentation is not stored locally by the peer device, the peer device may obtain the selected media presentation from a subscription based service enabling streaming or download of the selected media presentation, an e-commerce service enabling purchase and download of the selected media presentation, or another peer device.
Description
P2P NETWORK FOR PROVIDING REAL TIME MEDIA RECOMMENDA TIONS
Field of the Invention [0001] The present invention relates to media recommendations, such as music or video recommendations, and more specifically relates to a peer-to- peer (P2P) network for providing real time media recommendations.
Background of the Invention [0002] 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 longstanding problem for the music industry, which is namely the issue of linking audiophiles with new music that matches their listening preferences. [0003] 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 attributions. Companies using this type of approach include Pandora (http://www.pandora.com), SoundFlavor (http://www.soundflavor.com), MusiclP (http://www.musicip.com), and MongόMusic (purchased by Microsoft in 2000).
[0004] 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 Lastfm (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.
[0005] The problem with these traditional recommendation systems is that they fail to consider peer influences. For example, the music that a particular teenager listens to may be highly influenced by the music listened to by a group of the teenager's peers, such as his or her friends. As such, there is a need for a music recommendation system and method that recommends music to a user based on the listening habits of a peer group.
Summary of the Invention
[0006] The present invention provides a peer-to-peer (P2P) network for providing real time media recommendations. The media recommendations may be song recommendations or video recommendations. Each time a media presentation is played by a peer device, the peer device provides a recommendation identifying the media presentation to other peer devices in the P2P network. A peer device having received recommendations from the other peer devices in the P2P network then programmatically, or automatically, selects a next media presentation to play from the media presentations recently played by the other peer devices and one or more locally stored media presentations. If the selected media presentation is not stored locally by the peer device, the peer device may obtain the selected media presentation from a subscription based service enabling streaming or download of the selected media presentation, an e-commerce service enabling purchase and download of the selected media presentation, or another peer device. In one embodiment, the peer devices are portable devices forming the P2P network via local wireless communication. In
another embodiment, the peer devices may be any type of device and form the P2P network via a Wide Area Network (WAN) such as the Internet. [0007] 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.
Brief Description of the Drawing Figures
[0008] 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.
[0009] Figure 1 illustrates a system incorporating a peer-to-peer (P2P) network for real time media recommendations according to one embodiment of the present invention; [0010] Figure 2 is a flow chart illustrating the operation of the peer devices of Figure 1 according to one embodiment of the present invention;
[0011] Figure 3 illustrates the operation of the system of Figure 1 according to one embodiment of the present invention;
[0012] Figure 4 illustrates a system incorporating a P2P network for real time media recommendations according to a second embodiment of the present invention;
[0013] Figure 5 illustrates the operation of the system of Figure 4 according to one embodiment of the present invention;
[0014] Figure 6 is a flow chart illustrating a method for automatically selecting media to play based on recommendations from peer devices and user preferences according to one embodiment of the present invention;
[0015] Figure 7 illustrates an exemplary graphical user interface (GUI) for configuring user preferences according to one embodiment of the present invention; [0016] Figure 8 illustrates an exemplary GUI for assigning weights to various categories of media content as part of configuring the user preferences according to one embodiment of the present invention;
[0017] Figure 9 illustrates an exemplary GUI for assigning weights to individual users within a user category as part of configuring the user preferences according to one embodiment of the present invention; [0018] Figure 10 illustrates an exemplary GUI for assigning weights to individual genres from a genre category as part of configuring the user preferences according to one embodiment of the present invention; [0019] Figure 11 illustrates an exemplary GUI for assigning weights to individual decades from a decade category as part of configuring the user preferences according to one embodiment of the present invention; [0020] Figure 12 illustrates an exemplary GUI for assigning weights to individual availability types from an availability type category as part of configuring the user preferences according to one embodiment of the present invention; [0021] Figure 13 illustrates an exemplary GUI displaying a playlist including both songs from a local music collection of a peer device and recommended songs from other peer devices, where the songs are sorted by a score determined based on user preferences according to one embodiment of the present invention; [0022] Figure 14 illustrates an exemplary GUI displaying a playlist including both songs from a local music collection of a peer device and recommended songs from other peer devices, where the songs are sorted by a both genre and score according to one embodiment of the present invention; [0023] Figure 15 is a block diagram of a peer device of Figure 1 according to one embodiment of the present invention; and [0024] Figure 16 is a block diagram of a peer device of Figure 4 according to one embodiment of the present invention.
Detailed Description of the Preferred Embodiments [0025] 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. [0026] Figure 1 illustrates a system 10 incorporating a P2P network for providing real time song recommendations according to one embodiment of the present invention. Note that while the discussion herein focuses on song recommendations for clarity and ease of discussion, the present invention is equally applicable to providing recommendations for other types of media presentations such as video presentations, as will be apparent to one of ordinary skill in the art upon reading this disclosure. Exemplary video presentations are movies, television programs, and the like. In general, the system 10 includes a number of peer devices 12-16 which are optionally connected to a subscription music service 18 via a network 20, which may be a distributed public network such as, but not limited to, the Internet. Note that while three peer devices 12-16 are illustrated, the present invention may be used with any number of two or more peer devices.
[0027] In this embodiment, the peer devices 12-16 are preferably portable devices such as, but not limited to, portable audio players, mobile telephones, Personal Digital Assistants (PDAs), or the like having audio playback capabilities. However, the peer devices 12-16 may alternatively be stationary devices such as a personal computer or the like. The peer devices 12-16 include local wireless communication interfaces (Figure 15) communicatively coupling the peer devices 12-16 to form a peer-to-peer (P2P) network. The wireless communication interfaces may provide wireless communication according to, for example, one of the suite of IEEE 802.11 standards, the Bluetooth standard, or the like.
[0028] The peer device 12 includes a music player 22, a recommendation engine 24, and a music collection 26. The music player 22 may be implemented in software, hardware, or a combination of hardware and software. In general, the music player 22 operates to play songs from the music collection 26. The recommendation engine 24 may be implemented in software, hardware, or a combination of hardware and software. The recommendation engine 24 may alternatively be incorporated into the music player 22. The music collection 26 includes any number of song files 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. [0029] In operation, each time a song is played by the music player 22, the recommendation engine 24 operates to provide a recommendation identifying the song to the other peer devices 14, 16 via the P2P network. The recommendation does not include the song. In one embodiment, the recommendation may be a recommendation file including information identifying the song. In addition, as discussed below in detail, the recommendation engine 24 operates to programmatically, or automatically, select a next song to be played by the music player 22 based on the recommendations received from the other peer device 14, 16 identifying songs recently played by the other peer devices 14, 16 and user preferences associated with the user of the peer device 12. [0030] Like the peer device 12, the peer device 14 includes a music player 28, a recommendation engine 30, and a music collection 32, and the peer device 16 includes a music player 34, a recommendation engine 36, and a music collection 38.
[0031] The subscription music service 18 may be a service hosted by a server connected to the network 20. 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.
[0032] Figure 2 illustrates the operation of the peer device 12 according to one embodiment of the present invention. However, the following discussion is equally applicable to the other peer devices 14, 16. First, the peer devices 12-16 cooperate to establish a P2P network (step 200). The P2P network may be initiated using, for example, an electronic or verbal invitation. Invitations may be desirable when the user wishes to establish the P2P network with a particular group of other users, such as his or her friends. Note that this may be beneficial when the user desires that the music he or she listens to be influenced only by the songs listened to by, for example, the user's friends. Invitations may also be desirable when the number of peer devices within a local wireless coverage area of the peer device 12 is large. As another example, the peer device 12 may maintain a "buddy list"
identifying friends of the user of the peer device 12, where the peer device 12 may automatically establish a P2P network with the peer devices of the users identified by the "buddy list" when the peer devices are within a local wireless coverage area of the peer device 12. [0033] Alternatively, the peer device 12 may establish an ad-hoc P2P network with the other peer devices 14, 16 by detecting the other peer devices 14, 16 within the local wireless coverage area of the peer device 12 and automatically establishing the P2P network with at least a subset of the detected peer devices 14, 16. In order to control the number of peer devices within the ad-hoc P2P network, the peer device 12 may compare user profiles of the users of the other peer devices 14, 16 with a user profile of the user of the peer device 12 and determine whether to permit the other peer devices 14, 16 to enter the P2P network based on the similarities of the user profiles. [0034] At some point after the P2P network is established, the peer device 12 plays a song (step 202). Initially, before any recommendations have been received from the other peer devices 14, 16, the song may be a song from the music collection 26 selected by the user of the peer device 12. Prior to, during, or after playback of the soηg, the recommendation engine 24 sends a recommendation identifying the song to the other peer devices 14, 16 (step 204). The recommendation may include, but is not limited to, information identifying the song such as a Globally Unique Identifier (GUID) for the song, title of the song, or the like; a Uniform Resource Locator (URL) enabling other peer devices to obtain the song such as a URL enabling download or streaming of the song from the subscription music service 18 or a URL enabling purchase and download of the song from an e-commerce service; a URL enabling download or streaming of a preview of the song from the subscription music service 18 or a similar e-commerce service; metadata describing the song such as ID3 tags including, for example, genre, the title of the song, the artist of the song, the album on which the song can be found, the date of release of the song or album, the lyrics, and the like.
[0035] The recommendation may also include a list of recommenders including information identifying each user having previously recommended the song and a timestamp for each recommendation. For example, if the song was originally played at the peer device 14 and then played at the peer
device 16 in response to a recommendation from the peer device 14, the list of recommenders may include information identifying the user of the peer device 14 or the peer device 14 and a timestamp identifying a time at which the song was played or recommended by the peer device 14, and information identifying the user of the peer device 16 or the peer device 16 and a timestamp identifying a time at which the song was played or recommended by the peer device 16. Likewise, if the peer device 12 then selects the song for playback, information identifying the user of the peer device 12 or the peer device 12 and a corresponding timestamp may be appended to the list of recommenders.
[0036] The peer device 12, and more specifically the recommendation engine 24, also receives recommendations from the other peer devices 14, 16 (step 206). The recommendations from the other peer devices 14, 16 identify songs played by the other peer devices 14, 16. Optionally, the recommendation engine 24 may filter the recommendations from the other peer devices 14, 16 based on, for example, user, genre, artist, title, album, lyrics, date of release, or the like (step 208).
[0037] The recommendation engine 24 then automatically selects a next song to play from the songs identified by the recommendations received from the other peer devices 14, 16, optionally songs identified by previously received recommendations, and one or more songs from the music collection 26 based on user preferences (step 210). In one embodiment, the recommendation engine 24 considers only those songs identified by recommendations received since a previous song selection. For example, if the song played in step 202 was a song selected by the recommendation engine 24 based on prior recommendations from the peer devices 14, 16, the recommendation engine 24 may only consider the songs identified in new recommendations received after the song was selected for playback in step 202 and may not consider the songs identified in the prior recommendations. This may be beneficial if the complexity of the recommendation engine 24 is desired to be minimal such as when the peer device 12 is a mobile terminal or the like having limited processing and memory capabilities. In another embodiment, the recommendation engine 24 may consider all previously
received recommendations, where the recommendations may expire after a predetermined or user defined period of time.
[0038] As discussed below, the user preferences used to select the next song to play may include a weight or priority assigned to each of a number of categories such as user, genre, decade of release, and availability.
Generally, availability identifies whether songs are stored locally in the music collection 26; available via the subscription music service 18; available for download, and optionally purchase, from an e-commerce service or one of the other peer devices 14, 16; or are not currently available where the user may search for the songs if desired. The user preferences may be stored locally at the peer device 12 or obtained from a central server via the network 20. If the peer device 12 is a portable device, the user preferences may be configured on an associated user system, such as a personal computer, and transferred to the peer device 12 during a synchronization process. The user preferences may alternatively be automatically provided or suggested by the recommendation engine 24 based on a play history of the peer device 12. In the preferred embodiment discussed below, the songs identified by the recommendations from the other peer devices 14, 16 and the songs from the music collection 26 are scored or ranked based on the user preferences. Then, based on the scores, the recommendation engine 24 selects the next song to play.
[0039] Once the next song to play is selected, the peer device 12 obtains the selected song (step 212). If the selected song is part of the music collection 26, the peer device 12 obtains the selected song from the music collection 26. If the selected song is not part of the music collection 26, the recommendation engine 24 obtains the selected song from the subscription music service 18, an e-commerce service, or one of the other peer devices 14, 16. For example, the recommendation for the song may include a URL providing a link to a source from which the song may be obtained, and the peer device 12 may obtain the selected song from the source identified in the recommendation for the song. Once obtained, the selected song is played and the process repeats (steps 202-212).
[0040] Figure 3 illustrates the operation of the peer devices 12-16 to provide real time song recommendations according to one embodiment of the
present invention. The illustrated process is the same as discussed above with respect to Figure 2. As such, the details will not be repeated. In general, the peer devices 14, 16 play songs and, in response, provide song recommendations to the peer device 12 (steps 300-306). The peer device 12 may optionally filter the recommendations from the peer devices 14, 16 (step 308). The recommendation engine 24 of the peer device 12 then automatically selects the next song to play from the songs identified by the recommendations, optionally songs identified by prior recommendations from the peer devices 14, 16, and locally stored songs from the music collection 26 based on user preferences of the user of the peer device 12 (step 310). The peer device 12 then obtains and plays the selected song (steps 312-314). Either prior to, during, or after playback of the selected song, the recommendation engine 24 of the peer device 12 provides a recommendation identifying the selected song to the other peer devices 14, 16 (step 316-318). [0041] Figure 4 illustrates the system 10' according to second embodiment of the present invention. In this embodiment, the peer devices 12'-16' form a P2P network via the network 20 and a proxy server 40. The peer devices 12'- 16' may be any device having a connection to the network 20 and audio playback capabilities. For example, the peer devices 12'-16' may be personal computers, laptop computers, mobile telephones, portable audio players, PDAs, or the like having either a wired or wireless connection to the network 20. As discussed above with respect to the peer device 12, the peer device 12' includes music player 22', a recommendation engine 24', and a music collection 26'. Likewise, the peer device 14' includes a music player 28', a recommendation engine 30', and a music collection 32', and the peer device 16' includes a music player 34', a recommendation engine 36', and a music collection 38.
[0042] Figure 5 illustrates the operation of the system 10' of Figure 4. Prior to beginning the process, the peer devices 12'-16' form a P2P network. Since the number of peer devices 12'-16' that may be connected to the network 20 may be very large, the peer devices 12'-16' may implement some technique for identifying a desired group of peer devices for the P2P network. For example, the P2P network may be initiated using, for example, an electronic or verbal invitation. As another example, the peer device 12' may maintain a
"buddy list" identifying friends of the user of the peer device 12', where the peer device 12' may automatically establish a P2P network with the peer devices of the users identified by the "buddy list" when the peer devices are connected to the network 20. Alternatively, the peer devices 12'-16' may form an ad-hoc network where the participants for the ad-hoc network are selected based on similarities in user profiles.
[0043] In this example, once the P2P network is established, the peer device 14' plays a song and, in response, provides a song recommendation identifying the song to the peer device 12' via the proxy server 40 (steps 400- 404). While not illustrated for clarity, the peer device 14' also sends the recommendation for the song to the peer device 16' via the proxy server 40. The peer device 16' also plays a song and sends a song recommendation to the peer device 12' via the proxy server 40 (steps 406-410). Again, while not illustrated for clarity, the peer device 16' also sends the recommendation for the song to the peer device 14' via the proxy server 40.
[0044] From this point, the process continues as discussed above. More specifically, the recommendation engine 24' may optionally filter the recommendations from the other peer devices 14', 16' based on, for example, user, genre, artist, title, album, lyrics, date of release, or the like (step 412). The recommendation engine 24' then automatically selects a next song to play from the songs identified by the recommendations received from the other peer devices 14'-16', optionally songs identified by previously received recommendations from the peer devices 14'-16', and one or more songs from the music collection 26' based on user preferences (step 414). In the preferred embodiment discussed below, the songs identified by the recommendations from the other peer devices 14'-16' and the songs from the music collection 26' are scored based on the user preferences. Then, based on the scores, the recommendation engine 24' selects the next song to play. [0045] Once the next song to play is selected, the peer device 12' obtains the selected song (step 416). If the selected song is part of the music collection 26', the peer device 12' obtains the selected song from the music collection 26'. If the selected song is not part of the music collection 26', the recommendation engine 24' obtains the selected song from the subscription music service 18, an e-commerce service, or one of the other peer devices
14'-16'. For example, the selected song may be obtained from a source identified in the recommendation for the song. Once obtained, the selected song is played and a recommendation for the song is provided to the other peer devices 14'-16' via the proxy server 40 (steps 418-426). [0046] Figure 6 illustrates the process of automatically selecting a song to play from the received recommendations and locally stored songs at the peer device 12' according to one embodiment of the present invention. However, the following discussion is equally applicable to the peer devices 12-16 of Figure 1, as well as the other peer devices 14'-16' of Figure 4. First, the user preferences for the user of the peer device 12' are obtained (step 500). The user preferences may include a weight or priority assigned to each of a number of categories such as, but not limited to, user, genre, decade of release, and availability. The user preferences may be obtained from the user during an initial configuration of the recommendation engine 24'. In addition, the user preferences may be updated by the user as desired. The user preferences may alternatively be suggested by the recommendation engine 24' or the proxy server 40 based on a play history of the peer device 12'. Note that that proxy server 40 may ascertain the play history of the peer device 12' by monitoring the recommendations from the peer device 12' as the recommendations pass through the proxy server 40 on their way to the other peer devices 14'-16'. The user preferences may be stored locally at the peer device 12' or obtained from a central server, such as the proxy server 40, via the network 20. [0047] Once recommendations are received from the other peer devices 14'-16', the recommendation engine 24' of the peer device 12' scores the songs identified by the recommendations based on the user preferences (step 502). The recommendation engine 24' also scores one or more local songs from the music collection 26' (step 504). The recommendation engine 24' then selects the next song to play based, at least on part, on the scores of the recommended and local songs (step 506).
[0048] Figure 7 illustrates an exemplary graphical user interface (GUI) 42 for configuring user preferences. First, the user assigns a weight to various categories. In this example, the categories are users, genre, decade, and availability. However, the present invention is not limited thereto. The
weights for the categories may be assigned alphabetically by selecting radio button 44, customized by the user by selecting radio button 46, or automatically suggested based on a user profile of the user by selecting radio button 48. If alphabetical weighting is selected, the weights are assigned by alphabetically sorting the categories and assigning a weight to each of the categories based on its position in the alphabetically sorted list of categories. As illustrated in Figure 8, if customized weighting is selected, the user may be presented with a GUI 50 for customizing the weighting of the categories. As illustrated in the exemplary embodiment of Figure 8, the weights of the categories may be assigned by adjusting corresponding sliding bars 52-58. Sliding bar 60 may be adjusted to assign a weight to a "no repeat factor." The no repeat factor is a dampening factor used to alter a song's score based on when the song was previously played at the peer device 12' in order to prevent the same song from being continually repeated. [0049] Once the weights are assigned, the user may select an OK button 62 to return to the GUI 42 of Figure 7 or select a REVERT button 64 to return the weights of the categories to their previous settings. In addition, the user may select a SUGGEST FROM PROFILE button 66 to have the recommendation engine 24' or the proxy server 40 suggest weights for the categories based on a user profile. Note that the button 66 has the same effect as the radio button 48 of Figure 7.
[0050] Returning to Figure 7, radio buttons 68-72 are used to select a desired method for assigning weights to each user in the P2P network, radio buttons 74-78 are used to select a desired method for assigning weights to each of a number of genres of music, radio buttons 80-84 are used to select the desired method for assigning weights to each of a number of decades, and radio buttons 86-90 are used to select the desired method for assigning weights to a number of song availability types. [0051] Regarding users, if the radio button 68 is selected, the users are assigned weights based on their respective positions in an alphabetically sorted list of users. If the radio button 70 is selected, a GUI 92 (Figure 9) enabling the user to customize the weights assigned to a number of users from which recommendations are received. An exemplary embodiment of the GUI 92 is illustrated in Figure 9, where sliding bars 94-98 enable the user to
assign customized weights to corresponding users. Returning to Figure 7, if the radio button 72 is selected, the recommendation engine 24' or the proxy server 40 generates suggested weights for the users based on a user profile associated with the peer device 12'. [0052] Regarding genres, if the radio button 74 is selected, the genres are assigned weights based on their respective positions in an alphabetically sorted list of genres. If the radio button 76 is selected, a GUI 100 (Figure 10) enabling the user to customize the weights assigned to a number of genres. An exemplary embodiment of the GUI 100 is illustrated in Figure 10, where sliding bars 102-116 enable the user to assign customized weights to corresponding genres. Returning to Figure 7, if the radio button 78 is selected, the recommendation engine 24' or the proxy server 40 generates suggested weights for the genres based on a user profile associated with the peer device 12'. [0053] Regarding decades, if the radio button 80 is selected, the decades are assigned weights based on their respective positions in a chronologically sorted list of decades. If the radio button 82 is selected, a GU1 118 (Figure 11) enabling the user to customize the weights assigned to a number of decades. An exemplary embodiment of the GUI 118 is illustrated in Figure 11, where sliding bars 120-130 enable the user to assign customized weights to corresponding decades. Returning to Figure 7, if the radio button 84 is selected, the recommendation engine 24' or the proxy server 40 generates suggested weights for the decades based on a user profile associated with the peer device 12'. [0054] Regarding availability, if the radio button 86 is selected, the availability types are assigned weights based on their respective positions in an alphabetically sorted list of availability types. If the radio button 88 is selected, a GUI 132 (Figure 12) enabling the user to customize the weights assigned to a number of availability types. An exemplary embodiment of the GUI 132 is illustrated in Figure 12, where sliding bars 134-140 enable the user to assign customized weights to corresponding availability types. Returning to Figure 7, if the radio button 90 is selected, the recommendation engine 24' or the proxy server 40 generates suggested weights for the availability types based on a user profile associated with the peer device 12'.
[0055] An exemplary equation for scoring a particular song is:
Score = NRF ■ (WU ■ WUA + WG ■ WGA + WD ■ WDA + WA • WAA)- 100 ,
where NRF is the "no repeat factor"; WU is the weight assigned to the user category; WUA is the weight assigned to the user attribute of the song, which is the user recommending the song; WG is the weight assigned to the genre category; WGA is the weight assigned to the genre attribute of the song, which is the genre of the song; WD is the weight assigned to the decade category; WDA is the weight assigned to the decade attribute of the song, which is the decade in which the song or the album associated with the song was released; WA is the weight assigned to the availability category; and WAA is the weight assigned to the availability attribute of the song, which is the availability of the song. [0056] The NRF may, for example, be computed as:
_ MIN(10 • NRFW, LASTREPEAT _ INDEX)
NRF = 10 - NRFW
[0057] As an example, assume that the following category weights have been assigned:
Further assume that the attributes for the categories have been assigned weights as follows:
Thus, if a particular song to be scored is recommended by the user "User C," is from the "Alternative Genre," is from the "1980s" decade, and is available from the subscription music service 18, the score of the song may be computed as:
Score = NRF - \ — - — + — . — + — ■ — + — ■ — | - 100 20 10 20 10 20 10 20 10 '
where if the song was last played 88 songs ago,
MIN(10 - 9,88) 88
NRF =
10 - 9 90
Thus, the score for the song is
88 ( 1 5 7 8 7 9 5 2 ,
Score = H 1 1 • 100 = 65.5.
90 1 20 10 20 10 20 10 20 10 '
[0058] Figure 13 is an exemplary GUI 142 showing a playlist for the peer device 12' including both local and recommended songs according to the present invention. However, note that a similar list may be maintained internally by the peer device 12 of Figure 1 and potentially optimized to display at least a portion of the GUI 142 on the display of the peer device 12. In this example, both the local and recommended songs are scored, as described above, and sorted according to their scores. In addition, as illustrated in Figure 14, the songs may be sorted based on another criterion, which in the illustrated example is genre, and score.
[0059] The GUI 142 may optionally allow the user to block songs having particular identified fields. In the examples of Figures 13 and 14, the user has identified the genre "country" and the artist "iron maiden" as fields to be blocked, as illustrated by the underlining. The user may select fields to block by, for example, clicking on or otherwise selecting the desired fields. Songs having the blocked fields are still scored but are not obtained or played by the peer device 12'.
[0060] In one embodiment, the recommendation engine 24' of the peer device 12' may provide a download queue containing all songs to be downloaded, and optionally purchased, from an external source such as the subscription music service 18, an e-commerce service, or another peer device 14'-16'. Songs in the download queue having scores above a first predetermined or user defined threshold and previews of other songs in the download queue having scores above a second predetermined or user defined threshold but below the first threshold may be automatically downloaded to the peer device 12'.
[0061] Figure 15 is a block diagram of an exemplary embodiment of the peer device 12 of Figure 1. However, the following discussion is equally applicable to the other peer devices 14, 16. In general, the peer device 12 includes a control system 144 having associated memory 146. In this example, the music player 22 and the recommendation engine 24 are at least partially implemented in software and stored in the memory 146. The peer device 12 also includes a storage unit 148 operating to store the music collection 26 (Figure 1). The storage unit 148 may be any number of digital storage devices such as, for example, one or more hard-disc drives, one or more memory cards, RAM, one or more external digital storage devices, or the like. The music collection 26 may alternatively be stored in the memory 146. The peer device 12 also includes a communication interface 150. The communication interface 150 includes a local wireless communication interface for establishing the P2P network with the other peer devices 14, 16. The local wireless interface may operate according to, for example, one of the suite of IEEE 802.11 standards, the Bluetooth standard, or the like. The communication interface 150 may also include a network interface communicatively coupling the peer device 12 to the network 20 (Figure 1).
The peer device 12 also includes a user interface 152, which may include components such as a display, speakers, a user input device, and the like. [0062] Figure 16 is a block diagram of an exemplary embodiment of the peer device 12' of Figure 4. However, the following discussion is equally applicable to the other peer devices 14'-16'. In general, the peer device 12' includes a control system 154 having associated memory 156. In this example, the music player 22' and the recommendation engine 24' are at least partially implemented in software and stored in the memory 156. The peer device 12' also includes a storage unit 158 operating to store the music collection 26' (Figure 4). The storage unit 158 may be any number of digital storage devices such as, for example, one or more hard-disc drives, one or more memory cards, RAM, one or more external digital storage devices, or the like. The music collection 26' may alternatively be stored in the memory 156. The peer device 12' also includes a communication interface 160. The communication interface 160 includes a network interface communicatively coupling the peer device 12' to the network 20 (Figure 4). The peer device 12' also includes a user interface 162, which may include components such as a display, speakers, a user input device, and the like. [0063] The present invention provides substantial opportunity for variation without departing from the spirit or scope of the present invention. For example, while Figure 1 illustrates the peer devices 12-16 forming the P2P network via local wireless communication and Figure 4 illustrates the peer devices 12'-16' forming the P2P network via the network 20, the present invention is not limited to either a local wireless P2P network or a WAN P2P network in the alternative. More specifically, a particular peer device, such as the peer device 12, may form a P2P network with other peer devices using both local wireless communication and the network 20. Thus, for example, the peer device 12 may receive recommendations from both the peer devices 14, 16 (Figure 1) via local wireless communication and from the peer devices 14'-16' (Figure 4) via the network 20.
[0064] As another 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.
[0065] 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.
Claims
1. A method of recommending music comprising: receiving media recommendations from peer devices in a peer-to-peer
(P2P) network identifying media presentations recently played on the peer devices; and automatically selecting a media presentation to play based on the media presentations identified by the media recommendations.
2. The method of claim 1 wherein receiving the media recommendations comprises receiving the recommendations from the peer devices one-by-one as the media content is played on the peer devices.
3. The method of claim 1 wherein the media recommendations are song recommendations identifying songs recently played on the peer devices, and automatically selecting the media content to play comprises automatically selecting a song to play from a group of songs comprising the songs identified by the media recommendations.
4. The method of claim 1 wherein automatically selecting the media presentation to play comprises automatically selecting the media presentation to play from a group of media presentations comprising the media presentations identified by the recommendations and at least one media presentation from a local media collection.
5. The method of claim 1 wherein automatically selecting the media presentation to play comprises automatically selecting the media presentation to play from a group of media presentations comprising the media presentations identified by the recommendations and media presentations identified by recommendations previously received from the peer devices.
6. The method of claim 1 wherein automatically selecting the media presentation to play further comprises automatically selecting the media presentation to play from a group of media presentations comprising the media presentations identified by the recommendations, media presentations identified by recommendations previously received from the peer devices, and at least one media presentation from a local media collection.
7. The method of claim 1 wherein automatically selecting the media presentation to play further comprises scoring a group of media presentations comprising the media presentations identified by the recommendations based on user preferences.
8. The method of claim 7 wherein the user preferences comprise weights assigned to a plurality of categories and scoring the group of media presentations comprises scoring the group of media presentations based on the weights assigned to the plurality of categories.
9. The method of claim 8 further comprising assigning weights to the plurality of categories, wherein the plurality of categories comprise one or more categories selected from the group consisting of user, genre, decade, and availability.
10. The method of claim 8 wherein the user preferences further comprise weights assigned to a plurality of possible attributes for each of the plurality of categories and scoring the group of media presentations comprises scoring the group of media presentations based on the weights assigned to the plurality of categories and the weights assigned to the plurality of possible attributes for each of the plurality of categories.
11. The method of claim 7 wherein the user preferences comprise a weight assigned to a no repeat factor and scoring the group of media presentations comprises scoring the group of media presentations based on the no repeat factor and the weight assigned to the no repeat factor.
12. The method of claim 7 further comprising obtaining the user preferences from the user.
13. The method of claim 7 further comprising automatically generating the user preferences based on an associated play history.
14. The method of claim 7 wherein automatically selecting the media presentation to play further comprises: sorting the group of media presentations based on at least one criteria and the scores to provide a sorted list of media presentations; and automatically selecting the media presentation to play from the sorted list of media presentations.
15. The method of claim 1 further comprising: obtaining the selected media presentation from a subscription service; and playing the selected media presentation.
16. The method of claim 1 further comprising: purchasing and downloading the selected media presentation from an e-commerce service; and playing the selected media presentation.
17. The method of claim 1 further comprising: obtaining a preview of the selected media presentation from an e- commerce service; and playing the preview of the selected media presentation.
18. The method of claim 1 further comprising: obtaining the selected media presentation from one of the peer devices; and playing the selected media presentation.
19. The method of claim 1 further comprising: obtaining a preview of the selected media presentation from one of the peer devices; and playing the preview of the selected media presentation.
20. The method of 1 further comprising inserting information identifying the selected media presentation in a download queue, wherein media presentations in the download queue having a score above a first threshold and previews of media presentations in the download queue having a score above a second threshold and below the first threshold are automatically obtained from an external source.
21. The method of claim 1 further comprising: filtering the media recommendations based on at least one criterion; wherein automatically selecting the media presentation to play comprises automatically selecting the media presentation to play based on the media presentation identified by the filtered media recommendations.
22. The method of claim 1 further comprising establishing the P2P network via local wireless communication.
23. The method of claim 1 further comprising establishing the P2P network via a Wide Area Network (WAN).
24. The method of claim 1 further comprising inviting the peer devices to join the P2P network.
25. A peer device for a peer-to-peer (P2P) media recommendation system comprising: a communication interface communicatively coupling the peer device to other peer devices in a P2P network; and a control system associated with the communication interface and adapted to: receive media recommendations from the other peer devices identifying media presentations recently played on the other peer devices; and automatically select a media presentation to play based on the media presentations identified by the media recommendations.
26. The peer device of claim 25 wherein the media recommendations are provided to the peer device one-by-one as the media content is played on the other peer devices.
27. The peer device of claim 25 wherein the media recommendations identify songs recently played by the other peer devices and the control system is adapted to automatically select a song to play from a group of songs comprising the songs identified by the media recommendations.
28. The peer device of claim 25 wherein the control system is further adapted to automatically select the media presentation to play from a group of media presentations comprising the media presentations identified by the media recommendations and at least one media presentation from a local media collection.
29. The peer device of claim 25 wherein the control system is further adapted to: score media presentations in a group of media presentations comprising the media presentations identified by the media recommendations based on user preferences; and automatically select the media presentation to play from the group of media presentations based on the scores.
30. The peer device of claim 25 wherein if the selected media presentation is not included within a local media collection associated with the peer device, the control system is further adapted to obtain the selected media presentation from an external source and play the selected media presentation.
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US11/484,130 | 2006-07-11 | ||
US11/484,130 US7680959B2 (en) | 2006-07-11 | 2006-07-11 | P2P network for providing real time media recommendations |
Publications (2)
Publication Number | Publication Date |
---|---|
WO2008008563A2 true WO2008008563A2 (en) | 2008-01-17 |
WO2008008563A3 WO2008008563A3 (en) | 2008-11-20 |
Family
ID=38923974
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
PCT/US2007/068863 WO2008008563A2 (en) | 2006-07-11 | 2007-05-14 | P2p network for providing real time media recommendations |
Country Status (3)
Country | Link |
---|---|
US (1) | US7680959B2 (en) |
CN (1) | CN101490664A (en) |
WO (1) | WO2008008563A2 (en) |
Cited By (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
EP2131365A1 (en) * | 2008-06-03 | 2009-12-09 | Sony Corporation | Information processing device, information processing method and program |
WO2010076625A1 (en) * | 2008-12-31 | 2010-07-08 | Nokia Corporation | Method, apparatus and computer program product for providing analysis and visualization of content items association |
WO2011008145A1 (en) * | 2009-07-16 | 2011-01-20 | Telefonaktiebolaget Lm Ericsson (Publ) | Providing content by using a social network |
US8914389B2 (en) | 2008-06-03 | 2014-12-16 | Sony Corporation | Information processing device, information processing method, and program |
US8996412B2 (en) | 2008-06-03 | 2015-03-31 | Sony Corporation | Information processing system and information processing method |
US9424618B2 (en) | 2010-11-04 | 2016-08-23 | Digimarc Corporation | Smartphone-based methods and systems |
US11049094B2 (en) | 2014-02-11 | 2021-06-29 | Digimarc Corporation | Methods and arrangements for device to device communication |
Families Citing this family (175)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20020002039A1 (en) * | 1998-06-12 | 2002-01-03 | Safi Qureshey | Network-enabled audio device |
US8243636B2 (en) | 2003-05-06 | 2012-08-14 | Apple Inc. | Messaging system and service |
US20050251565A1 (en) * | 2004-05-05 | 2005-11-10 | Martin Weel | Hybrid set-top box for digital entertainment network |
US9826046B2 (en) | 2004-05-05 | 2017-11-21 | Black Hills Media, Llc | Device discovery for digital entertainment network |
US8028038B2 (en) * | 2004-05-05 | 2011-09-27 | Dryden Enterprises, Llc | Obtaining a playlist based on user profile matching |
US8028323B2 (en) | 2004-05-05 | 2011-09-27 | Dryden Enterprises, Llc | Method and system for employing a first device to direct a networked audio device to obtain a media item |
US10862994B1 (en) | 2006-11-15 | 2020-12-08 | Conviva Inc. | Facilitating client decisions |
US7734569B2 (en) | 2005-02-03 | 2010-06-08 | Strands, Inc. | Recommender system for identifying a new set of media items responsive to an input set of media items and knowledge base metrics |
US7797321B2 (en) | 2005-02-04 | 2010-09-14 | Strands, Inc. | System for browsing through a music catalog using correlation metrics of a knowledge base of mediasets |
US7840570B2 (en) | 2005-04-22 | 2010-11-23 | Strands, Inc. | System and method for acquiring and adding data on the playing of elements or multimedia files |
EP2437158A1 (en) | 2005-12-19 | 2012-04-04 | Apple Inc. | User-to-user recommender |
US20070244880A1 (en) | 2006-02-03 | 2007-10-18 | Francisco Martin | Mediaset generation system |
WO2007092053A1 (en) | 2006-02-10 | 2007-08-16 | Strands, Inc. | Dynamic interactive entertainment |
US8521611B2 (en) * | 2006-03-06 | 2013-08-27 | Apple Inc. | Article trading among members of a community |
US8285595B2 (en) | 2006-03-29 | 2012-10-09 | Napo Enterprises, Llc | System and method for refining media recommendations |
US8676882B2 (en) * | 2007-02-27 | 2014-03-18 | Sony Corporation | System and method for preloading content segments to client devices in an electronic network |
US8392594B2 (en) * | 2007-01-30 | 2013-03-05 | Sony Corporation | System and method for effectively providing content to client devices in an electronic network |
US8903843B2 (en) | 2006-06-21 | 2014-12-02 | Napo Enterprises, Llc | Historical media recommendation service |
US7970922B2 (en) * | 2006-07-11 | 2011-06-28 | Napo Enterprises, Llc | P2P real time media recommendations |
US8059646B2 (en) | 2006-07-11 | 2011-11-15 | Napo Enterprises, Llc | System and method for identifying music content in a P2P real time recommendation network |
US8327266B2 (en) | 2006-07-11 | 2012-12-04 | Napo Enterprises, Llc | Graphical user interface system for allowing management of a media item playlist based on a preference scoring system |
US7680959B2 (en) | 2006-07-11 | 2010-03-16 | Napo Enterprises, Llc | P2P network for providing real time media recommendations |
US8805831B2 (en) | 2006-07-11 | 2014-08-12 | Napo Enterprises, Llc | Scoring and replaying media items |
US9003056B2 (en) | 2006-07-11 | 2015-04-07 | Napo Enterprises, Llc | Maintaining a minimum level of real time media recommendations in the absence of online friends |
US8064894B1 (en) * | 2006-08-07 | 2011-11-22 | Aol Inc. | Exchanging digital content |
US8620699B2 (en) | 2006-08-08 | 2013-12-31 | Napo Enterprises, Llc | Heavy influencer media recommendations |
US8090606B2 (en) | 2006-08-08 | 2012-01-03 | Napo Enterprises, Llc | Embedded media recommendations |
US9008634B2 (en) * | 2006-10-06 | 2015-04-14 | Napo Enterprises, Llc | System and method for providing media content selections |
US20100106852A1 (en) * | 2007-10-24 | 2010-04-29 | Kindig Bradley D | Systems and methods for providing user personalized media content on a portable device |
US8712563B2 (en) | 2006-10-24 | 2014-04-29 | Slacker, Inc. | Method and apparatus for interactive distribution of digital content |
US10657168B2 (en) | 2006-10-24 | 2020-05-19 | Slacker, Inc. | Methods and systems for personalized rendering of digital media content |
EP2080114A4 (en) | 2006-10-24 | 2012-02-01 | Slacker Inc | Method and device for playback of digital media content |
KR100850774B1 (en) * | 2006-11-13 | 2008-08-06 | 삼성전자주식회사 | Content classification method and content reproduction apparatus capable of performing the method |
US8751605B1 (en) | 2006-11-15 | 2014-06-10 | Conviva Inc. | Accounting for network traffic |
US8874725B1 (en) | 2006-11-15 | 2014-10-28 | Conviva Inc. | Monitoring the performance of a content player |
US8489923B1 (en) | 2006-11-15 | 2013-07-16 | Conviva Inc. | Detecting problems in content distribution |
US9405827B2 (en) * | 2006-11-30 | 2016-08-02 | Red Hat, Inc. | Playlist generation of content gathered from multiple sources |
US8874655B2 (en) | 2006-12-13 | 2014-10-28 | Napo Enterprises, Llc | Matching participants in a P2P recommendation network loosely coupled to a subscription service |
US7970120B2 (en) * | 2007-01-11 | 2011-06-28 | Sceery Edward J | Cell phone based animal sound imitation |
US20090070185A1 (en) * | 2007-01-17 | 2009-03-12 | Concert Technology Corporation | System and method for recommending a digital media subscription service |
US8307092B2 (en) | 2007-02-21 | 2012-11-06 | Napo Enterprises, Llc | Method and system for collecting information about a user's media collections from multiple login points |
US20080222546A1 (en) * | 2007-03-08 | 2008-09-11 | Mudd Dennis M | System and method for personalizing playback content through interaction with a playback device |
CA2680797C (en) * | 2007-03-14 | 2018-02-13 | Slacker, Inc. | Systems and methods for portable personalized radio |
US9224427B2 (en) | 2007-04-02 | 2015-12-29 | Napo Enterprises LLC | Rating media item recommendations using recommendation paths and/or media item usage |
US7941764B2 (en) | 2007-04-04 | 2011-05-10 | Abo Enterprises, Llc | System and method for assigning user preference settings for a category, and in particular a media category |
US8112720B2 (en) | 2007-04-05 | 2012-02-07 | Napo Enterprises, Llc | System and method for automatically and graphically associating programmatically-generated media item recommendations related to a user's socially recommended media items |
US20080250067A1 (en) * | 2007-04-06 | 2008-10-09 | Concert Technology Corporation | System and method for selectively identifying media items for play based on a recommender playlist |
US8671000B2 (en) | 2007-04-24 | 2014-03-11 | Apple Inc. | Method and arrangement for providing content to multimedia devices |
US8738695B2 (en) * | 2007-05-15 | 2014-05-27 | International Business Machines Corporation | Joint analysis of social and content networks |
US20090049045A1 (en) | 2007-06-01 | 2009-02-19 | Concert Technology Corporation | Method and system for sorting media items in a playlist on a media device |
US9037632B2 (en) | 2007-06-01 | 2015-05-19 | Napo Enterprises, Llc | System and method of generating a media item recommendation message with recommender presence information |
US9164993B2 (en) | 2007-06-01 | 2015-10-20 | Napo Enterprises, Llc | System and method for propagating a media item recommendation message comprising recommender presence information |
US8839141B2 (en) | 2007-06-01 | 2014-09-16 | Napo Enterprises, Llc | Method and system for visually indicating a replay status of media items on a media device |
US8285776B2 (en) | 2007-06-01 | 2012-10-09 | Napo Enterprises, Llc | System and method for processing a received media item recommendation message comprising recommender presence information |
US8806038B2 (en) * | 2007-06-29 | 2014-08-12 | Intel Corporation | Method and system for updating media lists in portable media devices |
US20090048992A1 (en) * | 2007-08-13 | 2009-02-19 | Concert Technology Corporation | System and method for reducing the repetitive reception of a media item recommendation |
US10289749B2 (en) * | 2007-08-29 | 2019-05-14 | Oath Inc. | Degree of separation for media artifact discovery |
US8214475B1 (en) * | 2007-08-30 | 2012-07-03 | Amazon Technologies, Inc. | System and method for managing content interest data using peer-to-peer logical mesh networks |
US20090083148A1 (en) * | 2007-09-26 | 2009-03-26 | Sony Corporation | System and method for facilitating content transfers between client devices in an electronic network |
US20090094248A1 (en) * | 2007-10-03 | 2009-04-09 | Concert Technology Corporation | System and method of prioritizing the downloading of media items in a media item recommendation network |
US7865522B2 (en) | 2007-11-07 | 2011-01-04 | Napo Enterprises, Llc | System and method for hyping media recommendations in a media recommendation system |
US9060034B2 (en) | 2007-11-09 | 2015-06-16 | Napo Enterprises, Llc | System and method of filtering recommenders in a media item recommendation system |
US8224856B2 (en) | 2007-11-26 | 2012-07-17 | Abo Enterprises, Llc | Intelligent default weighting process for criteria utilized to score media content items |
US20100332485A1 (en) * | 2007-11-30 | 2010-12-30 | Nokia Corporation | Ordering of data items |
US8270937B2 (en) * | 2007-12-17 | 2012-09-18 | Kota Enterprises, Llc | Low-threat response service for mobile device users |
US9224150B2 (en) | 2007-12-18 | 2015-12-29 | Napo Enterprises, Llc | Identifying highly valued recommendations of users in a media recommendation network |
US9734507B2 (en) | 2007-12-20 | 2017-08-15 | Napo Enterprise, Llc | Method and system for simulating recommendations in a social network for an offline user |
US8396951B2 (en) | 2007-12-20 | 2013-03-12 | Napo Enterprises, Llc | Method and system for populating a content repository for an internet radio service based on a recommendation network |
US9015147B2 (en) | 2007-12-20 | 2015-04-21 | Porto Technology, Llc | System and method for generating dynamically filtered content results, including for audio and/or video channels |
US8024431B2 (en) | 2007-12-21 | 2011-09-20 | Domingo Enterprises, Llc | System and method for identifying transient friends |
US8060525B2 (en) | 2007-12-21 | 2011-11-15 | Napo Enterprises, Llc | Method and system for generating media recommendations in a distributed environment based on tagging play history information with location information |
US8316015B2 (en) | 2007-12-21 | 2012-11-20 | Lemi Technology, Llc | Tunersphere |
US8117193B2 (en) | 2007-12-21 | 2012-02-14 | Lemi Technology, Llc | Tunersphere |
US8010601B2 (en) | 2007-12-21 | 2011-08-30 | Waldeck Technology, Llc | Contiguous location-based user networks |
US8725740B2 (en) | 2008-03-24 | 2014-05-13 | Napo Enterprises, Llc | Active playlist having dynamic media item groups |
JP4779063B2 (en) | 2008-04-07 | 2011-09-21 | コス コーポレイション | Wireless earphones that migrate between wireless networks |
US20090259621A1 (en) * | 2008-04-11 | 2009-10-15 | Concert Technology Corporation | Providing expected desirability information prior to sending a recommendation |
US8285811B2 (en) * | 2008-04-17 | 2012-10-09 | Eloy Technology, Llc | Aggregating media collections to provide a primary list and sorted sub-lists |
US8484311B2 (en) * | 2008-04-17 | 2013-07-09 | Eloy Technology, Llc | Pruning an aggregate media collection |
US8285810B2 (en) * | 2008-04-17 | 2012-10-09 | Eloy Technology, Llc | Aggregating media collections between participants of a sharing network utilizing bridging |
US8224899B2 (en) | 2008-04-17 | 2012-07-17 | Eloy Technology, Llc | Method and system for aggregating media collections between participants of a sharing network |
EP2304597A4 (en) * | 2008-05-31 | 2012-10-31 | Apple Inc | Adaptive recommender technology |
US20090326970A1 (en) * | 2008-06-30 | 2009-12-31 | Microsoft Corporation | Awarding users for discoveries of content based on future popularity in a social network |
US20090327907A1 (en) * | 2008-06-30 | 2009-12-31 | Microsoft Corporation | Integrating character-based profiles within a social network |
US20090327906A1 (en) * | 2008-06-30 | 2009-12-31 | Microsoft Corporation | Supporting brand assets in a social networking service |
US20100017261A1 (en) * | 2008-07-17 | 2010-01-21 | Kota Enterprises, Llc | Expert system and service for location-based content influence for narrowcast |
US8504073B2 (en) * | 2008-08-12 | 2013-08-06 | Teaneck Enterprises, Llc | Customized content delivery through the use of arbitrary geographic shapes |
US20100070490A1 (en) * | 2008-09-17 | 2010-03-18 | Eloy Technology, Llc | System and method for enhanced smart playlists with aggregated media collections |
US7853712B2 (en) * | 2008-09-29 | 2010-12-14 | Eloy Technology, Llc | Activity indicators in a media sharing system |
US20100094938A1 (en) * | 2008-10-10 | 2010-04-15 | Nicolas Le Scouarnec | Method of transmitting data between peerss by selecting a network according to at least one criterion and associated management device and communication equipment |
US20100094820A1 (en) * | 2008-10-13 | 2010-04-15 | Concert Technology Corporation | Method for affecting the score and placement of media items in a locked-to-top playlist |
US7752265B2 (en) * | 2008-10-15 | 2010-07-06 | Eloy Technology, Llc | Source indicators for elements of an aggregate media collection in a media sharing system |
US8880599B2 (en) * | 2008-10-15 | 2014-11-04 | Eloy Technology, Llc | Collection digest for a media sharing system |
US20100094834A1 (en) * | 2008-10-15 | 2010-04-15 | Concert Technology Corporation | Bridging in a media sharing system |
US8484227B2 (en) * | 2008-10-15 | 2013-07-09 | Eloy Technology, Llc | Caching and synching process for a media sharing system |
KR101593991B1 (en) * | 2008-10-23 | 2016-02-17 | 삼성전자주식회사 | Method and apparatus for recommending content |
US20100114979A1 (en) * | 2008-10-28 | 2010-05-06 | Concert Technology Corporation | System and method for correlating similar playlists in a media sharing network |
US8527877B2 (en) * | 2008-11-25 | 2013-09-03 | At&T Intellectual Property I, L.P. | Systems and methods to select media content |
US8494899B2 (en) | 2008-12-02 | 2013-07-23 | Lemi Technology, Llc | Dynamic talk radio program scheduling |
US7921223B2 (en) | 2008-12-08 | 2011-04-05 | Lemi Technology, Llc | Protected distribution and location based aggregation service |
US9014832B2 (en) | 2009-02-02 | 2015-04-21 | Eloy Technology, Llc | Augmenting media content in a media sharing group |
US20100198917A1 (en) * | 2009-02-02 | 2010-08-05 | Kota Enterprises, Llc | Crowd formation for mobile device users |
US8200602B2 (en) | 2009-02-02 | 2012-06-12 | Napo Enterprises, Llc | System and method for creating thematic listening experiences in a networked peer media recommendation environment |
US20100228740A1 (en) * | 2009-03-09 | 2010-09-09 | Apple Inc. | Community playlist management |
US8402494B1 (en) | 2009-03-23 | 2013-03-19 | Conviva Inc. | Switching content |
US20120047087A1 (en) | 2009-03-25 | 2012-02-23 | Waldeck Technology Llc | Smart encounters |
EP2239695A1 (en) * | 2009-04-10 | 2010-10-13 | ACCENTURE Global Services GmbH | System for transmitting an electronic recommendation |
US8843975B2 (en) | 2009-04-10 | 2014-09-23 | At&T Intellectual Property I, L.P. | Method and apparatus for presenting dynamic media content |
US20120046995A1 (en) | 2009-04-29 | 2012-02-23 | Waldeck Technology, Llc | Anonymous crowd comparison |
US8180765B2 (en) * | 2009-06-15 | 2012-05-15 | Telefonaktiebolaget L M Ericsson (Publ) | Device and method for selecting at least one media for recommendation to a user |
US9460092B2 (en) * | 2009-06-16 | 2016-10-04 | Rovi Technologies Corporation | Media asset recommendation service |
US9153141B1 (en) | 2009-06-30 | 2015-10-06 | Amazon Technologies, Inc. | Recommendations based on progress data |
US9390402B1 (en) | 2009-06-30 | 2016-07-12 | Amazon Technologies, Inc. | Collection of progress data |
US8510247B1 (en) | 2009-06-30 | 2013-08-13 | Amazon Technologies, Inc. | Recommendation of media content items based on geolocation and venue |
US20120135744A1 (en) | 2009-07-21 | 2012-05-31 | Kota Enterprises, Llc | Systems and methods for generating and managing communication rules associated with geographic locations |
US20110060738A1 (en) * | 2009-09-08 | 2011-03-10 | Apple Inc. | Media item clustering based on similarity data |
US20120222061A1 (en) * | 2009-10-14 | 2012-08-30 | Thomson Licensing | Automatic media asset update over an online social network |
US9183580B2 (en) * | 2010-11-04 | 2015-11-10 | Digimarc Corporation | Methods and systems for resource management on portable devices |
US8560608B2 (en) | 2009-11-06 | 2013-10-15 | Waldeck Technology, Llc | Crowd formation based on physical boundaries and other rules |
US8775935B2 (en) * | 2009-12-02 | 2014-07-08 | Microsoft Corporation | Personification of software agents |
GB0921559D0 (en) * | 2009-12-09 | 2010-01-27 | Omnifone Ltd | Behaviour-adaptive intelligent synchronisation of media content files |
US20130232198A1 (en) * | 2009-12-21 | 2013-09-05 | Arbitron Inc. | System and Method for Peer-to-Peer Distribution of Media Exposure Data |
US20110153391A1 (en) * | 2009-12-21 | 2011-06-23 | Michael Tenbrock | Peer-to-peer privacy panel for audience measurement |
US20120063367A1 (en) | 2009-12-22 | 2012-03-15 | Waldeck Technology, Llc | Crowd and profile based communication addresses |
US20120297011A1 (en) * | 2009-12-30 | 2012-11-22 | Nokia Corporation | Intelligent Reception of Broadcasted Information Items |
US20120066303A1 (en) | 2010-03-03 | 2012-03-15 | Waldeck Technology, Llc | Synchronized group location updates |
US9514476B2 (en) * | 2010-04-14 | 2016-12-06 | Viacom International Inc. | Systems and methods for discovering artists |
US10805102B2 (en) | 2010-05-21 | 2020-10-13 | Comcast Cable Communications, Llc | Content recommendation system |
CN102263777A (en) * | 2010-05-28 | 2011-11-30 | 腾讯科技(深圳)有限公司 | Relevant download prompting method and device |
US8903850B2 (en) * | 2010-07-22 | 2014-12-02 | Myspace Llc | Metadata ingestion to stream customization |
US20120109971A1 (en) | 2010-11-02 | 2012-05-03 | Clear Channel Management Services, Inc. | Rules Based Playlist Generation |
US9208239B2 (en) | 2010-09-29 | 2015-12-08 | Eloy Technology, Llc | Method and system for aggregating music in the cloud |
US9886727B2 (en) | 2010-11-11 | 2018-02-06 | Ikorongo Technology, LLC | Automatic check-ins and status updates |
CN102571887A (en) * | 2010-12-28 | 2012-07-11 | 英属维京群岛商速位互动股份有限公司 | Wireless communication system, peer-to-peer transmission method and communication device |
US9104754B2 (en) | 2011-03-15 | 2015-08-11 | International Business Machines Corporation | Object selection based on natural language queries |
IL212502A0 (en) * | 2011-04-26 | 2011-07-31 | Friedmann Michael | Method and system for recommending geo-tagged items |
EP2549423A1 (en) * | 2011-07-22 | 2013-01-23 | Axel Springer Digital TV Guide GmbH | Automatic determination of the relevance of recommendations in a social network |
US8983905B2 (en) | 2011-10-03 | 2015-03-17 | Apple Inc. | Merging playlists from multiple sources |
US8909667B2 (en) | 2011-11-01 | 2014-12-09 | Lemi Technology, Llc | Systems, methods, and computer readable media for generating recommendations in a media recommendation system |
TWI533148B (en) * | 2011-12-13 | 2016-05-11 | 中華電信股份有限公司 | System and method for music navigation and recommendation |
US8930475B1 (en) | 2012-03-30 | 2015-01-06 | Signiant Inc. | Systems and methods for secure cloud-based media file sharing |
US10148716B1 (en) | 2012-04-09 | 2018-12-04 | Conviva Inc. | Dynamic generation of video manifest files |
CN103377438A (en) * | 2012-04-28 | 2013-10-30 | 日立民用电子株式会社 | Portable terminal and online shopping content screening system with same |
US9628573B1 (en) | 2012-05-01 | 2017-04-18 | Amazon Technologies, Inc. | Location-based interaction with digital works |
CN102722532B (en) * | 2012-05-18 | 2014-04-02 | 山东大学 | Music recommendation algorithm based on content and user history |
US9465889B2 (en) | 2012-07-05 | 2016-10-11 | Physion Consulting, LLC | Method and system for identifying data and users of interest from patterns of user interaction with existing data |
US9692799B2 (en) * | 2012-07-30 | 2017-06-27 | Signiant Inc. | System and method for sending and/or receiving digital content based on a delivery specification |
US9246965B1 (en) | 2012-09-05 | 2016-01-26 | Conviva Inc. | Source assignment based on network partitioning |
US10182096B1 (en) | 2012-09-05 | 2019-01-15 | Conviva Inc. | Virtual resource locator |
US9183585B2 (en) * | 2012-10-22 | 2015-11-10 | Apple Inc. | Systems and methods for generating a playlist in a music service |
US9549024B2 (en) | 2012-12-07 | 2017-01-17 | Remote Media, Llc | Routing and synchronization system, method, and manager |
US10275463B2 (en) | 2013-03-15 | 2019-04-30 | Slacker, Inc. | System and method for scoring and ranking digital content based on activity of network users |
CN104240102A (en) * | 2013-06-06 | 2014-12-24 | 腾讯科技(深圳)有限公司 | Pushing method and system of virtual product |
CN103577584A (en) * | 2013-08-12 | 2014-02-12 | 福建星网视易信息系统有限公司 | Recommendation method and recommendation system for multimedia objects |
KR20150058734A (en) * | 2013-11-21 | 2015-05-29 | 삼성전자주식회사 | Method and apparatus for providing contents of electronic device |
US11455086B2 (en) | 2014-04-14 | 2022-09-27 | Comcast Cable Communications, Llc | System and method for content selection |
CN104090906B (en) * | 2014-05-28 | 2016-03-09 | 腾讯科技(深圳)有限公司 | Multimedia method for pushing and multimedia pusher |
US11553251B2 (en) | 2014-06-20 | 2023-01-10 | Comcast Cable Communications, Llc | Content viewing tracking |
US10776414B2 (en) | 2014-06-20 | 2020-09-15 | Comcast Cable Communications, Llc | Dynamic content recommendations |
AU2015291770A1 (en) * | 2014-07-17 | 2016-12-22 | Bigtincan Holdings Limited | Method and system for providing contextual electronic content |
US10178043B1 (en) | 2014-12-08 | 2019-01-08 | Conviva Inc. | Dynamic bitrate range selection in the cloud for optimized video streaming |
US10305955B1 (en) | 2014-12-08 | 2019-05-28 | Conviva Inc. | Streaming decision in the cloud |
US9848306B2 (en) * | 2014-12-17 | 2017-12-19 | Intel Corporation | Contextually aware dynamic group formation |
US10362978B2 (en) | 2015-08-28 | 2019-07-30 | Comcast Cable Communications, Llc | Computational model for mood |
CN105550243A (en) * | 2015-12-07 | 2016-05-04 | 广东欧珀移动通信有限公司 | Playlist processing method and device |
US10832304B2 (en) | 2016-01-15 | 2020-11-10 | Target Brands, Inc. | Resorting product suggestions for a user interface |
CN106022842A (en) * | 2016-05-31 | 2016-10-12 | 北京小米移动软件有限公司 | Product information recommending method and product information recommending device |
CN107920258B (en) * | 2016-10-11 | 2020-09-08 | 中国移动通信有限公司研究院 | Data processing method and device |
US10936653B2 (en) | 2017-06-02 | 2021-03-02 | Apple Inc. | Automatically predicting relevant contexts for media items |
CN111684767B (en) * | 2017-12-20 | 2022-06-24 | 乐威指南公司 | System and method for dynamically adjusting notification frequency of events |
CN109068149B (en) * | 2018-09-14 | 2022-05-06 | 深圳Tcl新技术有限公司 | Program recommendation method, terminal and computer readable storage medium |
US10735516B1 (en) | 2019-02-15 | 2020-08-04 | Signiant Inc. | Cloud-based authority to enhance point-to-point data transfer with machine learning |
US11184672B2 (en) | 2019-11-04 | 2021-11-23 | Comcast Cable Communications, Llc | Synchronizing content progress |
EP3985669A1 (en) * | 2020-10-16 | 2022-04-20 | Moodagent A/S | Methods and systems for automatically matching audio content with visual input |
US11960537B1 (en) * | 2023-01-27 | 2024-04-16 | Tae Moon Kim | User-defined mixed playlist playback mode |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20030014407A1 (en) * | 2001-04-11 | 2003-01-16 | Green Arrow Media, Inc. | System and method for making media recommendations |
US6757517B2 (en) * | 2001-05-10 | 2004-06-29 | Chin-Chi Chang | Apparatus and method for coordinated music playback in wireless ad-hoc networks |
US20060195521A1 (en) * | 2005-02-28 | 2006-08-31 | Yahoo! Inc. | System and method for creating a collaborative playlist |
Family Cites Families (157)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US4870579A (en) * | 1987-10-01 | 1989-09-26 | Neonics, Inc. | System and method of predicting subjective reactions |
US5963916A (en) * | 1990-09-13 | 1999-10-05 | Intouch Group, Inc. | Network apparatus and method for preview of music products and compilation of market data |
US5621456A (en) * | 1993-06-22 | 1997-04-15 | Apple Computer, Inc. | Methods and apparatus for audio-visual interface for the display of multiple program categories |
US6388714B1 (en) * | 1995-10-02 | 2002-05-14 | Starsight Telecast Inc | Interactive computer system for providing television schedule information |
US6195657B1 (en) * | 1996-09-26 | 2001-02-27 | Imana, Inc. | Software, method and apparatus for efficient categorization and recommendation of subjects according to multidimensional semantics |
US20010013009A1 (en) * | 1997-05-20 | 2001-08-09 | Daniel R. Greening | System and method for computer-based marketing |
US20060026048A1 (en) | 1997-08-08 | 2006-02-02 | Kolawa Adam K | Method and apparatus for automated selection, organization, and recommendation of items based on user preference topography |
KR100278116B1 (en) * | 1997-08-30 | 2001-01-15 | 김영남 | Screen manufacturing method of dry electrophotographic cathode ray tube and cathode ray tube |
JP4032649B2 (en) * | 1998-08-24 | 2008-01-16 | 株式会社日立製作所 | How to display multimedia information |
US6694482B1 (en) * | 1998-09-11 | 2004-02-17 | Sbc Technology Resources, Inc. | System and methods for an architectural framework for design of an adaptive, personalized, interactive content delivery system |
US6317722B1 (en) * | 1998-09-18 | 2001-11-13 | Amazon.Com, Inc. | Use of electronic shopping carts to generate personal recommendations |
US6266649B1 (en) * | 1998-09-18 | 2001-07-24 | Amazon.Com, Inc. | Collaborative recommendations using item-to-item similarity mappings |
US6567797B1 (en) * | 1999-01-26 | 2003-05-20 | Xerox Corporation | System and method for providing recommendations based on multi-modal user clusters |
US6353823B1 (en) * | 1999-03-08 | 2002-03-05 | Intel Corporation | Method and system for using associative metadata |
JP4065472B2 (en) * | 1999-04-27 | 2008-03-26 | キヤノン株式会社 | Image processing apparatus and method, and storage medium |
US7013301B2 (en) * | 2003-09-23 | 2006-03-14 | Predixis Corporation | Audio fingerprinting system and method |
US20050038819A1 (en) * | 2000-04-21 | 2005-02-17 | Hicken Wendell T. | Music Recommendation system and method |
JP4743740B2 (en) * | 1999-07-16 | 2011-08-10 | マイクロソフト インターナショナル ホールディングス ビー.ブイ. | Method and system for creating automated alternative content recommendations |
KR100328670B1 (en) * | 1999-07-21 | 2002-03-20 | 정만원 | System For Recommending Items With Multiple Analyzing Components |
US6941275B1 (en) * | 1999-10-07 | 2005-09-06 | Remi Swierczek | Music identification system |
US7072846B1 (en) | 1999-11-16 | 2006-07-04 | Emergent Music Llc | Clusters for rapid artist-audience matching |
US6757691B1 (en) * | 1999-11-09 | 2004-06-29 | America Online, Inc. | Predicting content choices by searching a profile database |
GB2397205B (en) | 1999-11-10 | 2004-09-15 | Launch Media Inc | A user interface for an internet data stream transmission system |
US6526411B1 (en) * | 1999-11-15 | 2003-02-25 | Sean Ward | System and method for creating dynamic playlists |
US6904264B1 (en) * | 1999-12-21 | 2005-06-07 | Texas Instruments Incorporated | Method requesting and paying for download digital radio content |
CN1193346C (en) * | 2000-04-20 | 2005-03-16 | 三洋电机株式会社 | Decoder |
US8352331B2 (en) * | 2000-05-03 | 2013-01-08 | Yahoo! Inc. | Relationship discovery engine |
US6947922B1 (en) * | 2000-06-16 | 2005-09-20 | Xerox Corporation | Recommender system and method for generating implicit ratings based on user interactions with handheld devices |
US7075000B2 (en) * | 2000-06-29 | 2006-07-11 | Musicgenome.Com Inc. | System and method for prediction of musical preferences |
JP2004522177A (en) * | 2000-06-29 | 2004-07-22 | ミュージックゲノム.コム インコーポレイテッド | System and method for predicting music preferences |
US6662231B1 (en) * | 2000-06-30 | 2003-12-09 | Sei Information Technology | Method and system for subscriber-based audio service over a communication network |
US20030115167A1 (en) * | 2000-07-11 | 2003-06-19 | Imran Sharif | Web browser implemented in an Internet appliance |
DE10196421T5 (en) * | 2000-07-11 | 2006-07-13 | Launch Media, Inc., Santa Monica | Online playback system with community targeting |
US6801909B2 (en) * | 2000-07-21 | 2004-10-05 | Triplehop Technologies, Inc. | System and method for obtaining user preferences and providing user recommendations for unseen physical and information goods and services |
US20060064716A1 (en) | 2000-07-24 | 2006-03-23 | Vivcom, Inc. | Techniques for navigating multiple video streams |
KR20040041082A (en) | 2000-07-24 | 2004-05-13 | 비브콤 인코포레이티드 | System and method for indexing, searching, identifying, and editing portions of electronic multimedia files |
US6990453B2 (en) | 2000-07-31 | 2006-01-24 | Landmark Digital Services Llc | System and methods for recognizing sound and music signals in high noise and distortion |
US6865585B1 (en) * | 2000-07-31 | 2005-03-08 | Microsoft Corporation | Method and system for multiprocessor garbage collection |
US20020052207A1 (en) * | 2000-08-07 | 2002-05-02 | Hunzinger Jason F. | Context tags for context-aware computer programs |
US6615208B1 (en) * | 2000-09-01 | 2003-09-02 | Telcordia Technologies, Inc. | Automatic recommendation of products using latent semantic indexing of content |
US6629104B1 (en) * | 2000-11-22 | 2003-09-30 | Eastman Kodak Company | Method for adding personalized metadata to a collection of digital images |
CA2327119A1 (en) * | 2000-11-30 | 2002-05-30 | Ibm Canada Limited-Ibm Canada Limitee | Rule-based personalization framework for integrating recommendation systems |
US20020087382A1 (en) * | 2001-01-03 | 2002-07-04 | Tiburcio Vincio B. | Method and system for assigning and tracking tasks, such as under an electronic auction |
US20020103796A1 (en) * | 2001-01-31 | 2002-08-01 | Sonicblue, Inc. | Method for parametrically sorting music files |
EP1229469A1 (en) * | 2001-02-01 | 2002-08-07 | Koninklijke Philips Electronics N.V. | Method and arrangements for facilitating the sharing of audiovisual products |
US20020116533A1 (en) * | 2001-02-20 | 2002-08-22 | Holliman Matthew J. | System for providing a multimedia peer-to-peer computing platform |
GB2372850A (en) | 2001-03-02 | 2002-09-04 | Hewlett Packard Co | Computer network |
US20020138836A1 (en) * | 2001-03-23 | 2002-09-26 | Koninklijke Philips Electronics N.V. | Method and apparatus for recommending television programming through a celebrity or using a celebrity profile |
US6670537B2 (en) * | 2001-04-20 | 2003-12-30 | Sony Corporation | Media player for distribution of music samples |
DE10154656A1 (en) * | 2001-05-10 | 2002-11-21 | Ibm | Computer based method for suggesting articles to individual users grouped with other similar users for marketing and sales persons with user groups determined using dynamically calculated similarity factors |
US6968334B2 (en) * | 2001-05-15 | 2005-11-22 | Nokia Corporation | Method and business process to maintain privacy in distributed recommendation systems |
US6976228B2 (en) * | 2001-06-27 | 2005-12-13 | Nokia Corporation | Graphical user interface comprising intersecting scroll bar for selection of content |
US7039879B2 (en) * | 2001-06-28 | 2006-05-02 | Nokia Corporation | Method and apparatus for scrollable cross-point navigation in a user interface |
US7222187B2 (en) * | 2001-07-31 | 2007-05-22 | Sun Microsystems, Inc. | Distributed trust mechanism for decentralized networks |
EP1425745A2 (en) * | 2001-08-27 | 2004-06-09 | Gracenote, Inc. | Playlist generation, delivery and navigation |
US7594246B1 (en) | 2001-08-29 | 2009-09-22 | Vulcan Ventures, Inc. | System and method for focused navigation within a user interface |
WO2003025933A1 (en) * | 2001-09-10 | 2003-03-27 | Thomson Licensing S.A. | Method and apparatus for creating an indexed playlist in a digital audio data player |
DE10247929A1 (en) * | 2001-10-31 | 2003-05-28 | Ibm | Computer based system for recommending items to users faced with a bewildering choice, e.g. for selection of books, CDs, etc., whereby recommendations are based on recommendations of users with a similar user profile |
US7283992B2 (en) | 2001-11-30 | 2007-10-16 | Microsoft Corporation | Media agent to suggest contextually related media content |
US7139757B1 (en) * | 2001-12-21 | 2006-11-21 | The Procter & Gamble Company | Contextual relevance engine and knowledge delivery system |
US20030160770A1 (en) * | 2002-02-25 | 2003-08-28 | Koninklijke Philips Electronics N.V. | Method and apparatus for an adaptive audio-video program recommendation system |
US6941324B2 (en) * | 2002-03-21 | 2005-09-06 | Microsoft Corporation | Methods and systems for processing playlists |
US7096234B2 (en) * | 2002-03-21 | 2006-08-22 | Microsoft Corporation | Methods and systems for providing playlists |
US20030191753A1 (en) * | 2002-04-08 | 2003-10-09 | Michael Hoch | Filtering contents using a learning mechanism |
US20030237093A1 (en) * | 2002-06-19 | 2003-12-25 | Marsh David J. | Electronic program guide systems and methods for handling multiple users |
US20040003392A1 (en) * | 2002-06-26 | 2004-01-01 | Koninklijke Philips Electronics N.V. | Method and apparatus for finding and updating user group preferences in an entertainment system |
US20040034441A1 (en) * | 2002-08-16 | 2004-02-19 | Malcolm Eaton | System and method for creating an index of audio tracks |
WO2004017178A2 (en) | 2002-08-19 | 2004-02-26 | Choicestream | Statistical personalized recommendation system |
KR20050057289A (en) * | 2002-09-09 | 2005-06-16 | 코닌클리케 필립스 일렉트로닉스 엔.브이. | A data network, user terminal and method for providing recommendations |
US7081579B2 (en) * | 2002-10-03 | 2006-07-25 | Polyphonic Human Media Interface, S.L. | Method and system for music recommendation |
US7089248B1 (en) * | 2002-11-04 | 2006-08-08 | Adobe Systems Incorporated | Group file delivery including user-defined metadata |
US7260309B2 (en) * | 2002-11-07 | 2007-08-21 | Koninklijke Philips Electronics N.V. | Tracking of partially viewed shows so that they can be marked for deletion when a personal video recorder runs out of space |
JP4302967B2 (en) * | 2002-11-18 | 2009-07-29 | パイオニア株式会社 | Music search method, music search device, and music search program |
US7912920B2 (en) * | 2002-12-13 | 2011-03-22 | Stephen Loomis | Stream sourcing content delivery system |
US20040162830A1 (en) * | 2003-02-18 | 2004-08-19 | Sanika Shirwadkar | Method and system for searching location based information on a mobile device |
US20050021678A1 (en) * | 2003-03-11 | 2005-01-27 | Wegener Communications, Inc. | Satellite network control by internet with file upload and distribution |
US20040181517A1 (en) * | 2003-03-13 | 2004-09-16 | Younghee Jung | System and method for social interaction |
US7797343B2 (en) * | 2003-03-17 | 2010-09-14 | Xerox Corporation | System and method for providing usage metrics of digital content |
US8572104B2 (en) * | 2003-04-18 | 2013-10-29 | Kaleidescape, Inc. | Sales of collections excluding those already purchased |
US7120619B2 (en) | 2003-04-22 | 2006-10-10 | Microsoft Corporation | Relationship view |
US9406068B2 (en) * | 2003-04-25 | 2016-08-02 | Apple Inc. | Method and system for submitting media for network-based purchase and distribution |
US7627343B2 (en) * | 2003-04-25 | 2009-12-01 | Apple Inc. | Media player system |
EP1484693A1 (en) * | 2003-06-04 | 2004-12-08 | Sony NetServices GmbH | Content recommendation device with an arrangement engine |
US7685117B2 (en) * | 2003-06-05 | 2010-03-23 | Hayley Logistics Llc | Method for implementing search engine |
US8103540B2 (en) * | 2003-06-05 | 2012-01-24 | Hayley Logistics Llc | System and method for influencing recommender system |
US7177872B2 (en) * | 2003-06-23 | 2007-02-13 | Sony Corporation | Interface for media publishing |
US20050026559A1 (en) * | 2003-07-01 | 2005-02-03 | Robert Khedouri | Method and apparatus for wirelessly transferring music and other audio content to a car stereo or home stereo |
US20050038876A1 (en) * | 2003-08-15 | 2005-02-17 | Aloke Chaudhuri | System and method for instant match based on location, presence, personalization and communication |
JP4624354B2 (en) | 2003-09-10 | 2011-02-02 | ミュージックマッチ インコーポレイテッド | Music purchasing and playback system and method |
US20050060264A1 (en) * | 2003-09-15 | 2005-03-17 | Microsoft Corporation | System and method for creating and playing globally relevant playlists |
US20060008256A1 (en) * | 2003-10-01 | 2006-01-12 | Khedouri Robert K | Audio visual player apparatus and system and method of content distribution using the same |
US20130097302A9 (en) | 2003-10-01 | 2013-04-18 | Robert Khedouri | Audio visual player apparatus and system and method of content distribution using the same |
US7844548B2 (en) | 2003-10-15 | 2010-11-30 | Apple Inc. | Techniques and systems for electronic submission of media for network-based distribution |
ES2448400T3 (en) * | 2003-11-26 | 2014-03-13 | Sony Corporation | System to access content elements on a network |
US7606772B2 (en) | 2003-11-28 | 2009-10-20 | Manyworlds, Inc. | Adaptive social computing methods |
US7515873B2 (en) * | 2003-12-04 | 2009-04-07 | International Business Machines Corporation | Responding to recipient rated wirelessly broadcast electronic works |
JP2005197913A (en) * | 2004-01-06 | 2005-07-21 | Canon Inc | Apparatus and method for image processing |
JP2007524120A (en) | 2004-01-20 | 2007-08-23 | コーニンクレッカ フィリップス エレクトロニクス エヌ ヴィ | Integrated playlist generator |
US20060010167A1 (en) | 2004-01-21 | 2006-01-12 | Grace James R | Apparatus for navigation of multimedia content in a vehicle multimedia system |
WO2005072405A2 (en) | 2004-01-27 | 2005-08-11 | Transpose, Llc | Enabling recommendations and community by massively-distributed nearest-neighbor searching |
KR20050077874A (en) * | 2004-01-28 | 2005-08-04 | 삼성전자주식회사 | Method of supporting scalable video stream and device thereof |
US7594245B2 (en) | 2004-03-04 | 2009-09-22 | Sharp Laboratories Of America, Inc. | Networked video devices |
US8949899B2 (en) | 2005-03-04 | 2015-02-03 | Sharp Laboratories Of America, Inc. | Collaborative recommendation system |
US20050197961A1 (en) * | 2004-03-08 | 2005-09-08 | Miller Gregory P. | Preference engine for generating predictions on entertainment products of services |
US8788492B2 (en) * | 2004-03-15 | 2014-07-22 | Yahoo!, Inc. | Search system and methods with integration of user annotations from a trust network |
US7496623B2 (en) | 2004-04-23 | 2009-02-24 | Yahoo! Inc. | System and method for enhanced messaging including a displayable status indicator |
US20060265409A1 (en) | 2005-05-21 | 2006-11-23 | Apple Computer, Inc. | Acquisition, management and synchronization of podcasts |
US20050246391A1 (en) * | 2004-04-29 | 2005-11-03 | Gross John N | System & method for monitoring web pages |
US8028038B2 (en) * | 2004-05-05 | 2011-09-27 | Dryden Enterprises, Llc | Obtaining a playlist based on user profile matching |
US20050251455A1 (en) * | 2004-05-10 | 2005-11-10 | Boesen Peter V | Method and system for purchasing access to a recording |
US7689452B2 (en) * | 2004-05-17 | 2010-03-30 | Lam Chuck P | System and method for utilizing social networks for collaborative filtering |
US20050267944A1 (en) * | 2004-06-01 | 2005-12-01 | Microsoft Corporation | Email manager |
US20050286546A1 (en) * | 2004-06-21 | 2005-12-29 | Arianna Bassoli | Synchronized media streaming between distributed peers |
US20070043766A1 (en) | 2005-08-18 | 2007-02-22 | Nicholas Frank C | Method and System for the Creating, Managing, and Delivery of Feed Formatted Content |
US7890871B2 (en) | 2004-08-26 | 2011-02-15 | Redlands Technology, Llc | System and method for dynamically generating, maintaining, and growing an online social network |
US8099482B2 (en) | 2004-10-01 | 2012-01-17 | E-Cast Inc. | Prioritized content download for an entertainment device |
WO2006041928A1 (en) | 2004-10-06 | 2006-04-20 | Gracenote, Inc. | Network-based data collection, including local data attributes, enabling media management without requiring a network connection |
US20060083119A1 (en) | 2004-10-20 | 2006-04-20 | Hayes Thomas J | Scalable system and method for predicting hit music preferences for an individual |
US20060100924A1 (en) | 2004-11-05 | 2006-05-11 | Apple Computer, Inc. | Digital media file with embedded sales/marketing information |
US7511858B2 (en) | 2004-12-14 | 2009-03-31 | Xerox Corporation | Method for printing a visual printer calibration test pattern |
US20060143236A1 (en) | 2004-12-29 | 2006-06-29 | Bandwidth Productions Inc. | Interactive music playlist sharing system and methods |
EP1835455A1 (en) | 2005-01-05 | 2007-09-19 | Musicstrands, S.A.U. | System and method for recommending multimedia elements |
US8230456B2 (en) | 2005-01-05 | 2012-07-24 | Yahoo! Inc. | Framework for delivering a plurality of content and providing for interaction with the same in a television environment |
US7676753B2 (en) | 2005-01-07 | 2010-03-09 | At&T Intellectual Property I, L.P. | Methods, systems, devices and computer program products for collecting and sharing selected personal data |
US20070214182A1 (en) | 2005-01-15 | 2007-09-13 | Outland Research, Llc | Establishment-based media and messaging service |
JP4085284B2 (en) | 2005-03-24 | 2008-05-14 | ソニー株式会社 | Playback device |
US20060218187A1 (en) | 2005-03-25 | 2006-09-28 | Microsoft Corporation | Methods, systems, and computer-readable media for generating an ordered list of one or more media items |
EP1880363A4 (en) | 2005-03-31 | 2010-02-10 | Agency Science Tech & Res | Method and apparatus for image segmentation |
JP4670438B2 (en) | 2005-04-01 | 2011-04-13 | ソニー株式会社 | How to provide content and its playlist |
US8584171B2 (en) | 2005-05-06 | 2013-11-12 | Starz Entertainment Group Llc | Local context navigation system |
US20060259355A1 (en) | 2005-05-11 | 2006-11-16 | Farouki Karim M | Methods and systems for recommending media |
US7613736B2 (en) | 2005-05-23 | 2009-11-03 | Resonance Media Services, Inc. | Sharing music essence in a recommendation system |
WO2006126135A2 (en) | 2005-05-25 | 2006-11-30 | Koninklijke Philips Electronics N.V. | Play-list path interaction and visualisation |
US20060277098A1 (en) | 2005-06-06 | 2006-12-07 | Chung Tze D | Media playing system and method for delivering multimedia content with up-to-date and targeted marketing messages over a communication network |
US7890513B2 (en) | 2005-06-20 | 2011-02-15 | Microsoft Corporation | Providing community-based media item ratings to users |
US7756993B2 (en) | 2005-06-22 | 2010-07-13 | Sony Corporation | Reproducing apparatus, reproducing method, and reproducing program |
WO2007003045A1 (en) | 2005-06-30 | 2007-01-11 | Cascada Mobile Corp. | System and method of recommendation and provisioning of mobile device related content and applications |
US20070022437A1 (en) | 2005-07-19 | 2007-01-25 | David Gerken | Methods and apparatus for providing content and services coordinated with television content |
US7831913B2 (en) | 2005-07-29 | 2010-11-09 | Microsoft Corporation | Selection-based item tagging |
US7917148B2 (en) | 2005-09-23 | 2011-03-29 | Outland Research, Llc | Social musical media rating system and method for localized establishments |
US20070078714A1 (en) | 2005-09-30 | 2007-04-05 | Yahoo! Inc. | Automatically matching advertisements to media files |
US7793823B2 (en) | 2005-10-03 | 2010-09-14 | Realnetworks, Inc. | System and method for supplementing a radio playlist with local content |
US20070083553A1 (en) | 2005-10-12 | 2007-04-12 | Sten Minor | Apparatus and methods for handling multimedia content in an electronic device |
US8856118B2 (en) | 2005-10-31 | 2014-10-07 | Qwest Communications International Inc. | Creation and transmission of rich content media |
EP1783632B1 (en) | 2005-11-08 | 2012-12-19 | Intel Corporation | Content recommendation method with user feedback |
US20070118873A1 (en) | 2005-11-09 | 2007-05-24 | Bbnt Solutions Llc | Methods and apparatus for merging media content |
US9697231B2 (en) | 2005-11-09 | 2017-07-04 | Cxense Asa | Methods and apparatus for providing virtual media channels based on media search |
US20070118657A1 (en) | 2005-11-22 | 2007-05-24 | Motorola, Inc. | Method and system for sharing podcast information |
US8392528B2 (en) | 2005-11-22 | 2013-03-05 | Motorola Mobility Llc | Architecture for sharing podcast information |
US20070162502A1 (en) | 2005-12-29 | 2007-07-12 | United Video Properties, Inc. | Media library in an interactive media guidance application |
US20070244880A1 (en) | 2006-02-03 | 2007-10-18 | Francisco Martin | Mediaset generation system |
US7801500B2 (en) | 2006-04-11 | 2010-09-21 | Nokia Corporation | Electronic device and method therefor |
US20070265870A1 (en) | 2006-04-19 | 2007-11-15 | Nec Laboratories America, Inc. | Methods and systems for utilizing a time factor and/or asymmetric user behavior patterns for data analysis |
US7373054B2 (en) | 2006-05-17 | 2008-05-13 | Tyco Telecommunications (Us) Inc. | Optical cable shield layer connection |
US7680959B2 (en) | 2006-07-11 | 2010-03-16 | Napo Enterprises, Llc | P2P network for providing real time media recommendations |
US8572169B2 (en) | 2006-08-28 | 2013-10-29 | Myspace, Llc | System, apparatus and method for discovery of music within a social network |
US20080091771A1 (en) | 2006-10-13 | 2008-04-17 | Microsoft Corporation | Visual representations of profiles for community interaction |
-
2006
- 2006-07-11 US US11/484,130 patent/US7680959B2/en not_active Expired - Fee Related
-
2007
- 2007-05-14 CN CNA200780026157XA patent/CN101490664A/en active Pending
- 2007-05-14 WO PCT/US2007/068863 patent/WO2008008563A2/en active Application Filing
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20030014407A1 (en) * | 2001-04-11 | 2003-01-16 | Green Arrow Media, Inc. | System and method for making media recommendations |
US6757517B2 (en) * | 2001-05-10 | 2004-06-29 | Chin-Chi Chang | Apparatus and method for coordinated music playback in wireless ad-hoc networks |
US20060195521A1 (en) * | 2005-02-28 | 2006-08-31 | Yahoo! Inc. | System and method for creating a collaborative playlist |
US20060195789A1 (en) * | 2005-02-28 | 2006-08-31 | Yahoo! Inc. | Media engine user interface |
Non-Patent Citations (2)
Title |
---|
CHOICESTREAM: 'Review of Personalization Technologies: Collaborative Filtering vs. ChoicStream's Attributized Bayesian Choice Modelling' 15 July 2004, pages 1 - 9 * |
MYSTRANDS: 'MyStrands for Windows 0.7.3 Beta' 09 February 2006, pages 1 - 2 * |
Cited By (10)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
EP2131365A1 (en) * | 2008-06-03 | 2009-12-09 | Sony Corporation | Information processing device, information processing method and program |
US8914389B2 (en) | 2008-06-03 | 2014-12-16 | Sony Corporation | Information processing device, information processing method, and program |
US8924404B2 (en) | 2008-06-03 | 2014-12-30 | Sony Corporation | Information processing device, information processing method, and program |
US8996412B2 (en) | 2008-06-03 | 2015-03-31 | Sony Corporation | Information processing system and information processing method |
WO2010076625A1 (en) * | 2008-12-31 | 2010-07-08 | Nokia Corporation | Method, apparatus and computer program product for providing analysis and visualization of content items association |
TWI478558B (en) * | 2008-12-31 | 2015-03-21 | Nokia Corp | Method, apparatus and computer program product for providing analysis and visualization of content items association |
WO2011008145A1 (en) * | 2009-07-16 | 2011-01-20 | Telefonaktiebolaget Lm Ericsson (Publ) | Providing content by using a social network |
US8843463B2 (en) | 2009-07-16 | 2014-09-23 | Telefonaktiebolaget Lm Ericsson (Publ) | Providing content by using a social network |
US9424618B2 (en) | 2010-11-04 | 2016-08-23 | Digimarc Corporation | Smartphone-based methods and systems |
US11049094B2 (en) | 2014-02-11 | 2021-06-29 | Digimarc Corporation | Methods and arrangements for device to device communication |
Also Published As
Publication number | Publication date |
---|---|
US20080016205A1 (en) | 2008-01-17 |
WO2008008563A3 (en) | 2008-11-20 |
CN101490664A (en) | 2009-07-22 |
US7680959B2 (en) | 2010-03-16 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US7680959B2 (en) | P2P network for providing real time media recommendations | |
US9292179B2 (en) | System and method for identifying music content in a P2P real time recommendation network | |
US7970922B2 (en) | P2P real time media recommendations | |
US10469549B2 (en) | Device for participating in a network for sharing media consumption activity | |
US9003056B2 (en) | Maintaining a minimum level of real time media recommendations in the absence of online friends | |
US9448688B2 (en) | Visually indicating a replay status of media items on a media device | |
US8805831B2 (en) | Scoring and replaying media items | |
US8983950B2 (en) | Method and system for sorting media items in a playlist on a media device | |
US8874655B2 (en) | Matching participants in a P2P recommendation network loosely coupled to a subscription service | |
US9164994B2 (en) | Intelligent default weighting process for criteria utilized to score media content items | |
US9367808B1 (en) | System and method for creating thematic listening experiences in a networked peer media recommendation environment | |
US20090138457A1 (en) | Grouping and weighting media categories with time periods | |
JP2012502361A (en) | System and method for generating a playlist based on similarity data |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
WWE | Wipo information: entry into national phase |
Ref document number: 200780026157.X Country of ref document: CN |
|
121 | Ep: the epo has been informed by wipo that ep was designated in this application |
Ref document number: 07762167 Country of ref document: EP Kind code of ref document: A2 |
|
NENP | Non-entry into the national phase |
Ref country code: DE |
|
NENP | Non-entry into the national phase |
Ref country code: RU |
|
122 | Ep: pct application non-entry in european phase |
Ref document number: 07762167 Country of ref document: EP Kind code of ref document: A2 |