<<

US 2005OO60350A1 (19) United States (12) Patent Application Publication (10) Pub. No.: US 2005/0060350 A1 Baum et al. (43) Pub. Date: Mar. 17, 2005

(54) SYSTEMAND METHOD FOR (57) ABSTRACT RECOMMENDATION OF MEDIA SEGMENTS A System and method of providing media recommendations (76) Inventors: Zachariah Journey Baum, San and media Segments based on expert choice lists is dis Francisco, CA (US); Aaron Wolf closed. Expert choice lists consisting of media Segment Baum, San Francisco, CA (US) references are retrieved through a data network and Stored cumulatively in a database as records with text descriptor Correspondence Address: fields. Users of the Suggestion System make requests in the Aaron Wolf Baum form of text Search descriptors and a desired output descrip 960 Natoma Street #3 tor type. Descriptors of the output type in the expert choice San Francisco, CA 94103 (US) list database are scored by the frequency with which they appear in expert choice lists possessing matches to the (21) Appl. No.: 10/662,230 Search descriptors. A list of the top-scoring descriptorS is (22) Filed: Sep. 15, 2003 returned. In an alternate preferred embodiment, media Seg ment references are Scored by the frequency of their appear Publication Classification ance in lists with matches to the Search descriptors. The highest-scoring Segment references are used to generate a (51) Int. Cl...... G06F 17/00 playlist So that the recommended media Segments can be (52) U.S. Cl...... 707/104.1 presented to the user automatically.

EXPERT SITE 26 MASTER 4. LIST 6 8

SITE EXPERT SCANNING DATA EXPERT LST 8, STORING DATABASE NETWORK CHOICE MODULE SITE(S)

DATA CLIENT SUGGESTION USER NETWORK PC GENERATOR INTERFACE

10 12 SPEAKERS MONTOR KEYBOARD

18 22 24 Patent Application Publication Mar. 17, 2005 Sheet 1 of 7 US 2005/0060350 A1

FIG 1A EXPERT 26 SITE 4. MASTER LIST 6 2 8

SITE EXPERT DATABASESt. NSN || NETWORKBA | | EXPERTCHOICE MODULE SITE(S)

SUGGESTON USER DATA CLIENT GENERATOR INTERFACE NETWORK PC

10 12 SPEAKERS MONITOR KEYBOARD

18 22 24 Patent Application Publication Mar. 17, 2005 Sheet 2 of 7 US 2005/0060350 A1

Determine number of sites to scan (N) (100) FIG 1B

Scan Expert Opinions of Site i (104)

Parse Expert Opinions (106)

Collate & Prepare for Store (108)

Store Expert

Opinions (110) Patent Application Publication Mar. 17, 2005 Sheet 3 of 7 US 2005/0060350 A1

FIG 1C Obtain User Descriptors & Preferences (200)

Standardize User Descriptors (202)

Obtain Relevant Expert Opinions (204)

Calculate initial Descriptor Scores (206)

Modify Descriptor SCOres (208)

ProVide ReCommendations (210) Patent Application Publication Mar. 17, 2005 Sheet 4 of 7 US 2005/0060350 A1

2 4 6 FIG 2A

EXPERT SCANNINGSITE DATA EXPERT LIST NETWORK CHOICE DATABASE &MODULE STORING SITE(S)

EXPERTSITE 26 MASTER LIST 302 SEGMENT ? DATABASE | 306 14

304

CLIENT

PLAYLIST USER DATA PC GENERATOR INTERFACE NETWORK W/MEDIA PLAYER

SPEAKERS MONITOR KEYBOARD

18 22 24 Patent Application Publication Mar. 17, 2005 Sheet 5 of 7 US 2005/0060350 A1

Obtain User FIG 2B Descriptors & Preferences (400)

Standardize User Descriptors (402)

Obtain Relevant Expert Lists (404) Corresponding Segment Check (406)

Calculate initial SCOres (408)

Modify Scores (410)

Select and Return Media Clip Refs (412) Patent Application Publication Mar. 17, 2005 Sheet 6 of 7 US 2005/0060350 A1

FIG 3A

STAR'S END Playlist 12.09.01.

 STAR'S END 1-6AM SatNight/Sunmorning Playlist for 9 December 2001 88.5 fraWXPN Philadelphia/88.1 fmWXPH Harrisburg, PA/90. 5fmWKHS Worton/Baltimore, MD Host: Chuck van 2wl 

