U.S. patent application number 11/033465 was filed with the patent office on 2005-08-25 for automatic hierarchical categorization of music by metadata.
This patent application is currently assigned to CREATIVE TECHNOLOGY LTD.. Invention is credited to Bristow, David, Egan, Howard N., Goodman, Ron.
Application Number | 20050187976 11/033465 |
Document ID | / |
Family ID | 25040370 |
Filed Date | 2005-08-25 |
United States Patent
Application |
20050187976 |
Kind Code |
A1 |
Goodman, Ron ; et
al. |
August 25, 2005 |
Automatic hierarchical categorization of music by metadata
Abstract
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. The user interface uses an overlapping hierarchy
of categories. A song title can be accessed in multiple different
ways by starting 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 names of different albums of songs stored in the device. Within
each album are the album tracks, or songs, associated with that
album. Navigation is performed by presenting a sequence of display
screens for each level of the hierarchy.
Inventors: |
Goodman, Ron; (Santa Cruz,
CA) ; Egan, Howard N.; (Capitola, CA) ;
Bristow, David; (Bainbridge Island, WA) |
Correspondence
Address: |
CREATIVE LABS, INC.
LEGAL DEPARTMENT
1901 MCCARTHY BLVD
MILPITAS
CA
95035
US
|
Assignee: |
CREATIVE TECHNOLOGY LTD.
Singapore
SG
|
Family ID: |
25040370 |
Appl. No.: |
11/033465 |
Filed: |
January 10, 2005 |
Related U.S. Patent Documents
|
|
|
|
|
|
Application
Number |
Filing Date |
Patent Number |
|
|
11033465 |
Jan 10, 2005 |
|
|
|
09755723 |
Jan 5, 2001 |
|
|
|
Current U.S.
Class: |
1/1 ;
707/999.107; G9B/27.019; G9B/27.021; G9B/27.051 |
Current CPC
Class: |
G11B 27/11 20130101;
Y10S 707/99943 20130101; Y10S 707/99933 20130101; G06F 3/0482
20130101; G06F 3/165 20130101; G11B 27/34 20130101; G06F 16/639
20190101; G06F 16/44 20190101; Y10S 707/99934 20130101; G11B 27/105
20130101; G06F 16/4387 20190101; G11B 2220/2545 20130101 |
Class at
Publication: |
707/104.1 |
International
Class: |
G06F 007/00; G06F
017/00; A63H 005/00; G10H 007/00; G04B 013/00 |
Claims
What is claimed is:
1. A method of navigating through a plurality of tracks, the method
comprising: accessing a first hierarchy level of metadata
associated with the plurality of tracks; accessing a second
hierarchy level of the metadata in response to a selection from the
first hierarchy level; and either accessing a third level of the
hierarchy in response to the selection from the second hierarchy
level or selecting at least one track from the second hierarchy
level, wherein data pertaining to respective ones of the first,
second, and third hierarchy levels are presented in sequential
screens, each sequentially presented screen replacing the
previously presented screen.
2. The method as recited in claim 1 wherein the plurality of tracks
are music tracks.
3. A method for accessing tracks as recited in claim 1, wherein in
the first screen the selections available in the listing are one of
listings of genre type, listing of album names, listing of artist
names selected previously.
4. A portable media player having a plurality of tracks stored
therein, the media player comprising: a display screen; a user
interface; and a processor configured to present sequentially a
first and second display screen on the display of the media player,
the plurality of tracks accessed from a hierarchy of metadata, the
hierarchy having a plurality of categories, subcategories, and
items respectively in descending levels of the hierarchy; wherein
the portable media player is configured to: select at least one
member from a first level of the hierarchy in the first display
screen of the portable media player; display an expansion of the
selected member in a listing presented in the second display
screen; and select a second member from the expansion in the second
display screen; and display an expansion of the selected second
member a third display screen; and accessing at least one track
based on a selection made in the second display screen.
5. The portable media player as recited in claim 3 further
configured to display an expansion of the selected second member in
a third display screen and wherein accessing at least one track is
based on a selection made in the third display screen.
Description
CROSS-REFERENCES TO RELATED APPLICATIONS
[0001] This application is a continuation of application Ser. No.
09/755,723, entitled AUTOMATIC HIERARCHICAL CATEGORIZATION OF MUSIC
BY METADATA, and filed on Jan. 5, 2001, the specification of which
is incorporated herein by reference for all purposes. This
application is related to application Ser. No. 09/755,629, entitled
"System for Selecting and Playing Songs in a Playback Device with a
Limited User Interface," now abandoned (Atty. Docket No.
17002-020800); and application Ser. No. 09/755,367, entitled
"Audioplayback Device with Power Savings Storage Access Mode,"
issued as U.S. Pat. No. 6,590,730 (Atty. Docket No. 17002-022400),
all filed January 5, 2001, the disclosures of which are
incorporated herein by reference in their entirety.
BACKGROUND OF THE INVENTION
[0002] 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.
[0003] 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.
[0004] 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.
[0005] Typically, portable devices have a user interface including
a small screen and buttons. Such a display screen might be, e.g.,
1".times.2". This small display size is necessary because of the
physical size of the device which is typically carried in the hand.
The small size also limits the number, size, shape, and types of
user input controls that can be mounted on the device. For example,
a few pushbuttons are usually provided to perform all of the
device's control functions. 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.
[0006] 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. When the playlist is accessed,
the set of songs can be played utilizing various formats such as
sequential play or shuffle.
[0007] However, the creation of playlists itself becomes
problematic as the number 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.
[0008] Accordingly, improved techniques for organizing and grouping
tracks useful in a portable music player are needed. Further, it is
desirable to provide a user interface suitable for a small device.
The user interface should allow a user to efficiently navigate
among, and select from, many items stored in the device.
SUMMARY OF THE INVENTION
[0009] 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 number of controls to
allow a user to efficiently and intuitively navigate among, and
select, songs to be played. By using the invention, very large
numbers of songs can be easily accessed and played.
[0010] One aspect 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 song title can be accessed in multiple
different ways by starting with different categories. For example,
a preferred embodiment of the invention uses the top-level
categories "Albums", "Artists", "Genres" (or styles), and "Play
Lists". Within the Albums category are names of different 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 names of artists 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 includes collections of
albums and/or songs which are typically defined by the user.
[0011] Advantageous use is made of the overlapping hierarchy to
allow the user to quickly designate a song for 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 albums and songs with
predictable results.
[0012] The interface also provides for multiple functions for a
single control. For example, a "Play" button can act, in a first
function, to play a currently-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 of music from a radio receiver built into the
device; and (3) playback of voice messages. The first 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 period of time whereupon
the device cycles through the different modes. Other ways of
invoking the functions are possible such as where the second
function is automatically entered from a powered-down state.
[0013] In one embodiment, the invention provides a method for
selecting 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 method includes
steps of displaying categories on the display; accepting signals
from a user input control to select a category; displaying one or
more songs in the selected category on the display; accepting
signals from a user input control to select a displayed song; and
entering selected songs into a playlist queue, wherein the device
plays back songs in the playlist queue.
[0014] 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.
[0015] 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.
[0016] 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.
[0017] 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.
[0018] 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.
[0019] 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
[0020] FIG. 1 is a schematic diagram of a tree structure for
hierarchical filing of tracks;
[0021] FIG. 2 is a definition file that specifies the hierarchy
depicted in FIG. 1;
[0022] FIG. 3 is a user's view of the hierarchy;
[0023] FIG. 4 is a schematic diagram of a user interface displaying
the hierarchical category structure;
[0024] FIG. 5 is a diagram of a file format for storing filed data
and file attributes;
[0025] FIG. 6 is a flow chart depicting steps for filing tracks
according to the hierarchical tree structure;
[0026] FIG. 7 depicts a tree resulting from searching the
tracks;
[0027] FIG. 8 depicts a format for a user interface;
[0028] FIG. 9 illustrates the NOMAD Jukebox and its user interface
controls;
[0029] FIG. 10 illustrates a sequence of display screens describing
how to navigate to lower levels;
[0030] FIG. 11 illustrates associations among items;
[0031] FIG. 12 shows display screens used to search for a song or
other item;
[0032] FIG. 13 illustrates details of different items; and
[0033] FIG. 14 illustrates a playback device coupled to a host
computer system.
DETAILED DESCRIPTION OF THE PREFERRED EMBODIMENTS
[0034] 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, wav. or
other digital formats.
[0035] 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
[0036] 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 subcategories "British
Musicians," "American Musicians" and "Other Musicians". In all
cases, the track is automatically filed into all appropriate
locations without requiring user interaction.
[0037] In the currently defined embodiment, a tree structure is
defined by a file having the following structure.
[0038] The first line of a TreeDef.inf file contains a version
number:
[0039] V1.0
[0040] Each subsequent line (at least in v1.0) contains lines of
the following format:
[0041]
CATEGORY_NAME.vertline.TRACK_TYPE_MASK.vertline.CATEGORY_STRUCTURE
[0042] 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.
[0043] 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 `0.times.` format, e.g. 0.times.01) generated
by ORing the following flags together as appropriate:
1 enum tTrackType { kTTNothing=0x00, kTTSong=0x01, kTTVoice=0x02,
kTTBook=0x04, kTTMacro=0x08, kTTPlaylist=0x10 };
[0044] 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.vertline.kTTVoice.vertli- ne.kTTBook).
[0045] Other elements might be added to tTrackType (e.g. kTTVideo)
as appropriate.
[0046] CATEGORY_STRUCTUREs tell how to file the songs based on
their metadata 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:
2 enum tFileTag { kFTNone=`@`, kFTTrackType=`T`, kFTTitle=`N`,
kFTAudioFile=`F`, kFTArtist=`M`, kFTAlbum=`L`, kFTGenre=`G`,
kFTSource=`S`, kFTYear=`Y`, kFTArtistCountry=`C` };
[0047] 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.
[0048] In total, a line like:
[0049] Album.vertline.0.times.01.vertline.LN
[0050] Says to create a branch called "Album" which contains tracks
of type kTTSong organized first by album name, and then by track
name.
[0051] 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):
[0052] V1.0
[0053] Album.vertline.0.times.01.vertline.BLBN
[0054] Artist.vertline.0.times.01.vertline.BMBN
[0055] Genre.vertline.0.times.01.vertline.BGBN
[0056] Voice Tracks.vertline.0.times.02.vertline.BSBGBN
[0057] Playlists.vertline.0.times.10.vertline.BN
[0058] Macros.vertline.0.times.08.vertline.BN
[0059] All Tracks.vertline.0.times.07.vertline.BN
[0060] 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 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.
[0061] The tree definition file that would specify the hierarchy
shown in FIG. 1 is shown in FIG. 2.
[0062] The first line identifies the version of the tree definition
file.
[0063] The second line defines the "Albums" branch. The first part
of the line, "Albums" defines the name of the branch. The second
part, "0.times.01," 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).
[0064] The third line defines the "Artists" branch. The first part
of the line "Artists" defines the name of the branch. The second
part, "0.times.01," 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 from (BC) and under those items, the artists'
names (BM), and then tracks by those artists (BN).
[0065] 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.
[0066] 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.
[0067] An embodiment of the invention is utilized in the Nomad.RTM.
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).
[0068] 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.
[0069] Thus, the user is automatically provided with a powerful and
flexible tool for organizing and categorizing the tracks stored on
the portable player.
[0070] 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.
[0071] 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 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.
[0072] 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.
[0073] 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.
[0074] A particular embodiment of a file format will now be
described. All tracks are created with some set of attributes as
shown below:
[0075] Definition of TrackInfo Data Field
3 Field Offset Size Description Attribute Count 0 2 The number of
attribute follow for the track Attr 1 type 2 2 Binary = 0, ASCII =
1 Attr 1 name len 4 2 Length of attribute name string Attr 1 data
len 6 4 Length of attribute data Attr 1 Name 10 N Attribute name
string Attr 1 Data 10 + N M Attribute data . . . Attr N type Attr 1
name len Attr 1 data len Attr 1 Name Attr 1 Data
[0076] Required Attributes
4 Attribute Name Value(s) Remarks TITLE ASCII string Required By
Jukebox CODEC "MP3", "WMA", "WAV" Required By Jukebox TRACK ID
DWORD Set By Jukebox ALBUM ASCII string Optional ARTIST ASCII
string Optional GENRE ASCII string Optional LENGTH In seconds
Optional TRACK SIZE In bytes Optional TRACK NUM 1-n (track within
album) Optional
[0077] These attributes can be subsequently changeable via a host
application, running on a personal computer connected to the
portable music player.
[0078] 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, e.g. a music track, a spoken word track, or even a video
track.
[0079] 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.
[0080] 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.
[0081] The following example shows the algorithm for adding a
track. For clarity, only the attributes used by the tree are
shown.
5 TITLE "Free Falling" ALBUM "Full Moon Fever" ARTIST "Tom Petty"
GENRE "Rock" TRACK NUM 1
[0082] The following function is executed to build the in-memory
memory tree.
6 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
[0083] 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.
[0084] 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.
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.
[0085] As noted above, a preferred embodiment of the present
invention is incorporated into a product manufactured and
distributed by Creative Technology, Ltd. The product is called the
"NOMAD Jukebox." The following description describes further
details of the display screens and interface controls.
[0086] FIG. 9 illustrates the NOMAD Jukebox and its user interface
controls.
[0087] In FIG. 9, electronic audio 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 soft button function description region
106.
[0088] Three soft buttons are located at 108; including buttons
110, 112 and 114. The specific command, or function, that any of
the soft buttons perform when depressed is indicated by the label
in soft button function description region 106. Thus, the function
of soft 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.
[0089] The other eight buttons on device 100 perform essentially
the same functions at all times. In other words, they are not
subject to function changes according to soft button function
description area 106. These buttons include Library button 116, EAX
and System button 118, Skip Backward button 120, Play button 122,
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 of controls used with the device) can include
alternate functionality that is invoked in different ways.
[0090] The device uses visual 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 subsequent user action--such as playback, or
expansion of the item. In FIG. 1, screen 102 shows that the item,
"ALBUMS," is highlighted. The highlighted 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 of displayed items.
[0091] Icons are used to provide additional visual cues for an
item. In FIG. 1, each of the categories has a category icon to the
left of it. The category icon, which may not be distinctly visible
in the Figure, illustrates a first box connected by lines to
additional boxes below the first box. The icon depicts a hierarchy
and illustrates the property of categories, i.e., that categories
can contain additional categories, songs or other items.
[0092] FIG. 10 illustrates a sequence of display screens describing
how to navigate to lower levels.
[0093] In FIG. 10, library category screen 150 shows the display as
it appears when the user depresses library button 116 of FIG. 9. A
preferred embodiment of the device uses 4 first-level categories.
These are "Albums", "Artists," "Styles" and "Play Lists". Each of
these categories can "contain," or be associated with, other
categories, songs, or items.
[0094] Note that in library category screen 150 ALBUMS is currently
highlighted. By depressing soft button 112 of FIG. 9, the "open"
command is performed on the highlighted category, as indicated by
the labeling of soft button 112 and soft button function
description area 152 of FIG. 10.
[0095] Lists screen 154 is displayed as a result of a user opening
the Albums category of library category screen 150. Lists screen
154 shows items within the Albums category such as commercial
albums of multiple songs from a record label, pre-made lists or
collections created by a user, or other predefined lists or
collections of songs or recordings.
[0096] In FIG. 10, lists screen 154 shows each item as a list of
songs. This is shown visually by the icon to the left of each item
which depicts a miniature list. Possible soft button commands are
"Close", "Open" and "Queue". These commands correspond to soft
buttons 110, 112 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 shows tracks
screen 156. Alternatively, the user can select the Queue command to
instruct the device to place all the songs from the selected (i.e.,
highlighted) list into the play list for eventual playback. Yet
another option allows the user to 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.
[0097] Returning to FIG. 10, tracks screen 156 shows that a single
song called "JukeBox Demo" is in the list. The list is also called
JukeBox Demo as shown in lists screen 154. Tracks screen 156 shows
possible soft commands assigned to buttons, namely "Close",
"Details" and "Queue." The Close button performs the same function
as before--it returns the user to 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 Demo to be
displayed in details screen 158 as shown in 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.
[0098] Details screen 158 shows information about the selected song
including the name of the song, album (or list) 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 play list queue.
[0099] 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 audio file, the audio file is played for
about 10 seconds while any currently-played file or playlist is
suspended. After previewing is complete, the suspended file or
playlist resumes playback. In other embodiment, the preview
duration can vary, or be stopped by user selection.
[0100] FIG. 11 illustrates associations among items.
[0101] In FIG. 11, song 168 is one of many songs stored in the
device. Categories such as albums 160, artists 162, play lists 164
and genres 166 each include sub-categories. For example, albums 160
includes the names of various albums. Songs are associated with
albums, genres and playlists. Such association can be by using
pointers, a data structure including items to be associated, etc.
"Association" as used herein, includes a first item associated with
a second item; and the second item associated with the first item.
In other words, albums can be associated with one or more songs in
the database of the device so that an automated search to find all
songs associated with an album is easier. The direction of arrow
pointers in FIG. 11 is not intended to limit the manner of
associations among items in the present invention.
[0102] Similar to albums, the category of artists 162 includes
names of artists, or performers, of songs. Each artist name is
associated with one or more songs in the database. Playlists 164
includes names of playlists. These are collections of songs that
can be defined by 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 items can 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 songs that the artist has created.
[0103] Although not shown in FIG. 11, items can have additional
information, such as properties, details, etc., associated with the
item. For example, a song can have information such as play time,
artist name, artist album, copyright owner, etc., associated with
the song.
[0104] FIG. 12 illustrates display screens used to search for a
song or other item.
[0105] In FIG. 12, screen 180 is the initial library screen, as
discussed above. If the user invokes the Search command (via the
appropriate soft button) with Albums selected 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 Minus soft buttons
to cycle through the alphabet and change the character in the
current location as indicated by the cursor. The cursor position is
changed by using the scroll up/scroll down buttons 128 and 130,
respectively, of FIG. 9. As each letter is entered the letters are
compared and the nearest match of the stored albums' names is
displayed as shown in screen 184. When the desired match is
displayed the user selects the Go! command.
[0106] Screen 186 shows the result of selecting the Go! command. A
list of albums is displayed with the matched album centered and
selected. The user can close, open or queue the album as discussed
above.
[0107] FIG. 13 illustrates details of different items.
[0108] In FIG. 13, screen 200 illustrates details displayed as a
result of selecting the "Details" command from soft button 1A track
is selected. Screen 200 shows that details of the track "Jukebox
Demo" shows the name of the album that the track resides on, the
creator, or copyright owner, of the track, and the playing time of
the track.
[0109] Screen 202 illustrates details of an item on the active
queue list. Items are placed onto the active queue list by
selecting the "Queue" command when an album, song, track, or other
item is selected, as discussed above. For example, screen 204 shows
the 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 Demo track.
[0110] As shown in screen 202, the 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 the title of the
track. Additionally, the details for an item on the queue list also
show playback settings. These are shown by two-letter abbreviations
at the bottom of the screen. The settings are as show in Table I,
below.
7 TABLE I EA Environmental Preset EQ Parametric EQ HS Headphone
Spatialization TS Time Scaling 4S Four Channel Speaker Sound (only
if speakers are connected)
[0111] These settings have their common meanings, as is known in
the art. Note that the setting 4S is not shown in screen 202 as it
is not currently active.
[0112] FIG. 14 illustrates the Nomad Jukebox coupled to a host
computer system.
[0113] In FIG. 14, device 300 (e.g., the Nomad Jukebox) is coupled
to host system 302. In a preferred embodiment host 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
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), Ethernet, Serial
Port, etc. can be used. A wireless (i.e., optical or radio
frequency) connection can be used.
[0114] Once device 300 is coupled to host system 302, a user of
host system 302 can launch a bridge interface to allow for the
transfer of files between device 300 and host system 302. In a
preferred embodiment, once the bridge interface is launched, the
controls of device 300 are inoperable. The user interface of host
system 302 is used to operate the bridge interface to transfer
files.
[0115] 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.
* * * * *