`(12) Patent Application Publication (10) Pub. No.: US 2003/0182315 A1
`(43) Pub. Date:
`Sep. 25, 2003
`Plastina et al.
`
`US 20030182315A1
`
`(54) METHODS AND SYSTEMS FOR
`PROCESSING PLAYLISTS
`
`(76) Inventors: Daniel Plastina, Sammamish, WA
`(US); James M. Alkove, Woodinville,
`WA (US); Kirt A. Debique, Seattle,
`WA (US); Scott Colville, Kirkland, WA
`(US); Gabriel S. DeBacker, Carnation,
`WA (US)
`
`Correspondence Address:
`LEE & HAYES PLLC
`421 W RIVERSIDE AVENUE SUITE 500
`SPOKANE, WA 99201
`
`(21) Appl. No.:
`
`10/103,526
`
`(22) Filed;
`
`Man 21, 2002
`
`Publication Classi?cation
`
`(51) Int. Cl.7 ................................................... .. G06F 17/30
`
`(52) Us. 01. ............................................................ .. 707/200
`
`(57)
`
`ABSTRACT
`
`Various systems and methods described above permit a
`user’s content experience (e.g. music playing experience) to
`be monitored and for metadata describing this experience to
`be collected. This metadata can be dynamically updated as
`a user experiences media content and then used to impart to
`the user a personalized experience that is tailored to that
`speci?c user. A user’s metadata can, in some instances,
`provided across a Wide variety of computing devices on
`Which the user may experience the media content, thus
`standardizing the user’s personalized media experience. In
`addition, intelligent or “smart” playlists can be provided
`Which, in some instances, can be dynamically and automati
`cally updated to re?ect current user experiences, thus pro
`viding a highly personalized and enjoyable content experi
`ence.
`
`Media-Playing Application
`
`200
`
`202
`
`Experience-Monitoring
`Module
`
`/
`
`_—
`\
`
`204 i
`TJontent Database
`
`rIiTllglgalillletzd?
`
`t
`‘ ,1
`
`..4JseLMlef
`l.
`i User Metadata
`
`I
`
`rivlatadaia
`
`“L W i
`amide/1E
`
`l lenr Mm‘nrlsll
`User Metadata
`
`Content
`
`Content
`
`208
`
`206 J
`
`Page 1 of 39
`
`Unified Patents Exhibit 1010
`
`
`
`Sep. 25, 2003 Sheet 1 of 16
`
`US 2003/0182315 A1
`
`m..oEmm
`
`mco_..mo__mm<
`
`
`
`..z<>>
`
`n
`
`.mmomtoE_
`
`om............1
`
`1Q.m2:3:55322
`.m_Em_E_.wn_
`
`um.om_u_>3:23mc_wmwoEn_
`
`.mIIIII.M‘lllllull
`E1...___.mN_”m%WWA................xgmmmWLnlynbF...............................................................
`
`Page 2 of 39
`
`mm?
`
`mEEmo_n_
`
`
`
`.w|;mm_:Uo_>_
`
`
`
`EEmo._n_550
`
`ofi
`
`
`
`EmaEm_m9n_
`
`Emon>mv_
`
`fl:1E
`
`m:93//mm?oN_.|/m:/,©:v:jEma
`
`
`
`
`
`
`EEO:o_._.,mo__nE<mm_:_oo_>_mEEmo.n_E9w>w_Em._mo_n_mc:Em.n_O..4
`
`
`
`
`
`Page 2 of 39
`
`
`
`
`
`
`
`Patent Application Publication Sep. 25, 2003 Sheet 2 0f 16
`
`US 2003/0182315 A1
`
`h
`
`mccozcoiéocwcwqxw
`
`2362
`
`oow
`
`
`
`:QEQEQQ mgbmigumé
`
`BmEBwE 6w:
`Surat: E2 _
`Satin: E2 _
`
`EwEoO
`
`AEEEE E2 _
`
`EmEoO
`
`EwEoo
`
`SmnBmE 6w:
`FISH: E1 _
`
`Page 3 of 39
`
`
`
`Patent Application Publication Sep. 25, 2003 Sheet 3 0f 16
`
`US 2003/0182315 A1
`
`@ a
`
`
`
`T >2 @9282 2 E8 65 E258 26E m2>oE
`
`
`
`
`
`33: m5 5? 8568mm EQuEwE 0260i
`
`
`
`mocwzmqxw mc_>m_Q-m_nmE
`
`
`
`
`
`EmEoo Enoch £5, EmnEwE 82605 m??oww
`
`
`
`
`
`Em: @515 nwocmcmaxw
`
`%
`74%
`L?4
`wow
`wow
`wow
`oom
`
`Page 4 of 39
`
`
`
`Patent Application Publication Sep. 25, 2003 Sheet 4 0f 16
`
`US 2003/0182315 A1
`
`
`
`96% :m0
`
`w .“R
`
`U m. o
`
`Page 5 of 39
`
`
`
`Patent Application Publication Sep. 25, 2003 Sheet 5 0f 16
`
`US 2003/0182315 A1
`
`m
`
`c
`
`
`
`m \5 8622 mm E8 E5 EmEoo mmnwE w2>oif
`
`
`6w: 9: B vwocmzoaxm
`
`
`
`22:00 26E 5? SQUEQE @8365 29032
`
`
`
`
`
`a #6200 $22696 6w: 9: 52;;
`
`
`
`o 303% 908 Lo 96 5? @6368 228mm? wow
`
`com
`
`wow
`
`wow
`
`wow
`
`Page 6 of 39
`
`
`
`Patent Application Publication Sep. 25, 2003 Sheet 6 0f 16
`
`US 2003/0182315 A1
`
`
`
`
`
`20% =®O wbocmi wcocg =w0 P890
`
`
`
`
`
`
`
`swam
`
`
`
`295 :8 $222 @550 5,3
`
`/( S8 /
`
`l
`
`
`
`ESQEQO by!
`
`F £8
`
`Page 7 of 39
`
`
`
`Patent Application Publication Sep. 25, 2003 Sheet 7 0f 16
`
`US 2003/0182315 A1
`
`a wmocmcwaxw
`
`m \6 860:9 3 :3 E5 EwEoo 26E @0305
`
`
`
`
`
`cozmoiam mc_>m_Q-m%mE
`
`
`
`
`
`
`
`9&29988 .23: 22:2: “SE22
`
`
`
`EBcoo 268 5:5 EQUEQE 82605 2.2082
`
`
`93: 9: \5 uwocmcoqxm
`
`
`
`
`
`(/1 con
`
`wow
`
`wow
`
`
`
`
`
`co wmo$mu 908 Lo 96 £_>> @8865 26:00am won
`
`
`
`
`
`
`
`EwEoo mocmcwnxo 23: 22:2: 9: 52;;
`
`
`
`
`
`Page 8 of 39
`
`
`
`Patent Application Publication Sep. 25, 2003 Sheet 8 0f 16
`
`US 2003/0182315 A1
`
`2 6m:
`
`m Em:
`
`ovw
`
`:33
`
`EmvEmE Em;
`
`wow
`
`EmEoO
`
`Page 9 of 39
`
`
`
`Patent Application Publication
`
`Sep. 25, 2003 Sheet 9 of 16
`
`US 2003/0182315 A1
`
`mococmgxo
`
`
`
`
`
`m_85mausme£_>>5:_E%_9:m_.m_oomm<
`
`
`
`
`
`cmoEm:9:E5Eflcoo£_>>vofioommm
`
`woo
`
`m:Em
`
`
`
`._9om.mr_o9:E0:m.9o@_m;o.8__mgE:cm6o_wm
`
`mom
`
`
`
`
`
`9:9%:9.5mLmzofimco._m£ocmB3500
`
`
`
`
`
`§.om_m;o_um>_mo99:.6m_m..om.mcomc_c_mE2
`
`woo
`
`mc_.:.m
`
`Em:9.:.2
`
`
`
`9:ocmm_Bo..uLmcovw..om_mm9:mc_gEoo
`
`
`
`E_.._Em_o_cmmv_>oaBmcrzm§.oEmcovo:aEoo
`
`woo
`
`
`
`
`
`._mm:m£_>>cmfioommmmcEm.3om_m;ow>_mom.w_
`
`oom
`
`Page 10 of 39
`
`Page 10 of 39
`
`
`
`Patent Application Publication Sep. 25, 2003 Sheet 10 0f 16
`
`US 2003/0182315 A1
`
`EEO
`
`$0.50
`
`h EmQoEowg
`
`EmEoo
`
`BmnEmE 5m:
`
`
`
`$338 2250
`
`33mm 2%:
`
`L
`
`
`
`vi 000?
`
`Page 11 of 39
`
`
`
`Patent Application Publication
`
`Sep. 25, 2003 Sheet 11 of 16
`
`US 2003/0182315 Al
`
`mczmm59.3E:£<2:»o=u:<__<
`
`mmnwmcoo__meaS._mowcoo__mnE:._88:0__<+«xHH8mm2:5aco_§e>Boome.o_.o:»q__<+
`
`
`.1x,.43%m_:_._zmawNuvi853m_uw_>_-
`N4,FE‘NSé___mmcomw_emu<2:8+
`N3$-08.£1E8:2§:<+
`mmnwcwcamgo>8?mm:_._9:mmo._o<E32+
`
`Noo._‘
`
`
`
`flm__>m_n_>_>_+
`
`Ezmmm+
`
`
`
`m__£wn_«E22Ifseaom26._w.m__>m_n_2_o_u<“m__>m_n_262
`
`
`
`
`
`Page 12 of 39
`
`Page 12 of 39
`
`
`
`
`Patent Application Publication Sep. 25, 2003 Sheet 12 0f 16
`
`US 2003/0182315 A1
`
`E55
`
`38
`
`3Q
`2.65 25a
`
`I ?ctom 9E Hkiwi
`
`mom?
`
`-. NE
`
`ormr
`
`Page 13 of 39
`
`
`
`Patent Application Publication Sep. 25, 2003 Sheet 13 0f 16
`
`US 2003/0182315 A1
`
`
`
`
`
`>620 E0: 6m :32 mzwomm
`
`MN @m
`
`6w:
`$932166 m mm How E62 @255 a
`
`
`
`Hm mEw: wmmmnmpmo 90E 6 95 Em: A
`6:: 96 5mg
`3.6% @5098 9 www:
`
`
`
`mp 98 E5 22E 20E 6 ago 20805? com?
`
`%
`wow?
`
`foam?
`
`Page 14 of 39
`
`
`
`Patent Application Publication Sep. 25, 2003 Sheet 14 0f 16
`
`US 2003/0182315 A1
`
`Page 15 of 39
`
`
`
`Patent Application Publication Sep. 25, 2003 Sheet 15 0f 16
`
`US 2003/0182315 A1
`
`TwEmEoo mwcozv @BE ‘6 96 239E
`
`
`Em :32 m @255 8 @E 9: E %
`
`coEoQ m ucm Bmv 6:35 285 EmEo
`
`
`E8 E5 coEoQ m @522 @E m @530
`
`$53 205 Lo 96 59:00 E3 E5
`
`c0229 055w m mm 6w E69 225i
`
`
`
`
`$0.5m 20E 6 96 8 @E ERCEF a @E 9: 5 53% 9: B
`
`O 74
`com?
`
`v74
`wow?
`
`wow?
`
`wow?
`
`Page 16 of 39
`
`
`
`Patent Application Publication Sep. 25, 2003 Sheet 16 0f 16
`
`US 2003/0182315 A1
`
`
`
`Rica :39;
`
`
`
`2852 29:00
`
`EwEoo aim
`
`39
`
`29‘
`
`02
`
`
`
`25:2 EmEoO
`
`wow?
`
`$22552
`@550:
`
`0Q
`
`
`_ @032. QESQEQO
`? 29552 20E i6 20 $391
`
`EUQE 5:5 AwtoEEwQ 2: 9m6oww<
`
`m >9 8622 2 E8 E5 EoEoo
`
`E950
`26E mc?comon 2: “23% m @2961
`
`
`
`
`
`/{ com:
`
`
`
`//| mom:
`
`> K. 32
`
`@2552
`@CE: EoEoo 26E 982 2 BEBE
`
`
`
`F 98
`
`||||||||||_
`
`@Ew: 2628 268 232 B 3822
`
`we E55 9: E 9% £8
`> F 82
`
`Page 17 of 39
`
`
`
`US 2003/0182315 A1
`
`Sep. 25, 2003
`
`METHODS AND SYSTEMS FOR PROCESSING
`PLAYLISTS
`
`TECHNICAL FIELD
`
`[0001] This invention relates generally to media process
`ing methods and systems.
`
`BACKGROUND
`
`[0002] Many computing devices such as personal com
`puters, desk top computers and various handheld computing
`devices include softWare that enables various types of media
`to be played or rendered on the device. Media-playing
`softWare can typically play or render digital media in the
`form of audio and video data. As an example, today people
`can insert a favorite CD into the CD receptacle of their
`personal computer and listen to their musical selection While
`they Work on the computer. Further, technological advances
`in media playing applications have enabled people to not
`only store media content ?les (such as music and video ?les)
`on their computer for subsequent rendering, but have media
`content streamed to their computing device for rendering in
`real time.
`
`[0003] One of the tools that has evolved in connection
`With various media-playing applications is the playlist. A
`playlist is a customiZed list of ?les that a user can de?ne and
`Which Will be played or rendered by a media-playing appli
`cation. Aplaylist can enable the user to group various media
`content together to be played in any order speci?ed by the
`user. For example, a user can de?ne a playlist that includes
`tracks from particular CDs, a radio station, and a video. The
`playlist groups the media content and stores the location of
`the media content so that the media content can be accessed
`at the appropriate time by the media-playing application and
`rendered for the user. Thus, playlists can enable a user to
`custom design their oWn media experience.
`[0004] HoWever, While playlists have, in general, provided
`the user With the opportunity to craft a custom-designed
`media experience, contemporary playlists suffer from a
`serious draWback that does not make the user experience all
`that it could be. Speci?cally, playlists are typically static in
`nature and are generally unintelligent. That is, the content
`that typically comprises the playlist (i.e. the list of ?les
`and/or content locations associated With content that is to be
`played) is generally ?xed at the time it is authored and
`remains that Way until the user physically edits the playlist.
`Thus, playlists at best tend to be ?at lists of items that do not
`change until physically re-authored by a user.
`
`[0005] Aside from the issue of playlists and their per
`ceived inadequacies, a more fundamental problem exists and
`pertains to the inability of the user to have a user-speci?c
`media experience provided for them. Speci?cally, most
`often the user experiences media content passively. They
`may turn on a radio station or play a particular CD and are
`forced to passively listen to the content unless they proac
`tively take some step to change the content to Which they are
`listening. Yet, many users have strong opinions as to What
`they Wish to listen to.
`
`[0006] Accordingly, this invention arose out of concerns
`associated With providing improved media processing meth
`ods and systems—particularly methods and systems that can
`?exibly accommodate users on an individual basis. In addi
`
`tion, this invention arose out of concerns associated With
`providing improved playlists for use by media processing
`methods and systems.
`
`SUMMARY
`[0007] Various systems and methods described beloW per
`mit a user’s content experience (e.g. music playing experi
`ence) to be monitored and for metadata describing this
`experience to be collected. The metadata is developed by
`monitoring a number of different parameters that are asso
`ciated With the user’s content experience. This metadata can
`be dynamically updated as a user experiences media content
`and then used to impart to the user a personaliZed experience
`that is tailored to that speci?c user. The metadata can be
`actually associated With the speci?c media content that a
`user can play. In some embodiments, a user’s metadata and,
`in some instances the associated media content, can be
`provided across a Wide variety of computing devices on
`Which the user may experience the media content, thus
`standardiZing the user’s personaliZed media experience. As
`metadata for the user is modi?ed, it can be reconciled across
`one or more devices so that the user’s metadata is generally
`up-to-date.
`[0008] In some embodiments, multiple users can share one
`or more computing devices. In these embodiments, each of
`the user’s metadata can be collected and used to provide
`each user an experience that is unique for them. This
`metadata can, as described above, be provided across and
`reconciled on multiple different computing devices that the
`users might use to experience media content.
`
`[0009] In addition, inventive neW ?le structures and for
`mats are provided that conveniently enable one or more
`user’s metadata to be collected and, in some instances,
`bundled With its associated content. Privacy concerns are
`addressed, in some embodiments, by uniquely identifying
`individual users in a manner that they and perhaps others
`Within their group can recogniZe, but Which others outside
`the group are not able to recogniZe and/or backWard decode
`to ascertain the user’s actual identity.
`[0010] Using the above-referenced systems and methods,
`intelligent or “smart”playlists can be provided Which, in
`some embodiments, can be dynamically and automatically
`updated to re?ect current user experiences. The smart play
`lists can make use of the rich and robust collection of user
`metadata to tailor playlists for individual users that accu
`rately re?ect the user’s desired experiences, thus providing
`a highly personaliZed and enjoyable content experience.
`
`[0011] In one implementation, a novel ?le structure or
`format is provided to de?ne individual playlist ?les that can
`be processed by a playlist engine. The playlist engine can, in
`some embodiments, process the playlist ?le to access one or
`more ?lters that can be used to execute queries against one
`or more databases that contain the user metadata. The
`queries can also be contained in the playlist ?le.
`
`BRIEF DESCRIPTION OF THE DRAWINGS
`[0012] FIG. 1 is a block diagram of an exemplary com
`puter system that can be utiliZed to implement one or more
`embodiments.
`
`[0013] FIG. 2 is a block diagram illustrating a media
`playing application and a content database in accordance
`With one embodiment.
`
`Page 18 of 39
`
`
`
`US 2003/0182315 A1
`
`Sep. 25, 2003
`
`[0014] FIG. 3 is a How diagram illustrating steps in a
`method in accordance With one embodiment.
`
`[0015] FIG. 4 is a block diagram illustrating different
`types of computing devices.
`
`[0016] FIG. 5 is a How diagram illustrating steps in a
`method in accordance With one embodiment.
`
`[0017] FIG. 6 is a block diagram illustrating an illustrative
`computing system in accordance With one embodiment.
`
`[0018] FIG. 7 is a How diagram illustrating steps in a
`method in accordance With one embodiment.
`
`[0019] FIG. 8 is a block diagram that illustrates aspects of
`one embodiment.
`
`[0020] FIG. 9 is a How diagram illustrating steps in a
`method in accordance With one embodiment.
`
`[0021] FIG. 10 is a block diagram that illustrates an
`exemplary system in accordance With one embodiment.
`
`[0022] FIG. 11 is a diagrammatic representation of an
`exemplary user interface in accordance With one embodi
`ment.
`
`[0023] FIG. 12 is a block diagram that illustrates archi
`tectural aspects of one embodiment.
`
`[0024] FIG. 13 is a How diagram illustrating steps in a
`method in accordance With one embodiment.
`
`[0025] FIG. 14 illustrates an exemplary ?le format in
`accordance With one embodiment.
`
`[0026] FIG. 15 is a How diagram illustrating steps in a
`method in accordance With one embodiment.
`
`[0027] FIG. 16 is a How diagram illustrating steps in a
`method in accordance With one embodiment.
`
`DETAILED DESCRIPTION
`
`[0028] OvervieW
`
`[0029] Various systems and methods described beloW per
`mit a user’s content experience (e.g. interaction experience
`or music playing experience) to be monitored and for
`metadata describing this experience to be collected. As used
`in this document, the term “metadata” Will be understood to
`include one or more metadata items. The metadata is devel
`oped by monitoring a number of different parameters that are
`associated With the user’s content experience. This metadata
`can be dynamically updated as a user experiences or inter
`acts With media content and then used to impart to the user
`a personaliZed experience that is tailored to that speci?c
`user. In some embodiments, the metadata can be actually
`associated With the speci?c media content that a user can
`experience by playing the media content. Additionally, the
`user can experience media content in other Ways such as
`managing the media content, moving or copying the media
`content from one location to another, or a variety of other
`Ways outside of simply listening to or playing the media
`content. All of these various operations imply, in some Way,
`that the user has a certain care for or interest in the media
`content. The fact that the user Went to media content and
`operated on it somehoW implies that there is an implicit
`interest in that media content that is greater than simply
`playback.
`
`[0030] In some embodiments, a user’s metadata and, in
`some instances the associated media content, can be pro
`vided across a Wide variety of computing devices on Which
`the user may experience the media content, thus standard
`iZing the user’s personaliZed media experience. As metadata
`for the user is modi?ed, it can be reconciled across one or
`more devices so that the user’s metadata is generally up-to
`date.
`
`[0031] In some embodiments, multiple users can share one
`or more computing devices. In these embodiments, each of
`the user’s metadata can be collected and used to provide
`each user an experience that is unique for them. This
`metadata can, as described above, be provided across and
`reconciled on multiple different computing devices that the
`users might use to experience media content.
`
`[0032] In addition, inventive neW ?le structures and for
`mats are provided that conveniently enable one or more
`user’s metadata to be collected and, in some instances,
`bundled With its associated content. Privacy concerns are
`addressed, in some embodiments, by uniquely identifying
`individual users in a manner that they and perhaps others
`Within their group can recogniZe, but Which others outside
`the group are not able to recogniZe and/or backWard decode
`to ascertain the user’s actual identity.
`
`[0033] Using the above-referenced systems and methods,
`intelligent or “smart”playlists can be provided Which, in
`some embodiments, can be dynamically and automatically
`updated to re?ect current user experiences. The smart play
`lists can make use of the rich and robust collection of user
`metadata to tailor playlists for individual users that accu
`rately re?ect the user’s desired experiences, thus providing
`a highly personaliZed and enjoyable content experience.
`
`[0034] In one implementation, a novel ?le structure or
`format is provided to de?ne individual playlist ?les that can
`be processed by a playlist engine. The playlist engine can, in
`some embodiments, process the playlist ?le to access one or
`more ?lters that can be used to execute queries against one
`or more databases that contain the user metadata. The
`queries can also be contained in the playlist ?le. In addition,
`support is provided in the ?le structure for computing
`devices that are not capable of executing database queries,
`but Which can be used by the user to access and play content
`contained in a playlist. This support comes in the form of a
`static portion of the ?le format that contains a content list
`that essentially lists the various content that is the subject of
`the playlist. This static portion can be developed and pro
`vided into the ?le Whenever a playlist engine executes a
`database query on a computing device that supports such
`queries.
`[0035] In addition, in some embodiments, the playlists
`that are generated are able to intelligently repair themselves.
`That is, Within the ?le structure various paths to media
`content can be de?ned. If media content is, for some reason
`moved such that it does not coincide With its path, the ?le
`structure includes data that can be used to ?nd the media
`content and to intelligently repair or replace the old path
`With a neW, accurate path.
`
`[0036] In some embodiments, intelligent processing can
`be done locally, Within the realm of the user’s computing
`environment. That is, all personaliZation can be done Within
`the user’s purvieW and need not be made available to others.
`
`Page 19 of 39
`
`
`
`US 2003/0182315 A1
`
`Sep. 25, 2003
`
`Thus, the user can have intelligent personalization Without
`any of their information being divulged to another party.
`
`100, and it includes both volatile and non-volatile media,
`removable and non-removable media.
`
`[0037] Exemplary Computer Environment
`
`[0038] FIG. 1 illustrates an example of a suitable com
`puting environment 100 on Which the system and related
`methods described beloW can be implemented.
`
`[0039] It is to be appreciated that computing environment
`100 is only one example of a suitable computing environ
`ment and is not intended to suggest any limitation as to the
`scope of use or functionality of the media processing system.
`Neither should the computing environment 100 be inter
`preted as having any dependency or requirement relating to
`any one or combination of components illustrated in the
`exemplary computing environment 200.
`
`[0040] The inventive techniques can be operational With
`numerous other general purpose or special purpose comput
`ing system environments, con?gurations, or devices.
`Examples of Well knoWn computing systems, environments,
`devices and/or con?gurations that may be suitable for use
`With the described techniques include, but are not limited to,
`personal computers, server computers, thin clients, thick
`clients, hand-held or laptop devices, multiprocessor systems,
`microprocessor-based systems, set top boxes, programmable
`consumer electronics, netWork PCs, minicomputers, main
`frame computers, distributed computing environments,
`hand-held computing devices such as PDAs, cell phones and
`the like.
`
`[0041] In certain implementations, the system and related
`methods may Well be described in the general context of
`computer-executable instructions, such as program modules,
`being executed by a computer. Generally, program modules
`include routines, programs, objects, components, data struc
`tures, etc. that perform particular tasks or implement par
`ticular abstract data types. The inventive techniques may
`also be practiced in distributed computing environments
`Where tasks are performed by remote processing devices that
`are linked through a communications netWork. In a distrib
`uted computing environment, program modules may be
`located in both local and remote computer storage media
`including memory storage devices.
`
`[0042] In accordance With the illustrated example embodi
`ment of FIG. 1, computing system 100 is shoWn comprising
`one or more processors or processing units 102, a system
`memory 104, and a bus 106 that couples various system
`components including the system memory 104 to the pro
`cessor 102.
`
`[0043] Bus 106 is intended to represent one or more of any
`of several types of bus structures, including a memory bus
`or memory controller, a peripheral bus, an accelerated
`graphics port, and a processor or local bus using any of a
`variety of bus architectures. By Way of example, and not
`limitation, such architectures include Industry Standard
`Architecture (ISA) bus, Micro Channel Architecture (MCA)
`bus, Enhanced ISA (EISA) bus, Video Electronics Standards
`Association (VESA) local bus, and Peripheral Component
`Interconnects (PCI) bus also knoWn as MeZZanine bus.
`
`[0044] Computer 100 typically includes a variety of com
`puter readable media. Such media may be any available
`media that is locally and/or remotely accessible by computer
`
`[0045] In FIG. 1, the system memory 104 includes com
`puter readable media in the form of volatile, such as random
`access memory (RAM) 110, and/or non-volatile memory,
`such as read only memory (ROM) 108. Abasic input/output
`system (BIOS) 112, containing the basic routines that help
`to transfer information betWeen elements Within computer
`100, such as during start-up, is stored in ROM 108. RAM
`110 typically contains data and/or program modules that are
`immediately accessible to and/or presently be operated on
`by processing unit(s) 102.
`[0046] Computer 100 may further include other remov
`able/non-removable, volatile/non-volatile computer storage
`media. By Way of example only, FIG. 1 illustrates a hard
`disk drive 128 for reading from and Writing to a non
`removable, non-volatile magnetic media (not shoWn and
`typically called a “hard drive”), a magnetic disk drive 130
`for reading from and Writing to a removable, non-volatile
`magnetic disk 132 (e.g., a “?oppy disk”), and an optical disk
`drive 134 for reading from or Writing to a removable,
`non-volatile optical disk 136 such as a CD-ROM, DVD
`ROM or other optical media. The hard disk drive 128,
`magnetic disk drive 130, and optical disk drive 134 are each
`connected to bus 106 by one or more interfaces 126.
`
`[0047] The drives and their associated computer-readable
`media provide nonvolatile storage of computer readable
`instructions, data structures, program modules, and other
`data for computer 100. Although the exemplary environment
`described herein employs a hard disk 128, a removable
`magnetic disk 132 and a removable optical disk 136, it
`should be appreciated by those skilled in the art that other
`types of computer readable media Which can store data that
`is accessible by a computer, such as magnetic cassettes, ?ash
`memory cards, digital video disks, random access memories
`(RAMs), read only memories (ROM), and the like, may also
`be used in the exemplary operating environment.
`
`[0048] A number of program modules may be stored on
`the hard disk 128, magnetic disk 132, optical disk 136, ROM
`108, or RAM 110, including, by Way of example, and not
`limitation, an operating system 114, one or more application
`programs 116 (e.g., a multimedia application program),
`other program modules 118, and program data 120. A user
`may enter commands and information into computer 100
`through input devices such as keyboard 138 and pointing
`device 140 (such as a “mouse”). Other input devices may
`include a audio/video input device(s) 153, a microphone,
`joystick, game pad, satellite dish, serial port, scanner, or the
`like (not shoWn). These and other input devices are con
`nected to the processing unit(s) 102 through input inter
`face(s) 142 that is coupled to bus 106, but may be connected
`by other interface and bus structures, such as a parallel port,
`game port, or a universal serial bus (USB).
`
`[0049] A monitor 156 or other type of display device is
`also connected to bus 106 via an interface, such as a video
`adapter 144. In addition to the monitor, personal computers
`typically include other peripheral output devices (not
`shoWn), such as speakers and printers, Which may be con
`nected through output peripheral interface 146.
`
`[0050] Computer 100 may operate in a netWorked envi
`ronment using logical connections to one or more remote
`
`Page 20 of 39
`
`
`
`US 2003/0182315 A1
`
`Sep. 25, 2003
`
`computers, such as a remote computer 150. Remote com-
`puter 150 may include many or all of the elements and
`features described herein relative to computer.
`
`[0051] As shown in FIG. 1, computing system 100 is
`communicatively coupled to remote devices (e.g., remote
`computer 150) through a local area network (LAN) 151 and
`a general wide area network
`152. Such networking
`environments are commonplace in offices, enterprise-wide
`computer networks, intranets, and the Internet.
`
`[0052] When used in a LAN networking environment, the
`computer 100 is connected to LAN 151 through a suitable
`network interface or adapter 148. When used in a WAN
`networking environment,
`the
`computer 100 typically
`includes a modem 154 or other means for establishing
`communications over the WAN 152. The modem 154, which
`may be internal or external, may be connected to the system
`bus 106 via the user input interface 142, or other appropriate
`mechanism.
`
`In a networked environment, program modules
`[0053]
`depicted relative to the personal computer 100, or portions
`thereof, may be stored in a remote memory storage device.
`By way of example, and not limitation, FIG. 1 illustrates
`remote application programs 116 as residing on a memory
`device of remote computer 150. It will be appreciated that
`the network connections shown and described are exemplary
`and other means of establishing a communications link
`between the computers may be used.
`
`[0054] Monitoring a User’s Content Experience
`
`In the embodiments described below, a user’s so-
`[0055]
`called content experience is monitored and data describing
`this experience is maintained. This maintained data can then
`form the basis for a robust collection of future user-specific
`content experiences. In the example that follows, the content
`that is utilized for illustrative purposes is music content,
`such as that a user would listen to on a computing device via
`an appropriate media-playing application. It is to be appre-
`ciated that the various inventive principles can be utilized in
`connection with content other than, or not solely music
`content, e.g. video content, audio/video content,
`images/
`photos and the like. In addition, it is to be appreciated and
`understood that the user can experience the media content in
`ways other than simply playing the media content. Examples
`of this are noted above.
`
`[0056] FIG. 2 shows but one exemplary system that can
`be utilized to monitor a user’s content experience and
`maintain data that is associated with that experience. Here,
`a media-playing application 200 is provided and can com-
`prise part of a user’s computing device (e.g. personal
`computer, handheld and the like). An experience-monitoring
`module 202 is provided and, in this example, comprises part
`of the media-playing application. Such need not, however,
`be the case. For example, the experience-monitoring module
`can comprise a separate component or part of another
`component. In addition, the experience-monitoring module
`can be located locally on the user’s computing device, or
`remotely on another computing device such as a server.
`
`[0057] A content database 204 is provided and contains
`content that is renderable or playable by the media-playing
`application 200. The term “database” as used in this docu-
`ment
`is intended to mean not only traditional database
`structures, but more generally, collections of items, materi-
`
`Page 21 of 39
`
`als or content such as files and the like. The content database
`
`can be located locally on the user’s computing device.
`Additionally or alternately, the content database or portions
`thereof can be located remotely. The content database can
`contain a content collection 206 comprising one or more
`pieces of content 208 that can be played or rendered by the
`media-playing application 200. Each piece of content 208
`includes a content portion (designated as “content”), and can
`include a user metadata portion (designated “user meta-
`data”).
`
`In the illustrated example, the content collection
`[0058]
`206 comprises a collection of music content. Additionally,
`each piece of content 208, in this example, comprises an
`individual song or track that can be played by the media-
`playing application. It is to be appreciated that the level of
`granularity at which the content pieces are provided can be
`other than at the song or track level. Such content portions
`are typically provided as individual files or entries. Thus, in
`this example, the user has many different songs or tracks that
`are available for rendering by the media-playing application.
`
`[0059] As a user selects various pieces of content 208 to
`be rendered by the media-playing playing application, the
`experience-monitoring module 202 can make a note of this
`and can produce user metadata that is provided back into the
`user metadata portion of the piece of content. Thus, relevant
`current data that is associated with the user’s content expe-
`rience can be developed and associated with the particular
`content for future use. This developed metadata can be
`tightly bound to the content so that the user’s experience or,
`in this example the user’s “listening habits” can be learned
`and subsequently used, as will become more apparent below.
`
`[0060] FIG. 3 is a flow diagram of steps in a method in
`accordance with one embodiment. The method can be
`
`implemented in any suitable hardware, software, firmware,
`or combination thereof. In but one embodiment, the method
`can be implemented in software.
`
`[0061] Step 300 provides media content that can be ren-
`dered by a media-playing application. Any suitable content
`can be provided such as digital audio, digital video, digital
`audio/video, and/or photos/images and the like.
`In one
`embodiment, such as one that is discussed above, the media
`content is provided as music content. Typically, although not
`exclusively, such content is provided as a file or files that are
`located on a local computing device such as a user’s
`personal computer or handheld device. Such content can,
`however, be provided on a remotely-accessible device such
`as another computer or server linked via a network. Step 302
`monitors a user’s media-playing experience. This step can
`be implemented by noting, among other things, what content
`is experienced by the user and when it is