ARTIST TRACK ALBUM

1:00am Klaus Schulze loops to Groove Live at Klangart (rainhorse) BrothomStates Midrix Claro (warp) Granan Siemans Bioport Staetodtizism (scape) This and the Other Pure Flow (tirreroon) Mathias Grassow From Behind the Shadows Fragrance of Eternal Roses (arya) 2:00am The Ministry of Inside Things - excerpt - live on STAR'S END 28 January 2001 Spyra Mentalized. San Tommaso Eged Elevator to Heaven (manikin) CTI Reprise Electronic Ambient Remixes 3:00am Fanger + Schon walder Sentiental Moods Analogue Overdose (?tanikin) ArC Arc - Angel. Relay Radio Sputnik (DiN) John Lakveet Perspicio Sequentiagite (vargen) Air Sculpture Aerostatic Thunderhead (neu harmony) 4:00am Widna Obmana tracks 9 - 11 Tretor (release) Centro20On This One Won't Please You Sun Lounge Debris Kiyoshi Yoshida Interlude Asian Drums II (pacific moon) Cyber 2en/Matt Borghi tracks 6 - 9 Intercepted Transmissions Keith Hammer track 1 Dark Ambient Dino Pacifici Currents of Space Tracks Across The Universe

5:00am Arcanum The Beginning Das Labyrinth (Imanikin) Monica Robelliotto Morning Tranzdance (blue adagio) Jalan Jalan Lotus Healing Collection (pacific moon Premonition of Circular Clouds Bestiary (release) Diane Arkenstone Oceans of Stars The Healing Spirit (paras) Mark Dware Memory Alpha Planetary Mysteries (trondant) Michael Stearns The Dream The Storm (spotted Peccary) Dean Benedicitis Soil of Our Consolence Just . . A Lone Reply (fateless) Zade The Beauty of Her Soul Songs Without Words (windham hill) 6:00am

Kfort sizes"2"> Next PlaylistPrevious PlaylistPlaylist DirectoryMonthly Top 20Update.Home

FIG 3B

STAR's END 1-6AM SatNight/Sun Morning Playlist for 9 December 2001 88.5fmWXPN Philadelphia/88. 1.fmWXPH Harrisburg, PA/90. 5fmWKHS Worton/Baltimore, MD Host: Chuck van Zyl

ARTIST

1:00ain Klaus Schulze Loops to Groove Live at Klangart (rainhorse) Brothorstates Morrix Claro (warp) Granait Siemans Bioport Staetdtizism (scape) Steve Roach This and the Other Pure Flow timeroom) Mathias Grassow Front Behind the Shadows Fragrance of Eternal Roses (arya)

2:00am The Ministry Of Inside Things - excerpt - live on STAR'S END 28 January 2001 Spyra Mentalized. San Tommaso Eged. Elevator to Heaven (muanikin) CTI Reprise Electronic Ambient Remixes

3:00am Fanger + Schonwalder Sentiental Moods Analogue Overdose (manikin) Arc Arc - Angel. Relay Radio Sputnik (DiN) John Lakveet Perspicio Sequentiagite (vargen) Air Sculpture Aerostatic Thunderhead (nel har?tony) 4:00am Widna Obmana tracks 9 - 11 Trendr (release) Certrozoc This One Won't Please You Sun Lounge Debris Kiyoshi Yoshida Interlude Asian Drums II (pacific moon) Cyber Zen/Matt Borghi tracks 6 - 9 Intercepted Transmissions Keith Hairliner track Dark Atient Dino Pacifici Currents of Space Tracks Across The Universe

5:00am Arcanun The Beginning Das Labyrinth (manikin) Monica Robelliotto Morning Tranzdance (blue adagic) Jalan Jalan Lotus Healing Collection (pacific ed Robert Rich Premonition of Circular Clouds Bestiary (release) Diane Arkerstone Oceans of Stars The Healing Spirit (paras) Mark Dwane Memory Alpha Planetary Mysteries (trondant) Michael Stearns The Drear The Storm (spotted Peccary) Dean Benedicitis Soil of Our Consolence Just . . A Lone Reply (fateless) 2ade The Beauty of Her Soul Songs Without Words (windham hi) 6:00am

Next Playlist Previous Playlist Playlist Directory) Monthly Top 20 Update Home US 2005/0060350 A1 Mar. 17, 2005

