`
`control functions, Using such a compactuserinterface to navigate and select among hundreds of
`
`songsis inefficient and often frustrating. The display screen can only show a few songtitles at
`one time, and the limited controls makeit difficult for a userto arbitrarily select, or move among,
`the songs.
`:
`.
`
`|
`
`Thecreation ofplaylists is one technique to organize the playing of songs. A set
`
`ofsongs can be included in a playlist which is given a name and stored. Whenthe playlist is
`accessed, the set of songs can be playedutilizing various formats such as sequential play or
`shuffle.
`
`However, the creationofplaylists itselfbecomes problematic as the numberof
`songs increases, since the user often arbitrarily selects songs from a large numberoftracks to
`
`formaplaylist. This selection mechanism: can be fairly tedious; does not necessarily produce
`
`playlists that are of interest to the user over the course of time; may not remain up-to-date if new
`songsare addedthatlogically fit into a previously created playlist (e.g. “Favorites by Band X”
`might becomeoutofdateif a newfavorite by Band X is added after the playlist was created):
`
`and leads to “lost” songs that are not members ofanyplaylist.
`Accordingly, improved techniques for organizing and groupingtracks useful in a
`portable music player are needed. Further, itis desirable to provide a user interface suitable fora
`smal} device. The userinterface should allow a user to efficiently navigate among, andselect
`from, many items stored in the device.
`
`SUMMARYOF THE INVENTION
`The present invention provides an efficient user interface for a small portable music player. The-
`invention is suitable for use with a limited display area and small numberofcontrols to allow a
`userto efficiently and intuitively navigate among, and select, songs to be played, By using the
`invention, very large numbers of songs canbe easily accessed and played.
`Oneaspect of
`the invention includes an overlapping hierarchy of categories.
`
`Categories include items that can also be included in other categories so that the categories
`“overlap” with each other, Thus, a songtitle can be accessed in multiple different ways by
`starting with different categories. For example, a preferred embodimentofthe invention uses the
`
`15
`
`20
`
`25
`
`30
`
`SONYExhibit 1004 - Page 5013
`
`
`
`top-level categories “Albums”,“Artists”, “Genres” (or styles), and “Play Lists”. Within the
`Albums category are names ofdifferent albums of songs stored in the device. Within each
`album are the album tracks, or songs, associated with that album. Similarly, the Artists category
`
`includes namesofartists which are, in turn, associated with their albums and songs, The Genre
`
`category includes types of categories of music such as “Rock”, “Hip Hop”, “Rap”, “Easy
`
`Listening”, etc. Within these sub-categories are found associated songs. Finally, the “Play
`
`Lists” category includescollections of albums and/or songs which are typically defined by the
`user.
`
`Advantageous use is madeofthe overlapping hierarchy to allow the userto
`
`10
`
`quickly designate a songfor playback, The device uses three “soft” pushbuttons that have
`assignable functions. The interface maintains consistent button functionality whenever possible
`and uses uniform command names and operations on different types of items so that the interface
`
`is more intuitive, For example, the user can open and queue both albumsand songs with
`predictable results.
`
`Theinterface also provides for multiple functions for-a single control. For
`.
`example, a “Play” button can act, ina first function, to play a cusrently-selected song. The Play |
`button can act, in a second function, to cycle through different playback modes, The modes can
`be, e.g., (1) playback of songs from a hard disk: (2) playback ofmusic from a radio receiverbuilt
`into the device; and GB ) playback ofvoice messages. Thefirst function for the Play button can be
`activated by momentarily depressing the Play button for a short period of time. The second
`function is invoked by depressing the Play button for a longer perjod oftime whereuponthe.
`device cycles through the different modes. Other ways of invoking the functionsare possible
`
`such as where the second function is automatically entered from a powered-down state,
`In one embodiment, the invention provides a methodforselecting songs to be
`played.in an electronic audio device, wherein the device includes a display and one or more user
`input controls, wherein songs are organized into categories, albums, wherein songs and albums
`are associated with artist names. The methodincludes steps of displaying categories on the
`display; accepting signals from a user input control to select a category: displaying one or more
`songsin the selected category on the display; accepting signals from a.user input controlto select
`a displayed song; and entering selected songsinto a playlist queue, wherein the device plays
`back songsin the playlist queue.
`
`20
`
`25
`
`30
`
`SONYExhibit 1004 - Page 5014
`
`
`
`According to one aspect ofthe present invention, a technique is provided for
`organizing tracks on a portable music player by automatically filing tracks in a hierarchical order
`based onattributes of the tracks.
`
`According to another aspect of the invention, metadata is associated with each
`
`track that is used to automatically define the track’s appropriate place in the hierarchy.
`According to another aspectof the invention, the hierarchy is displayed on the
`portable music player so that a user can traverse the organizational hierarchy to find individual
`tracks ¢orfind playlists composedof logical groups oftracks.
`According to another aspectofthe invention, the hierarchyis derived by using
`metadata associated with the audio contentthat was obtained through any source ofmetadata
`(e.g. CDDB metadata, id3v2 metadata, other obtainable metadata) and subsequently stored with
`or alongside the file that stores the track.
`According to another aspect of the invention, a file is formatted so that an
`_Unaltered track is stored as file data and information aboutthe track is storedin file attribute
`files.
`
`' Other features andadvantagesofthe invention will be apparent in view ofthe
`
`following‘detaileddescriptionand appendeddrawings.
`
`BRIEF DESCRIPTION OF THE DRAWINGS
`Fig. 1 is a schematic diagram ofa tree structure for hierarchical filing of tracks;
`
`Fig. 2 is a definition file that specifies the hierarchy depicted in Fig. 1;
`
`10
`
`15
`
`20
`
`Fig. 3 is a user’s view of the hierarchy;
`Fig. 4 is a schematic diagram ofa userinterface displaying the hierarchical
`_
`category structure;
`:
`Fig. 5 is a diagram ofafile formatfor storing filed data and file attributes;
`
`25
`
`tree structure;
`
`Fig. 6 is a flow chart depicting steps for filing tracks according to the hierarchical
`:
`,
`
`Fig. 7 depicts a tree resulting from searchingthetracks; and
`
`30
`
`Fig. 8 depicts a formatfor a userinterface([[.]};
`
`Fig. 9 illustrates the NOMAD Jukeboxandits user interface controls;
`
`SONYExhibit 1004 - Page 5015
`
`
`
`Fig. 10 illustrates a sequence ofdisplay screens describing how to navigate to
`
`
`lowerlevels:
`
`Fig. 1) illustrates associations among items:
`Fig, 12 shows display screens used to search for a song or other item;
`Fig. 1B illustrates details of different items: and
`Fig. 14 illustrates a playback device coupled to a host computer system.
`
`SONYExhibit 1004 - Page 5016
`
`
`
`DETAILED DESCRIPTION OF THE PREFERRED EMBODIMENTS
`A preferred embodimentofthe invention will now be described inthe context of a
`portable personal player that plays audio files stored in memory. The files may be in MP3, wav.
`or other digital formats.
`,
`_
`,
`If the presently described embodiment, users are able to see thetracks on their
`player in some organized fashion otherthan as a singlelist of tracks. As wil] be described in
`more detail below,in one embodimenttracks are sorted utilizing a tree structure having branches
`
`labeled according to types of metadata assuciated with the tracks
`
`For example,a track recorded as “Golden Slumbers” by the Beatles that appears
`on their album “Hey Jude” might appear as a track under the album “Abbey Road”as well as a
`track underthelist oftracks by the Beatles. It might appear as a track underthe genre “Pop
`Rock”as well as “Songs from the 60’s.” Furthermore,the organization can have more complex
`hierarchies. For example,the category of “Pop Rock”might contain subcategories “British
`- Musicians,” “American Musicians” and “Other Musicians”. In all cases, the track is
`
`automatically filed into all appropriate locations without requiring user interaction.
`‘
`Inthe currently defined embodiment, a tree structureis defined bya file having
`the following structure.
`,
`,
`The first line of a TreeDef.inffile contains a version number:
`V10
`
`Each subsequentline(atleast in v1.0) contains lines of the following format:
`CATEGORY_NAME|TRACK_TYPE_MASK|CATEGORY_STRUCTURE'
`
`CATEGORY_NAMEs arethetop-level namesof the branch under whichtracks .
`are sorted. They include thingslike “Album,” “Artist,” “Voice Tracks,” “All Tracks,”etc.
`TRACK_TYPE_MASKs tell which typesof tracks are to befiled underthis
`particular branch. The actual value is a hexadecimal numerical value (in ‘Ox’ format, e.g. 0x01)
`generated by ORing the following flags together as appropriate:
`
`enum tTrackType
`
`{
`
`kTTNothing=0x00,
`
`10
`
`15
`
`20
`
`25.
`
`30
`
`SONYExhibit 1004 - Page 5017
`
`
`
`kTTSong=0x01,
`kTTVoice=0x02,
`
`kTTBook=0x04,
`
`kTTMacro=0x08,
`
`kTTPlaylist=0x10
`
`};
`
`” So,for example, the “Album”branch has a TRACK_TYPE_MASK of kTTSong,
`because only songs are filed under that branch, but the “All Tracks” branch has a
`TRACK_TYPE_MASK of(kTTSong | kTTVoice | kTTBook).
`Other elements might beadded to 1TrackType (e.g. KTTVideo) as appropriate.
`CATEGORY_STRUCTURES tell how to file the songs based on their metadata
`information. The CATEGORY_STRUCTURE is a string ofcharactersthattell, from left to |
`right, the order of hierarchy, The characters come from the following enum constants:
`
`enum tFileTag
`
`f
`
`kFTNone=@",
`kFTTrackType=T’,
`KFTTide=N’,
`kFTAudioFile="F',
`
`KFTArtist"M’,
`
`kFTAlbum="L’,
`
`kFTGenre='G',
`kFTSource='S',
`
`kFTYear=’Y’,
`
`kFTArtistCountry=’C’
`
`};
`
`10
`
`15
`
`‘20
`
`Thus, a CATEGORY_STRUCTURE ofLNtells to create a subcategory thatis a
`list of Albums, each of which containsalist of Tracks.
`
`30
`
`SONYExhibit 1004 - Page 5018
`
`
`
`In total, a line like:
`
`Album|0x01/LN
`.
`, Says to create a branch called “Album” which contains tracks of type kTTSong
`organized first by album name, and then by track name.
`Thefollowing is an example ofa tree definition file similar (though notidentical)
`to the hierarchy presented in the Nomad Jukebox product(the ‘B’ before each FileTag was used
`to identify that these are basic tags so that we wouldn’t run outofletters in the alphabet as we
`included more complex metadata — thus each groupoftwoletters represents a level in the
`hierarchy):
`
`V1.0
`
`Album|0x01/BLBN
`
`Artist]0x01)BMBN
`Genre|0x01|BGBN
`Voice Tracks|0x02{;BSBGBN
`
`Playlists(0x10[BN
`
`Macros|0x08|BN
`All Tracks|0x07/BN
`
`Fig. 1 depicts a hypothetical organization hierarchy. The tree shows how tracks
`might be listed (as leaves in the tree) after having been organized. Example values for nodes in
`the tree are shown as well. The same track may appear more than once as a leafin the tree, as
`described above,if it fits into multiple categories (c.g. a song that appears on the Abbey Road
`branch would also appear in the Beatles branch). In the example shown,thefirst branch contains
`
`tracks organized by album. As shown in the example, this music collection contains three tracks
`from “Abbey Road”and three tracks from “Hits from the 60’s”. The second branch contains
`tracks organized by artist, and sub organized by where theartist is from. Thus, a user browsing
`would first select the “Artists” branch and then choose between “British Artists” and “American
`Artists”. Finally, they would select the particular artist. In the third branch, all tracks are shown.
`Thetree definition file that would specify the hierarchy shown in Figure 1 is
`
`shown in Figure 2.
`
`10
`
`15
`
`20
`
`25
`
`30
`
`SONYExhibit 1004 - Page 5019
`
`
`
`Thefirst line identifies the versionofthetree definitionfile.
`
`The secondline defines the “Albums”branch. Thefirst part of the line,
`
`“Albums”defines the name of the branch, The second part, “0x01,” defines that all musical
`tracks should be categorized on this branch. Thethird part, “BLBN,”defines that the branch
`lists first the names ofall albums (BL)andthen tracks on those albums (BN).
`Thethird line defines the “Artists” branch. Thefirst part.of the line “Artists”
`defines the nameofthe branch. The secondpart, “0x01,” defines that all musical tracks should
`be categorized on this branch. The third part, “BCBMBN,”definesthat the branchlists first the
`names ofall countries whereartists in this collection come from (BC) and. underthose items, the
`artists’ names (BM), andthen tracks by those artists (BN).
`
`Fig. 3 shows what a user’s view of this hierarchy might be if he/she were shown a
`fully expanded view ofthe 6-song tree. Notice that éach song appearsthree times, once in each
`
`branch.
`
`/
`In consumerproducts thetree definefile is not edited directly but through a user
`interface, one example of which is depicted in Fig. 4. An exampleofa userinterface for viewing
`
`songs by category and editingthe tree structure is depicted in Fig. 4.
`An embodimentoftheinvention is utilized in the Nomad® Jukebox,
`manufactured by the assigneeofthe present invention, and described more fully in the copending
`application, filed on the samedate as the present application, entitled “System for Selecting and
`Playing Songs in a Playback Device with a Limited UserInterface,” (Attny. Docket No. 17002-
`020800).
`i
`In a preferred embodiment, metadata is associated with each track and includes
`‘such informationas title, genre, artist name,type, etc. In the preferred embodiment, software
`stored in a portable player and executed by the onboard processor automatically files each track ,
`in the correct category utilizing the associated metadata andthe tree definefile. The program
`code can be stored in any computer readable medium including magnetic storage, CD ROM,
`
`optical media, or digital data encoded onan electromagnetic signal.
`Thus, the user is automatically provided with a powerful and flexible tool for
`organizing and categorizingthe tracks stored on the portableplayer.
`If the tracks are formatted in MP3 format the metadata can be stored in ID3 tags
`included in the MP3file. In one embodiment ofthe invention,the tracks are stored in alternate
`
`10
`
`15
`
`20
`
`25
`
`30
`
`SONYExhibit 1004 - Page 5020
`
`
`
`file format includingfile data andfile attributes. Thefile data is the music trackitself and the
`
`file attributes part of the file includes fields of arbitrary size which are used to store metadata -
`characterizingthe track stored as thefile data, Again this metadata includes information about
`the track suchas title, genre, artist name,type,etc.
`,
`There are several advantages to using the alternate file format. Metadata oftypes
`. hot easily included in an [D3tagcan be utilized. Further, the original track formatis not
`changed,so that error correction data suchas checksums are valid. Finally, any file format can
`be used (e.g.WAV, WMA,etc.) because the metadata is stored separately, and thus audio
`formats that have limited support for metadata can still be stored on the portable player in native
`
`format without transcoding. The formatted files are formed by software stored in the portable
`music player and executed by an on-board processor.
`The metadatafor each trackis utilized to file each track, using the categories
`defined in the hierarchical structure as described above, without any input from the user.
`Fig. 5 is a schematic diagram ofthe altemative file format includingfile data in
`the form of an MP3track, and metadatafields for holding data indicating the nameofthe album
`thetrack is from, the nameofthe song,the genre ofthe song, and the type oftrack.
`,
`A particular embodiment ofa file format will now be described. All tracks are
`created with someset ofattributes as shown below:
`
`10
`
`15
`
`Binary
`
`= 0, ASCT = 1
`
`Length ofattribute namestrin
`
`Attribute name stn
`
`Attribute data
`
`2
`
`N M
`
`20
`
`DefinitionofTrackInfo Data Field
`
`
`fraoer[size_|
`
`
`JascibueCom[0[2|thenumberafatiflowforthetack_|
`jatypefo.[ap
`Jacenameten[6[2|en
`jautsaten[6[4[rengofarituese|
`
`laininerowe |
`Jaceipiafrom|_|
`
`eeEP
`
`
`
`
`SONYExhibit 1004 - Page 5021
`
`
`
`
`
`ARTIST[Optional=[ascitsving
`
`
`
`
`
`te
`
`AttrNtype
`
`Attr 1 name len
`
`Attrl data len
`
`Atte] Name
`
`Required Attributes
`
`Acwibut Name
`
`ty
`LE
`
`
`
`CODEC
`
`TRACK 1D
`
`ALBUM
`
`
`
`Required By Jukebox
`
`Attr | Data *
`
`
`
`
`
`5
`
`10
`
`Q
`
`EN
`
`ASCH strin
`
`LENGTH ere
`
`TRACK SIZE
`
`TRACK NUM
`
`—_
`
`
`
`nck within bum
`
`
`
`
`These attributes can be subsequently changeable via a host application,
` - manning ona personal computer connected to the portable music player.
`Fig. 6 shows a flow chart of an embodimentthe process used to build the
`hierarchical database oftracks. It starts by iterating through each track, and, for each track,
`
`In this
`iterating through each branchtofindifthe track belongs on the branch, and,if'so, where.
`case, the term track could refer to any content, e.g. a music track, a spoken word track, or even a
`videotrack.
`
`SONYExhibit 1004 - Page 5022
`
`
`
`Also, the hierarchi¢al catalog of tracks can be used to form playlists in a
`structured manner. For example, ifa user wants to hear Jazz and Blues the entire sub-categories |
`canbe selected to form one playlist.
`An alternative hierarchical catalog generation technique will now be described.
`Inthis alternative embodiment, at system startup and as tracks are added or changed, the
`hierarchy is generated as an in-memory tree structure. Each track is added to the tree using the
`categories ALBUM, ARTIST and GENRE.
`:
`Thefollowing example shows the algorithm for adding a track. For clarity, only
`the attributesused by the tree are shown.
`
`
`
`
`
`joensen”
`
`jreackmmfp
`
`
`
`
`
`
`
`
`
`Thefollowing function is executed to build the in-memory memory tree.
`
`Build Tree
`For each track,
`Add Track To Category(Album, Track)
`‘Add Track To Category(Artist, Track)
`Add Track To Category(Genre,Track)
`End of Build Tree
`
`Fig. 7 depicts a tree which could result from implementing Build Tree() function.
`Notethat “Stardust” does not have any entries for Album or Artist. The host software running
`on a computer connected to the portable music playercould be utilized to add missingattributes
`to the “Stardust” track and, optionally, edit thetitle attribute. The Build TreeQ function would
`then reinsert this track in the correctlocation in thetree.
`
`12
`
`5
`
`10
`
`15
`
`20
`
`25
`
`SONYExhibit 1004 - Page 5023
`
`
`
`Fig. 8 is an embodiment ofa userinterface according to another embodiment of
`the invention. In this example the root node is labeled “My Configuration” and the Playlist
`category has been selected and the Playlist subcategory “Meddle” has been selected. Note that
`the types of Metadata, in this example, Track Name, Artist, Album, Tempo and .
`
`Dance,are listed across the top of the screen, and the attribute values for eachtrack are listed in a
`row across the screen. Various contro] buttons are displayed to the right ofconfiguration
`windowthat facilitate quickly invoking selected processing ona selectedtrack.
`As noted above, a preferred embodimentof the present inventionis incorporated
`into a product manufactured and distributed by Creative Technology, Ltd, The productis called
`the “NOMADJukebox.” The following description describes further details of the display
`screensand interface controls,
`
`Fig. 9 illustrates the NOMAD Jukebox andits user interface contro}s.
`
`In Fig.9, electronicaudio device 100 measures about 5.5" wide by 5.5"tall by 1°
`thick. Display screen 102 is about 2" wide by 1" tall. Display screen 102 includes different
`regions such as main region 104 and sofi button function description region 1 06.
`Three soft buttons are located at 108: including buttons 110, 112 and 114, The
`specific command, o
`ction,
`that_a
`f the soft
`buttons
`form when
`depressedjs indicated
`by theJabel in soft button function description region 106. Thus ‘the function ofsoft button 112
`(as shown in Fig. 9} is “open,” the function of soft button 114 is “search” while soft button 110 is
`currently not assigned a function.-
`The othereight buttons on dévice 100 perform essentially the samefunctionsat
`alltimes, Jn other words, they are not subject to function changes accordingto soft button ~
`function description area 106, These buttons include Library button 116, EAX and System
`button 118, Skip Backward button 120, Play button122, Stop button 124, Skip Forward button *
`126, Scroll Up button 128 and Scroll Down button 130, However, as discussed below, these
`buttons (or any type ofcontrols used with the device) can include alternate functionality thatis
`invoked in different ways.
`‘
`The device uses viswal cues, or indicators, in the display. When an item is
`highlighted it indicates that the item is the “current” item, or currently-selected item, which is
`susceptible to be operated on by a subsequentuser action - such as playback, or expansion of the
`item. In Fig. 1, screen 102 shows thatthe item, “ALBUMS,”is highlighted, The highlighted
`
`10
`
`20
`
`25
`
`30
`
`13
`
`SONYExhibit 1004 - Page 5024
`
`
`
`item can be acted upon by using the soft buttons, or another button, as discussed below. The
`current item can be changed by using Scroll Up button 128 and Scroll Down button 130 to move
`the highlight up or down,respectively, throughout a list ofdisplayed items,
`,
`Icons are used to provide additional visual cues for an item, Jn Fig. 1, each ofthe
`categories has a category iconto the left of it. The category icon, which maynot be distinctly
`visible in the Figure,illustratesa first box connected by lines to additional boxes below thefirst
`box. The icon depicts a hierarchy andillustrates the property of categories,i.e., that categorics
`can contain additional categorics, songs or other items,
`Fig. 10 illustrates a sequence of display screens describing how to navigate to
`
`10
`
`lower levels.
`
`In Fig. 10, library category screen 150 shows the display as it appears when the
`
`15
`
`user depresseslibrary button 116 of Fig. 9. A preferred embodimentof the device uses 4 first-
`level categories. These are “Albums”, “Artists,” “Styles” and “Play Lists”, Each ofthese
`categories can “contain,” or be associated with, other categories, songs, or items,
`
`Note that in library category screen 150 ALBUMSis currently highlighted. By
`.
`depressing soft button 112 of Fig. 9, the “open” commandis performed on the highlighted
`catepory, as indicated by the labeling ofsoft button 112 and soft button function description area
`152 ofFig. 10.
`,
`
`Lists screen 154isdisplayed as a result of a useropeningthe Albumscategoryof
`20
`library category screen 150. Lists screen 154 showsitems within the Albums category such as
`commercial albums of multiple songs from a record label, pre-madelists or collections created
`by a user, or other predefined lists or collections of songs or recordings.
`:
`In Fig. 10, lists screen 154 shows each item as alist of songs. This is shown
`visually by the icon to the Jeft ofeach item which depicts a miniaturelist, Possible soft button
`commands are “Close”, “Open” and “Queue”. These commands comespondto soft buttons 110,
`
`312 and 114, respectively. If the user selects the Close command, the display reverts to library
`
`category screen 150. If the user selects the Open command, the display showstracks screen 156.
`Altematively, the user can-select the Queue commandto instruct the device to placeall the songs
`from the selected (i... highlighted)
`list into the play
`list for eventual
`playback. Yet another
`
`30
`
`option allows the userto press play button 122 of Fig. 9 to cause any currently-selected songs or
`a list of songs(e.g., an album) to immediately be played,
`
`14
`
`SONYExhibit 1004 - Page 5025
`
`
`
`Retumingto Fig. 10, tracks screen 156 showsthata single song called “JukeBox
`Demo”is in the jist.
`The list is also called JukeBox Demo as shown
`in ]i
`n 154. Track
`
`screen 156 shows possible soft commandsassigned to buttons, namely “Close”, “Details” and
`“Queue.” The Close button performs the samefunction as before ~ it retumsthe userto the
`previous screen which,in this case,is lists screen 154. The user can also select the Details
`
`command to cause details of the song JukeBox Demcoto be displayed in details screen 158 as
`
`shownin Fig. 10, The user can select the Queue command by soft button 114 to enter the
`selected song into the play list queue. As before, the user can also depress play button 122 of:
`Fig. 9 to cause immediate playback of the selected song.
`Details screcn 158 shows information about the selected song including the name
`of the song, album (orlist) name containing the song; the track number, if applicable, and track
`duration. Note that other information can be included, The user can
`preview the song,
`close the
`Details screen to return to the Tracks screen or queue the song on the playlist queue,
`The device provides the ability to “preview” audio files even while a current song,
`‘or playlist, is being played. When a user chooses to preview an audiofile, the audio file is
`played for about 10 seconds while any currently-played file or playlist is suspended. After
`previewingis complete, the suspendedfile or playlist resumes playback. In other embodiment,
`the preview duration can vary, or be stopped by user selection.
`:
`Fig. 11 illustrates associations amongitems.
`In Fig. 11, song 168 is one of many songs stored in the device. Categories suchas .
`albums 160,artists 162, playlists 164 and genres 166 each include sub-categories. For example,
`albums 160 includes the names ofvarious albums. Songsare associated with albums, genres and
`playlists. Such association can be by using pointers, a data structure including itemsto be
`associated, etc. “Association” as used herein, includes a first jtem assocjated with a second item:
`and the second item associated with the first item. In other words, albumscan be associated with
`one or more songsin the database ofthe device so that_an automated search to find all songs
`
`limit the mannerof associations amongitemsin the present invention.
`Similar.to albums,the category ofartists 162 includes namesof artists, or
`performers, of songs. Each artist nameis associated with one or morc songsin the database,
`Playlists 164 includes namesofplaylists. These are collections of songs that can be defined by
`
`10
`
`15
`
`20
`
`25
`
`30
`
`15
`
`SONYExhibit 1004 - Page 5026
`
`
`
`the user, the device manufacturer, or others. Each playlist can be associated with one or more ©
`
`songs. Genres 166 includes various styles of music which are associated with one or more songs
`
`in the database. Note that itemscan exist without being associated with a song. Also, items can
`be associated with other items as where an artist name is associated with the albums containing
`the songsthatthe artist has created.
`Although not shownin Fig. 11, items can have additional information, such as
`properties,details, etc., associated with theitem. For example, a song can have information such
`as play time,artist name, artist album, copyright owner, etc., associated with the song.
`=
`. Fig, 12 illustrates display screens used to search for a song or other item.
`In Fig. 12, screen 180is the initial library screen, as discussed above. If the user
`invokes the Search command (via the appropriate soft button) with Albumsselected then screen
`182 is displayed. Note that the search function can be applied to any of the categories. The user
`can depress the Plus or Minussoft buttonsto cycle through the alphabet and change the character
`in
`the currentlocati
`indicated
`by
`the cu
`¢ cursor
`position is changed by using
`the
`
`15
`
`scroll up/scroll down buttons 128 and 130, respectively, of Fig. 9. As eachletter is entered the
`letters are compared and the nearest match ofthe stored albums” names is displayed as shown in
`screen 184, When the desired match is displayedthe user selects the Go! command,
`Screen 186 shows the result ofselecting the Go! command. Alist of albumsis
`displayed with the matched album centered and selected. The user can close, open or queue the
`
`album as discussed above.
`Fig. 13 illustrates details ofdifferentitems,
`
`
`
`
`
`
`In Fig. tes details displayedasa result of selecting13, screen 200 il the
`
`20
`
`“Details” command from soft button 1A trackis selected. Screen 200 showsthatdetails of the
`
`25
`
`track “Jukebox Demo” shows the nameof the album that the track resides on, the creator, or
`copyright owner,ofthetrack, andthe playing timeofthetrack.
`Screen 202 illustrates details ofan item on the active queuelist. _Items are placed
`
`onto the active queuelist by selecting the “Queue” command when an album, song,track, or
`
`other item is selected, as discussed above. For example, screen 204 showsthe active queuelist
`where the track “Jukebox Demo”is selected. By invoking the “Details” command screen 202 is
`- brought up to show details of the Jukebox Demotrack,
`
`30
`
`16
`
`SONYExhibit 1004 - Page 5027
`
`
`
`
`
`
`theAs shown in screen 202, Detail screen shows what track number the selected
`
`track is, which album the track is from: the creator, or copyright owner, of the track, and thetitle
`
`of the track, Additionally, the details for an item on the queue list also show playbacksettings.
`ese are shown by
`two-letter abbreviationsat the bottom ofthe screen, The settings
`are as
`
`show in Table I, below.
`
`
`
`EnvironmentalPreset
`
`Parametric
`
`(only if speakers are connected)
`
`Headphone Spatialization
`
`Time Scaling
`
`Four Channel Speaker Sound
`
`TABLE!
`
`SONYExhibit 1004 - Page 5028
`
`
`
`These settings have their common meanings, as is known inthe art. Note that the
`setting 4S is not shown in screen 202 as it is not currently active.
`Fig. 14 illustrates the Nomad Jukebox coupled to a host computer system.
`
`
`
`
`
`Ina preferred embodimenthost system 302 is a personal computer, such as an IBM-PC —
`compatible computer, Host system 302 includes a user interface having display 304 and user
`
`InFig.14,device300(e,8.,theNomadcoupledtohostsystemJukebox)is 302.
`
`input devices such as keyboard 306 and mouse 308. In other embodiments the host system need
`
`not be a full computer system. Any type of processing system having a user interface is possible,
`For example,it is possible to couple the device to a laptop computer, game console, web-enabled
`television, or any consumer electronic device or digital platform, in general. The host user
`,
`interface need not provide a display and can be much more minimal than the keyboard and
`mouse
`shown
`in Fig. 14.
`_A preferred embodiment of the invention uses a Universal
`
`Synchronous Bus (USB) connection but any type of connection such as IEEE 1394 (FireWire),
`
`.
`
`Ethemet, Serial Port, etc. can be used, A wireless (i.e. optical or radio frequency) connection
`can be used.
`
`Once device 300 is coupled to host system 302, a user ofhost system 302 can
`launch a bridge interface to allow for the transfer offiles between device 300 and host system
`302. Jn a preferred embodiment, once the bridge interface is Jaunched, the controls of device ~
`300 are inoperable. The user interface of host system 302 is used to operate the bridge interface
`to transfer files.
`
`10
`
`15
`
`20
`
`The invention has now been described with referenceto the preferred
`embodiments. Alternatives and substitutions will now be apparentto persons of skill in the art.
`
`18
`
`SONYExhibit 1004 - Page 5029
`
`
`
`WHAT IS CLAIMED IS:
`
`SONYExhibit 1004 - Page 5030
`
`
`
`PATENT
`Attormey Docket No.: 17002-022500US
`Client Reference No.: CT-1139
`
`AUTOMATIC HIERARCHICAL CATEGORIZATION OF MUSIC BY METADATA
`
`ABSTRACT OF THE DISCLOSURE
`.
`A method, performed by software executing on the processorof a portable music
`playback device, that automatically files tracks according to hierarchical structure ofcategories
`to organize tracks in a logical order. A userinterface is utilized to change the hierarchy, view
`track names,and select tracks for playback orother operations. The userinterface uses an
`overlapping hierarchy of categories. A songtitle can be accessed in multiple different ways by -
`slarting with different categories. A preferred embodiment of the invention uses the top-level
`categories “Albums”, “Artists”, “Genres” (or styles), and “Play Lists”, Within the Albums
`category are namesofdifferent albums ofsongs stored in the device. Within each album are the
`album tracks, or songs, associated with thatalbum, Navi gation is performed by presenting a
`sequence of d