`
`O L i O Y
`
`\
`
`fl
`
`PTO/SB/05 (11-00)
`Approved for use through 10/31/2002. OMB 0651-0032
`U S.’Patent and Trademark Office: U.S. DEPARTMENT OF COMMERCE
`Underthe Paperwork Reduction Act of 1995, no persons are required to respond to a collection of information unless it displays a valid OMB control number.
`, UTILITY
`PATENT APPLICATION
`S M I
`
`Title
`.
`
`P-
`Automatic Hierarchical Cateogrization of Music by Metadatafiuj
`Fix
`-9;
`9
`
`(Only for new nonprovisional applications under 37 C.F.R. § 1.53(b))
`
`Express Mail Label No.
`
`EL769991 701 US
`
`,0
`
`N L
`APPLICA-no E EMENTS A TO
`See MPEP chapter 600 concerning design patent application contents.
`1. IE
`
`_
`Fee Transmittal Form (e.g., PTO/SB/17)
`(Submit an original and a duplicate for fee processing)
`Applicant claims small entity status.
`See 37 CFR 1.27.
`Specification
`[Total Pages i_1T_i
`(Preferred errangerneflfsei forth below)
`- Descriptive title of the Invention
`- Cross References to Related Applications
`.
`»Stt
`tR
`d
`Fd
`dR&D
`_ Reafgrgfige ,oe§:‘,;,,[;‘,?ce‘i,s,f,f;’”j‘,’;f,,e
`0' 3 C°"“P“*er Pr°9"a"‘ "SW9 aPPe"d‘X
`- Background of the invention
`- Brief Summaw or the Invention
`- Brief Description of the Drawings ( if filed)
`_ Detailed Descnpfion
`_ clams)
`- Abstract of the Disclosure
`
`]
`
`Assistant Commissioner for Patents
`Box Patent Application
`Washington. DC 20231
`
`7. E] CD-ROM or CD-R in duplicate, large table or
`Computer Program (Appendix)
`8. Nucleotide and/or Amino Acid Sequence Submission
`(if applicable, all necessary)
`a. [:I Computer Readable Form (CRF)
`b. Specification Sequence Listing on:
`i_ D cD.RoM or CD_R (2 copies); or
`ii. I] paper
`.
`..
`.
`.
`of above coies
`c. I:I Statements veri
`ing identi
`ACCOMPANYING APPLICATIONS PARTS
`
`9. El
`10. I]
`
`Assignment Papers (cover sheet 8. document(s))
`37 C.F.R. §3.73(b) Statement El Power of
`{when there is an assignee)
`Attorney
`English Translation Document (if applicable)
`
`01/05/n1
`
`I'-
`
`‘S'fl056.3
`
`Iiiiiiiiiiiiiiiiiiiiiii
`
`}
`
`]
`
`[Totalsheets
`«E Drawing(s)(35 u.s.c.113)
`[Total Pages |: 1
`5. Oath or Declaration
`a. E] Newly executed (original or copy)
`b. [I Copy from a prior application (37 CFR 1.63 (d))
`(fora continuation/divisional with Box 18 completed)
`,
`i. E] SD_EL;ET|ON OF t|aNr\1/|§i;lTT(_OR8.)
`K )
`i ne statemen at
`c e
`eetin invenlo 5
`"fined in me prior applicafiony $6937 CFR
`1>63(d)(2) and 1.33(b)_
`6. El Application Data Sheet See 37 CFR 176
`
`I:I Copies of IDS
`Citations
`
`.
`
`'
`'
`
`Information Disclosure
`Statement (IDS)/PTO—1449
`Pre"m'"ary Amendment
`Rem" Re°e‘P‘ P.°S‘°a".‘ (MPEP 503)
`(shou/d be Specifically Itemized)
`Certified Copy of Priority Document(s)
`(ifforeign priority is claimed)
`i
`-
`-
`16. El Request and Certification under 35 U.S.C. 122(b)(2)(B)(i).
`Applicant must attach form PTO/SBl35 or its equivalent.
`_1_;r§mitta[C);h]<:*;tUnsigned DecIarationlPower of Attorney, Fee
`
`18. If a CONTINUING APPLICATION, check appropriate box, and supply the requisite information below and in a preliminary amendment,
`or in an Application Data Sheet under 37 CFR 1.76:
`of prior application No‘ __l
`I_'_] Continuation
`I] Divisional
`E] Continuation-in—part (CIP)
`Group /Art Unit:
`PHOI application information:
`Examiner_
`For CONTINUATION or DIVISIONAL APPS only: The entire disclosure of the prior application, from which an oath or declaration is supplied
`under Box 5b, is considered a part of the disclosure of the accompanying continuation or divisional application and is hereby incorporated by
`reference. The incorporation can only be relied upon when a portion has been inadvertently omitted from the submitted application parts.
`1
`
`Customer Number or Bar Code Label
`
`20350
`.__(lr.ise.=i1. Cusiernec No- °r..Atta.c_li.l>a.r. 9249./aPe.l.here)
`Townsend and Townsend and Crew LLP
`Name
`Two Embarcadero enter
`Address
`
`°'
`
`C°”e$p°"de”°e addmss bemw
`
`Eighth Floor
`
`941"-3834
`
`Registration No. (Attorney/Agent)
`Name (Print/Type)
`A
`I I
`O ___7. ,- _ _ -24.,
`
`comments on the amount of time you are required to complete this for sh - - e sent to the Chief Information Officer, U.S Patent and Trademark
`Burden Hour Statement’ This form is estim ed to take 0.
`ours o co plee will vary depending upon the needs of the individual case Any
`Office, Washington, DC 20231. DO NOT SEND FEES OR COMPLETED FORMS TO THIS ADDRESS. SEND TO: Assistant Commissioner for
`Patents, Box PatentApp|ication, Washington, DC 20231,
`
`SONY Exhibit 1003
`
`SONY Exhibit 1003
`SONY v. Creative
`SONY Exhibit 1003 - Page 1
`
`SONY V. Creative
`
`
`
`PTO/SB/17 (11-00)
`Approved for use through 10/31/2002. OMB 0651-0032
`US. Patent and Trademark Offioe: US DEPARTMENT OF COMMERCE
`Under the Paperwork Reduction Act of 1995, no persons are required to respond to a collection of information unless it displays a valid OMB control number.
`
`FEE TRANSMITTAL
`
`for FY 2001
`
`Patent fees are subject to annual revision.
`
`TOTAL AMOUNT OF PAYMENT
`METHOD OF PAYMENT (check one)
`
`'
`
`1.
`
`’
`A
`
`Deposit
`A
`t
`Nmgggr
`
`The Commissioner is hereby authorized to charge
`indicated fees and credit any over payments to
`
`-
`
`1
`
`Townsend and Townsend and Crew LLP
`
`Deposit
`Account
`Name
`E Charge Any Additional Fee Required
`Under37 CFR 116 and 1.17
`
`D Applicant claims small entity status.
`See 37 CFR 1.27
`Payment Enclosed:
`
`2. El
`
`El check
`
`[I Credit card
`
`1.
`Large
`Fee
`cgde
`101
`106
`107
`108
`114
`
`El Money
`Order
`FEE CALCULATION
`BASIC F|LlNG FEE
`Entity Small
`Entity
`Fee
`Fee
`Fee
`(5)
`cage
`(5)
`710
`201
`355
`320
`206
`160
`490
`207
`245
`710
`208
`355
`150
`214
`75
`
`I] Other
`
`Fee Description
`utility filing fee
`Design filing fee
`.
`Plant filing fee
`Reissue filing fee
`Provisional filling fee
`
`SUBTOTAL (1)
`2. EXTRA CLAIM FEES
`
`Ext
`Clalifim
`
`f
`F
`b:l:“|;°m
`
`i$)710
`
`F
`P23‘
`
`150
`
`|
`
`Entity smaii
`pee
`pee
`(5)
`code
`13
`203
`80
`202
`270
`204
`so
`209
`18
`210
`
`_
`_
`F99 °°5°"P1'°"
`Ciaims in excess Qf 20
`independent claims in excess of3
`Multiple dependent claim, if not paid
`"' Reissue independent claims over
`original patent
`*‘ Reissue claims in excess of 20 and
`over original patent
`
`SUBTOTAL (2)
`
`($) 160
`
`“or number previously paid. if greater, For Reissues, see above
`
`Complete if Known
`
`First Named Inventor
`
`RON GOODMAN
`
`Examine, Name
`Group Art Unit
`
`Attorney Docket No
`
`170024322590
`FEE CALCULATION continued
`
`3. ADDITIONAL FEES
`Large
`Entity
`Fee
`(5)
`130
`50
`
`Fee
`Code
`205
`227
`
`Fee
`Code
`105
`127
`
`Small
`Entity
`Fee
`(S)
`65
`25
`
`139
`147
`112
`
`113
`
`115
`116
`
`117
`118
`
`128
`119
`120
`121
`138
`
`140
`14‘
`142
`143
`122
`
`123
`126
`
`581
`146
`149
`
`179
`169
`
`139
`147
`112
`
`581
`246
`249
`
`279
`169
`
`40
`355
`355
`
`355
`900
`
`710
`
`710
`900
`
`Fee Description
`Surcharge - late filing fee or oath
`Surcharge - late provisional filing fee
`
`.
`'
`or cover sheet.
`Non-English specification
`For filing a request for reexamination
`Requesting publication of SlR prior to
`Examiner action
`
`Requesfing PUb”C3ti°" 07 Sm 31791’
`Examiner action
`Extension for reply within first month
`Extension for reply within second
`month
`Extension for reply within third month
`Extension for reply within fourth
`'"°”"' A
`_
`_
`Extension for reply within fifth month
`N°fi°° °f Apps?"
`Filing a brief in support of an appeal
`Request for oral hearing
`Petition to institute a public use
`ding
`F"°_°f’e
`_
`_
`Petition to revive — unavoidable
`‘°e"“°“ ‘° ’°"i"e ‘ “”‘“‘°”“°"3'
`Utility issue fee (or reissue)
`Design issue fee
`Plant issue fee
`Petitions to the Commissioner
`
`Petitions related to provisional
`applications
`Submission of Information Disclosure
`Stmt
`Recording each patent assignment
`properties)
`per property (times number of
`Filing a submission afterfinal rejection
`(37 CFR § 1 129(a))
`Foreach additional invention to be
`examined (37 CFR § 1.129(b))
`Request for Continued Examination
`f
`(:03) tf
`med
`n
`design application
`ewe‘ °’°"p° '
`‘°"‘a'"'"a °”° a
`
`Other fee (specify)
`
`‘Reduced by Basic Filing Fee Paid
`
`SUBTOTAL (3)
`
`Name {Print/Type)
`Signature
`
`Regisl
`
`o.Aftorne eni‘)
`
`30,077
`
`_ #7 I
`
`
`§Ei.SilJ£l.'J'- ' ‘—
`415-576-0200
`1/5/01
`
`Telephone
`Date
`
`SONY Exhibit 1003 - Page 2
`
`
`
`Attorney Docket No.: 17002—022500US
`Client Reference No.: CT—l 139
`
`PATENT
`
`AUTOMATIC HIERARCHICAL CATEGORIZATION OF MUSIC BY
`METADATA
`
`CROSS-REFERENCES TO RELATED APPLICATIONS
`
`This application is related to Application No.
`
`/
`
`,
`
`, entitled “System for
`
`Selecting and Playing Songs in a Playback Device with a Limited User Interface,” (Atty.
`
`Docket No. 17002-020800); and Application No. __/_,
`
`, entitled “Audioplayback
`
`Device with Power Savings Storage Access Mode,” (Atty. Docket No. 17002-022400), all
`
`filed January 5, 2001, the disclosures of which are incorporated herein by reference.
`
`BACKGROUND OF THE INVENTION
`
`Today, portable consumer electronic devices are more powerful than ever.
`
`For example, small, portable music playback devices can store hundreds, even thousands, of
`
`compressed songs and can play back the songs at high quality. With the capacity for so many
`
`songs, a playback device can store many songs from different albums, artists, styles of music,
`etc.
`
`Music jukeboxes implemented in software executed by a digital computer and
`
`portable MP3 and CD players both provide facilities for forming playlists. For example, the
`
`OOZIC player, distributed by the assignee of the present application, runs on a host PC and
`
`has a playlist feature that allows selection of tracks from the PC’s hard disk to be included in
`
`the playlist.
`
`As storage capacity increases and songs are compressed to shorter file lengths
`
`the number of songs that can be stored increases rapidly. Major problems facing the
`
`consumer are organizing and accessing the tracks.
`
`Typically, portable devices have a user interface including a small screen and
`
`buttons. Using such a compact user interface to navigate and select among hundreds of songs
`
`is inefficient and often frustrating. The display screen can only show a few song titles at one
`
`time, and the limited controls make it difficult for a user to arbitrarily select, or move among,
`
`the songs.
`
`The creation of playlists is one technique to organize the playing of songs. A
`
`set of songs can be included in a playlist which is given a name and stored. VVhen the playlist
`
`is accessed, the set of songs can be played utilizing various formats such as sequential play or
`
`shuffle.
`
`SONY Exhibit 1003 - Page 3
`
`
`
`However, the creation of playlists itself becomes problematic as the numb er of
`
`songs increases, since the user often arbitrarily selects songs from a large number of tracks to
`
`form a playlist. 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 songs are added that logically fit into a previously created playlist (e. g.
`
`“Favorites by Band X” might become out of date if a new favorite by Band X is added after
`
`the playlist was created); and leads to “lost” songs that are not members of any playlist.
`
`Accordingly, improved techniques for organizing and grouping tracks useful
`
`in a portable music player are needed.
`
`SUMMARY OF THE INVENTION
`
`According to one aspect of the present invention, a technique is provided for
`
`organizing tracks on a portable music player by automatically filing tracks in a hierarchical
`
`order based on attributes 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 aspect of the invention, the hierarchy is displayed on the
`
`portable music player so that a user can traverse the organizational hierarchy to find
`
`individual tracks or find playlists composed of logical groups of tracks.
`
`According to another aspect of the invention, the hierarchy is derived by using
`
`metadata associated with the audio content that was obtained through any source of metadata
`
`(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 about the track is stored in file attribute
`
`files.
`
`Other features and advantages of the invention will be apparent in View of the
`
`following detailed description and appended drawings.
`
`BRIEF DESCRIPTION OF THE DRAWINGS
`
`Fig. 1 is a schematic diagram of a tree structure for hierarchical filing of
`
`SONY Exhibit 1003 - Page 4
`
`
`
`Fig. 2 is a definition file that specifies the hierarchy depicted in Fig. 1;
`
`Fig. 3 is a user’s View of the hierarchy;
`
`Fig. 4 is a schematic diagram of a user interface displaying the hierarchical
`
`category structure;
`
`Fig. 5 is a diagram of a file format for storing filed data and file attributes;
`
`Fig. 6 is a flow chart depicting steps for filing tracks according to the
`
`hierarchical tree structure;
`
`Fig. 7 depicts a tree resulting from searching the tracks; and
`
`Fig. 8 depicts a format for a user interface.
`
`DETAILED DESCRIPTION OF THE PREFERRED EMBODIMENTS
`
`A preferred embodiment of the invention will now be described in the context
`
`of a portable personal player that plays audio files stored in memory. The files may be in
`
`MP3, way. or other digital formats.
`
`In the presently described embodiment, users are able to see the tracks on their
`
`player in some organized fashion other than as a single list of tracks. As will be described in
`
`more detail below, in one embodiment tracks are sorted utilizing a tree structure having
`
`branches labeled according to types of metadata associated 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 under the list of tracks by the Beatles. It might appear as a track under the
`
`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
`33 cr.
`subcategories “British Musicians, American Musicians” and “Other Musicians”. In all
`
`cases, the track is automatically filed into all appropriate locations without requiring user
`interaction.
`
`In the currently defined embodiment, a tree structure is defmed by a file
`
`having the following structure.
`
`The first line of a TreeDefinf file contains a version number:
`
`V1.0
`
`Each subsequent line (at least in V1.0) contains lines of the following format:
`
`CATEGORY_NAME|TRACK_TYPE_MASK|CATEGORY_STRUCTURE
`
`SONY Exhibit 1003 - Page 5
`
`
`
`CATEGORY_NAMEs are the top-level names of the branch under which
`
`tracks are sorted. They include things like “Album,” “Artist,” “Voice Tracks,” ‘‘All Tracks,”
`etc.
`
`TRACK_TYPE_MASKs tell which types of tracks are to be filed under this
`
`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=OXO0,
`
`kTTSong=0XO1,
`
`kTTVoice=0xO2,
`
`kTTBo0k=0xO4,
`
`l<TTMacro=0x08 ,
`
`kTTPlaylist=0x l 0
`
`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 be added to tTrackType (e. g. kTTVideo) as appropriate.
`
`CATEGORY_STRUCTUREs tell how to file the songs based on their
`
`rnetadata information. The CATEGORY_STRUCTURE is a string of characters that tell,
`
`from left to right, the order of hierarchy. The characters come from the following enum
`constants:
`
`enum tFileTag
`
`{
`
`kFTNone:'@',
`
`kFTTrackTyp e='T‘,
`
`kFTTitle='N',
`
`kFTAudioFile='F',
`
`kFTArtist='M',
`
`kFTA1burn='L',
`
`SONY Exhibit 1003 - Page 6
`
`
`
`kFTGenre='G',
`
`kFTSource='S',
`
`kFTYear=’Y’,
`
`kFTArtistCountry=’ C ’
`
`};
`
`Thus, a CATEGORY_STRUCTURE of LN tells to create a subcategory that
`
`is a list of Albums, each of which contains a list of Tracks.
`
`In total, a line like:
`
`Album}0x0l |LN
`
`Says to create a branch called “Album” which contains tracks of type
`
`kTTSong organized first by album name, and then by track name.
`
`The following is an example of a tree definition file similar (though not
`
`identical) 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 out of letters in
`
`the alphabet as we included more complex metadata — thus each group of two letters
`
`represents a level in the hierarchy):
`
`V1 .0
`
`Album 0X01 |B LBN
`
`Artist|OxO1|BMBN
`
`Genre| 0x01 |B GBN
`
`Voice Tracks| 0x02 |BSB GBN
`
`Playlists| Oxl O]BN
`
`Macro s | 0x0 8 |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 leaf in
`
`the tree, as described above, if it fits into multiple categories (e.g. a song that appears on the
`
`Abbey Road branch would also appear in the Beatles branch). In the example shown, the
`
`first 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
`
`SONY Exhibit 1003 - Page 7
`
`
`
`60’s”. The second branch contains tracks organized by artist, and sub organized by where the
`
`artist 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.
`
`The tree definition file that would specify the hierarchy shown in Figure 1 is
`
`shown in Figure 2.
`
`The first line identifies the Version of the tree definition file.
`
`The second line defines the “Albums” branch. The first part of the line,
`
`“Albums” defines the name of the branch. The second part, “OxO1,” defines that all musical
`
`tracks should be categorized on this branch. The third part, “BLBN,” defines that the branch
`
`lists first the names of all albums (BL) and then tracks on those albums (BN).
`
`The third line defines the “Artists” branch. The first part of the line “Artists”
`
`defines the name of the branch. The second part, “0xO1,” defines that all musical tracks
`
`should be categorized on this branch. The third part, “BCBMBN,” defines that the branch
`
`lists first the names of all countries where artists in this collection come firom (BC) and under
`
`those items, the artists’ names (BM), and then 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 of the 6-song tree. Notice that each song appears three times,
`
`once in each branch.
`
`In consumer products the tree define file is not edited directly but through a
`
`user interface, one example of which is depicted in Fig. 4. An example of a user interface for
`
`viewing songs by category and editing the tree structure is depicted in Fig. 4.
`
`An embodiment of the invention is utilized in the Nomad® Jukebox,
`
`manufactured by the assignee of the present invention, and described more fully in the
`
`copending application, filed on the same date as the present application, entitled “System for
`
`Selecting and Playing Songs in a Playback Device with a Limited User Interface,” (Attny.
`
`Docket No. 17002-020800).
`
`In a preferred embodiment, metadata is associated with each track and
`
`includes such information as 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 and the tree define
`
`file. The program code can be stored in any computer readable medium including magnetic
`
`storage, CD ROM, optical media, or digital data encoded on an electromagnetic signal.
`
`SONY Exhibit 1003 - Page 8
`
`
`
`Thus, the user is automatically provided with a powerful and flexible tool for
`
`organizing and categorizing the tracks stored on the portable player.
`
`If the tracks are formatted in MP3 format the metadata can be stored in ID3
`
`tags included in the MP3 file. In one embodiment of the invention, the tracks are stored in
`
`alternate file format including file data and file attributes. The file data is the music track
`
`itself and the file attributes part of the file includes fields of arbitrary size which are used to
`
`store metadata characterizing the track stored as the file data. Again this metadata includes
`
`information about the track such as title, genre, artist name, type, etc.
`
`There are several advantages to using the alternate file format. Metadata of
`
`types not easily included in an ID3 tag can be utilized. Further, the original track format is
`
`not changed, so that error correction data such as checksums are valid. Finally, any file
`
`format can be used (e. g. WAV, WMA, etc.) because the metadata is stored separately, and
`
`thus audio fonnats that have limited support for metadata can still be stored on the portable
`
`player in native format without transcoding. The fonnatted files are fonned by software
`
`stored in the portable music player and executed by an on~board processor.
`
`The metadata for each track is 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 of the alternative file format including file data
`
`in the form of an MP3 track, and metadata fields for holding data indicating the name of the
`
`album the track is from, the name of the song, the genre of the song, and the type of track.
`
`A particular embodiment of a file format will now be described. All tracks are
`
`created with some set of attributes as shown below:
`
`Definition of Tracklnfo Data Field
`
`Field
`
`Description
`
`Attribute Count
`
`The number of attribute follow for the track
`
`Attr 1 type
`
`Binary = O, ASCII = 1
`
`Attr 1 name len
`
`Len h of attribute name strin
`
`Attrl data len
`
`Attrl Name
`
`Attr 1 Data
`
`Length of attribute data
`
`Attribute name strin;
`
`Attribute data
`
`SONY Exhibit 1003 - Page 9
`
`
`
`Attr N type
`
`Attr 1 name len
`
`Attrl data len
`
`Attrl Name
`
`Attr 1 Data
`
`Required Attributes
`
`Attribute Name
`
`Value(s)
`
`Remarks
`
`TITLE
`
`ASCII strin
`
`Re uired B Jukebox
`
`CODEC
`
`‘
`
`“MP3”, “WMA”, “WAV” Reuired BV Jukebox
`
`TRACK ID
`
`DWORD
`
`Set B Jukebox
`
`ALBUM
`
`ARTIST
`
`GENRE
`
`LENGTH
`
`ASCII strin;
`
`ASCII strin
`
`ASCII string
`
`In seconds
`
`TRACK SIZE
`
`In bytes
`
`O tional
`
`0 tional
`
`Optional
`
`0 tional
`
`0 tional
`
`TRACK NUM
`
`l—n track within album
`
`I tional
`
`5
`
`running on a personal computer connected to the portable music player.
`
`These attributes can be subsequently changeable via a host application,
`
`Fig. 6 shows a flow chart of an embodiment the process used to build the
`
`hierarchical database of tracks. It starts by iterating through each track, and, for each track,
`
`iterating through each branch to find if the track belongs on the branch, and, if so, where. In
`
`this case, the term track could refer to any content, eg. a music track, a spoken word track, or
`
`10
`
`even a video track.
`
`SONY Exhibit 1003 - Page 10
`
`
`
`Also, the hierarchical catalog of tracks can be used to form playlists in a
`
`structured manner. For example, if a user Wants to hear Jazz and Blues the entire sub-
`
`categories can be selected to form one playlist.
`
`An alternative hierarchical catalog generation technique will now be
`
`described. In this 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.
`
`The following example shows the algorithm for adding a track. For clarity,
`
`only the attributes used by the tree are shown.
`
`The following 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. Note that “Stardust” does not have any entries for Album or Artist. The host
`
`software running on a computer connected to the portable music player could be utilized to
`
`add missing attributes to the “Stardust” track and, optionally, edit the title attribute. The
`
`Build Tree() function would then reinsert this track in the correct location in the tree.
`
`Fig. 8 is an embodiment of a user interface 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.
`
`SONY Exhibit 1003 - Page 11
`
`
`
`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 each track are listed
`
`in a row across the screen. Various control buttons are displayed to the right of configuration
`
`window that facilitate quickly invoking selected processing on a selected track.
`
`The invention has now been described with reference to the preferred
`
`embodiments. Alternatives and substitutions will now be apparent to persons of skill in the
`art.
`
`SONY Exhibit 1003 - Page 12
`
`
`
`WHAT IS CLAIMED IS:
`
`#©\DOO\lO\U1-l>UJl\J>4
`
`p—|
`
`1.
`
`A method, performed by a processor in a portable digital music player,
`
`for filing audio tracks stored on a computer readable media, with each audio track having
`
`metadata associated therewith including category Value data for naming attributes of the track
`
`and type data indicating the type of track, said method comprising the acts of:
`
`reading a definition file that defines an ordered hierarchical tree structure, with
`
`the file including category names for naming the branch under which tracks are sorted, track
`
`type information specifying which type of tracks are to be sorted under the branch, and
`
`structure information defining how to file tracks based on associated metadata;
`
`for each track, iteratively determining, base on metadata describing the track,
`
`if the track belongs in the branch, and, for each branch in which the track belongs, traversing
`
`the branch to determine the appropriate location to file the track.
`
`the acts of:
`
`The method of claim 1, where said act of searching further comprises
`
`utilizing track type information to file only tracks of a specified type under a
`
`particular branch.
`
`3.
`
`The method of claim 1 further comprising the acts of:
`
`for each branch, utilizing category structure information to file tracks in a
`
`specified attribute order.
`
`4.
`
`The method of claim 1, Where said portable digital music player
`
`includes a display screen and a user interface for interacting with the display, further
`
`comprising the acts of:
`
`displaying the categories and subcategories on the display in a hierarchical
`
`order;
`
`displaying all names of tracks associated with a category or sub—category
`
`When a user utilizes the interface to select a category or sub—category;
`
`SONY Exhibit 1003 - Page 13
`
`
`
`utilizing the pointer to access and play a track when a user selects a track
`
`name through the user interface. and
`
`utilizing the pointer to access and play a collection of tracks within a category
`
`or subcategory when a user selects a category or subcategory through the user interface.
`
`5.
`
`A method, implemented by a processor in a portable digital music
`
`player, for associating metadata with audio tracks comprising the acts of:
`
`opening a formatted file for each track comprising a file data portion and a file
`
`attributes portion, with the file attributes portion including a plurality of fields corresponding
`
`to category types and file types;
`
`storing an unmodified audio track in the file data portion of the formatted file;
`
`and
`
`storing category type and file type information about the unmodified track in
`
`corresponding fields.
`
`6.
`
`A method, performed by a processor in a portable digital music player,
`
`for filing audio tracks, stored on a computer readable media, under categories in an in-
`
`memory tree structure, with each audio track having metadata associated therewith including
`
`category name data for naming, said method comprising the acts of?
`
`upon startup or when a track is added or changed, searching the metadata of
`
`each track; and
`
`for each track, automatically filing the track by category name under each
`
`selected category to form a hierarchical track filing scheme.
`
`\OOO\1O‘\U1-l>UJl\)I—A
`
`l 2 3 4 5 6 7 8
`
`7.
`
`The method of claim 6 further comprising the act of:
`
`selecting the categories to be the Album including the track, the title of the
`
`track, and the name of the artist that recorded the track.
`
`SONY Exhibit 1003 - Page 14
`
`
`
`8.
`
`The method of claim 6, where said portable digital music player
`
`includes a display screen and a user interface for interacting with the display, further
`
`comprising the acts of:
`
`displaying the categories on the display in a hierarchical order;
`
`displaying all names of tracks associated with a category when a user utilizes
`
`the interface to select a category ;
`
`accessing and playing a track when a user selects a track name through the
`user interface. and
`
`accessing and playing a collection of tracks within a category when a user
`
`selects a category through the user interface.
`
`9.
`
`A computer program product comprising:
`
`a computer readable medium having program code embodied therein for filing
`
`audio tracks stored on a computer readable media, with each audio track having metadata
`
`associated therewith including category Value data for naming attributes of the track and type
`
`data indicating the type of track, said program code comprising:
`
`program code, executed by a processor, for reading a definition file that
`
`defines an ordered hierarchical tree structure, with the file including category names for
`
`naming the branch under which tracks are sorted, track type information specifying which
`
`type of tracks are to be sorted under the branch, and structure information defining how to
`
`file tracks based on associated metadata;
`
`program code, executed by a processor, for each track, for iteratively
`
`determining, base on metadata describing the track, if the track belongs in the branch, and,
`
`for each branch in which the track belongs, traversing the branch to determine the appropriate
`location to file the track.
`
`©\O0O\IO\U1-l>-UJIUPA‘
`
`l 2 3 4 5 6 7 8 9
`
`rd O
`
`;_\
`
`;_4
`
`pa IN)
`
`>-I DJ
`
`he -D
`
`10.
`
`A computer program product comprising:
`
`a computer readable medium for having program code embodied therein for
`
`filing audio tracks, stored on a computer readable media, under categories in an in-memory
`
`tree structure, with each audio track having metadata associated therewith including category
`
`name data for naming, said program code comprising:
`
`13
`
`SONY Exhibit 1003 - Page 15
`
`
`
`program code, executed by a processor, upon startup or when a track is added
`
`or changed, for searching the metadata of each track; and
`
`program code, executed by a processor, for each track, for automatically filing
`
`the track by category name under each selected category to form a hierarchical track filing
`
`scheme.
`
`SONY Exhibit 1003 - Page 16
`
`
`
`Attorney Docket No.: 17002~022500US
`Client Reference No.2 CT-1139
`
`PATENT
`
`AUTOMATIC HIERARCHICAL CATEGORIZATION OF MUSIC BY
`METADATA
`
`ABSTRACT OF THE DISCLOSURE
`
`A method, performed by software executing on the processor of a portable
`
`music playback device, that automatically files tracks according to hierarchical structure of
`
`categories to organize tracks in a logical order. A user interface is utilized to change the
`
`hierarchy, View track names, and select tracks for playback or other operations.
`
`SF 1174925 V2
`
`SONY Exhibit 1003 - Page 17
`
`
`
`£441 (A*(JU{7’
`i-J..\;u+; 1
`
`5f 4(-fjar
`. l/:4-ar—.3 7
`
`' O l+I‘éc‘F5 ' D_~{'r»~zKf
`
`D (4'r'«é—V—
`
`I
`
`2 x
`
`i/M.’
`c
`
`2 A-Lg‘ fled
`...«.
`»,
`_\
`f -
`7’
`C’A,\—¢‘jv¢r7 U (
`C.x.+a;»‘7 U«-ft"-1 '- HM: {FM 47*‘ 5'9‘
`6/<*‘8“""7’ 2"’ Afliwf /Wm‘ ;. A +«-»k-;
`5”‘ cxhjérr ‘I:fl{,.,‘[
`:: 5 (wk:
`4''
`Hgrf,
`$.z$4..H;§/7 V.«1~4¢—Z—$~ A""“‘"“"' A1 ' I
`Wyn ; 9 77.4 B’exH‘a<
`VA:-as‘; .4 59.2/§'~J1.a:
`€:(‘I~fK
`./,..l».u.‘_2, 5 /Mid-"*J AA!‘ 51" ‘a"I"““5
`4‘ 3 [7 U.fi|.,,_11 5;/\/few. Ut"4K¢..
`.
`éfi L
`It
`€Ajr_¢J“_7
`3 :;
`+!’.ar.<,Q€f
`
`SONY Exhibit 1003 - Page 18
`
`
`
`v.1-0
`Albums |' 03:01 IBLBN
`. _.1_Lrtists|Ox01|BCBMBN
`_ -A1-.1 '1"::'a.cks[O::D1[B1sI
`
`+(;!‘$
`xi
`
`SONY Exhibit 1003 - Page 19
`
`
`
`/V4 ,4-\g__
`A r«)f‘F$+
`Er r'§”“5L\ Ar"/¥r5rl”3'
`_B7€‘a+l<-3'
`5:o(.v?-?—’\- Sf‘/*""bcfJ’
`.§4>mv’H‘““j
`_‘§«.zr\ Kfflj
`
`(..(ar?'~1
`;fl4,»+U(<x
`Cfixeafin H345’?-
`MAMA: aw} T14 153::/4.¢I
`.f/Mflféféyk /Man. J4);
`
`SONY Exhibit 1003 - Page 20
`
`
`
`SONY Exhibit 1003 - Page 21
`
`
`
`/t‘A7¥r..r «I14
`1‘:
`frjkw!’ .Kfl~K o1:r