SYSTEMAND METHOD FOR collaborative filtering approach. Furthermore, typical users RECOMMENDATION OF MEDIA SEGMENTS are generally unaware of newly available media Segments, So collaborative filtering is a poor guide to emerging artists CROSS-REFERENCE TO RELATED and new genres. Finally, asking users to express large APPLICATIONS numbers of preferences before the System can work properly 0001. Not applicable. presents a Significant barrier to use, and may provoke concerns about the privacy of Such information. STATEMENT REGARDING FEDERALLY 0008. The automatic serving of recommended media SPONSORED R & D Segments reduces the user effort required to experience new 0002) Not applicable. media Segments and keeps them from browsing to another Site. The inconsistent quality of recommendations made by 0003) The two CD-ROMs included with this application collaborative filtering Systems makes the automatic Serving are identical and contain the following files: of the recommended media Segments risky, both in terms of wasted bandwidth and wasted user time. Existing collabo rative filtering Systems generally provide predicted ratings html scraper.pl 3880 bytes 3/13/2003 or Suggestions, leaving the decision to download particular PlayList.pm 1273 bytes 6/5/2002 media Segments to the user. This requires additional atten prmskopb.pl 776 bytes 6/5/2002 tion and delay before the media can be experienced, reduc Vexicon.cgi 29101 bytes 6/5/2002 ing the attractiveness of the Site. 0009. An optimal media recommendation system should 0004) html scraper.pl is an HTML file, readable by any generate its recommendations rapidly, based on as little web browser such as Internet Explorer or Netscape Navi user-entered information as possible. Furthermore, its rec gator. All three other files are plain text. ommendations should be of consistent quality So that the recommended media segment(s) can be served automati BACKGROUND OF THE INVENTION cally with minimal action by the user and a high likelihood 0005. This invention relates to the automatic recommen of acceptance. dation and Serving of media Segments to online users. 0010. In traditional broadcast media, this problem is dealt 0006 The business of distributing audio and video seg with by professional media selectors (DJs, VJs, television ments online requires presenting, on an individual basis, the network programmers, etc.) who know the available media most appealing media or media Suggestions quickly and and have experience with user response. The value of consistently. The most common approaches to anticipating experienced media SelectorS is evidenced by the growth of individual customer's tastes online involve correlating infor Such professions. The choosing and ordering of media mation about a user with that of other users or consumers Segments is distinct from the mixing, Synchronization, or whose preferences are known. This approach, known as blending of media Segments, which can be automated rela collaborative filtering, is used mainly by online Sites for tively easily. There are many Software and hardware providing individualized advertising and product/service approaches for providing automatic mixing and Sequencing Suggestions (e.g. LikeMinds, PreferenceMetrics, Affinicast); of media-automatic DJ programs, etc., but these do not it is also used on a research basis by organizations Such as attempt automatic prediction of user tastes, So they are not Group ens. useful as a replacement for human media experts. 0007. However, accumulated user data is a slow and 0011. The choices and recommendations made by media cumbersome tool for exploring the highly varied world of expert often appear as online lists or groupings associating individual tastes in media content. A central problem for the multiple media Segments—e.g. DJ & VJ playlists, reading collaborative filtering of media content is that few people lists, etc. These lists represent potentially high-quality Sug have experienced much of the breadth of available content, gestions, but finding, collating, and cross-referencing them even in the categories that they may prefer. As a result most presents a considerable challenge to their use in media users are poor judges of media quality, as they may have recommendation which is not addressed in the prior art. missed the best material. This problem is not reduced by using preference data from larger numbers of users; instead BRIEF SUMMARY OF THE INVENTION the mass of inexperienced users tends to drown out poten 0012. In accordance with the present invention a recom tially higher quality judgments by more experienced users. mendation-generating System comprises means for auto Some collaborative filtering approaches attempt to identify matically Storing and collating expert media choices, and users with broader experience, or more “trusted” givers of means for determining the expert choice media Segments opinions and ratings, e.g. Epinions.com and LikeMinds. most relevant to user input descriptors. A method is also However, getting Sufficient data to identify Such users takes presented to show how to reach these goals. AS an addi considerable time and effort, during which the System does tional, optional feature, the Suggested media Segments can not have their benefit. In general the collaborative filtering approach is least able to provide useful Suggestions when it be served to the user automatically. has limited user data, which is also when it is most in need 0013 All references to media segments in this document of user's opinions. This is true when Such a System is starting should be understood to mean Segments of audio or video, out or trying to extend into new media types or genres, when 3D animation, Stories, books, Songs, performances, movies, the System will make poor Suggestions at first, discouraging music videos, or other pieces of content that may be refer users from providing the preference data critical to the enced in online lists showing an expert's recommendations. US 2005/0060350 A1 Mar. 17, 2005

