US20120072610A1 - P2p real time media recommendations - Google Patents
P2p real time media recommendations Download PDFInfo
- Publication number
- US20120072610A1 US20120072610A1 US13/077,035 US201113077035A US2012072610A1 US 20120072610 A1 US20120072610 A1 US 20120072610A1 US 201113077035 A US201113077035 A US 201113077035A US 2012072610 A1 US2012072610 A1 US 2012072610A1
- Authority
- US
- United States
- Prior art keywords
- user
- media
- recommendation
- media presentation
- presentation
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Abandoned
Links
- 238000000034 method Methods 0.000 claims abstract description 57
- 238000004891 communication Methods 0.000 claims description 16
- 230000004044 response Effects 0.000 claims description 11
- 230000008878 coupling Effects 0.000 claims description 6
- 238000010168 coupling process Methods 0.000 claims description 6
- 238000005859 coupling reaction Methods 0.000 claims description 6
- 230000000977 initiatory effect Effects 0.000 claims description 2
- 230000006870 function Effects 0.000 description 37
- 230000008569 process Effects 0.000 description 18
- 238000010586 diagram Methods 0.000 description 8
- 238000001914 filtration Methods 0.000 description 5
- 238000013459 approach Methods 0.000 description 4
- 230000001755 vocal effect Effects 0.000 description 3
- XEEYBQQBJWHFJM-UHFFFAOYSA-N Iron Chemical compound [Fe] XEEYBQQBJWHFJM-UHFFFAOYSA-N 0.000 description 2
- 230000009286 beneficial effect Effects 0.000 description 2
- 238000005516 engineering process Methods 0.000 description 2
- 238000012986 modification Methods 0.000 description 2
- 230000004048 modification Effects 0.000 description 2
- 238000012545 processing Methods 0.000 description 2
- 241001148659 Panicum dichotomiflorum Species 0.000 description 1
- 230000000694 effects Effects 0.000 description 1
- 229910052742 iron Inorganic materials 0.000 description 1
- 239000002184 metal Substances 0.000 description 1
- 229910052751 metal Inorganic materials 0.000 description 1
- 238000012544 monitoring process Methods 0.000 description 1
- 238000012552 review Methods 0.000 description 1
- 239000011435 rock Substances 0.000 description 1
- 235000019640 taste Nutrition 0.000 description 1
Images
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N7/00—Television systems
- H04N7/16—Analogue secrecy systems; Analogue subscription systems
- H04N7/173—Analogue secrecy systems; Analogue subscription systems with two-way working, e.g. subscriber sending a programme selection signal
- H04N7/17309—Transmission or handling of upstream communications
- H04N7/17318—Direct or substantially direct transmission and handling of requests
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06Q—INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
- G06Q30/00—Commerce
- G06Q30/02—Marketing; Price estimation or determination; Fundraising
- G06Q30/0201—Market modelling; Market analysis; Collecting market data
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06Q—INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
- G06Q30/00—Commerce
- G06Q30/02—Marketing; Price estimation or determination; Fundraising
- G06Q30/0282—Rating or review of business operators or products
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06Q—INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
- G06Q30/00—Commerce
- G06Q30/06—Buying, selling or leasing transactions
- G06Q30/0601—Electronic shopping [e-shopping]
- G06Q30/0631—Item recommendations
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L12/00—Data switching networks
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L12/00—Data switching networks
- H04L12/02—Details
- H04L12/16—Arrangements for providing special services to substations
- H04L12/18—Arrangements for providing special services to substations for broadcast or conference, e.g. multicast
- H04L12/1813—Arrangements for providing special services to substations for broadcast or conference, e.g. multicast for computer conferences, e.g. chat rooms
- H04L12/1822—Conducting the conference, e.g. admission, detection, selection or grouping of participants, correlating users to one or more conference sessions, prioritising transmission
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L12/00—Data switching networks
- H04L12/02—Details
- H04L12/16—Arrangements for providing special services to substations
- H04L12/18—Arrangements for providing special services to substations for broadcast or conference, e.g. multicast
- H04L12/1859—Arrangements for providing special services to substations for broadcast or conference, e.g. multicast adapted to provide push services, e.g. data channels
-
- 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
- H04L69/00—Network arrangements, protocols or services independent of the application payload and not provided for in the other groups of this subclass
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N21/00—Selective content distribution, e.g. interactive television or video on demand [VOD]
- H04N21/40—Client devices specifically adapted for the reception of or interaction with content, e.g. set-top-box [STB]; Operations thereof
- H04N21/45—Management operations performed by the client for facilitating the reception of or the interaction with the content or administrating data related to the end-user or to the client device itself, e.g. learning user preferences for recommending movies, resolving scheduling conflicts
- H04N21/466—Learning process for intelligent management, e.g. learning user preferences for recommending movies
- H04N21/4661—Deriving a combined profile for a plurality of end-users of the same client, e.g. for family members within a home
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N21/00—Selective content distribution, e.g. interactive television or video on demand [VOD]
- H04N21/40—Client devices specifically adapted for the reception of or interaction with content, e.g. set-top-box [STB]; Operations thereof
- H04N21/47—End-user applications
- H04N21/478—Supplemental services, e.g. displaying phone caller identification, shopping application
- H04N21/4788—Supplemental services, e.g. displaying phone caller identification, shopping application communicating with other users, e.g. chatting
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N21/00—Selective content distribution, e.g. interactive television or video on demand [VOD]
- H04N21/40—Client devices specifically adapted for the reception of or interaction with content, e.g. set-top-box [STB]; Operations thereof
- H04N21/47—End-user applications
- H04N21/482—End-user interface for program selection
- H04N21/4825—End-user interface for program selection using a list of items to be played back in a given order, e.g. playlists
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N21/00—Selective content distribution, e.g. interactive television or video on demand [VOD]
- H04N21/40—Client devices specifically adapted for the reception of or interaction with content, e.g. set-top-box [STB]; Operations thereof
- H04N21/47—End-user applications
- H04N21/482—End-user interface for program selection
- H04N21/4826—End-user interface for program selection using recommendation lists, e.g. of programs or channels sorted out according to their score
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N21/00—Selective content distribution, e.g. interactive television or video on demand [VOD]
- H04N21/80—Generation or processing of content or additional data by content creator independently of the distribution process; Content per se
- H04N21/81—Monomedia components thereof
- H04N21/8106—Monomedia components thereof involving special audio data, e.g. different tracks for different languages
- H04N21/8113—Monomedia components thereof involving special audio data, e.g. different tracks for different languages comprising music, e.g. song in MP3 format
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N7/00—Television systems
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06Q—INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
- G06Q30/00—Commerce
- G06Q30/02—Marketing; Price estimation or determination; Fundraising
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L12/00—Data switching networks
- H04L12/28—Data switching networks characterised by path configuration, e.g. LAN [Local Area Networks] or WAN [Wide Area Networks]
- H04L12/2803—Home automation networks
Definitions
- the present disclosure relates to media recommendations, such as music or video recommendations, and more specifically relates to peer-to-peer (P2P) real time media recommendations.
- P2P peer-to-peer
- the present disclosure relates to systems and methods for providing peer-to-peer (P2P) media recommendations in real-time, or substantially real-time.
- the media recommendations may be, for example, song recommendations or video recommendations.
- a central streaming media service operates to stream media presentations to user devices of users registered with the central streaming media service. For each user desiring to send and receive media recommendations, each time a media presentation is streamed to and played by a user device of the user, the central streaming media service provides a media recommendation identifying the media presentation to one or more other users associated with the user.
- the central streaming media service provides media recommendations to the user from one or more other users in response to corresponding media presentations being streamed to and played by the one or more other users.
- the central streaming media service automatically selects a next media presentation to be streamed to and played by the user device of the user from a group of media presentations including the media presentations identified by the media recommendations provided to the user. Once the next media presentation is selected, the central streaming media service begins streaming the selected media presentation to the user device of the user.
- FIG. 1 illustrates a system incorporating a peer-to-peer (P2P) network for real time media recommendations according to one embodiment of the present disclosure
- FIG. 2 is a flow chart illustrating the operation of the peer devices of FIG. 1 according to one embodiment of the present disclosure
- FIG. 3 illustrates the operation of the system of FIG. 1 according to one embodiment of the present disclosure
- FIG. 4 illustrates a system incorporating a P2P network for real time media recommendations according to a second embodiment of the present disclosure
- FIG. 5 illustrates the operation of the system of FIG. 4 according to one embodiment of the present disclosure
- FIG. 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 disclosure
- FIG. 7 illustrates an exemplary graphical user interface (GUI) for configuring user preferences according to one embodiment of the present disclosure
- FIG. 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 disclosure
- FIG. 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 disclosure
- FIG. 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 disclosure
- FIG. 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 disclosure
- FIG. 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 disclosure
- FIG. 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 disclosure
- FIG. 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 disclosure
- FIG. 15 is a block diagram of a peer device of FIG. 1 according to one embodiment of the present disclosure.
- FIG. 16 is a block diagram of a peer device of FIG. 4 according to one embodiment of the present disclosure.
- FIG. 17 illustrates a system for providing P2P media recommendations according to another embodiment of the present disclosure
- FIG. 18 is a flow chart illustrating the operation of a streaming and recommendation function of the central media service of FIG. 17 according to one embodiment of the present disclosure
- FIG. 19 is a more detailed flow chart illustrating the operation of the streaming and recommendation function of the central media service of FIG. 17 according to one embodiment of the present disclosure
- FIG. 20 is a block diagram of the central server of FIG. 17 according to one embodiment of the present disclosure.
- FIG. 21 is a block diagram of one of the user devices of FIG. 17 according to one embodiment of the present disclosure.
- FIG. 1 illustrates a system 10 incorporating a P2P network for providing real time song recommendations according to one embodiment of the present disclosure.
- 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.
- a network 20 which may be a distributed public network such as, but not limited to, the Internet.
- the present disclosure 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 ( FIG. 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.
- RAM Random-Access Memory
- 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 disclosure 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 disclosure.
- 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 ).
- the song may be a song from the music collection 26 selected by the user of the peer device 12 .
- 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 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 ).
- 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 .
- 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 disclosure.
- 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 ).
- FIG. 4 illustrates the system 10 ′ according to second embodiment of the present disclosure.
- 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 FIG. 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.
- 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 .
- 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. Then, based on the scores, the recommendation engine 24 ′ selects the next song to play.
- 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 ). Note that while FIG.
- FIG. 5 illustrates two separate song recommendation files sent from the peer device 12 ′ to the proxy server 40 , the present disclosure is not limited thereto.
- One of ordinary skill in the art will appreciate that a single song recommendation file may be provided from the peer device 12 ′ to the proxy server 40 .
- the proxy server 40 may then forward the song recommendation file to the peer devices 14 ′ and 16 ′.
- FIG. 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 disclosure.
- 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 FIG.
- 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 FIG. 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. Note that the button 66 has the same effect as the radio button 48 of FIG. 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.
- the users are assigned weights based on their respective positions in an alphabetically sorted list of users.
- a GUI 92 FIG. 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 FIG. 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. If the radio button 76 is selected, a GUI 100 ( FIG. 10 ) enabling the user to customize the weights assigned to a number of genres. An exemplary embodiment of the GUI 100 is illustrated in FIG. 10 , where sliding bars 102 - 116 enable the user to assign customized weights to corresponding genres.
- 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 ′.
- 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 GUI 118 ( FIG. 11 ) enabling the user to customize the weights assigned to a number of decades. An exemplary embodiment of the GUI 118 is illustrated in FIG. 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 FIG. 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 FIG. 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 MIN ⁇ ( 10 ⁇ NRFW , LASTREPEAT_INDEX ) 10 ⁇ NRFW .
- FIG. 13 is an exemplary GUI 142 showing a playlist for the peer device 12 ′ including both local and recommended songs according to the present disclosure.
- a similar list may be maintained internally by the peer device 12 of FIG. 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 FIG. 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 ( FIG. 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 ( FIG. 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.
- FIG. 16 is a block diagram of an exemplary embodiment of the peer device 12 ′ of FIG. 4 .
- 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 ′ ( FIG. 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 ( FIG. 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.
- FIG. 17 illustrates a system 166 for providing P2P media recommendations according to another embodiment of the present disclosure.
- the system 166 includes a central server 168 and a number of user devices 170 - 1 through 170 -N having associated users 172 - 1 through 172 -N.
- the central server 168 and the user devices 170 - 1 through 170 -N are connected via a network 174 such as, for example, the Internet.
- the network 174 may be any type of Wide Area Network (WAN), Local Area Network (LAN), or the like, or any combination thereof.
- the network 174 may include wired components, wireless components, or a combination thereof.
- WAN Wide Area Network
- LAN Local Area Network
- the system 166 may include multiple central servers 168 for purposes of load balancing and redundancy.
- the central server 168 includes a streaming media service 176 , a user account repository 178 , and a music repository 180 .
- the streaming media service 176 may be implemented in software, hardware, or a combination thereof.
- the streaming media service 176 provides streaming of songs from the music repository 180 to the user devices 170 - 1 through 170 -N.
- the streaming media service 176 exchanges P2P song recommendations between the users 172 - 1 through 172 -N in a manner similar to that discussed above.
- the discussion herein focuses on songs and song recommendations, the present disclosure is not limited thereto. Other types of media presentations may also be used.
- the user account repository 178 includes a user account for each of the users 172 - 1 through 172 -N.
- the user account of the user 172 - 1 includes a list of friends, or contacts, of the user 172 - 1 .
- the “friends” of the user 172 - 1 are other users from the users 172 - 2 through 172 -N that have been identified as friends or contacts of the user 172 - 1 .
- Any appropriate manual or automated technique may be used. For example, an invitation process may be used.
- a profile matching process may be used to select other users having user profiles (e.g., demographics, user preferences, play histories, or the like) similar to that of the user 172 - 1 as friends of the user 172 - 1 .
- the user account of the user 172 - 1 includes user preferences of the user 172 - 1 .
- the user preferences of the user 172 - 1 include weights assigned to each of a number of categories (e.g., genre, decade, recommending user, availability, or the like) and, for each category, weights assigned to a number of attributes within that category (e.g., for the genre category, Rock, Metal, Alternative, Country, Bluegrass, jazz, or the like).
- the user account of the user 172 - 1 may also include a user profile of the user 172 - 1 .
- the user profile may include demographic information describing the user 172 - 1 , a play history of the user 172 - 1 , information identifying media items in a media collection of the user 172 - 1 stored on the user device 170 - 1 , statistical information describing the media items in the media collection of the user 172 - 1 , or the like.
- the music repository 180 includes a number of songs available for streaming to the user devices 170 - 1 through 170 -N.
- the music repository 180 includes metadata describing each of the songs.
- the metadata for a song may include, for example, a title of the song, an artist of the song, an album on which the song was released, a date of release, a genre of the song, or the like.
- the streaming media service 176 includes a number of streaming and recommendation functions 182 - 1 through 182 -N corresponding to the users 172 - 1 through 172 -N.
- the streaming and recommendation function 182 - 1 serves the user 172 - 1
- the streaming and recommendation function 182 - 2 serves the user 172 - 2
- the streaming and recommendation functions 182 - 1 through 182 -N are exemplary and are not intended to limit the scope of the present disclosure. Numerous alternative embodiments of the streaming media service 176 will be apparent to one having ordinary skill in the art upon reading this disclosure.
- the streaming and recommendation functions 182 - 1 through 182 -N operate to stream songs to the corresponding user devices 170 - 1 through 170 -N.
- the streaming and recommendation functions 182 - 1 through 182 -N send, receive, and process song recommendations as discussed below.
- Each of the user devices 170 - 1 through 170 -N may be, for example, a personal computer, a portable media player having network capabilities, a mobile smart phone having media playback capabilities, a set-top box, a gaming console having network and media playback capabilities, or the like.
- the user devices 170 - 1 through 170 -N include streaming clients 184 - 1 through 184 -N, respectively.
- the streaming clients 184 - 1 through 184 -N may be implemented in software, hardware, or a combination thereof. In general, the streaming media clients 184 - 1 through 184 -N provide playback of streaming songs received from the central server 168 .
- streaming media clients 184 - 1 through 184 -N enable the users 172 - 1 through 172 -N to take desired actions during playback such as pausing, fast-forwarding, rewinding, skipping from one song to another, or the like.
- FIG. 18 is a flow chart illustrating the operation of the streaming and recommendation function 182 - 1 according to one embodiment of the present disclosure. This discussion is equally applicable to the other streaming and recommendation functions 182 - 2 through 182 -N.
- the streaming and recommendation function 182 - 1 identifies friends of the user 172 - 1 (step 600 ).
- the friends of the user 172 - 1 may be manually identified by the user 172 - 1 using, for example, an invitation process. Alternatively, the friends of the user 172 - 1 may be identified via an automatic process.
- the streaming and recommendation function 182 - 1 may identify other users having user profiles (e.g., demographic information) and/or user preferences that match that of the user 172 - 1 to at least a threshold degree as friends for the user 172 - 1 .
- user profiles e.g., demographic information
- user preferences e.g., user preferences that match that of the user 172 - 1 to at least a threshold degree as friends for the user 172 - 1 .
- the streaming and recommendation function 182 - 1 streams a song to the user device 170 - 1 of the user 172 - 1 (step 602 ).
- the streaming and recommendation function 182 - 1 maintains a list of songs, such as a playlist, for the user 172 - 1 .
- the list of songs includes songs identified by song recommendations received from other users identified as friends of the user 172 - 1 .
- the list of songs may include one or more songs selected by the user 172 - 1 .
- the list may include one or more songs selected or recommended by the streaming media service 176 such as, for example, the Top 10 songs from the Billboard charts, one or more of the songs most played by the users 172 - 1 through 172 -N, or the like.
- the user 172 - 1 may select a song from the list to play.
- the streaming and recommendation function 182 - 1 begins streaming the selected song to the user device 170 - 1 of the user 172 - 1 for playback.
- the streaming and recommendation function 182 - 1 sends a song recommendation identifying the song to one or more other users identified as friends of the user 172 - 1 (step 604 ).
- the song recommendation includes information identifying the song such as, for example, a GUID of the song, a reference (e.g., URL) to the song in the music repository 180 , a title of the song, or the like.
- the streaming and recommendation function 182 - 1 may send the recommendation substantially immediately and automatically upon initiation of playback of the song, upon completion of playback of a threshold amount of the song, or after completion of playback of the song.
- the streaming and recommendation function 182 - 1 in order to send the song recommendation to the other users identified as friends of the user 172 - 1 , sends the song recommendation to corresponding ones of the streaming and recommendation functions 182 - 2 through 182 -N.
- the streaming and recommendation function 182 - 1 stores the song recommendations in corresponding data structures maintained for the users identified as friends of the user 172 - 1 . For example, if the user 172 - 2 is identified as a friend of the user 172 - 1 , the song recommendation may be stored in a list of received song recommendations maintained for the user 172 - 2 in, for example, the user account of the user 172 - 2 . This list of received song recommendations may thereafter be processed by the streaming and recommendation function 182 - 2 associated with the user 172 - 2 .
- the streaming and recommendation function 182 - 1 receives one or more song recommendations from one or more other users identified as friends of the user 172 - 1 (step 606 ). More specifically, song recommendations are automatically sent to the user 172 - 1 in response to playback of corresponding songs by the users identified as friends of the user 172 - 1 . Again, the song recommendations may be provided directly to the streaming and recommendation function 182 - 1 or stored in a data structure associated with the user 172 - 1 . After receiving the song recommendations, the streaming and recommendation function 182 - 1 may optionally filter the song recommendations based on, for example, user, genre, artist, title, album, lyrics, date of release, or the like (step 608 ).
- the streaming and recommendation function 182 - 1 then automatically selects a next song to play from a group of songs including the songs identified by the song recommendations received in step 606 , or the song recommendations that were not filtered or removed if the filtering step 608 is performed (step 610 ).
- the group of songs may be only the songs identified by the song recommendations received in step 606 or the song recommendations resulting from the filtering step 608 if filtering is performed.
- the group of songs includes the songs identified by the song recommendations received in step 606 or resulting from the filtering step 608 and one or more of the following: one or more songs identified by previous song recommendations sent to the user 172 - 1 , one or more songs identified by the user 172 - 1 , one or more songs selected or recommended by the media service 176 , or the like.
- the group of songs is maintained as a list of songs such as, for example, a play list. Note that if previous song recommendations are considered, previous song recommendations may expire, and therefore no longer be considered, after a defined amount of time has lapsed since the song recommendations were received.
- 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 the user 172 - 1 has access rights to the corresponding song.
- availability may refer to whether songs are available to the user 176 - 1 for free or for some fee (e.g., purchase fee, subscription fee, or the like).
- the next song to play is selected by first scoring the songs in the group of songs associated with the user 172 - 1 based on the user preferences of the user 172 - 1 and then selecting the song having the highest or most preferred score as the next song to play.
- the streaming media service 176 obtains the next song from the music repository 180 (step 612 ).
- the process returns to step 602 such that the streaming and recommendation function 182 - 1 begins streaming the next song to the user device 170 - 1 of the user 172 - 1 . Steps 602 through 612 are repeated until the playback session is terminated.
- FIG. 19 is a more detailed flow chart illustrating the operation of the streaming and recommendation function 182 - 1 according to an exemplary embodiment of the present disclosure.
- a playlist for the user 172 - 1 is initialized (step 700 ).
- the playlist may be initialized with one or more songs selected by the user 172 - 1 , one or more songs selected or recommended by the streaming media service 176 , one or more songs previously recommended to the user 172 - 1 by other users identified as friends of the user 172 - 1 , or the like.
- the songs in the playlist are scored based on the user preferences of the user 172 - 1 , and the playlist is sorted based on the scores of the songs.
- the playlist may be initialized as an empty playlist.
- the streaming and recommendation function 182 - 1 begins streaming a select song from the playlist to the user device 170 - 1 of the user 172 - 1 for playback (step 702 ).
- the select song may be a first song in the playlist, which is the song having the highest or most preferred score.
- the streaming and recommendation function 182 - 1 determines whether it is time to select a next song to stream to the user device 170 - 1 of the user 172 - 1 for playback (step 704 ).
- a determination that it is time to select the next song to stream to the user device 170 - 1 may be made when, for example, a threshold amount of the current song has been streamed to and/or played by the user device 170 - 1 or when the user 172 - 1 chooses to skip to the next song.
- the streaming and recommendation function 182 - 1 determines whether a song recommendation has been received on behalf of the user 172 - 1 (step 706 ). Note that while receipt and processing of a single song recommendation is discussed, multiple song recommendations may be received and processed at this time. Again, the song recommendations provided to the user 172 - 1 from other users identified as friends of the user 172 - 1 may be sent directly to the streaming and recommendation function 182 - 1 or stored in a data structure associated with the user 172 - 1 such as, for example, the user account of the user 172 - 1 . If a song recommendation has not been received, then the process returns to step 702 such that the current song is continued to be streamed to the user device 170 - 1 of the user 172 - 1 and the process is repeated.
- the streaming and recommendation function 182 - 1 optionally filters the song recommendation based on one or more filtering criteria such as, for example, artist, genre, date or decade of release, recommending user, or the like (step 708 ). If the song recommendation is to be filtered, then the streaming and recommendation function 182 - 1 disregards or discards the song recommendation (step 710 ), and the process then returns to step 702 and is repeated. If the song recommendation is not to be filtered, then the streaming and recommendation function 182 - 1 scores the song identified by the song recommendation based on the user preferences of the user 172 - 1 (step 712 ).
- the song recommendation function then updates the playlist of the user 172 - 1 to include an entry for the song identified by the song recommendation (step 714 ).
- the song identified by the song recommendation may be inserted into the playlist at a position determined based on the score of the song such that the playlist remains sorted based on the scores of the media items in the playlist.
- the song identified by the song recommendation may be inserted at any arbitrary location within the playlist.
- the playlist may then be sorted based on score. At this point, the process returns to step 702 and streaming of the current song is continued.
- access rights to the song may be automatically obtained for the user 172 - 1 by, for example, charging a corresponding fee to an account of the user 172 - 1 .
- a preview of the song, rather than the song may be added to the playlist.
- the streaming and recommendation function 182 - 1 sends a song recommendation identifying the song to one or more other users identified as friends of the user 172 - 1 (step 716 ). Then, a no-repeat-factor (NRF) is applied to the song in order to decrease the score of the song as discussed above (step 718 ). The playlist is then updated (step 720 ). More specifically, in this embodiment, the no-repeat-factor and thus the scores of songs previously played are updated.
- NRF no-repeat-factor
- the playlist is then resorted based on the updated scores of the song being played or just completed as well as the updated scores of songs previously played.
- the streaming and recommendation function 182 - 1 then automatically selects a song from the playlist having the highest or most preferential score as the next song to play (step 722 ). The process then returns to step 702 such that streaming of the next song begins, and the process is repeated.
- FIG. 20 is a block diagram of the central server 168 of FIG. 17 according to one embodiment of the present disclosure.
- the central server 168 includes a control system 186 having associated memory 188 .
- the streaming media service 176 is implemented in software and stored in the memory 188 .
- the central server 168 also includes one or more storage units 190 such as, for example, one or more hard disk drives.
- the user account repository 178 and the music repository 180 are stored in the one or more storage units 190 .
- the present disclosure is not limited thereto.
- the central server 168 also includes a communication interface 192 communicatively coupling the central server 168 to the network 174 ( FIG. 17 ).
- the central server 168 may include a user interface 194 , which may include components such as, for example, a display, one or more user input devices, or the like.
- FIG. 21 is a block diagram of the user device 170 - 1 of FIG. 17 according to one embodiment of the present disclosure.
- the user device 170 - 1 includes a control system 196 having associated memory 198 .
- the streaming client 184 - 1 is implemented in software and stored in the memory 198 .
- the streaming media client 184 - 1 may be implemented in software, hardware, or a combination thereof.
- the user device 170 - 1 also includes a communication interface 200 communicatively coupling the user device 170 - 1 to the network 174 ( FIG. 17 ).
- the user device 170 - 1 includes a user interface 202 , which may include components such as, for example, a display, one or more speakers, one or more user input devices, or the like.
- FIG. 1 illustrates the peer devices 12 - 16 forming the P2P network via local wireless communication
- FIG. 4 illustrates the peer devices 12 ′- 16 ′ forming the P2P network via the network 20
- the present disclosure 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
- the peer device 12 may receive recommendations from both the peer devices 14 , 16 ( FIG. 1 ) via local wireless communication and from the peer devices 14 ′- 16 ′ ( FIG. 4 ) via the network 20 .
- the present disclosure is not limited thereto.
- the present disclosure is equally applicable to recommendations for other types of media presentations such as, for example, other types of audio presentations such as podcasts, audio books, or audio programs; video presentations such as movies, television programs, or user-generated video clips; or the like.
- the present disclosure may additionally or alternatively provide movie recommendations, television program recommendations, or the like.
Landscapes
- Engineering & Computer Science (AREA)
- Signal Processing (AREA)
- Business, Economics & Management (AREA)
- Multimedia (AREA)
- Accounting & Taxation (AREA)
- Finance (AREA)
- Development Economics (AREA)
- Strategic Management (AREA)
- Computer Networks & Wireless Communication (AREA)
- Entrepreneurship & Innovation (AREA)
- Physics & Mathematics (AREA)
- Marketing (AREA)
- Economics (AREA)
- General Business, Economics & Management (AREA)
- General Physics & Mathematics (AREA)
- Theoretical Computer Science (AREA)
- Game Theory and Decision Science (AREA)
- General Engineering & Computer Science (AREA)
- Human Computer Interaction (AREA)
- Databases & Information Systems (AREA)
- Data Mining & Analysis (AREA)
- Software Systems (AREA)
- Computer Security & Cryptography (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Abstract
Description
- This application is a continuation of U.S. patent application Ser. No. 12/195,628, filed on Aug. 21, 2008, entitled P2P REAL TIME MEDIA RECOMMENDATIONS, which is a continuation-in-part of U.S. patent application Ser. No. 11/484,130, filed on Jul. 11, 2006, entitled P2P NETWORK FOR PROVIDING REAL TIME MEDIA RECOMMENDATIONS, now U.S. Pat. No. 7,680,959, the disclosures of both are hereby incorporated herein by reference in their entireties.
- The present disclosure relates to media recommendations, such as music or video recommendations, and more specifically relates to peer-to-peer (P2P) real time media recommendations.
- 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 Music Store® service, enable users to legally purchase and download music. Other services such as Yahoo!® Music Unlimited and RealNetwork's Rhapsody provide access to millions of songs for a monthly subscription fee. As a result, music has become much more accessible to listeners worldwide. However, the increased accessibility of music has only heightened a long-standing problem for the music industry, which is namely the issue of linking audiophiles with new music that matches their listening preferences.
- Many companies, technologies, and approaches have emerged to address this issue of music recommendation. Some companies have taken an analytical approach. They review various attributes of a song, such as melody, harmony, lyrics, orchestration, vocal character, and the like, and assign a rating to each attribute. The ratings for each attribute are then assembled to create a holistic classification for the song that is then used by a recommendation engine. The recommendation engine typically requires that the user first identify a song that he or she likes. The recommendation engine then suggests other songs with similar attributions. Companies using this type of approach include Pandora, SoundFlavor, MusicIP, and MongoMusic (purchased by Microsoft in 2000).
- Other companies take a communal approach. They make recommendations based on the collective wisdom of a group of users with similar musical tastes. These solutions first profile the listening habits of a particular user and then search similar profiles of other users to determine recommendations. Profiles are generally created in a variety of ways such as looking at a user's complete collection, the playcounts of their songs, their favorite playlists, and the like. Companies using this technology include Last.fm, Music Strands, WebJay, Mercora, betterPropaganda, Loomia, eMusic, musicmatch, genielab, upto11, Napster, and iTunes with its celebrity playlists.
- 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.
- The present disclosure relates to systems and methods for providing peer-to-peer (P2P) media recommendations in real-time, or substantially real-time. The media recommendations may be, for example, song recommendations or video recommendations. In one embodiment, a central streaming media service operates to stream media presentations to user devices of users registered with the central streaming media service. For each user desiring to send and receive media recommendations, each time a media presentation is streamed to and played by a user device of the user, the central streaming media service provides a media recommendation identifying the media presentation to one or more other users associated with the user. In addition, while the media presentation is being streamed to and played by the user device of the user, the central streaming media service provides media recommendations to the user from one or more other users in response to corresponding media presentations being streamed to and played by the one or more other users. Once streaming and playback of the media presentation is complete or substantially complete, the central streaming media service automatically selects a next media presentation to be streamed to and played by the user device of the user from a group of media presentations including the media presentations identified by the media recommendations provided to the user. Once the next media presentation is selected, the central streaming media service begins streaming the selected media presentation to the user device of the user.
- Those skilled in the art will appreciate the scope of the present disclosure and realize additional aspects thereof after reading the following detailed description of the preferred embodiments in association with the accompanying drawing figures.
- The accompanying drawing figures incorporated in and forming a part of this specification illustrate several aspects of the disclosure, and together with the description serve to explain the principles of the disclosure.
-
FIG. 1 illustrates a system incorporating a peer-to-peer (P2P) network for real time media recommendations according to one embodiment of the present disclosure; -
FIG. 2 is a flow chart illustrating the operation of the peer devices ofFIG. 1 according to one embodiment of the present disclosure; -
FIG. 3 illustrates the operation of the system ofFIG. 1 according to one embodiment of the present disclosure; -
FIG. 4 illustrates a system incorporating a P2P network for real time media recommendations according to a second embodiment of the present disclosure; -
FIG. 5 illustrates the operation of the system ofFIG. 4 according to one embodiment of the present disclosure; -
FIG. 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 disclosure; -
FIG. 7 illustrates an exemplary graphical user interface (GUI) for configuring user preferences according to one embodiment of the present disclosure; -
FIG. 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 disclosure; -
FIG. 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 disclosure; -
FIG. 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 disclosure; -
FIG. 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 disclosure; -
FIG. 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 disclosure; -
FIG. 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 disclosure; -
FIG. 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 disclosure; -
FIG. 15 is a block diagram of a peer device ofFIG. 1 according to one embodiment of the present disclosure; -
FIG. 16 is a block diagram of a peer device ofFIG. 4 according to one embodiment of the present disclosure; -
FIG. 17 illustrates a system for providing P2P media recommendations according to another embodiment of the present disclosure; -
FIG. 18 is a flow chart illustrating the operation of a streaming and recommendation function of the central media service ofFIG. 17 according to one embodiment of the present disclosure; -
FIG. 19 is a more detailed flow chart illustrating the operation of the streaming and recommendation function of the central media service ofFIG. 17 according to one embodiment of the present disclosure; -
FIG. 20 is a block diagram of the central server ofFIG. 17 according to one embodiment of the present disclosure; and -
FIG. 21 is a block diagram of one of the user devices ofFIG. 17 according to one embodiment of the present disclosure. - The embodiments set forth below represent the necessary information to enable those skilled in the art to practice the embodiments and illustrate the best mode of practicing the embodiments. Upon reading the following description in light of the accompanying drawing figures, those skilled in the art will understand the concepts of the disclosure 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.
-
FIG. 1 illustrates asystem 10 incorporating a P2P network for providing real time song recommendations according to one embodiment of the present disclosure. Note that while the discussion herein focuses on song recommendations for clarity and ease of discussion, the present disclosure 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, thesystem 10 includes a number of peer devices 12-16 which are optionally connected to asubscription music service 18 via anetwork 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 disclosure may be used with any number of two or more peer devices. - 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 (
FIG. 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 amusic player 22, arecommendation engine 24, and amusic collection 26. Themusic player 22 may be implemented in software, hardware, or a combination of hardware and software. In general, themusic player 22 operates to play songs from themusic collection 26. Therecommendation engine 24 may be implemented in software, hardware, or a combination of hardware and software. Therecommendation engine 24 may alternatively be incorporated into themusic player 22. Themusic 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. - In operation, each time a song is played by the
music player 22, therecommendation engine 24 operates to provide a recommendation identifying the song to theother peer devices recommendation engine 24 operates to programmatically, or automatically, select a next song to be played by themusic player 22 based on the recommendations received from theother peer device other peer devices peer device 12. - Like the
peer device 12, thepeer device 14 includes amusic player 28, arecommendation engine 30, and amusic collection 32, and thepeer device 16 includes amusic player 34, arecommendation engine 36, and amusic collection 38. - The
subscription music service 18 may be a service hosted by a server connected to thenetwork 20. Exemplary subscription based music services that may be modified to operate according to the present disclosure are Yahoo! Music Unlimited digital music service and RealNetwork's Rhapsody digital music service. -
FIG. 2 illustrates the operation of thepeer device 12 according to one embodiment of the present disclosure. However, the following discussion is equally applicable to theother peer devices peer device 12 is large. As another example, thepeer device 12 may maintain a “buddy list” identifying friends of the user of thepeer device 12, where thepeer 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 thepeer device 12. - Alternatively, the
peer device 12 may establish an ad-hoc P2P network with theother peer devices other peer devices peer device 12 and automatically establishing the P2P network with at least a subset of the detectedpeer devices peer device 12 may compare user profiles of the users of theother peer devices peer device 12 and determine whether to permit theother peer devices - 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 theother peer devices music collection 26 selected by the user of thepeer device 12. Prior to, during, or after playback of the song, therecommendation engine 24 sends a recommendation identifying the song to theother 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 thesubscription 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 thesubscription 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. - 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 thepeer device 16 in response to a recommendation from thepeer device 14, the list of recommenders may include information identifying the user of thepeer device 14 or thepeer device 14 and a timestamp identifying a time at which the song was played or recommended by thepeer device 14, and information identifying the user of thepeer device 16 or thepeer device 16 and a timestamp identifying a time at which the song was played or recommended by thepeer device 16. Likewise, if thepeer device 12 then selects the song for playback, information identifying the user of thepeer device 12 or thepeer device 12 and a corresponding timestamp may be appended to the list of recommenders. - The
peer device 12, and more specifically therecommendation engine 24, also receives recommendations from theother peer devices 14, 16 (step 206). The recommendations from theother peer devices other peer devices recommendation engine 24 may filter the recommendations from theother peer devices - The
recommendation engine 24 then automatically selects a next song to play from the songs identified by the recommendations received from theother peer devices music collection 26 based on user preferences (step 210). In one embodiment, therecommendation engine 24 considers only those songs identified by recommendations received since a previous song selection. For example, if the song played instep 202 was a song selected by therecommendation engine 24 based on prior recommendations from thepeer devices recommendation engine 24 may only consider the songs identified in new recommendations received after the song was selected for playback instep 202 and may not consider the songs identified in the prior recommendations. This may be beneficial if the complexity of therecommendation engine 24 is desired to be minimal such as when thepeer device 12 is a mobile terminal or the like having limited processing and memory capabilities. In another embodiment, therecommendation engine 24 may consider all previously received recommendations, where the recommendations may expire after a predetermined or user defined period of time. - 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 thesubscription music service 18; available for download, and optionally purchase, from an e-commerce service or one of theother peer devices peer device 12 or obtained from a central server via thenetwork 20. If thepeer 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 thepeer device 12 during a synchronization process. The user preferences may alternatively be automatically provided or suggested by therecommendation engine 24 based on a play history of thepeer device 12. In the preferred embodiment discussed below, the songs identified by the recommendations from theother peer devices music collection 26 are scored or ranked based on the user preferences. Then, based on the scores, therecommendation engine 24 selects the next song to play. - 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 themusic collection 26, thepeer device 12 obtains the selected song from themusic collection 26. If the selected song is not part of themusic collection 26, therecommendation engine 24 obtains the selected song from thesubscription music service 18, an e-commerce service, or one of theother peer devices 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 disclosure. The illustrated process is the same as discussed above with respect toFIG. 2 . As such, the details will not be repeated. In general, thepeer devices peer device 12 may optionally filter the recommendations from thepeer devices 14, 16 (step 308). Therecommendation engine 24 of thepeer device 12 then automatically selects the next song to play from the songs identified by the recommendations, optionally songs identified by prior recommendations from thepeer devices music collection 26 based on user preferences of the user of the peer device 12 (step 310). Thepeer device 12 then obtains and plays the selected song (steps 312-314). Either prior to, during, or after playback of the selected song, therecommendation engine 24 of thepeer device 12 provides a recommendation identifying the selected song to theother peer devices 14, 16 (step 316-318). -
FIG. 4 illustrates thesystem 10′ according to second embodiment of the present disclosure. In this embodiment, thepeer devices 12′-16′ form a P2P network via thenetwork 20 and aproxy server 40. Thepeer devices 12′-16′ may be any device having a connection to thenetwork 20 and audio playback capabilities. For example, thepeer 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 thenetwork 20. As discussed above with respect to thepeer device 12, thepeer device 12′ includesmusic player 22′, arecommendation engine 24′, and amusic collection 26′. Likewise, thepeer device 14′ includes amusic player 28′, arecommendation engine 30′, and amusic collection 32′, and thepeer device 16′ includes amusic player 34′, arecommendation engine 36′, and amusic collection 38. -
FIG. 5 illustrates the operation of thesystem 10′ ofFIG. 4 . Prior to beginning the process, thepeer devices 12′-16′ form a P2P network. Since the number ofpeer devices 12′-16′ that may be connected to thenetwork 20 may be very large, thepeer 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, thepeer device 12′ may maintain a “buddy list” identifying friends of the user of thepeer device 12′, where thepeer 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 thenetwork 20. Alternatively, thepeer 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. - 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 thepeer device 12′ via the proxy server 40 (steps 400-404). While not illustrated for clarity, thepeer device 14′ also sends the recommendation for the song to thepeer device 16′ via theproxy server 40. Thepeer device 16′ also plays a song and sends a song recommendation to thepeer device 12′ via the proxy server 40 (steps 406-410). Again, while not illustrated for clarity, thepeer device 16′ also sends the recommendation for the song to thepeer device 14′ via theproxy server 40. - From this point, the process continues as discussed above. More specifically, the
recommendation engine 24′ may optionally filter the recommendations from theother peer devices 14′, 16′ based on, for example, user, genre, artist, title, album, lyrics, date of release, or the like (step 412). Therecommendation engine 24′ then automatically selects a next song to play from the songs identified by the recommendations received from theother peer devices 14′-16′, optionally songs identified by previously received recommendations from thepeer devices 14′-16′, and one or more songs from themusic collection 26′ based on user preferences (step 414). In the preferred embodiment discussed below, the songs identified by the recommendations from theother peer devices 14′-16′ and the songs from themusic collection 26′ are scored based on the user preferences. Then, based on the scores, therecommendation engine 24′ selects the next song to play. - 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 themusic collection 26′, thepeer device 12′ obtains the selected song from themusic collection 26′. If the selected song is not part of themusic collection 26′, therecommendation engine 24′ obtains the selected song from thesubscription music service 18, an e-commerce service, or one of theother 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 theother peer devices 14′-16′ via the proxy server 40 (steps 418-426). Note that whileFIG. 5 illustrates two separate song recommendation files sent from thepeer device 12′ to theproxy server 40, the present disclosure is not limited thereto. One of ordinary skill in the art will appreciate that a single song recommendation file may be provided from thepeer device 12′ to theproxy server 40. Theproxy server 40 may then forward the song recommendation file to thepeer devices 14′ and 16′. -
FIG. 6 illustrates the process of automatically selecting a song to play from the received recommendations and locally stored songs at thepeer device 12′ according to one embodiment of the present disclosure. However, the following discussion is equally applicable to the peer devices 12-16 ofFIG. 1 , as well as theother peer devices 14′-16′ ofFIG. 4 . First, the user preferences for the user of thepeer 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 therecommendation engine 24′. In addition, the user preferences may be updated by the user as desired. The user preferences may alternatively be suggested by therecommendation engine 24′ or theproxy server 40 based on a play history of thepeer device 12′. Note that thatproxy server 40 may ascertain the play history of thepeer device 12′ by monitoring the recommendations from thepeer device 12′ as the recommendations pass through theproxy server 40 on their way to theother peer devices 14′-16′. The user preferences may be stored locally at thepeer device 12′ or obtained from a central server, such as theproxy server 40, via thenetwork 20. - Once recommendations are received from the
other peer devices 14′-16′, therecommendation engine 24′ of thepeer device 12′ scores the songs identified by the recommendations based on the user preferences (step 502). Therecommendation engine 24′ also scores one or more local songs from themusic collection 26′ (step 504). Therecommendation 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). -
FIG. 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 disclosure is not limited thereto. The weights for the categories may be assigned alphabetically by selectingradio button 44, customized by the user by selectingradio button 46, or automatically suggested based on a user profile of the user by selectingradio 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 inFIG. 8 , if customized weighting is selected, the user may be presented with aGUI 50 for customizing the weighting of the categories. As illustrated in the exemplary embodiment ofFIG. 8 , the weights of the categories may be assigned by adjusting corresponding sliding bars 52-58. Slidingbar 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 thepeer device 12′ in order to prevent the same song from being continually repeated. - Once the weights are assigned, the user may select an
OK button 62 to return to theGUI 42 ofFIG. 7 or select aREVERT button 64 to return the weights of the categories to their previous settings. In addition, the user may select a SUGGEST FROMPROFILE button 66 to have therecommendation engine 24′ or theproxy server 40 suggest weights for the categories based on a user profile. Note that thebutton 66 has the same effect as theradio button 48 ofFIG. 7 . - Returning to
FIG. 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. - 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 theradio button 70 is selected, a GUI 92 (FIG. 9 ) enabling the user to customize the weights assigned to a number of users from which recommendations are received. An exemplary embodiment of theGUI 92 is illustrated inFIG. 9 , where sliding bars 94-98 enable the user to assign customized weights to corresponding users. Returning toFIG. 7 , if theradio button 72 is selected, therecommendation engine 24′ or theproxy server 40 generates suggested weights for the users based on a user profile associated with thepeer device 12′. - 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 (FIG. 10 ) enabling the user to customize the weights assigned to a number of genres. An exemplary embodiment of theGUI 100 is illustrated inFIG. 10 , where sliding bars 102-116 enable the user to assign customized weights to corresponding genres. Returning toFIG. 7 , if theradio button 78 is selected, therecommendation engine 24′ or theproxy server 40 generates suggested weights for the genres based on a user profile associated with thepeer device 12′. - 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 theradio button 82 is selected, a GUI 118 (FIG. 11 ) enabling the user to customize the weights assigned to a number of decades. An exemplary embodiment of theGUI 118 is illustrated inFIG. 11 , where sliding bars 120-130 enable the user to assign customized weights to corresponding decades. Returning toFIG. 7 , if theradio button 84 is selected, therecommendation engine 24′ or theproxy server 40 generates suggested weights for the decades based on a user profile associated with thepeer device 12′. - 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 theradio button 88 is selected, a GUI 132 (FIG. 12 ) enabling the user to customize the weights assigned to a number of availability types. An exemplary embodiment of theGUI 132 is illustrated inFIG. 12 , where sliding bars 134-140 enable the user to assign customized weights to corresponding availability types. Returning toFIG. 7 , if theradio button 90 is selected, therecommendation engine 24′ or theproxy server 40 generates suggested weights for the availability types based on a user profile associated with thepeer device 12′. - 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.
- The NRF may, for example, be computed as:
-
- As an example, assume that the following category weights have been assigned:
-
User Category 1 Genre Category 7 Decade Category 7 Availability Type Category 5 NRFW 9
Further assume that the attributes for the categories have been assigned weights as follows: -
User Genre Decade Availability User A 5 Alternative 8 1950s 2 Local 8 User B 5 Classic Rock 5 1960s 4 Subscription Network 2 User C 5 Arena Rock 5 1970s 7 Buy/Download 1 Jazz 5 1980s 9 Find 1 New Wave 2 1990s 5 Punk 4 2000s 5 Dance 2 Country 2
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 thesubscription music service 18, the score of the song may be computed as: -
- where if the song was last played 88 songs ago,
-
- Thus, the score for the song is
-
-
FIG. 13 is anexemplary GUI 142 showing a playlist for thepeer device 12′ including both local and recommended songs according to the present disclosure. However, note that a similar list may be maintained internally by thepeer device 12 ofFIG. 1 and potentially optimized to display at least a portion of theGUI 142 on the display of thepeer 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 inFIG. 14 , 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. In the examples ofFIGS. 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 thepeer device 12′ - In one embodiment, the
recommendation engine 24′ of thepeer device 12′ may provide a download queue containing all songs to be downloaded, and optionally purchased, from an external source such as thesubscription music service 18, an e-commerce service, or anotherpeer 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 thepeer device 12′. -
FIG. 15 is a block diagram of an exemplary embodiment of thepeer device 12 ofFIG. 1 . However, the following discussion is equally applicable to theother peer devices peer device 12 includes acontrol system 144 having associatedmemory 146. In this example, themusic player 22 and therecommendation engine 24 are at least partially implemented in software and stored in thememory 146. Thepeer device 12 also includes astorage unit 148 operating to store the music collection 26 (FIG. 1 ). Thestorage 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. Themusic collection 26 may alternatively be stored in thememory 146. Thepeer device 12 also includes acommunication interface 150. Thecommunication interface 150 includes a local wireless communication interface for establishing the P2P network with theother peer devices communication interface 150 may also include a network interface communicatively coupling thepeer device 12 to the network 20 (FIG. 1 ). Thepeer device 12 also includes auser interface 152, which may include components such as a display, speakers, a user input device, and the like. -
FIG. 16 is a block diagram of an exemplary embodiment of thepeer device 12′ ofFIG. 4 . However, the following discussion is equally applicable to theother peer devices 14′-16′. In general, thepeer device 12′ includes acontrol system 154 having associatedmemory 156. In this example, themusic player 22′ and therecommendation engine 24′ are at least partially implemented in software and stored in thememory 156. Thepeer device 12′ also includes astorage unit 158 operating to store themusic collection 26′ (FIG. 4 ). Thestorage 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. Themusic collection 26′ may alternatively be stored in thememory 156. Thepeer device 12′ also includes acommunication interface 160. Thecommunication interface 160 includes a network interface communicatively coupling thepeer device 12′ to the network 20 (FIG. 4 ). Thepeer device 12′ also includes a user interface 162, which may include components such as a display, speakers, a user input device, and the like. -
FIG. 17 illustrates asystem 166 for providing P2P media recommendations according to another embodiment of the present disclosure. In general, thesystem 166 includes acentral server 168 and a number of user devices 170-1 through 170-N having associated users 172-1 through 172-N. Thecentral server 168 and the user devices 170-1 through 170-N are connected via anetwork 174 such as, for example, the Internet. However, the present disclosure is not limited thereto. Thenetwork 174 may be any type of Wide Area Network (WAN), Local Area Network (LAN), or the like, or any combination thereof. Still further, thenetwork 174 may include wired components, wireless components, or a combination thereof. Note that while a singlecentral server 168 is illustrated for clarity and ease of discussion, it will be readily apparent to one having ordinary skill in the art upon reading this disclosure that thesystem 166 may include multiplecentral servers 168 for purposes of load balancing and redundancy. - The
central server 168 includes astreaming media service 176, auser account repository 178, and amusic repository 180. Thestreaming media service 176 may be implemented in software, hardware, or a combination thereof. In general, as discussed below, thestreaming media service 176 provides streaming of songs from themusic repository 180 to the user devices 170-1 through 170-N. In addition, thestreaming media service 176 exchanges P2P song recommendations between the users 172-1 through 172-N in a manner similar to that discussed above. Again, note that while the discussion herein focuses on songs and song recommendations, the present disclosure is not limited thereto. Other types of media presentations may also be used. - The
user account repository 178 includes a user account for each of the users 172-1 through 172-N. Using the user 172-1 as an example, the user account of the user 172-1 includes a list of friends, or contacts, of the user 172-1. The “friends” of the user 172-1 are other users from the users 172-2 through 172-N that have been identified as friends or contacts of the user 172-1. Note that the manner in which the friends of the user 172-1 are identified is not central to the present disclosure. Any appropriate manual or automated technique may be used. For example, an invitation process may be used. As another example, a profile matching process may be used to select other users having user profiles (e.g., demographics, user preferences, play histories, or the like) similar to that of the user 172-1 as friends of the user 172-1. In addition, the user account of the user 172-1 includes user preferences of the user 172-1. As discussed above, in one embodiment, the user preferences of the user 172-1 include weights assigned to each of a number of categories (e.g., genre, decade, recommending user, availability, or the like) and, for each category, weights assigned to a number of attributes within that category (e.g., for the genre category, Rock, Metal, Alternative, Country, Bluegrass, Jazz, or the like). The user account of the user 172-1 may also include a user profile of the user 172-1. The user profile may include demographic information describing the user 172-1, a play history of the user 172-1, information identifying media items in a media collection of the user 172-1 stored on the user device 170-1, statistical information describing the media items in the media collection of the user 172-1, or the like. - The
music repository 180 includes a number of songs available for streaming to the user devices 170-1 through 170-N. In addition, themusic repository 180 includes metadata describing each of the songs. The metadata for a song may include, for example, a title of the song, an artist of the song, an album on which the song was released, a date of release, a genre of the song, or the like. - In this embodiment, the
streaming media service 176 includes a number of streaming and recommendation functions 182-1 through 182-N corresponding to the users 172-1 through 172-N. Thus, for example, the streaming and recommendation function 182-1 serves the user 172-1, the streaming and recommendation function 182-2 serves the user 172-2, etc. Note that the streaming and recommendation functions 182-1 through 182-N are exemplary and are not intended to limit the scope of the present disclosure. Numerous alternative embodiments of thestreaming media service 176 will be apparent to one having ordinary skill in the art upon reading this disclosure. In general, the streaming and recommendation functions 182-1 through 182-N operate to stream songs to the corresponding user devices 170-1 through 170-N. In addition, the streaming and recommendation functions 182-1 through 182-N send, receive, and process song recommendations as discussed below. - Each of the user devices 170-1 through 170-N may be, for example, a personal computer, a portable media player having network capabilities, a mobile smart phone having media playback capabilities, a set-top box, a gaming console having network and media playback capabilities, or the like. The user devices 170-1 through 170-N include streaming clients 184-1 through 184-N, respectively. The streaming clients 184-1 through 184-N may be implemented in software, hardware, or a combination thereof. In general, the streaming media clients 184-1 through 184-N provide playback of streaming songs received from the
central server 168. In addition, the streaming media clients 184-1 through 184-N enable the users 172-1 through 172-N to take desired actions during playback such as pausing, fast-forwarding, rewinding, skipping from one song to another, or the like. -
FIG. 18 is a flow chart illustrating the operation of the streaming and recommendation function 182-1 according to one embodiment of the present disclosure. This discussion is equally applicable to the other streaming and recommendation functions 182-2 through 182-N. First, the streaming and recommendation function 182-1 identifies friends of the user 172-1 (step 600). The friends of the user 172-1 may be manually identified by the user 172-1 using, for example, an invitation process. Alternatively, the friends of the user 172-1 may be identified via an automatic process. For example, the streaming and recommendation function 182-1 may identify other users having user profiles (e.g., demographic information) and/or user preferences that match that of the user 172-1 to at least a threshold degree as friends for the user 172-1. - Next, the streaming and recommendation function 182-1 streams a song to the user device 170-1 of the user 172-1 (step 602). In the preferred embodiment, the streaming and recommendation function 182-1 maintains a list of songs, such as a playlist, for the user 172-1. As discussed above, the list of songs includes songs identified by song recommendations received from other users identified as friends of the user 172-1. In addition, the list of songs may include one or more songs selected by the user 172-1. Still further, the list may include one or more songs selected or recommended by the
streaming media service 176 such as, for example, theTop 10 songs from the Billboard charts, one or more of the songs most played by the users 172-1 through 172-N, or the like. Thus, for this first iteration, the user 172-1 may select a song from the list to play. In response, the streaming and recommendation function 182-1 begins streaming the selected song to the user device 170-1 of the user 172-1 for playback. - In response to streaming the song to the user device 170-1 and playback of the song at the user device 170-1, the streaming and recommendation function 182-1 sends a song recommendation identifying the song to one or more other users identified as friends of the user 172-1 (step 604). The song recommendation includes information identifying the song such as, for example, a GUID of the song, a reference (e.g., URL) to the song in the
music repository 180, a title of the song, or the like. The streaming and recommendation function 182-1 may send the recommendation substantially immediately and automatically upon initiation of playback of the song, upon completion of playback of a threshold amount of the song, or after completion of playback of the song. - In one embodiment, in order to send the song recommendation to the other users identified as friends of the user 172-1, the streaming and recommendation function 182-1 sends the song recommendation to corresponding ones of the streaming and recommendation functions 182-2 through 182-N. In another embodiment, the streaming and recommendation function 182-1 stores the song recommendations in corresponding data structures maintained for the users identified as friends of the user 172-1. For example, if the user 172-2 is identified as a friend of the user 172-1, the song recommendation may be stored in a list of received song recommendations maintained for the user 172-2 in, for example, the user account of the user 172-2. This list of received song recommendations may thereafter be processed by the streaming and recommendation function 182-2 associated with the user 172-2.
- In this example, while streaming the song to the user device 170-1 of the user 172-1, the streaming and recommendation function 182-1 receives one or more song recommendations from one or more other users identified as friends of the user 172-1 (step 606). More specifically, song recommendations are automatically sent to the user 172-1 in response to playback of corresponding songs by the users identified as friends of the user 172-1. Again, the song recommendations may be provided directly to the streaming and recommendation function 182-1 or stored in a data structure associated with the user 172-1. After receiving the song recommendations, the streaming and recommendation function 182-1 may optionally filter the song recommendations based on, for example, user, genre, artist, title, album, lyrics, date of release, or the like (step 608).
- Based on the user preferences of the user 172-1, the streaming and recommendation function 182-1 then automatically selects a next song to play from a group of songs including the songs identified by the song recommendations received in
step 606, or the song recommendations that were not filtered or removed if thefiltering step 608 is performed (step 610). The group of songs may be only the songs identified by the song recommendations received instep 606 or the song recommendations resulting from thefiltering step 608 if filtering is performed. In another embodiment, the group of songs includes the songs identified by the song recommendations received instep 606 or resulting from thefiltering step 608 and one or more of the following: one or more songs identified by previous song recommendations sent to the user 172-1, one or more songs identified by the user 172-1, one or more songs selected or recommended by themedia service 176, or the like. Further, in the preferred embodiment, the group of songs is maintained as a list of songs such as, for example, a play list. Note that if previous song recommendations are considered, previous song recommendations may expire, and therefore no longer be considered, after a defined amount of time has lapsed since the song recommendations were received. - As discussed above, 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, in this embodiment, availability identifies whether the user 172-1 has access rights to the corresponding song. For example, availability may refer to whether songs are available to the user 176-1 for free or for some fee (e.g., purchase fee, subscription fee, or the like).
- In the preferred embodiment, the next song to play is selected by first scoring the songs in the group of songs associated with the user 172-1 based on the user preferences of the user 172-1 and then selecting the song having the highest or most preferred score as the next song to play. Once the next song to play is selected, the
streaming media service 176 obtains the next song from the music repository 180 (step 612). At this point, the process returns to step 602 such that the streaming and recommendation function 182-1 begins streaming the next song to the user device 170-1 of the user 172-1.Steps 602 through 612 are repeated until the playback session is terminated. -
FIG. 19 is a more detailed flow chart illustrating the operation of the streaming and recommendation function 182-1 according to an exemplary embodiment of the present disclosure. First, a playlist for the user 172-1 is initialized (step 700). In this embodiment, the playlist may be initialized with one or more songs selected by the user 172-1, one or more songs selected or recommended by thestreaming media service 176, one or more songs previously recommended to the user 172-1 by other users identified as friends of the user 172-1, or the like. Further, in this exemplary embodiment, the songs in the playlist are scored based on the user preferences of the user 172-1, and the playlist is sorted based on the scores of the songs. Note that in an alternative embodiment, the playlist may be initialized as an empty playlist. - Next, assuming that the playlist is not initialized to an empty playlist, the streaming and recommendation function 182-1 begins streaming a select song from the playlist to the user device 170-1 of the user 172-1 for playback (step 702). In this exemplary embodiment, the select song may be a first song in the playlist, which is the song having the highest or most preferred score. The streaming and recommendation function 182-1 then determines whether it is time to select a next song to stream to the user device 170-1 of the user 172-1 for playback (step 704). A determination that it is time to select the next song to stream to the user device 170-1 may be made when, for example, a threshold amount of the current song has been streamed to and/or played by the user device 170-1 or when the user 172-1 chooses to skip to the next song.
- If a determination is made that it is not time to select the next song, the streaming and recommendation function 182-1 then determines whether a song recommendation has been received on behalf of the user 172-1 (step 706). Note that while receipt and processing of a single song recommendation is discussed, multiple song recommendations may be received and processed at this time. Again, the song recommendations provided to the user 172-1 from other users identified as friends of the user 172-1 may be sent directly to the streaming and recommendation function 182-1 or stored in a data structure associated with the user 172-1 such as, for example, the user account of the user 172-1. If a song recommendation has not been received, then the process returns to step 702 such that the current song is continued to be streamed to the user device 170-1 of the user 172-1 and the process is repeated.
- If a song recommendation has been received, then the streaming and recommendation function 182-1 optionally filters the song recommendation based on one or more filtering criteria such as, for example, artist, genre, date or decade of release, recommending user, or the like (step 708). If the song recommendation is to be filtered, then the streaming and recommendation function 182-1 disregards or discards the song recommendation (step 710), and the process then returns to step 702 and is repeated. If the song recommendation is not to be filtered, then the streaming and recommendation function 182-1 scores the song identified by the song recommendation based on the user preferences of the user 172-1 (step 712). The song recommendation function then updates the playlist of the user 172-1 to include an entry for the song identified by the song recommendation (step 714). When updating the playlist, the song identified by the song recommendation may be inserted into the playlist at a position determined based on the score of the song such that the playlist remains sorted based on the scores of the media items in the playlist. Alternatively, the song identified by the song recommendation may be inserted at any arbitrary location within the playlist. The playlist may then be sorted based on score. At this point, the process returns to step 702 and streaming of the current song is continued.
- Note that if the user 172-1 does not have access rights to the song identified by the song recommendation that was added to the playlist, access rights to the song may be automatically obtained for the user 172-1 by, for example, charging a corresponding fee to an account of the user 172-1. Alternatively, if the user 172-1 does not have access rights, a preview of the song, rather than the song, may be added to the playlist.
- Returning to step 704, once a determination is made that it is time to select the next song to be streamed to and played by the user device 170-1 of the user 172-1, the streaming and recommendation function 182-1 sends a song recommendation identifying the song to one or more other users identified as friends of the user 172-1 (step 716). Then, a no-repeat-factor (NRF) is applied to the song in order to decrease the score of the song as discussed above (step 718). The playlist is then updated (step 720). More specifically, in this embodiment, the no-repeat-factor and thus the scores of songs previously played are updated. The playlist is then resorted based on the updated scores of the song being played or just completed as well as the updated scores of songs previously played. The streaming and recommendation function 182-1 then automatically selects a song from the playlist having the highest or most preferential score as the next song to play (step 722). The process then returns to step 702 such that streaming of the next song begins, and the process is repeated.
-
FIG. 20 is a block diagram of thecentral server 168 ofFIG. 17 according to one embodiment of the present disclosure. In general, thecentral server 168 includes acontrol system 186 having associatedmemory 188. In this example, thestreaming media service 176 is implemented in software and stored in thememory 188. However, the present disclosure is not limited thereto. Thestreaming media service 176 may be implemented in software, hardware, or a combination thereof. Thecentral server 168 also includes one ormore storage units 190 such as, for example, one or more hard disk drives. In one embodiment, theuser account repository 178 and themusic repository 180 are stored in the one ormore storage units 190. However, the present disclosure is not limited thereto. Thecentral server 168 also includes acommunication interface 192 communicatively coupling thecentral server 168 to the network 174 (FIG. 17 ). Lastly, thecentral server 168 may include auser interface 194, which may include components such as, for example, a display, one or more user input devices, or the like. -
FIG. 21 is a block diagram of the user device 170-1 ofFIG. 17 according to one embodiment of the present disclosure. This discussion is equally applicable to the other user devices 170-2 through 170-N. In general, the user device 170-1 includes acontrol system 196 having associatedmemory 198. In this example, the streaming client 184-1 is implemented in software and stored in thememory 198. However, the present disclosure is not limited thereto. The streaming media client 184-1 may be implemented in software, hardware, or a combination thereof. The user device 170-1 also includes acommunication interface 200 communicatively coupling the user device 170-1 to the network 174 (FIG. 17 ). Lastly, the user device 170-1 includes auser interface 202, which may include components such as, for example, a display, one or more speakers, one or more user input devices, or the like. - The present disclosure provides substantial opportunity for variation without departing from the spirit or scope of the present disclosure. For example, while
FIG. 1 illustrates the peer devices 12-16 forming the P2P network via local wireless communication andFIG. 4 illustrates thepeer devices 12′-16′ forming the P2P network via thenetwork 20, the present disclosure 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 thepeer device 12, may form a P2P network with other peer devices using both local wireless communication and thenetwork 20. Thus, for example, thepeer device 12 may receive recommendations from both thepeer devices 14, 16 (FIG. 1 ) via local wireless communication and from thepeer devices 14′-16′ (FIG. 4 ) via thenetwork 20. - As another example, while the discussion herein focuses on song recommendations, the present disclosure is not limited thereto. The present disclosure is equally applicable to recommendations for other types of media presentations such as, for example, other types of audio presentations such as podcasts, audio books, or audio programs; video presentations such as movies, television programs, or user-generated video clips; or the like. Thus, the present disclosure may additionally or alternatively provide movie recommendations, television program recommendations, or the like.
- Those skilled in the art will recognize improvements and modifications to the preferred embodiments of the present disclosure. All such improvements and modifications are considered within the scope of the concepts disclosed herein and the claims that follow.
Claims (34)
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US13/077,035 US20120072610A1 (en) | 2006-07-11 | 2011-03-31 | P2p real time media recommendations |
Applications Claiming Priority (3)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US11/484,130 US7680959B2 (en) | 2006-07-11 | 2006-07-11 | P2P network for providing real time media recommendations |
US12/195,628 US7970922B2 (en) | 2006-07-11 | 2008-08-21 | P2P real time media recommendations |
US13/077,035 US20120072610A1 (en) | 2006-07-11 | 2011-03-31 | P2p real time media recommendations |
Related Parent Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
US12/195,628 Continuation US7970922B2 (en) | 2006-07-11 | 2008-08-21 | P2P real time media recommendations |
Publications (1)
Publication Number | Publication Date |
---|---|
US20120072610A1 true US20120072610A1 (en) | 2012-03-22 |
Family
ID=40137477
Family Applications (2)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
US12/195,628 Expired - Fee Related US7970922B2 (en) | 2006-07-11 | 2008-08-21 | P2P real time media recommendations |
US13/077,035 Abandoned US20120072610A1 (en) | 2006-07-11 | 2011-03-31 | P2p real time media recommendations |
Family Applications Before (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
US12/195,628 Expired - Fee Related US7970922B2 (en) | 2006-07-11 | 2008-08-21 | P2P real time media recommendations |
Country Status (1)
Country | Link |
---|---|
US (2) | US7970922B2 (en) |
Cited By (11)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20090083362A1 (en) * | 2006-07-11 | 2009-03-26 | Concert Technology Corporation | Maintaining a minimum level of real time media recommendations in the absence of online friends |
US20100106827A1 (en) * | 2008-10-23 | 2010-04-29 | Samsung Electronics Co., Ltd. | Method and apparatus for recommending content |
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 |
US20140046773A1 (en) * | 2012-08-09 | 2014-02-13 | Yahoo! Inc. | Method and system for displaying relevant advertisements based on characteristic tags |
US20140114963A1 (en) * | 2012-10-24 | 2014-04-24 | Imagination Technologies Limited | Method, system and device for connecting similar users |
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 |
US9367808B1 (en) | 2009-02-02 | 2016-06-14 | Napo Enterprises, Llc | System and method for creating thematic listening experiences in a networked peer media recommendation environment |
US9549024B2 (en) | 2012-12-07 | 2017-01-17 | Remote Media, Llc | Routing and synchronization system, method, and manager |
US20190037258A1 (en) * | 2017-07-27 | 2019-01-31 | Google Inc. | Methods, systems, and media for presenting notifications indicating recommended content |
CN110688571A (en) * | 2019-09-20 | 2020-01-14 | 北京字节跳动网络技术有限公司 | List stream implementation method and device, electronic equipment and storage medium |
US12236495B2 (en) | 2016-03-10 | 2025-02-25 | Adeia Media Holdings Llc | System, method, and application for exchanging content in a social network environment |
Families Citing this family (116)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
FR2781582B1 (en) * | 1998-07-21 | 2001-01-12 | Technical Maintenance Corp | SYSTEM FOR DOWNLOADING OBJECTS OR FILES FOR SOFTWARE UPDATE |
US11258531B2 (en) | 2005-04-07 | 2022-02-22 | Opanga Networks, Inc. | System and method for peak flow detection in a communication network |
US8589508B2 (en) | 2005-04-07 | 2013-11-19 | Opanga Networks, Inc. | System and method for flow control in an adaptive file delivery system |
US8909807B2 (en) | 2005-04-07 | 2014-12-09 | Opanga Networks, Inc. | System and method for progressive download using surplus network capacity |
US8719399B2 (en) * | 2005-04-07 | 2014-05-06 | Opanga Networks, Inc. | Adaptive file delivery with link profiling system and method |
US7500010B2 (en) | 2005-04-07 | 2009-03-03 | Jeffrey Paul Harrang | Adaptive file delivery system and method |
US9065595B2 (en) | 2005-04-07 | 2015-06-23 | Opanga Networks, Inc. | System and method for peak flow detection in a communication 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 |
US20070280215A1 (en) * | 2006-05-31 | 2007-12-06 | Mazin Gilbert | Method and apparatus for providing a click-to-talk service for advertisements |
US8903843B2 (en) | 2006-06-21 | 2014-12-02 | Napo Enterprises, Llc | Historical media recommendation service |
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 |
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 |
US7962460B2 (en) | 2006-12-01 | 2011-06-14 | Scenera Technologies, Llc | Methods, systems, and computer program products for determining availability of presentable content via a subscription service |
US8874655B2 (en) | 2006-12-13 | 2014-10-28 | Napo Enterprises, Llc | Matching participants in a P2P recommendation network loosely coupled to a subscription service |
SG146488A1 (en) * | 2007-03-28 | 2008-10-30 | Chikka Pte Ltd | System for tracking the successful recommendation of a good or service |
US9224427B2 (en) | 2007-04-02 | 2015-12-29 | Napo Enterprises LLC | Rating media item recommendations using recommendation paths and/or media item usage |
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 |
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 |
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 |
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 |
GB2450473A (en) * | 2007-06-04 | 2008-12-31 | Sony Comp Entertainment Europe | A Server in a Peer to Peer system selecting and notifying a device that it is to become a member of a peer group |
US8099315B2 (en) * | 2007-06-05 | 2012-01-17 | At&T Intellectual Property I, L.P. | Interest profiles for audio and/or video streams |
US9679410B1 (en) * | 2007-08-22 | 2017-06-13 | Trimble Inc. | Systems and methods for parametric modeling of three dimensional objects |
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 |
US20090177301A1 (en) * | 2007-12-03 | 2009-07-09 | Codentity, Llc | Scalable system and method for an integrated digital media catalog, management and reproduction system |
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 |
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 |
US8117193B2 (en) | 2007-12-21 | 2012-02-14 | Lemi Technology, Llc | Tunersphere |
US8316015B2 (en) | 2007-12-21 | 2012-11-20 | Lemi Technology, Llc | Tunersphere |
US8725740B2 (en) | 2008-03-24 | 2014-05-13 | Napo Enterprises, Llc | Active playlist having dynamic media item groups |
US8484311B2 (en) | 2008-04-17 | 2013-07-09 | Eloy Technology, Llc | Pruning an aggregate media collection |
US8694531B1 (en) * | 2008-08-15 | 2014-04-08 | S. Merrell Stearns | System and method for analyzing and matching digital media libraries |
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 |
US8880599B2 (en) | 2008-10-15 | 2014-11-04 | Eloy Technology, Llc | Collection digest for a media sharing system |
US8484227B2 (en) | 2008-10-15 | 2013-07-09 | Eloy Technology, Llc | Caching and synching process for a media sharing system |
US20100205628A1 (en) * | 2009-02-12 | 2010-08-12 | Davis Bruce L | Media processing methods and arrangements |
JP2012508424A (en) | 2008-11-07 | 2012-04-05 | オパンガ ネットワークス インコーポレイテッド | Portable data storage device using host device to start data transfer |
US20100131385A1 (en) * | 2008-11-25 | 2010-05-27 | Opanga Networks, Llc | Systems and methods for distribution of digital media content utilizing viral marketing over social networks |
KR20100123059A (en) * | 2009-05-14 | 2010-11-24 | 삼성전자주식회사 | Contents information transmitting method, contents proposing method, reliability providing method of contents proposing information, and multimedia device using the same |
US9460092B2 (en) * | 2009-06-16 | 2016-10-04 | Rovi Technologies Corporation | Media asset recommendation service |
WO2011022104A1 (en) | 2009-08-19 | 2011-02-24 | Opanga Networks, Inc. | Optimizing channel resources by coordinating data transfers based on data type and traffic |
KR101576704B1 (en) | 2009-08-19 | 2015-12-10 | 오팡가 네트웍스, 인크. | Optimizing media content delivery based on user equipment determined resource metrics |
KR101649777B1 (en) | 2009-08-20 | 2016-08-19 | 오팡가 네트웍스, 인크. | Broadcasting content using surplus network capacity |
KR20170054552A (en) | 2009-09-03 | 2017-05-17 | 오픈 티브이 인코포레이티드 | System and method to automatically deliver gift media |
US20110125763A1 (en) * | 2009-11-24 | 2011-05-26 | Nokia Corporation | Method and apparatus for determining similarity of media interest |
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 |
US8495196B2 (en) | 2010-03-22 | 2013-07-23 | Opanga Networks, Inc. | Systems and methods for aligning media content delivery sessions with historical network usage |
US9161073B2 (en) | 2011-02-11 | 2015-10-13 | Sony Corporation | System and method to remove outdated or erroneous assets from favorites or recently-viewed lists |
US10200756B2 (en) * | 2011-02-11 | 2019-02-05 | Sony Interactive Entertainment LLC | Synchronization of favorites and/or recently viewed lists between registered content playback devices |
US9955202B2 (en) | 2011-02-11 | 2018-04-24 | Sony Network Entertainment International Llc | Removal of unavailable services and/or content items from a list of favorite and/or recently viewed services and/or content items associated with a user account |
US9361624B2 (en) * | 2011-03-23 | 2016-06-07 | Ipar, Llc | Method and system for predicting association item affinities using second order user item associations |
US9124920B2 (en) * | 2011-06-29 | 2015-09-01 | The Nielson Company (Us), Llc | Methods, apparatus, and articles of manufacture to identify media presentation devices |
US8688712B1 (en) | 2011-09-20 | 2014-04-01 | Google Inc. | Personal media database |
US8825668B2 (en) * | 2011-11-16 | 2014-09-02 | Google Inc. | Method and apparatus for updating song playlists based on received user ratings |
US9084058B2 (en) | 2011-12-29 | 2015-07-14 | Sonos, Inc. | Sound field calibration using listener localization |
US9106430B1 (en) * | 2012-02-24 | 2015-08-11 | Sprint Spectrum L.P. | Arranging content for broadcast in a wireless communication system |
US9165066B2 (en) | 2012-06-12 | 2015-10-20 | Sony Corporation | Method and system for generating a user music taste database, method for selecting a piece of music for recommendation, music piece selection system and data processing system |
US9106192B2 (en) | 2012-06-28 | 2015-08-11 | Sonos, Inc. | System and method for device playback calibration |
US9706323B2 (en) | 2014-09-09 | 2017-07-11 | Sonos, Inc. | Playback device calibration |
US9219460B2 (en) | 2014-03-17 | 2015-12-22 | Sonos, Inc. | Audio settings based on environment |
US9811865B2 (en) * | 2012-09-17 | 2017-11-07 | Adobe Systems Incorporated | Method and apparatus for measuring perceptible properties of media content |
US9092415B2 (en) * | 2012-09-25 | 2015-07-28 | Rovi Guides, Inc. | Systems and methods for automatic program recommendations based on user interactions |
US9510055B2 (en) | 2013-01-23 | 2016-11-29 | Sonos, Inc. | System and method for a media experience social interface |
US8572097B1 (en) * | 2013-03-15 | 2013-10-29 | FEM, Inc. | Media content discovery and character organization techniques |
US9342580B2 (en) * | 2013-03-15 | 2016-05-17 | FEM, Inc. | Character based media analytics |
US10176179B2 (en) * | 2013-07-25 | 2019-01-08 | Google Llc | Generating playlists using calendar, location and event data |
US20150156248A1 (en) * | 2013-12-04 | 2015-06-04 | Bindu Rama Rao | System for creating and distributing content to mobile devices |
US20150206221A1 (en) * | 2014-01-21 | 2015-07-23 | iDisciple, LLC | Service-oriented access to media content |
US20150220498A1 (en) | 2014-02-05 | 2015-08-06 | Sonos, Inc. | Remote Creation of a Playback Queue for a Future Event |
US9679054B2 (en) | 2014-03-05 | 2017-06-13 | Sonos, Inc. | Webpage media playback |
US9264839B2 (en) | 2014-03-17 | 2016-02-16 | Sonos, Inc. | Playback device configuration based on proximity detection |
US20150324552A1 (en) | 2014-05-12 | 2015-11-12 | Sonos, Inc. | Share Restriction for Media Items |
WO2015184346A1 (en) * | 2014-05-29 | 2015-12-03 | Sirius Xm Radio Inc. | Systems, methods and apparatus for generating music recommendations |
US20150356084A1 (en) | 2014-06-05 | 2015-12-10 | Sonos, Inc. | Social Queue |
US10068277B2 (en) | 2014-06-17 | 2018-09-04 | Microsoft Technology Licensing, Llc | Modes, control and applications of recommendations auto-consumption |
US9874997B2 (en) | 2014-08-08 | 2018-01-23 | Sonos, Inc. | Social playback queues |
US10045090B2 (en) * | 2014-08-11 | 2018-08-07 | Comcast Cable Communications, Llc | Merging permissions and content access |
US9952825B2 (en) | 2014-09-09 | 2018-04-24 | Sonos, Inc. | Audio processing algorithms |
US9667679B2 (en) | 2014-09-24 | 2017-05-30 | Sonos, Inc. | Indicating an association between a social-media account and a media playback system |
EP3114625A1 (en) | 2014-09-24 | 2017-01-11 | Sonos, Inc. | Social media connection recommendations based on playback information |
US10645130B2 (en) * | 2014-09-24 | 2020-05-05 | Sonos, Inc. | Playback updates |
US9959087B2 (en) | 2014-09-24 | 2018-05-01 | Sonos, Inc. | Media item context from social media |
US9690540B2 (en) | 2014-09-24 | 2017-06-27 | Sonos, Inc. | Social media queue |
CN104301758A (en) * | 2014-10-10 | 2015-01-21 | 安徽华米信息科技有限公司 | Method, device and system for pushing videos |
US10664224B2 (en) | 2015-04-24 | 2020-05-26 | Sonos, Inc. | Speaker calibration user interface |
WO2016172593A1 (en) | 2015-04-24 | 2016-10-27 | Sonos, Inc. | Playback device calibration user interfaces |
US9538305B2 (en) | 2015-07-28 | 2017-01-03 | Sonos, Inc. | Calibration error conditions |
EP3351015B1 (en) | 2015-09-17 | 2019-04-17 | Sonos, Inc. | Facilitating calibration of an audio playback device |
US9693165B2 (en) | 2015-09-17 | 2017-06-27 | Sonos, Inc. | Validation of audio calibration using multi-dimensional motion check |
US10977322B2 (en) * | 2015-11-09 | 2021-04-13 | WP Company, LLC | Systems and methods for recommending temporally relevant news content using implicit feedback data |
US9743207B1 (en) | 2016-01-18 | 2017-08-22 | Sonos, Inc. | Calibration using multiple recording devices |
US11106423B2 (en) | 2016-01-25 | 2021-08-31 | Sonos, Inc. | Evaluating calibration of a playback device |
US10003899B2 (en) | 2016-01-25 | 2018-06-19 | Sonos, Inc. | Calibration with particular locations |
US9864574B2 (en) | 2016-04-01 | 2018-01-09 | Sonos, Inc. | Playback device calibration based on representation spectral characteristics |
US9860662B2 (en) | 2016-04-01 | 2018-01-02 | Sonos, Inc. | Updating playback device configuration information based on calibration data |
US9763018B1 (en) | 2016-04-12 | 2017-09-12 | Sonos, Inc. | Calibration of audio playback devices |
US9794710B1 (en) | 2016-07-15 | 2017-10-17 | Sonos, Inc. | Spatial audio correction |
US10372406B2 (en) | 2016-07-22 | 2019-08-06 | Sonos, Inc. | Calibration interface |
US10459684B2 (en) | 2016-08-05 | 2019-10-29 | Sonos, Inc. | Calibration of a playback device based on an estimated frequency response |
US10694223B2 (en) * | 2017-06-21 | 2020-06-23 | Google Llc | Dynamic custom interstitial transition videos for video streaming services |
CN107613311B (en) * | 2017-09-30 | 2020-07-31 | 上海掌门科技有限公司 | Method and equipment for displaying progress of anchor game |
CN111684767B (en) | 2017-12-20 | 2022-06-24 | 乐威指南公司 | System and method for dynamically adjusting notification frequency of events |
US20190294690A1 (en) * | 2018-03-20 | 2019-09-26 | Spotify Ab | Media content item recommendation system |
US10299061B1 (en) | 2018-08-28 | 2019-05-21 | Sonos, Inc. | Playback device calibration |
US11206484B2 (en) | 2018-08-28 | 2021-12-21 | Sonos, Inc. | Passive speaker authentication |
CN109815368A (en) * | 2018-12-10 | 2019-05-28 | 百度在线网络技术(北京)有限公司 | Resource recommendation method, device, equipment and computer readable storage medium |
US11757814B2 (en) | 2019-04-28 | 2023-09-12 | Isaac Ellsworth | Media sharing application |
US10734965B1 (en) | 2019-08-12 | 2020-08-04 | Sonos, Inc. | Audio calibration of a portable playback device |
CN111694283A (en) * | 2020-05-27 | 2020-09-22 | 星络智能科技有限公司 | Control system, control method, computer device, and storage medium |
Citations (11)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20020175953A1 (en) * | 2001-04-20 | 2002-11-28 | Koninklijke Philips Electronics N.V. | Automatic selection of favorite media selections of a user of an media presentation device |
US20060143236A1 (en) * | 2004-12-29 | 2006-06-29 | Bandwidth Productions Inc. | Interactive music playlist sharing system and methods |
US20060242681A1 (en) * | 2005-04-06 | 2006-10-26 | Brain Cameron W | Method and system for device-independent media transactions |
US20070104138A1 (en) * | 2005-11-03 | 2007-05-10 | Interdigital Technology Corporation | Method and system for performing peer-to-peer communication between stations within a basic service set |
US20090046101A1 (en) * | 2007-06-01 | 2009-02-19 | Concert Technology Corporation | Method and system for visually indicating a replay status of media items on a media device |
US7519685B2 (en) * | 2003-04-04 | 2009-04-14 | Panasonic Corporation | Contents linkage information delivery system |
US20090138505A1 (en) * | 2007-11-26 | 2009-05-28 | Concert Technology Corporation | Intelligent default weighting process for criteria utilized to score media content items |
US20090138457A1 (en) * | 2007-11-26 | 2009-05-28 | Concert Technology Corporation | Grouping and weighting media categories with time periods |
US20090265426A1 (en) * | 2008-04-17 | 2009-10-22 | Eloy Technology, Llc | Method and system for aggregating media collections between participants of a sharing network |
US20100017261A1 (en) * | 2008-07-17 | 2010-01-21 | Kota Enterprises, Llc | Expert system and service for location-based content influence for narrowcast |
US20100198767A1 (en) * | 2009-02-02 | 2010-08-05 | Napo Enterprises, Llc | System and method for creating thematic listening experiences in a networked peer media recommendation environment |
Family Cites Families (331)
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 |
US5418942A (en) * | 1989-07-06 | 1995-05-23 | Krawchuk; Kenneth V. | System and method for storing and managing information |
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 |
US5956027A (en) | 1995-12-12 | 1999-09-21 | At&T Corp | Method and apparatus for sharing a web page |
US6314420B1 (en) | 1996-04-04 | 2001-11-06 | Lycos, Inc. | Collaborative/adaptive search engine |
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 |
US5771778A (en) | 1996-10-15 | 1998-06-30 | Maclean, Iv; John A. | Marketing system |
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 |
JPH1166824A (en) | 1997-08-15 | 1999-03-09 | Sony Corp | Audio server system |
US6134552A (en) | 1997-10-07 | 2000-10-17 | Sap Aktiengesellschaft | Knowledge provider with logical hyperlinks |
ES2397501T3 (en) | 1997-11-25 | 2013-03-07 | Motorola Mobility, Llc | Methods, systems and manufactured elements of audio content reproduction |
US6654786B1 (en) | 1998-04-30 | 2003-11-25 | Openwave Systems Inc. | Method and apparatus for informing wireless clients about updated information |
AU5066399A (en) * | 1998-08-24 | 2000-03-14 | Hitachi Limited | Method for displaying multimedia information processing method, processing device, and processing system |
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 |
US6498955B1 (en) | 1999-03-19 | 2002-12-24 | Accenture Llp | Member preference control of an environment |
JP4065472B2 (en) | 1999-04-27 | 2008-03-26 | キヤノン株式会社 | Image processing apparatus and method, and storage medium |
US20050038819A1 (en) | 2000-04-21 | 2005-02-17 | Hicken Wendell T. | Music Recommendation system and method |
US7013301B2 (en) | 2003-09-23 | 2006-03-14 | Predixis Corporation | Audio fingerprinting 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 |
US6973475B2 (en) | 1999-09-18 | 2005-12-06 | Wildtangent | Dynamic scalable multi-media content streaming |
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 |
US6430559B1 (en) | 1999-11-02 | 2002-08-06 | Claritech Corporation | Method and apparatus for profile score threshold setting and updating |
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 |
US8132219B2 (en) * | 2002-06-21 | 2012-03-06 | Tivo Inc. | Intelligent peer-to-peer system and method for collaborative suggestions and propagation of media |
US6904264B1 (en) | 1999-12-21 | 2005-06-07 | Texas Instruments Incorporated | Method requesting and paying for download digital radio content |
US6609253B1 (en) * | 1999-12-30 | 2003-08-19 | Bellsouth Intellectual Property Corporation | Method and system for providing interactive media VCR control |
US6912528B2 (en) | 2000-01-18 | 2005-06-28 | Gregg S. Homer | Rechargeable media distribution and play system |
US7340481B1 (en) | 2000-01-21 | 2008-03-04 | International Business Machines Corp. | Method and system for adding user-provided content to a content object stored in a data repository |
US6519648B1 (en) | 2000-01-24 | 2003-02-11 | Friskit, Inc. | Streaming media search and continuous playback of multiple media resources located on a network |
US20010025259A1 (en) | 2000-03-02 | 2001-09-27 | Pierre Rouchon | Radio station digital music distribution system and method |
EP1291850A4 (en) * | 2000-04-20 | 2005-07-20 | Sanyo Electric Co | Decoder |
US20030005074A1 (en) | 2000-04-25 | 2003-01-02 | Herz Frederick S.M. | Method of combining shared buffers of continuous digital media data with media delivery scheduling |
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 |
AU2001267815A1 (en) | 2000-06-29 | 2002-01-08 | Musicgenome.Com Inc. | Using a system for prediction of musical preferences for the distribution of musical content over cellular networks |
US7075000B2 (en) | 2000-06-29 | 2006-07-11 | Musicgenome.Com Inc. | System and method for prediction of musical preferences |
US6662231B1 (en) | 2000-06-30 | 2003-12-09 | Sei Information Technology | Method and system for subscriber-based audio service over a communication network |
DE10196421T5 (en) * | 2000-07-11 | 2006-07-13 | Launch Media, Inc., Santa Monica | Online playback system with community targeting |
US20030115167A1 (en) * | 2000-07-11 | 2003-06-19 | Imran Sharif | Web browser implemented in an Internet appliance |
AU2001277071A1 (en) | 2000-07-21 | 2002-02-13 | 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 |
WO2002008948A2 (en) | 2000-07-24 | 2002-01-31 | Vivcom, Inc. | 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 |
US20020052207A1 (en) | 2000-08-07 | 2002-05-02 | Hunzinger Jason F. | Context tags for context-aware computer programs |
CA2420215A1 (en) * | 2000-08-23 | 2002-06-27 | Neurogen Corporation | High affinity small molecule c5a receptor modulators |
US6615208B1 (en) | 2000-09-01 | 2003-09-02 | Telcordia Technologies, Inc. | Automatic recommendation of products using latent semantic indexing of content |
WO2002021335A1 (en) | 2000-09-01 | 2002-03-14 | Telcordia Technologies, Inc. | Automatic recommendation of products using latent semantic indexing of content |
US7653654B1 (en) * | 2000-09-29 | 2010-01-26 | International Business Machines Corporation | Method and system for selectively accessing files accessible through a network |
US7162460B2 (en) | 2000-10-10 | 2007-01-09 | Stamps.Com Inc | Media type identification |
WO2002039323A2 (en) * | 2000-10-26 | 2002-05-16 | Prismedia Networks, Inc. | Method and apparatus for real-time parallel delivery of segments of a large payload file |
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 |
US7240358B2 (en) * | 2000-12-08 | 2007-07-03 | Digital Fountain, Inc. | Methods and apparatus for scheduling, serving, receiving media-on demand for clients, servers arranged according to constraints on resources |
US7035871B2 (en) | 2000-12-19 | 2006-04-25 | Intel Corporation | Method and apparatus for intelligent and automatic preference detection of media content |
US7440943B2 (en) | 2000-12-22 | 2008-10-21 | Xerox Corporation | Recommender system and method |
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 |
US20020108112A1 (en) | 2001-02-02 | 2002-08-08 | Ensequence, Inc. | System and method for thematically analyzing and annotating an audio-visual sequence |
US20020116533A1 (en) * | 2001-02-20 | 2002-08-22 | Holliman Matthew J. | System for providing a multimedia peer-to-peer computing platform |
CA2742644C (en) | 2001-02-20 | 2016-04-12 | Caron S. Ellis | Multiple radio signal processing and storing method and apparatus |
GB2372850A (en) | 2001-03-02 | 2002-09-04 | Hewlett Packard Co | Computer network |
US7047406B2 (en) | 2001-03-21 | 2006-05-16 | Qurlo Holdings, Inc. | Method and system for providing a secure peer-to-peer file delivery 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 |
US20030014407A1 (en) | 2001-04-11 | 2003-01-16 | Green Arrow Media, Inc. | System and method for making media recommendations |
US6670537B2 (en) | 2001-04-20 | 2003-12-30 | Sony Corporation | Media player for distribution of music samples |
US6757517B2 (en) * | 2001-05-10 | 2004-06-29 | Chin-Chi Chang | Apparatus and method for coordinated music playback in wireless ad-hoc networks |
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 |
US7296032B1 (en) | 2001-05-17 | 2007-11-13 | Fotiva, Inc. | Digital media organization and access |
US7219145B2 (en) * | 2001-05-30 | 2007-05-15 | Qualcomm Incorporated | Method and apparatus for individually estimating time required to download application programs to remote modules over wireless network |
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 |
US7463890B2 (en) | 2002-07-24 | 2008-12-09 | Herz Frederick S M | Method and apparatus for establishing ad hoc communications pathways between source and destination nodes in a communications network |
US20030153338A1 (en) | 2001-07-24 | 2003-08-14 | Herz Frederick S. M. | Autoband |
US7222187B2 (en) | 2001-07-31 | 2007-05-22 | Sun Microsystems, Inc. | Distributed trust mechanism for decentralized networks |
WO2003019560A2 (en) | 2001-08-27 | 2003-03-06 | 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 |
US20030066068A1 (en) | 2001-09-28 | 2003-04-03 | Koninklijke Philips Electronics N.V. | Individual recommender database using profiles of others |
EP1442411A4 (en) | 2001-09-30 | 2006-02-01 | Realcontacts Ltd | Connection service |
JP2003122766A (en) | 2001-10-10 | 2003-04-25 | Shinichi Konomi | System and method for sharing needs and information using physical entities |
US6986136B2 (en) * | 2001-10-30 | 2006-01-10 | Hewlett-Packard Development Company, L.P. | Web-based imaging service enabling jobs to be interrupted gracefully |
US7305449B2 (en) * | 2001-10-30 | 2007-12-04 | Hewlett-Packard Development Company, L.P. | Web-based imaging service providing reservation |
US7145678B2 (en) * | 2001-10-30 | 2006-12-05 | Hewlett-Packard Development Company, L.P. | Configurable web-based imaging service that prevents time consuming jobs from printing |
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 |
US20030097186A1 (en) * | 2001-11-13 | 2003-05-22 | Koninklijke Philips Electronics N.V | Method and apparatus for generating a stereotypical profile for recommending items of interest using feature-based clustering |
US7283992B2 (en) * | 2001-11-30 | 2007-10-16 | Microsoft Corporation | Media agent to suggest contextually related media content |
WO2003048948A1 (en) | 2001-12-04 | 2003-06-12 | Yahoo!Inc. | Method and system for providing listener-requested music over a network |
AU2002353289A1 (en) * | 2001-12-13 | 2003-06-23 | Koninklijke Philips Electronics N.V. | Recommending media content on a media system |
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 |
US7096234B2 (en) | 2002-03-21 | 2006-08-22 | Microsoft Corporation | Methods and systems for providing playlists |
US6941324B2 (en) | 2002-03-21 | 2005-09-06 | Microsoft Corporation | Methods and systems for processing playlists |
US9715500B2 (en) | 2004-04-27 | 2017-07-25 | Apple Inc. | Method and system for sharing playlists |
US20030191753A1 (en) * | 2002-04-08 | 2003-10-09 | Michael Hoch | Filtering contents using a learning mechanism |
US6987221B2 (en) | 2002-05-30 | 2006-01-17 | Microsoft Corporation | Auto playlist generation with multiple seed songs |
GB0213844D0 (en) | 2002-06-15 | 2002-07-24 | Hewlett Packard Co | Wireless communication cost prediction for mobile device |
US20030237093A1 (en) | 2002-06-19 | 2003-12-25 | Marsh David J. | Electronic program guide systems and methods for handling multiple users |
US20030236582A1 (en) | 2002-06-25 | 2003-12-25 | Lee Zamir | Selection of items based on user reactions |
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 |
JP4039158B2 (en) | 2002-07-22 | 2008-01-30 | ソニー株式会社 | Information processing apparatus and method, information processing system, recording medium, and program |
GB2391663B (en) | 2002-08-06 | 2005-06-22 | Hewlett Packard Development Co | Method and server for establishing coordinated consumption of a streamed media object by multiple devices |
US20040034441A1 (en) | 2002-08-16 | 2004-02-19 | Malcolm Eaton | System and method for creating an index of audio tracks |
US20040172267A1 (en) | 2002-08-19 | 2004-09-02 | Jayendu Patel | Statistical personalized recommendation system |
US20030149581A1 (en) | 2002-08-28 | 2003-08-07 | Imran Chaudhri | Method and system for providing intelligent network content delivery |
EP1540555A1 (en) | 2002-09-09 | 2005-06-15 | Koninklijke Philips Electronics N.V. | A data network, user terminal and method for providing recommendations |
US20040073919A1 (en) | 2002-09-26 | 2004-04-15 | Srinivas Gutta | Commercial recommender |
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 |
US7293065B2 (en) | 2002-11-20 | 2007-11-06 | Return Path | Method of electronic message delivery with penalties for unsolicited messages |
US7912920B2 (en) | 2002-12-13 | 2011-03-22 | Stephen Loomis | Stream sourcing content delivery system |
US20040133657A1 (en) | 2003-01-03 | 2004-07-08 | Broadq, Llc | Digital media system and method therefor |
US20040133914A1 (en) | 2003-01-03 | 2004-07-08 | Broadq, Llc | Digital media system and method therefor |
US20040133908A1 (en) | 2003-01-03 | 2004-07-08 | Broadq, Llc | Digital media system and method therefor |
US20040162783A1 (en) | 2003-01-31 | 2004-08-19 | Gross John N. | Media queue replenisher |
US20060053080A1 (en) * | 2003-02-03 | 2006-03-09 | Brad Edmonson | Centralized management of digital rights licensing |
US20040162830A1 (en) | 2003-02-18 | 2004-08-19 | Sanika Shirwadkar | Method and system for searching location based information on a mobile device |
US7644166B2 (en) * | 2003-03-03 | 2010-01-05 | Aol Llc | Source audio identifiers for digital communications |
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 |
US7805746B2 (en) | 2003-03-14 | 2010-09-28 | Tvworks, Llc | Optimized application on-the-wire format for construction, delivery and display of enhanced television content |
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 |
US7627343B2 (en) | 2003-04-25 | 2009-12-01 | Apple Inc. | Media player system |
US9406068B2 (en) | 2003-04-25 | 2016-08-02 | Apple Inc. | Method and system for submitting media for network-based purchase and distribution |
EP1484693A1 (en) | 2003-06-04 | 2004-12-08 | Sony NetServices GmbH | Content recommendation device with an arrangement engine |
US8103540B2 (en) | 2003-06-05 | 2012-01-24 | Hayley Logistics Llc | System and method for influencing recommender system |
US7685117B2 (en) | 2003-06-05 | 2010-03-23 | Hayley Logistics Llc | Method for implementing search engine |
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 |
US7672873B2 (en) | 2003-09-10 | 2010-03-02 | Yahoo! Inc. | Music purchasing and playing system and method |
US20050060264A1 (en) | 2003-09-15 | 2005-03-17 | Microsoft Corporation | System and method for creating and playing globally relevant playlists |
US9100814B2 (en) * | 2003-09-17 | 2015-08-04 | Unwired Plant, Llc | Federated download of digital content to wireless devices |
US20130097302A9 (en) * | 2003-10-01 | 2013-04-18 | Robert Khedouri | Audio visual player apparatus and system and method of content distribution using the same |
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 |
US7844548B2 (en) | 2003-10-15 | 2010-11-30 | Apple Inc. | Techniques and systems for electronic submission of media for network-based distribution |
US7509291B2 (en) | 2003-10-17 | 2009-03-24 | Stamps.Com Inc. | Formatting value-bearing item indicia |
US20050154608A1 (en) | 2003-10-21 | 2005-07-14 | Fair Share Digital Media Distribution | Digital media distribution and trading system used via a computer network |
US20050091107A1 (en) | 2003-10-22 | 2005-04-28 | Scott Blum | Media player and access system and method and media player operating system architecture |
US7590546B2 (en) | 2003-10-22 | 2009-09-15 | Chuang Thomas C | System and method for renting or purchasing goods via a communications network |
US20060206582A1 (en) | 2003-11-17 | 2006-09-14 | David Finn | Portable music device with song tag capture |
ES2448400T3 (en) | 2003-11-26 | 2014-03-13 | Sony Corporation | System to access content elements on a network |
US7627644B2 (en) | 2003-11-28 | 2009-12-01 | Canon Kabushiki Kaisha | Recipient-centred proactive caching in a peer-to-peer system |
US7606772B2 (en) * | 2003-11-28 | 2009-10-20 | Manyworlds, Inc. | Adaptive social computing methods |
US7441041B2 (en) | 2003-11-29 | 2008-10-21 | Microsoft Corporation | Network download regulation method and system |
US7523096B2 (en) | 2003-12-03 | 2009-04-21 | Google Inc. | Methods and systems for personalized network searching |
US7515873B2 (en) | 2003-12-04 | 2009-04-07 | International Business Machines Corporation | Responding to recipient rated wirelessly broadcast electronic works |
US7620362B2 (en) * | 2003-12-04 | 2009-11-17 | International Business Machines Corporation | Controlling access to wirelessly broadcast electronic works during playback |
US20050138198A1 (en) * | 2003-12-18 | 2005-06-23 | It Works | Methods, apparatuses, systems, and articles for determining and implementing an efficient computer network architecture |
JP2005197913A (en) * | 2004-01-06 | 2005-07-21 | Canon Inc | Apparatus and method for image processing |
US20080033979A1 (en) | 2004-01-20 | 2008-02-07 | Koninklijke Philips Electronic, N.V. | 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 |
US7373614B1 (en) | 2004-02-10 | 2008-05-13 | Apple Inc. | Navigation history |
US7512658B2 (en) * | 2004-02-26 | 2009-03-31 | International Business Machines Corporation | Providing a portion of an electronic mail message based upon a transfer rate, a message size, and a file format |
US8949899B2 (en) | 2005-03-04 | 2015-02-03 | Sharp Laboratories Of America, Inc. | Collaborative recommendation system |
US7594245B2 (en) | 2004-03-04 | 2009-09-22 | Sharp Laboratories Of America, Inc. | Networked video devices |
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 |
US8516035B2 (en) | 2006-06-21 | 2013-08-20 | Apple Inc. | Browsing and searching of podcasts |
US8412763B2 (en) | 2006-06-21 | 2013-04-02 | Apple Inc. | Podcast organization and usage at a computing device |
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 |
JP4581476B2 (en) | 2004-05-11 | 2010-11-17 | ソニー株式会社 | Information processing apparatus and method, and program |
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 |
GB0413848D0 (en) | 2004-06-21 | 2004-07-21 | British Broadcasting Corp | Accessing broadcast media |
US7437364B1 (en) | 2004-06-30 | 2008-10-14 | Google Inc. | System and method of accessing a document efficiently through multi-tier web caching |
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 |
JP2008516340A (en) | 2004-10-06 | 2008-05-15 | グレースノート インコーポレイテッド | Network-based data collection, including local data attributes, that enables media management without the need for network connectivity |
US7474959B2 (en) * | 2004-10-08 | 2009-01-06 | Scenera Technologies, Llc | Method for providing recommendations using image, location data, and annotations |
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 |
US20060167991A1 (en) | 2004-12-16 | 2006-07-27 | Heikes Brian D | Buddy list filtering |
US20080133601A1 (en) * | 2005-01-05 | 2008-06-05 | 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 |
US7562117B2 (en) * | 2005-09-09 | 2009-07-14 | Outland Research, Llc | System, method and computer program product for collaborative broadcast media |
US20070214182A1 (en) * | 2005-01-15 | 2007-09-13 | Outland Research, Llc | Establishment-based media and messaging service |
US20070288546A1 (en) | 2005-01-15 | 2007-12-13 | Outland Research, Llc | Groupwise collaborative suggestion moderation system |
US7693887B2 (en) | 2005-02-01 | 2010-04-06 | Strands, Inc. | Dynamic identification of a new set of media items responsive to an input mediaset |
US20060190616A1 (en) | 2005-02-04 | 2006-08-24 | John Mayerhofer | System and method for aggregating, delivering and sharing audio content |
US7614006B2 (en) | 2005-02-11 | 2009-11-03 | International Business Machines Corporation | Methods and apparatus for implementing inline controls for transposing rows and columns of computer-based tables |
US7818350B2 (en) * | 2005-02-28 | 2010-10-19 | Yahoo! Inc. | System and method for creating a collaborative playlist |
US20060224757A1 (en) | 2005-03-15 | 2006-10-05 | Han Fang | System and method for streaming service replication a in peer-to-peer network |
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 |
WO2006104468A1 (en) * | 2005-03-31 | 2006-10-05 | Agency For Science, Technology And Research | Method and apparatus for image segmentation |
JP4670438B2 (en) | 2005-04-01 | 2011-04-13 | ソニー株式会社 | How to provide content and its playlist |
US8291095B2 (en) | 2005-04-20 | 2012-10-16 | Limelight Networks, Inc. | Methods and systems for content insertion |
US20060248209A1 (en) | 2005-04-27 | 2006-11-02 | Leo Chiu | Network system for facilitating audio and video advertising to end users through audio and video podcasts |
US8214264B2 (en) | 2005-05-02 | 2012-07-03 | Cbs Interactive, Inc. | System and method for an electronic product advisor |
WO2006122055A2 (en) * | 2005-05-05 | 2006-11-16 | Ironport Systems, Inc. | Method of determining network addresses of senders of electronic mail messages |
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 |
US7686215B2 (en) | 2005-05-21 | 2010-03-30 | Apple Inc. | Techniques and systems for supporting podcasting |
US20060265637A1 (en) | 2005-05-21 | 2006-11-23 | Apple Computer, Inc. | Utilization of podcasts on portable media devices |
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 |
WO2006133140A2 (en) | 2005-06-06 | 2006-12-14 | Concierge Holdings, Inc. | Payment system and method for on-line commerce operations |
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 |
US20060282776A1 (en) | 2005-06-10 | 2006-12-14 | Farmer Larry C | Multimedia and performance analysis tool |
US10510043B2 (en) | 2005-06-13 | 2019-12-17 | Skyword Inc. | Computer method and apparatus for targeting advertising |
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 |
US7840178B2 (en) | 2005-07-12 | 2010-11-23 | Martin E. Hellman | FM broadcast system competitive with satellite radio |
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 |
US7761399B2 (en) * | 2005-08-19 | 2010-07-20 | Evree Llc | Recommendation networks for ranking recommendations using trust rating for user-defined topics and recommendation rating for recommendation sources |
US20070198485A1 (en) | 2005-09-14 | 2007-08-23 | Jorey Ramer | Mobile search service discovery |
US20070239724A1 (en) | 2005-09-14 | 2007-10-11 | Jorey Ramer | Mobile search services related to direct identifiers |
US7548915B2 (en) | 2005-09-14 | 2009-06-16 | Jorey Ramer | Contextual mobile content placement on a mobile communication facility |
US7917148B2 (en) * | 2005-09-23 | 2011-03-29 | Outland Research, Llc | Social musical media rating system and method for localized establishments |
US20070078832A1 (en) | 2005-09-30 | 2007-04-05 | Yahoo! Inc. | Method and system for using smart tags and a recommendation engine using smart tags |
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 |
US20070130008A1 (en) | 2005-10-14 | 2007-06-07 | Brown Reed M | Apparatus, system, and method for listing aggregation |
US20070094083A1 (en) | 2005-10-25 | 2007-04-26 | Podbridge, Inc. | Matching ads to content and users for time and space shifted media network |
US20070118425A1 (en) | 2005-10-25 | 2007-05-24 | Podbridge, Inc. | User device agent for asynchronous advertising in time and space shifted media network |
US11004089B2 (en) | 2005-10-25 | 2021-05-11 | Sony Interactive Entertainment LLC | Associating media content files with advertisements |
US20070094363A1 (en) | 2005-10-25 | 2007-04-26 | Podbridge, Inc. | Configuration for ad and content delivery in time and space shifted media network |
US8676900B2 (en) | 2005-10-25 | 2014-03-18 | Sony Computer Entertainment America Llc | Asynchronous advertising placement based on metadata |
US10657538B2 (en) | 2005-10-25 | 2020-05-19 | Sony Interactive Entertainment LLC | Resolution of advertising rules |
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 |
CA2568477A1 (en) | 2005-11-18 | 2007-05-18 | R.A. Phillips Industries, Inc. | Power supply control system for a vehicle trailer |
US8392528B2 (en) * | 2005-11-22 | 2013-03-05 | Motorola Mobility Llc | Architecture for sharing podcast information |
US20070118657A1 (en) * | 2005-11-22 | 2007-05-24 | Motorola, Inc. | Method and system for sharing podcast information |
US7805129B1 (en) | 2005-12-27 | 2010-09-28 | Qurio Holdings, Inc. | Using device content information to influence operation of another device |
US20070162502A1 (en) * | 2005-12-29 | 2007-07-12 | United Video Properties, Inc. | Media library in an interactive media guidance application |
WO2007090133A2 (en) | 2006-01-30 | 2007-08-09 | Kramer Jame F | System for providing a service to venues where people aggregate |
US20070244880A1 (en) * | 2006-02-03 | 2007-10-18 | Francisco Martin | Mediaset generation system |
JP5161794B2 (en) | 2006-02-10 | 2013-03-13 | アップル インコーポレイテッド | Dynamic interactive entertainment venue |
US9336333B2 (en) | 2006-02-13 | 2016-05-10 | Linkedin Corporation | Searching and reference checking within social networks |
US20070199014A1 (en) | 2006-02-22 | 2007-08-23 | E-Cast, Inc. | Consumer portal |
US7877353B2 (en) | 2006-03-13 | 2011-01-25 | Ebay Inc. | Peer-to-peer trading platform with relative reputation-based item search and buddy rating |
US8812580B2 (en) | 2006-03-15 | 2014-08-19 | Beats Music, Llc | Override of automatically shared meta-data of media |
US20070233736A1 (en) | 2006-03-28 | 2007-10-04 | Heyletsgo, Inc. | Method and system for social and leisure life management |
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 |
US20070264982A1 (en) | 2006-04-28 | 2007-11-15 | Nguyen John N | System and method for distributing media |
GB0702604D0 (en) | 2006-05-05 | 2007-03-21 | Omnifone Ltd | Handset commissi0ning |
US7373054B2 (en) | 2006-05-17 | 2008-05-13 | Tyco Telecommunications (Us) Inc. | Optical cable shield layer connection |
EP1860581A1 (en) | 2006-05-22 | 2007-11-28 | SonicSwap Inc. | Systems and methods for sharing digital media content |
US7797722B2 (en) | 2006-05-26 | 2010-09-14 | Sony Corporation | System and method for content delivery |
US7966362B2 (en) | 2006-06-21 | 2011-06-21 | Apple Inc. | Management of podcasts |
US8117545B2 (en) | 2006-07-05 | 2012-02-14 | Magnify Networks, Inc. | Hosted video discovery and publishing platform |
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 |
US7680959B2 (en) * | 2006-07-11 | 2010-03-16 | Napo Enterprises, Llc | P2P network for providing real time media recommendations |
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 |
US7873641B2 (en) | 2006-07-14 | 2011-01-18 | Bea Systems, Inc. | Using tags in an enterprise search system |
US7801879B2 (en) | 2006-08-07 | 2010-09-21 | Chacha Search, Inc. | Method, system, and computer readable storage for affiliate group searching |
US20080046948A1 (en) | 2006-08-07 | 2008-02-21 | Apple Computer, Inc. | Creation, management and delivery of personalized media items |
US8135725B2 (en) | 2006-08-11 | 2012-03-13 | Yahoo! Inc. | System and method for providing tag-based relevance recommendations of bookmarks in a bookmark and tag database |
WO2008022328A2 (en) | 2006-08-18 | 2008-02-21 | Sony Corporation | Selective media access through a recommendation engine |
US8572169B2 (en) * | 2006-08-28 | 2013-10-29 | Myspace, Llc | System, apparatus and method for discovery of music within a social network |
US7596597B2 (en) | 2006-08-31 | 2009-09-29 | Microsoft Corporation | Recommending contacts in a social network |
US20080091771A1 (en) * | 2006-10-13 | 2008-04-17 | Microsoft Corporation | Visual representations of profiles for community interaction |
US20080147482A1 (en) | 2006-10-27 | 2008-06-19 | Ripl Corp. | Advertisement selection and propagation of advertisements within a social network |
US20080288588A1 (en) | 2006-11-01 | 2008-11-20 | Worldvuer, Inc. | Method and system for searching using image based tagging |
US8756333B2 (en) * | 2006-11-22 | 2014-06-17 | Myspace Music Llc | Interactive multicast media service |
US8060827B2 (en) | 2006-11-30 | 2011-11-15 | Red Hat, Inc. | Method and system for preloading suggested content onto digital video recorder based on social recommendations |
US8091032B2 (en) | 2006-11-30 | 2012-01-03 | Red Hat, Inc. | Automatic generation of content recommendations weighted by social network context |
US8943210B2 (en) * | 2006-11-30 | 2015-01-27 | Red Hat, Inc. | Mastering music played among a plurality of users |
US20080141136A1 (en) | 2006-12-12 | 2008-06-12 | Microsoft Corporation | Clipping Synchronization and Sharing |
US20080195664A1 (en) | 2006-12-13 | 2008-08-14 | Quickplay Media Inc. | Automated Content Tag Processing for Mobile Media |
US7730216B1 (en) | 2006-12-14 | 2010-06-01 | Qurio Holdings, Inc. | System and method of sharing content among multiple social network nodes using an aggregation node |
US20080147711A1 (en) * | 2006-12-19 | 2008-06-19 | Yahoo! Inc. | Method and system for providing playlist recommendations |
US9229933B2 (en) * | 2006-12-19 | 2016-01-05 | International Business Machines Corporation | System, method and program for managing file downloads |
US8509754B2 (en) * | 2006-12-29 | 2013-08-13 | United States Cellular Corporation | Distributing mobile-device applications |
US7738870B2 (en) * | 2007-01-24 | 2010-06-15 | Control4 Corporation | Systems and methods for instant messaging using a control device |
US7751773B2 (en) * | 2007-01-30 | 2010-07-06 | Sony Ericsson Mobile Communications Ab | Portable communication device having a media time controller |
US7802194B2 (en) | 2007-02-02 | 2010-09-21 | Sap Ag | Business query language |
US20080189336A1 (en) * | 2007-02-05 | 2008-08-07 | Namemedia, Inc. | Creating and managing digital media content using contacts and relational information |
US20080189391A1 (en) | 2007-02-07 | 2008-08-07 | Tribal Shout!, Inc. | Method and system for delivering podcasts to communication devices |
US7739304B2 (en) | 2007-02-08 | 2010-06-15 | Yahoo! Inc. | Context-based community-driven suggestions for media annotation |
KR101346731B1 (en) | 2007-03-12 | 2014-01-03 | 삼성전자주식회사 | Method and apparatus for synchronizing feed information |
US8498628B2 (en) | 2007-03-27 | 2013-07-30 | Iocast Llc | Content delivery system and method |
WO2008121967A2 (en) | 2007-03-30 | 2008-10-09 | Google Inc. | Interactive media display across devices |
US9224427B2 (en) * | 2007-04-02 | 2015-12-29 | Napo Enterprises LLC | Rating media item recommendations using recommendation paths and/or media item usage |
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 |
US8832220B2 (en) | 2007-05-29 | 2014-09-09 | Domingo Enterprises, Llc | System and method for increasing data availability on a mobile device based on operating mode |
US7882111B2 (en) | 2007-06-01 | 2011-02-01 | Yahoo! Inc. | User interactive precision targeting principle |
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 |
US20080307463A1 (en) | 2007-06-09 | 2008-12-11 | Todd Beetcher | Systems and methods for searching and for displaying media content |
US20080307462A1 (en) | 2007-06-09 | 2008-12-11 | Todd Beetcher | Systems and methods for searching and for displaying media content |
US20080313541A1 (en) | 2007-06-14 | 2008-12-18 | Yahoo! Inc. | Method and system for personalized segmentation and indexing of media |
US20090006368A1 (en) | 2007-06-29 | 2009-01-01 | Microsoft Corporation | Automatic Video Recommendation |
US8751507B2 (en) * | 2007-06-29 | 2014-06-10 | Amazon Technologies, Inc. | Recommendation system with multiple integrated recommenders |
WO2009018562A2 (en) | 2007-08-02 | 2009-02-05 | Sony Bmg Music Entertainment | Method and apparatus for distributing digital content |
US20090042545A1 (en) | 2007-08-06 | 2009-02-12 | Tamir Avital | System and a method for unifying the social realities of the online internet and real world of the mobile phone |
US8275764B2 (en) | 2007-08-24 | 2012-09-25 | Google Inc. | Recommending media programs based on media program popularity |
US8239455B2 (en) | 2007-09-07 | 2012-08-07 | Siemens Aktiengesellschaft | Collaborative data and knowledge integration |
US8666525B2 (en) | 2007-09-10 | 2014-03-04 | Palo Alto Research Center Incorporated | Digital media player and method for facilitating music recommendation |
US20090076887A1 (en) | 2007-09-16 | 2009-03-19 | Nova Spivack | System And Method Of Collecting Market-Related Data Via A Web-Based Networking Environment |
US7769767B2 (en) | 2007-09-27 | 2010-08-03 | Domingo Enterprises, Llc | System and method for filtering content on a mobile device based on contextual tagging |
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 |
US20090132527A1 (en) | 2007-11-20 | 2009-05-21 | Samsung Electronics Co., Ltd. | Personalized video channels on social networks |
US20090177301A1 (en) | 2007-12-03 | 2009-07-09 | Codentity, Llc | Scalable system and method for an integrated digital media catalog, management and reproduction system |
US8375131B2 (en) | 2007-12-21 | 2013-02-12 | Yahoo! Inc. | Media toolbar and aggregated/distributed media ecosystem |
US7959169B2 (en) | 2008-03-31 | 2011-06-14 | Caterpilar Inc. | Chain driven independent suspension having an oscillation joint |
-
2008
- 2008-08-21 US US12/195,628 patent/US7970922B2/en not_active Expired - Fee Related
-
2011
- 2011-03-31 US US13/077,035 patent/US20120072610A1/en not_active Abandoned
Patent Citations (11)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20020175953A1 (en) * | 2001-04-20 | 2002-11-28 | Koninklijke Philips Electronics N.V. | Automatic selection of favorite media selections of a user of an media presentation device |
US7519685B2 (en) * | 2003-04-04 | 2009-04-14 | Panasonic Corporation | Contents linkage information delivery system |
US20060143236A1 (en) * | 2004-12-29 | 2006-06-29 | Bandwidth Productions Inc. | Interactive music playlist sharing system and methods |
US20060242681A1 (en) * | 2005-04-06 | 2006-10-26 | Brain Cameron W | Method and system for device-independent media transactions |
US20070104138A1 (en) * | 2005-11-03 | 2007-05-10 | Interdigital Technology Corporation | Method and system for performing peer-to-peer communication between stations within a basic service set |
US20090046101A1 (en) * | 2007-06-01 | 2009-02-19 | Concert Technology Corporation | Method and system for visually indicating a replay status of media items on a media device |
US20090138505A1 (en) * | 2007-11-26 | 2009-05-28 | Concert Technology Corporation | Intelligent default weighting process for criteria utilized to score media content items |
US20090138457A1 (en) * | 2007-11-26 | 2009-05-28 | Concert Technology Corporation | Grouping and weighting media categories with time periods |
US20090265426A1 (en) * | 2008-04-17 | 2009-10-22 | Eloy Technology, Llc | Method and system for aggregating media collections between participants of a sharing network |
US20100017261A1 (en) * | 2008-07-17 | 2010-01-21 | Kota Enterprises, Llc | Expert system and service for location-based content influence for narrowcast |
US20100198767A1 (en) * | 2009-02-02 | 2010-08-05 | Napo Enterprises, Llc | System and method for creating thematic listening experiences in a networked peer media recommendation environment |
Cited By (23)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
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 |
US10469549B2 (en) | 2006-07-11 | 2019-11-05 | Napo Enterprises, Llc | Device for participating in a network for sharing media consumption activity |
US8762847B2 (en) | 2006-07-11 | 2014-06-24 | Napo Enterprises, Llc | Graphical user interface system for allowing management of a media item playlist based on a preference scoring system |
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 |
US20090083362A1 (en) * | 2006-07-11 | 2009-03-26 | Concert Technology Corporation | Maintaining a minimum level of real time media recommendations in the absence of online friends |
US20100106827A1 (en) * | 2008-10-23 | 2010-04-29 | Samsung Electronics Co., Ltd. | Method and apparatus for recommending content |
US8990403B2 (en) * | 2008-10-23 | 2015-03-24 | Samsung Electronics Co., Ltd. | Method and apparatus for recommending content |
US9367808B1 (en) | 2009-02-02 | 2016-06-14 | Napo Enterprises, Llc | System and method for creating thematic listening experiences in a networked peer media recommendation environment |
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 |
US9015109B2 (en) | 2011-11-01 | 2015-04-21 | Lemi Technology, Llc | Systems, methods, and computer readable media for maintaining recommendations in a media recommendation system |
US20140046773A1 (en) * | 2012-08-09 | 2014-02-13 | Yahoo! Inc. | Method and system for displaying relevant advertisements based on characteristic tags |
US9239866B2 (en) * | 2012-10-24 | 2016-01-19 | Imagination Technologies Limited | Method, system and device for connecting similar users |
US10068010B2 (en) | 2012-10-24 | 2018-09-04 | Pure International Limited | Method, system and device for connecting similar users |
US20140114963A1 (en) * | 2012-10-24 | 2014-04-24 | Imagination Technologies Limited | Method, system and device for connecting similar users |
US9549024B2 (en) | 2012-12-07 | 2017-01-17 | Remote Media, Llc | Routing and synchronization system, method, and manager |
US12236495B2 (en) | 2016-03-10 | 2025-02-25 | Adeia Media Holdings Llc | System, method, and application for exchanging content in a social network environment |
US20190037258A1 (en) * | 2017-07-27 | 2019-01-31 | Google Inc. | Methods, systems, and media for presenting notifications indicating recommended content |
WO2019022800A1 (en) * | 2017-07-27 | 2019-01-31 | Google Llc | Methods, systems, and media for presenting notifications indicating recommended content |
CN110741651A (en) * | 2017-07-27 | 2020-01-31 | 谷歌有限责任公司 | Methods, systems, and media for presenting notifications indicating recommended content |
US10958953B2 (en) * | 2017-07-27 | 2021-03-23 | Google Llc | Methods, systems, and media for presenting notifications indicating recommended content |
US11539993B2 (en) | 2017-07-27 | 2022-12-27 | Google Llc | Methods, systems, and media for presenting notifications indicating recommended content |
US11902606B2 (en) | 2017-07-27 | 2024-02-13 | Google Llc | Methods, systems, and media for presenting notifications indicating recommended content |
CN110688571A (en) * | 2019-09-20 | 2020-01-14 | 北京字节跳动网络技术有限公司 | List stream implementation method and device, electronic equipment and storage medium |
Also Published As
Publication number | Publication date |
---|---|
US7970922B2 (en) | 2011-06-28 |
US20080319833A1 (en) | 2008-12-25 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US7970922B2 (en) | P2P real time media recommendations | |
US7680959B2 (en) | P2P network for providing real time media recommendations | |
US10469549B2 (en) | Device for participating in a network for sharing media consumption activity | |
US8583791B2 (en) | Maintaining a minimum level of real time media recommendations in the absence of online friends | |
US9292179B2 (en) | System and method for identifying music content in a P2P real time recommendation network | |
US9448688B2 (en) | Visually indicating a replay status of media items on a media device | |
US8983950B2 (en) | Method and system for sorting media items in a playlist on a media device | |
US8805831B2 (en) | Scoring and replaying media items | |
US9367808B1 (en) | System and method for creating thematic listening experiences in a networked peer media recommendation environment | |
US9164994B2 (en) | Intelligent default weighting process for criteria utilized to score media content items | |
US8874655B2 (en) | Matching participants in a P2P recommendation network loosely coupled to a subscription service | |
US20090138457A1 (en) | Grouping and weighting media categories with time periods | |
JP5232304B2 (en) | System and method for generating a playlist based on similarity data | |
US9224427B2 (en) | Rating media item recommendations using recommendation paths and/or media item usage | |
WO2013184957A1 (en) | Systems and methods of classifying content items |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
AS | Assignment |
Owner name: NAPO ENTERPRISE, LLC, DELAWARE Free format text: ASSIGNMENT OF ASSIGNORS INTEREST;ASSIGNOR:SVENDSEN, HUGH;REEL/FRAME:026054/0564 Effective date: 20080818 |
|
AS | Assignment |
Owner name: NAPO ENTERPRISES, LLC, DELAWARE Free format text: CORRECTIVE ASSIGNMENT TO CORRECT THE ASSIGNEE FROM NAPO ENTERPRISE, LLC TO NAPO ENTERPRISES, LLC PREVIOUSLY RECORDED ON REEL 026054 FRAME 0564. ASSIGNOR(S) HEREBY CONFIRMS THE NAME OF ASSIGNEE IS NOW CORRECT;ASSIGNOR:SVENDSEN, HUGH;REEL/FRAME:026113/0625 Effective date: 20080818 |
|
STCB | Information on status: application discontinuation |
Free format text: ABANDONED -- FAILURE TO RESPOND TO AN OFFICE ACTION |
|
AS | Assignment |
Owner name: CONCERT TECHNOLOGY CORPORATION, NEW HAMPSHIRE Free format text: ASSIGNMENT OF ASSIGNORS INTEREST;ASSIGNOR:NAPO ENTERPRISES, LLC;REEL/FRAME:051457/0503 Effective date: 20191203 |