0.014 Objects and Advantages 0036 6 data network 0.015 Several objects and advantages of the present 0037 8 expert list sites invention are: 0038) 10 suggestion generator 0016 (a) to draw on the choices of a large number of media experts rapidly and automatically; 0039) 12 user interface 0017 (b) to provide quality suggestions based on 0040 14 data network minimal user information; 0018 (c) to provide quality suggestions to users 0041) 16 client PC exploring media types or genres in which they have 0042) 18 speakers expressed few or no opinions, 0043. 22 monitor 0019 (d) to incorporate new media expert opinions continually, keeping the Suggestions of the System 0044) 24 keyboard current with new media and new styles, 0045 26 expert site master list 0020 (e) to provide quality suggestions to all users irrespective of the number of obtained user opinions, 0046. 302 media segment database 0021 (f) to combine obtained user opinions with 0047 304 client PC with media player expert choices to refine and individualize Sugges 0048 306 playlist generator tions further; 0022 (g) to provide media Suggestions that are DETAILED DESCRIPTION OF THE known to work well together, facilitating the auto INVENTION matic Serving of multiple Suggested media Segments, FIG. 1A and 0049) 0050 A schematic block diagram of a preferred embodi 0023 (h) to minimize the storage and processing ment of the media recommendation System of the present capabilities required to make quality Suggestions. invention is illustrated in FIG. 1A. The system has a list 0024. Still further objects and advantages will become Scanning and Storing module 4. Directed by an expert Site apparent from a consideration of the ensuing description and master list 26, this module operates through a data network drawings. 6 to request and receive information from one or more expert choice sites 8. Module 4 stores processed data in the expert BRIEF DESCRIPTION OF THE DRAWINGS list database 2. This database is used by the Suggestion generator 10 to generate media Segment Suggestions in 0.025 In the drawings, closely related drawings have the response to requests received through the user interface 12. same number but different alphabetic suffixes. Through a data network 14, one or more users use client PCs 0.026 FIG. 1A is a schematic block diagram of a pre 16 and their associated peripherals (which may include ferred embodiment of the present invention providing media speakers 18, a video monitor 22, or a keyboard 24) to Segment Suggestions. interact with user interface 12 through data network 14, requesting and receiving media Segment Suggestions from 0027 FIG. 1B is a flowchart illustration of the opera Suggestion generator 10. tional Steps of a preferred embodiment of the expert list Site Scanning module 4. 0051. In a preferred embodiment, these parts of the System consist as follows: 0028 FIG. 1C is a flowchart illustration of the opera tional Steps of a preferred embodiment of the Suggestion 0052 1. Expert choice database 2 consists of an generator 10. SQL, Oracle, mySQL, or other database program 0029 FIG. 2A is a schematic block diagram of an running on the same PC as list Scanning and Storing alternative embodiment of the present invention providing module 4. media Segment Suggestions and the media Segments them 0053 2. List scanning and storing system 4 consists Selves. of Perl Scripts or other computer code (C, C++, Java, 0030 FIG. 2B is a flowchart illustration of the opera etc.) running on a PC connected to data network 6. tional Steps of a preferred embodiment of the Suggestion 0054) 3. Data network 6 consists of a TCP/IP net generator 310. work Such as the Internet or a local intranet, or other 0031 FIG. 3A is an example print-out of the HTML of type of data network such as Novell, WAP, or a a music playlist Site. proprietary type. 0.032 FIG. 3B is an example print-out of the appearance 0055 4. Expert choice sites 8 consist of web pages of the Same music playlist Site. containing HTML code. 0.033 Reference Numerals in Drawings 0056 5. Suggestion generator 10 consists of Perl Scripts or other computer code (C, C++, Java, etc.) 0034 2 expert list database running on the same PC as the list Scanning and 0035 4 list scanning and storing module Storing module 4. US 2005/0060350 A1 Mar. 17, 2005

0057 6. User interface 12 consists of PHP scripts or 0066 Advantages other code generating HTML that is sent over the 0067. From the description above, a number of advan data network 14 to the user 16. tages of the described expert list-based media Segment 0058 7. Data network 14 consists of a data network Suggestion System become apparent: Such as the Internet or a local intranet, possibly 0068 (a) The expert list information driving the operating through TCP/IP or other protocols such as Suggestions can be drawn from an almost unlimited Novell, WAP, or a proprietary type. This may be the number of Sources. Same data network as 6. 0069 (b) The user receives the benefit of these 0059 8. Client PC 16 encompasses a microproces expert lists through a single interface. Sor, data memory, and means to access a network, Such as an ethernet port, modem, or similar means, 0070 (c) No user information is required to obtain accesses the user interface through data network 14 Suggestions or media, allowing the Service to be from a web-enabled device, Such as a PC, PDA, or accessed in its entirety immediately and anony mobile phone. Its physical user interface may mously, without requiring registration or login. include devices Such as audio speakers or head 0071 (d) The volume of the expert list database can phones 20, a Video monitor 22, or a keyboard 24, as grow Steadily to include new lists irrespective of user necessary to experience media Segments and interact traffic. with user interface 12. Through data network 14 the System may interact with multiple users and their 0072 (e) The suggestion generator minimizes the client PCs simultaneously. required bandwidth and Storage to Supply Sugges tions to users by requiring only a Small amount of 0060) 9. Expert site master list 26 consists of an data to provide quality Suggestions. SQL, Oracle, mySQL, or other database program running on the same PC as list Scanning and Storing 0073 (f) Media segments that have been recom module 4. mended by the System can be downloaded to a user's PC and played automatically. 0061 FIG. 2A–Additional Embodiment 0074 (g) Playlists can be generated using any 0.062 FIG. 2A is a schematic block diagram of an descriptors that can be associated with media Seg alternate preferred embodiment including a media Serving ments in the database, including mood or genre. component. In this embodiment, two additional components are added to the schematic shown in FIG. 1A. These 0075 Operation Of Preferred Embodiment-FIGS. additional components of the System consist as follows: 1B-1C 0063 1. Media database 302 consists of a storage 0076 Flowcharts for the operation of portions of the medium containing media Segments to be served in preferred embodiment of FIG. 1A are illustrated in FIGS. the form of individual files. These files consist of any 1B-1C. FIG. 1B illustrates the operation of site scanning media files playable by the PC with media player and storing module 4; FIG. 1C illustrates the operation of 304, preferably compressed to reduce the bandwidth Suggestion generator 10. In a preferred embodiment, the required for transmission. Examples of appropriate programming steps of 4 and 10 will be embodied in Perl file formats are mp3, Real Audio, Liquid Audio, Scripts running on a personal computer connected to a data Quicktime movies, and Flash animations. Media network Such as the Internet. Pursuant to the Invention, these database 302 may include information about the StepS can be embodied in any Suitable programming lan media Segments encoded by the files, Such as their guage, including but not limited to C, C++, Java, PHP, names, sizes, lengths, artist names, label names, JavaScript, or BASIC. The present invention covers these compilation or album names, or genres. In a pre StepS running on any electronic hardware that can Support ferred embodiment, database files are served through Such programming, Such as personal computers, mainframe data network 14 to client PC with media player 304 computers, personal digital assistants, or mobile phones. In through the http protocol. a preferred embodiment, the communication with expert list sites and users occurs over the Internet using TCP/IP and 0064. 2. Client PC with media player 304 consists of http protocols; other embodiments may include communi a client PC similar to client PC 16, with an additional cation over local networks and other protocols over Software program capable of requesting media files modems/intemet/wireless, such as Novell, WAP, cable net over data network 6 and playing them for the user. Works, and proprietary Systems Such as Set-top boxes. Examples of such players are WinAmp, Windows Media Player, and Quicktime. Client PC with media 0077. Examples of computer code instantiating these player 304 requests media files from media database steps are included in the CD-ROM associated with this 302. In a preferred embodiment, the requests are specification. The files on this disk are as follows: made through the http protocol. 0078 html scraper.pl 0065 3. Playlist generator 306 consists of Perl 0079 A set of perl routines for parsing HTML into Scripts or other computer code (C, C++, Java, etc.) perl data Structures. running on the same PC as the list Scanning and Storing module 4. It is capable of generating a 0080 playList.pm playlist consisting of file references corresponding to 0081. A perl object representation of a play list, as files of media segment database 302 returned from a filter. prmskopb.pl US 2005/0060350 A1 Mar. 17, 2005

0082) A perl filter, loaded and invoked by the vexi the expert list database-artist name, expert list generator con that uses the html Scraper routines to parse name, DJ or VJ name, genre, tempo (beats per minute), HTML from a play list site, returning a PlayList media Segment name, production company name, album or object for use in the Vexicon. collection name, copyright date, or other descriptor that could be associated with media Segment references in the 0.083 vexicon.cgi expert list database. In a preferred embodiment, the Search descriptors are one or more artist's names. These Search 0084. A combination of command-line play list descriptors, and their types, are passed to the Suggestion Scraper and recommendation generator CGI. generator by the user interface. The desired output descriptor 0085. Flowcharts for a preferred embodiment of the type, and the number of Suggestions to return, are also operation of expert choice Scanning and Storing module 4 obtained from the user or Set automatically to default values. are illustrated in FIG. 1B. The descriptors may be entered directly by the user, or they may be generated by the user interface in response to user 0086). In step 100, the module retrieves a master list of actions, Such as buying a product, or experiencing a known expert choice Sites 26 to determine the number of Sites to media Segment; by Submitting descriptors associated with Scan and their addresses,. In a preferred embodiment an the product or Segment, the Suggestion generator can pro entry on the list will consist of a URL to be accessed over vide potentially related media Segment Suggestions. In Step the Internet, and parsing instructions for the HTML code 202, the input descriptors are Standardized by removing all returned from the site. The URLs to Scan can be determined punctuation and capitalization. The expert list database is manually, by automatic Searching over a data network Such then Searched (step 204) for expert lists containing media as the Internet, or by Some combination of these means. For Segment references with one or more matches to the input example, a Search program could retrieve text and code from descriptors in the correct fields. other Sites and check it for Similarities to Sites already on the list. Once the master list is retrieved, the number of sites to 0091. In step 206, the number of times each descriptor of be scanned, N, is set to the number of records in the list. The the Specified output type is found in an expert list with any Site index i is initialized to 1 (Step 102) and the site Scanning of the Search descriptorS is totaled. This total provides a loop is entered (step 104). Score for ranking each descriptor of the output type. This 0.087 Scanning the site consists of sending requests for total may be further modified (step 208) to improve its the expert list information from the site server. In a preferred expression of the Strength of the relationship between the embodiment, these requests are relayed through the intemet input descriptors and the output descriptors. For example, by the http protocol, and the site server sends HTML pages the Score of a descriptor may be modified to prevent a single through the Internet back to the System. An example of the web site (and thus the opinions of a Small number of experts) HTML code of a web page on an expert choice site is shown to unduly affect a descriptor's rating. In a preferred embodi in FIG. 3A; its browser appearance is shown in FIG. 3B. A ment, this is achieved by determining the number of distinct Site may contain multiple pages to be retrieved; the number expert list web sites that a descriptor appears on, multiplying and addresses of these pages are Stored and read from the it by a weighting factor, and added the result to the descrip master site list. Once all of the pages are retrieved, the raw tor's Score. HTML from the site is parsed into lists of individual media 0092. The score may also be modified to emphasize lists Segment references according to Site-specific instructions in with multiple matches. In a preferred embodiment, the step 106. In a preferred embodiment, these references are contribution of each list to an output descriptor's Score is organized into a Series of records with each record corre weighted by the number of matches to the Search descriptors sponding to an individual media Segment reference on an within the list. expert choice list. The fields of these records may include the name of the list the reference was taken from, the date of that 0093. If user ratings of the media segments in the expert list, the name of the media expert who generated the list, the lists are available, the contributions to the Score of each Segment name, the artist name, the recording label name, the expert list can be weighted by the querying user's previous album or collection name, the director name, genre, DJ or VJ ratings of the media Segments on the list. In a preferred name, tempo (beats per minute), copyright date, and other embodiment, each expert choice list is Scored by an aver pieces of information that may be available. If ordering or aging any ratings the querying user has made of media rating information is available from the Site, this may be Segments on the list; unrated media Segments on a list can be parsed and associated with the media Segments as well. assigned a default rating for the purposes of the calculation of the average. This average can then be used to weight the 0088. The media segment references may then be further contribution of its corresponding list to the Scores used to processed (step 108). In a preferred embodiment, any punc rank the output descriptors. tuation or capitalization is removed to Standardize the records for later croSS-referencing. 0094. If search descriptors other than media segment names are Specified, the Suggestion generator may also 0089. In step 110, the standardized records are stored into calculate the most popular media Segments for each of these the expert opinion database 2 where they can be accessed by descriptors. In a preferred embodiment, media Segment the Suggestion generator 10. names whose records match a Search descriptor in the 0090. A flowchart for the operation of a preferred appropriate field are rated by the number of times that they embodiment of the Suggestion generator 10 is illustrated in appear on unique expert lists. This rating may be further Fig 1C. The generator takes in Search-descriptors to generate modified to prevent excessive influence from Single web its Suggestions. These can be of Several different types, Sites by adding the number of unique web sites the Segment corresponding to the fields of the media Segment records in references appear on, multiplied by a weighting factor. The US 2005/0060350 A1 Mar. 17, 2005 highest-rating media Segment references for each of the 0101 If user ratings of the media segments in the expert Search descriptors (other than any media Segment names) lists are available, this information can be used to maximize can then be returned as a list of associated popular media the likelihood that the user will enjoy the Suggested media Segments. Segments. In a preferred embodiment, the contributions to the Score from each expert list can be weighted by the user's 0.095. In step 210, the requested number of top scoring previous ratings of the media Segments on the list. For output descriptors and any list of associated popular media example, the ratings of each list can be averaged; unrated Segments are returned to the user interface for display. media Segments on the list can be assigned a default rating 0096 Operation of an Alternative Embodiment-FIG. for the purposes of the calculation of the average. This 2B average can then be used to weight the contribution of its 0097 FIG. 2A illustrates an alternative embodiment of corresponding list to the Scores used to rank the output the Invention with media Streaming capabilities driven by descriptors. In a preferred embodiment, this weighting is the expert list system. FIG. 2B is a flowchart illustrating the applied to all contributions the corresponding list makes to operational Steps of a preferred embodiment playlist gen the media Segment Scores, including the refinements erator 306. In a preferred embodiment, the programming described below. steps of playlist generator 306 will be embodied in Perl 0102) The list of top-scoring media segment references Scripts running on a personal computer connected to a data can then be further refined to keep together Segments which network Such as the Internet. In pursuant to the Invention, have been frequently listed together by the experts. In a these Steps can be embodied in any Suitable programming preferred embodiment, the number of times a Segment language, including but not limited to C, C++, Java, PHP, reference appears on an expert list with other top-scoring JavaScript, or BASIC. Segments is totaled, multiplied by a weighting factor, and 0098. The operation of the generator starts with receiving added to a segment reference's score from step 408. In a user request (step 400) through the user interface 12. In a further alternate embodiment, the contribution of each preferred embodiment, the user represents the desired type appearance with another Segment reference is weighted by of media Segments by entering one or more Search descrip that Segment's Score as calculated in Step 408. For expert tors. These descriptors can be names of one or more artist, lists which represent the Sequential play of media Segments media Segment, media label, album or collection, production (e.g. DJ and VJ play lists), this weighting may be increased company, disc or Video jockey, or any other descriptorS Such if the other Segment appears adjacent or close to the Segment as copyright date, play date, mood, genre, tempo range, whose score is being calculated. color, or category, that can be associated with media Seg 0103) In step 412, the specified number of highest-rank ment references in the expert list database through the expert ing media Segments are returned to the user interface 312 as list Scanning module. In an alternative embodiment, the a play list. The user's media player Software can then Send Search descriptors can be automatically generated by user HTML requests for the media segments of the playlist actions. Such as experiencing a media Segment, rating a through the network; the generation of these requests may be Segment, buying a product, Visiting a website, or other automatic or started by a user request to the media player for actions which could indicate a desire for a type of music. playback of the playlist. The user interface passes the The number of media Segments to return in the play list is requests to the media database, which then Serves the media also passed by the user interface; this may be a fixed value Segments to the media player over the network. The media or Specified by the user. player then plays the media Segments for the user. 0099. In step 402, the search descriptors are standardized by removing all punctuation and capitalization. In accor 0104 Conclusion, Ramifications, and Scope dance with the present invention, further processing to 0105. Accordingly, the reader will see that the suggestion maximize the chances of matching with the database generation System of this invention can be used to provide descriptors may be employed, Such as correction of common automatic media Suggestions based on the expertise of many spelling errors. In step 404, the expert list database 302 is experts through a simple interface, to provide Such Sugges Searched for media Segment references with one or more tions with a minimum of user data entry, to provide media matches to the input descriptors. A list of expert lists that Suggestions taking into account the most recent media include at least one Such matching media Segment reference Segments and fashions, to minimize the bandwidth and is returned. Each media Segment reference in the returned Storage required to generate media Suggestions, and to Serve listS is then checked for a corresponding media Segment in Suggested media Segments automatically. the media Segment database, references not corresponding to 0106 Thus the scope of the invention should be deter a segment in the database are eliminated (step 406). Each mined by the appended claims and their legal equivalents, remaining media Segment reference is then Scored by the rather than by the examples given. number of returned lists it appears on (step 408). 0100. This score may be further modified (step 410) to maximize the accuracy of the relationship it expresses I claims: between the media Segment and the input descriptors. In a 1. A method for providing to a user media Suggestions preferred embodiment, the incidences of a media Segment based on lists associating media Segment references using reference on the returned lists can be weighted by the one or more general purpose data processors, comprising: relevance of the lists on which it appears, in a preferred embodiment the relevance of a list is measured by the retrieving Said lists and parsing their media Segment number of matches in its record fields to the Search descrip references into Searchable records comprising text torS. descriptors of corresponding media Segments, US 2005/0060350 A1 Mar. 17, 2005

Storing Said records into memory available to Said pro (c) means for retrieving Said lists associating media ceSSor in combination with any previously Stored Segments and parsing them into Searchable records records, comprising text descriptors of corresponding media receiving a user request comprising text descriptors and Segments and Storing Said records into Said data Storage Specification of an output text descriptor type, with any previously Stored records, Searching Said Stored lists and retrieving lists comprising (d) means for receiving a user request comprising text one or more records comprising one or more text descriptors and Specification of an output text descrip descriptors matching Said user input text descriptors, tor type; compiling a list of unique text descriptors of the output (e) means for Searching said Stored lists and retrieving lists comprising one or more records comprising one or type that are present in Said retrieved lists, more text descriptors matching Said user input text Scoring each of Said unique text descriptors of the output descriptors, type according to the number of Said retrieved lists it appears in, and (f) means for compiling a list of unique text descriptors of the output type that are present in Said retrieved lists providing to Said user a list of top-scoring text descriptors of Said unique text descriptors. (g) means for Scoring each of said unique text descriptors 2. The method of claim 1 wherein Said lists associating of the output type according to the number of Said media Segment references are retrieved through a data retrieved lists it appears in network. (h) means for providing to said user a list of top-scoring 3. The method of claim 1 wherein Said lists associating text descriptors of Said unique text descriptors media Segment references are HTML pages retrieved 10. The data processing system of claim 9 wherein said through a TCP/IP network. lists associating media Segment references are retrieved 4. The method of claim 1 wherein Said retrieval, parsing through a data network. and Storage of Said lists associating media Segment refer ences is automatically performed as new lists become avail 11. The data processing System of claim 9 wherein Said able. lists associating media Segment references are HTML pages 5. The method of claim 1 wherein the locations of said retrieved through a TCP/IP network. lists associating media Segment references is Stored in a 12. The data processing System of claim 9 wherein Said master list. retrieval, parsing and Storage of Said lists associating media 6. The method of claim 5 wherein the scores of said Segment references is automatically performed as new lists unique text descriptors of the output type is modified by become available. adding the number of unique locations of Said master list on 13. The data processing system of claim 9 wherein the which Said unique text descriptor has been found, multiplied locations of Said lists associating media Segment references by a weighting factor. is Stored in a master list. 7. The method of claim 1 wherein said user requests are 14. The data processing system of claim 13 wherein the the descriptors of media Segments just purchased or Served Scores of Said unique text descriptors of the output type is to a user, Sent automatically as a consequence of Said modified by adding the number of unique locations of Said purchasing or Serving. master list on which Said unique text descriptor has been 8. The method of claim 1 wherein media segments found, multiplied by a weighting factor. corresponding to Said top-scoring text descriptors are auto 15. The data processing system of claim 9 wherein said matically made available to a user. user requests are the descriptors of media Segments just 9. A data processing System for providing to a user media purchased or Served to a user, Sent automatically as a Suggestions based on lists associating media Segment refer consequence of Said purchasing or Serving. ences, comprising: 16. The data processing System of claim 9 wherein Said System includes means to Store media Segments and means (a) a general purpose data processor of known type for to provide Said media Segments automatically to a user processing data; responsive to Said list of top-scoring descriptorS. (b) data Storage means for storing data on a storage medium;