`
`U.S. PROVISIONAL PATENT APPLICATION
`
`for
`
`SYSTEM AND METHOD FOR EXTRACTION OF META DATA
`
`FROM A DIGITAL MEDIA STORAGE DEVICE FOR MEDIA
`
`SELECTION IN A VEHICLE
`
`Inventors:
`
`Brian L. Douthitt
`
`Karl W. Schripsema
`
`Michael J. Sims
`
`MILW_1975100
`
`Page 1 of 32
`
`BMW EXHIBIT 1003
`
`
`
`Atty. Dkt. No.: 026032-5012 (Innovation No. 1220)
`
`SYSTEM AND METHOD FOR EXTRACTION OF META DATA
`
`FROM A DIGITAL MEDIA STORAGE DEVICE FOR MEDIA
`
`SELECTION IN A VEIDCLE
`
`FIELD
`
`[0001] The present invention relates generally to the field of data extraction from a
`
`digital audio/video source in a vehicle and in particular, a system and method for
`
`extracting and processing meta data from media files accessible from a digital media
`
`storage device, such as a media player, in the vehicle.
`
`BACKGROUND
`
`[0002] Vehicles typically include a number of electronic systems such as an audio
`
`system, a mobile telephone system, a navigation system, video entertainment system, etc.
`
`Along with those systems, media players (i.e., digital audio/video players or MP3
`
`players) may be setup in the vehicle for a user to access digital audio or video content
`
`stored on the media player. A conventional media player includes a data storage deyice
`
`(i.e., memory) and an embedded software application that allows a user to transfer media
`
`files to the player and create custom lists of selected media files, referred to as playlists.
`
`Media files may be transferred to the memory of the player from various sources,
`
`including disks (e.g., COs, DVDs, etc.) and Internet sites. Most players are configured to
`
`be coupled to a personal computer via a connection port (e.g., USB port, parallel port,
`
`serial port, etc.) in order to transfer media files. The media files typically include data,
`
`referred to as meta data, which identifies the contents of the file. For example, with
`
`digital audio files, such as MP3 files, the meta data comprises a tagging format which
`
`may include the title of the song, the artist's name, the title of the album, track number,
`
`genre, etc. The tagging format for MP3 (i.e., MPEG Audio Layer III) files is commonly
`
`referred to as 103.
`
`MILW_1975100
`
`-1-
`
`Page 2 of 32
`
`
`
`Atty. Dkt. No.: 026032-5012 (Innovation No. 1220)
`
`[0003] A media player is typically configured to include a memory having one or more
`
`media files stored therein. A media player in a vehicle may be configured to be coupled
`
`to or integrated with other vehicle electronic systems, such as the audio system, for
`
`playing the media files from the player. In one known configuration, a media player may
`
`be connected via an analog audio output (e.g., a headphone jack) from the media player
`
`to the auxiliary input of the vehicle's audio system, such that the playback is controlled
`
`by the controls of the media player. In another known configuration, the media player's
`
`control interface is coupled to the control interface of the head unit of an audio system
`
`(i.e., radio), in addition to connecting the analog audio output of the media player to
`
`auxiliary input of the vehicle's audio system. In this configuration, the user can control
`
`the playback of the media from the head unit of the audio system. Yet, in another
`
`configuration, an audio system may include a database of meta data about certain media
`
`files. The audio system is configured to determine the meta data of a media file based on
`
`a unique identifier relating to that file.
`
`[0004]
`
`It would be advantageous to provide a system for extracting meta data from a
`
`media player in a vehicle that is configured to: 1) establish a communication link between
`
`a control module and a media player; 2) identify media files stored on a media player; 3)
`
`retrieve meta data from a media file of the media player upon receiving a command from
`
`a user; 4) automatically retrieve meta data from a media file of the media player upon
`
`establishing a wireless communication link with the media player; 5) generate and/or
`
`update a database of meta data based on the meta data extracted from the media player,
`
`including converting the information to acoustic baseforms so that a user may access and
`
`manipulate the media files via voice commands and speech recognition; 6) audibly list
`
`the meta data entries of a media file based on an audible command of the user; 7)
`
`generate a second database of meta data using the meta data extracted from a second
`
`media player, wherein the meta data of the first media player is retained across power
`
`cycles, thereby eliminating the time consuming process of extracting meta data each tiine
`
`a media player is connected to the system; and 8) provide for the use of multiple
`
`MILW_1975100
`
`-2-
`
`Page 3 of 32
`
`
`
`Atty. Dk:t. No.: 026032-5012 (Innovation No. 1220)
`
`databases concurrently, for example, when two or more media players are linked to the
`
`control module concurrently.
`
`SUMMARY
`
`[0005]
`
`In accordance with one embodiment, a method is provided for extracting meta
`
`data from a digital media storage device in a vehicle over a communication link between
`
`a control module of the vehicle and the digital media storage device. The method
`
`includes establishing a communication link between control module of the vehicle and
`
`the digital media storage device, identifying a media file on the digital media storage
`
`device, and retrieving meta data from a media file, the meta data including a plurality of
`
`entries, each entry including text data or enumerated code. The method further includes
`
`identifying the text data or code in each entry of the media file and storing the plurality of
`
`entries in a memory.
`
`[0006]
`
`In accordance with another embodiment, a control system in a vehicle is
`
`provided for extracting meta data from a digital media storage device over a
`
`communication link. The system includes a communication module for establishing a
`
`communication link with the digital media storage device, a processing module coupled
`
`to the communication module, the processing module being configured to retrieve via
`
`communication module meta data associated with a media file from the digital media
`
`storage device, the meta data including a plurality of entries, wherein each of the plurality
`
`of entries includes text data, and a memory module configured to store the plurality of
`
`entries retrieved from the digital media storage device.
`
`BRIEF DESCRIPTION OF THE DRAWINGS
`
`[0007] The invention will be more readily understood by reference to the following
`
`description taken with the accompanying drawings, in which:
`
`[0008] Figure 1 is a block diagram of a control system for extracting meta data from a
`
`media player in a vehicle in accordance with an exemplary embodiment.
`
`MILW_1975100
`
`-3-
`
`Page 4 of 32
`
`
`
`Atty. Dkt. No.: 026032·5012 (Innovation No. 1220)
`
`[0009] Figure 2 is a block diagram of a control system for extracting meta data from a
`
`media player in a vehicle including the control module of FIG. 1 in accordance with an
`
`embodiment.
`
`[0010] Figure 3 is a block diagram of an integrated system for controlling a vehicle's
`
`audio and telephony systems.
`
`[0011] Figure 4 illustrates a method for extracting meta data from a media player in
`
`response to a user command in accordance with an embodiment.
`
`[0012] Figure 5 illustrates a method for processing media file data from a media player
`
`and organizing the media files in accordance with an embodiment.
`
`[0013] Figure 6 illustrates a method for speech·enabled playback of a media file in
`
`accordance with an embodiment.
`
`[0014] Figure 7 illustrates a method for audibly listing media files in accordance with
`
`an embodiment.
`
`DETAILED DESCRIPTION
`
`[0015] Figure 1 is a block diagram of a control system for extracting meta data from a
`
`media player in a vehicle in accordance with an exemplary embodiment. The control
`
`system enables a vehicle occupant, such as a driver, to extract the meta data from the
`
`occupant's media player 114 and subsequently generates a phonemic representation of
`
`the extracted text data. Other vehicle occupants (e.g., passengers) may also use the
`
`system to extract the meta data from their personal media player 114. Alternatively, a
`
`control system may be provided that extracts meta data from a mass storage device.
`
`However, the description herein will primarily refer to an exemplary control system for
`
`extracting meta data from a media player 114. It should be understood that although a
`
`system for extracting meta data will be described in detail herein with reference to media
`
`player 114, one or more of the systems and methods for extracting meta data herein may
`
`be applied to, and find utility in, other types of digital storage or audio/video devices as
`
`well. For example, one or more of the systems for extracting meta data may be suitable
`
`MILW_1975100
`
`Page 5 of 32
`
`
`
`Atty. Dkt. No.: 026032-5012 (Innovation No. 1220)
`
`for use with a flash drive, a micro hard drive, a USB memory stick, etc., all of which may
`
`require certain device-specific hardware and software to extract the meta data.
`
`[0016] The exemplary system shown in Figure 1 enables a wireless communication link
`
`to be established between an audio system 1 04 of vehicle 100 and a media player 114
`
`(e.g., a media player with a Bluetooth-enabled connection) of a vehicle occupant.
`
`Alternatively, a control system may be provided that includes a wired connection to a
`
`vehicle occupant's personal media player 114. The wired connection may include a
`
`cradle for media player 114 or a similar wired adapter, such as an analog audio output
`
`connection (e.g., a headphone jack). The following description will refer to an exemplary
`
`control system using a wireless communication link between the vehicle audio system
`
`and media player 114 of a vehicle occupant, however, it should be understood that
`
`methods and systems for retrieving and processing meta data from a media player
`
`described herein may be used in conjunction with other configurations of control
`
`systems, such as a wired connection to a vehicle occupant's media player, etc.
`
`[0017]
`
`In Figure 1, the control system in vehicle 100 includes a control module 102
`
`coupled to the audio system 104 and an antenna 112. In an alternative embodiment,
`
`control module 102 may be incorporated into audio system 104. Antenna 112, in
`
`conjunction with a transceiver 140 in control module 102, enables two-way
`
`communication with media player 114. Transceiver 140 may be configured as a
`
`communication circuit including analog and/or digital components, such that transceiver
`
`140 is capable of transmitting and receiving short-range radio frequency ("RF") signals in
`
`any of a variety of data transmission formats, such as a Bluetooth communications
`
`protocol, an IEEE 802.11 communications protocol or other personal area network
`
`wireless communications protocols or data formats. Media player 114 may include a
`
`plurality of transceiver circuits, for example, a Bluetooth transceiver circuit configured to
`
`communicate with transceiver 140.
`
`[0018] Control module 102 is also coupled to a user interface 110 and a microphone
`
`108. User interface 110 may be used to receive input commands from a vehicle occupant
`
`MILW_1975100
`
`-5-
`
`Page 6 of 32
`
`
`
`Atty. Dkt. No.: 026032-5012 (Innovation No. 1220)
`
`via, for example, pushbuttons, switches, a keypad, a touch screen display, etc.
`
`Alternatively, input commands to control module 102 may include a set of audio signals
`
`from a vehicle occupant. For example, a vehicle occupant may speak directly into the
`
`microphone 1 08 to provide input commands to the control module 102. Microphone 108
`
`may include one or more microphones configured to receive an oral command from a
`
`vehicle occupant. The oral command may be any word or phrase that the occupant may
`
`speak, utter, or otherwise provide to cause the control system or another system to
`
`perform a function. A speech recognition system (or data processing module) 122 in
`
`control module 102 may be used to process various data signals, such as audio signals
`
`(e.g., oral input commands) received via microphone 108 and to recognize words or
`
`phrases in the oral command. Voice recognition technologies known in the art may be
`
`implemented in speech recognition system 122. For example, speech recognition system
`
`122 may comprise any speech recognition software or engine such as IBM Embedded
`
`Via Voice®, manufactured by International Business Machines Corporation.
`
`[0019] Control module 102 may also be coupled to a display 106. Display 106 may
`
`comprise a small cathode ray tube (CRT), liquid crystal display (LCD), or various other
`
`types of visual displays which are easily visible in various lighting conditions. Control
`
`module 102 may comprise one or more analog and/or digital electrical or electronic
`
`components, and may include a microprocessor, a microcontroller, application-specific
`
`integrated circuit (ASIC), programmable logic and/or other analog and/or digital circuit
`
`elements configured to perform various input/output, control, analysis and other functions
`
`described herein. Control module 102 may also include memory 124, including volatile
`
`and non-volatile memory in order to, for example, store a computer program, other
`
`software, or a data file to perform the functions described herein. Each element in
`
`vehicle 100 shown in Figure 1 may be mounted in or coupled to the same or different
`
`interior vehicle elements such as a dashboard, an overhead console, an instrument panel,
`
`a visor, a rearview mirror, or other appropriate locations within the vehicle. Preferably,
`
`user interface 11 0, microphone 1 08 and display 1 06 are mounted in a location convenient
`
`to the vehicle occupants, in particular, the driver.
`
`MILW_1975100
`
`-6-
`
`Page 7 of 32
`
`
`
`Atty. Dkt. No.: 026032·5012 (Innovation No. 1220)
`
`[0020] Audio system 104 may include, for example, a radio, an amplifier and at least
`
`one speaker configured to provide audio signals to one or more vehicle occupants. The
`
`speakers (not shown) are configured to receive audio output data from control module
`
`102 and/or other systems (e.g., a digital audio file from a media player, information
`
`prompts or other messages provided by control module 102, etc.). The speakers may be a
`
`part of the vehicle audio system 1 04 or may be a dedicated speaker or speakers 126
`
`serving only control module 102.
`
`[0021] As mentioned above, in the exemplary system shown in Figure 1, control
`
`module 1 02 is linked via a wireless communications link with a media player 114 of a
`
`vehicle occupant. A communication link may be established with different media players
`
`as different occupants are enabled to use the control system. A communication link may
`
`be established, for example, in response to a command received from the user via user
`
`interface 110 or an oral command received via microphone 108. The wireless
`
`communication link operates in accordance with a wireless communication standard,
`
`such as Bluetooth communication protocol, IEEE 802.11 communication protocol, or
`
`other appropriate wireless communication standards. Accordingly, media player 114 is
`
`enabled to operate in accordance with or to communicate with the wireless
`
`communications standard used for the wireless communication link.
`
`[0022] The communication link between control module 102 and media player 114
`
`enables extraction of meta data from the media files stored in media player 114 to control
`
`module 102. Subsequently, the playback of the media files is controlled from user
`
`interface 110 or microphone 108. For example, after a communication link is established
`
`between a media player 114 and control module 1 02, the process of extracting the meta
`
`data may begin upon establishing the communication link or as a result of a command by
`
`a user. The user may provide the command via inputting the command into the user
`
`interface 110 or spoken commands into microphone 108. For example, a song may be
`
`played through control module 1 02 and audio system 104 by receiving an oral command
`
`from a vehicle occupant and sending the playback command to media player 114 via the
`
`MILW_1975100
`
`Page 8 of 32
`
`
`
`Atty. Dkt. No.: 026032-5012 (Innovation No. 1220)
`
`wireless communication link. Audio information received by control module 1 02 may be
`
`provided to the user via audio system 104 (e.g., via speakers, not shown) and data
`
`retrieved from the media player 114 may be displayed on display 106. Media player 114
`
`may be located anywhere within the proximity of vehicle 1 00, such as in an occupant's
`
`pocket or briefcase, in the trunk or within a range of communication with transceiver 140.
`
`[0023] Figure 2 is a block diagram of a control system for extracting meta data from a
`
`media player in a vehicle including the control module 102 of Figure 1. Memory 124
`
`includes volatile memory 136 and non-volatile memory 138 for storing computer or
`
`software programs to perform functions of control module 102. For example, memory
`
`124 includes a predetermined vocabulary of command words that may be recognized by
`
`speech recognition engine 130 of speech recognition system 122. The predetermined
`
`vocabulary may be used to manipulate systems and applications in the vehicle, in order to
`
`perform a function. Speech recognition engine 130 is configured to recognize words or
`
`phrases in an oral command and to compare the recognized word to the predetermined
`
`vocabulary of command words, in order to determine an appropriate action and/or the
`
`appropriate system or application to which an instruction should be delivered. Speech
`
`recognition system 122 also includes a text-to-speech engine 132 and a text-to-grammar
`
`engine 134. Text-to-speech engine 132 is configured to convert text (e.g., ASCII text) to
`
`an audio representation (e.g., PCM) that may be played through speakers 126 or audio
`
`system 104. Text-to-grammar engine 134 is configured to convert text (e.g., ASCII text)
`
`to a phonemic representation that may be used by speech recognition engine 130 to
`
`recognize words or text in an oral command from a user. Text-to-speech engine 132 and
`
`text-to-grammar engine 134 may be part of the same application or different applications.
`
`Text-to-speech and text-to-grammar technologies known in the art may be used such as
`
`Embedded Via Voice® Text-To-Speech engine and Text-To-Grammar engine,
`
`manufactured by International Business Machines Corporation.
`
`[0024] Memory 124 includes a database 158, which may also be used to store meta data
`
`for the media files of each unique media player or other mass storage device for use by a
`
`MILW_1975100
`
`-8-
`
`Page 9 of 32
`
`
`
`Atty. Dkt. No.: 026032-5012 (Innovation No. 1220)
`
`user during operation of the control system with a particular media player. Memory 124
`
`may include meta data for each media file extracted from a media player. The meta data
`
`of each media file includes a plurality of entries. Each media file comprises audio data
`
`and meta data, wherein the meta data may include a plurality of entries, representing a
`
`context of each media file in memory 124, such as song title (e.g., "We Belong
`
`Together"), album title (e.g., "Breakthrough"), artist (e.g., John Doe), genre (rhythm and
`
`blues), time length (e.g., 3:10), and track number (Track 5), etc. In Figure 2, media
`
`player 114 include media file data 128, such as song title, album title, artist, genre, time
`
`length, track number, etc., stored in, for example, memory 148 of media player 114. A
`
`user may utilize known methods to add, edit, and other wise manipulate media files in
`
`media player 114. Memory 148 may also include meta data for each media file in
`
`memory 148 of media player 114. Each media file may include a plurality of entries,
`
`representing a context of each media file in memory 148, such as song title, album title,
`
`artist, genre, time length, and track number, etc. As mentioned, control module 102
`
`includes database 158 stored in memory 124. Preferably, database 158 is stored in non(cid:173)
`
`volatile memory 138 (e.g., flash EPROM) and is, therefore, maintained across power
`
`cycles of the control system.
`
`[0025)
`
`In one embodiment, the media file data 128 are retrieved automatically by
`
`control module 1 02 when a wireless communications link is established between control
`
`module 102 and media player 114. In one embodiment, media file data 128 retrieved
`
`from media player 114 may be stored in volatile memory 136 (e.g., DRAM).
`
`Accordingly, the media file data stored in volatile memory 136 is not preserved across
`
`power cycles of the control system. In an alternative embodiment, the media file data
`
`may be stored in non-volatile memory 138 (database 158 shown in Figure 2) and may be
`
`maintained across power cycles and available to a user after power-on initialization.
`
`When a second wireless communications link is established with a different media player
`
`(e.g., the media player of another vehicle occupant), the data in volatile memory 136 may
`
`be overwritten with the media file data from the second media player. Alternatively, each
`"
`user may have a media files with meta data from their associated media player stored in
`
`MILW_1975100
`
`-9-
`
`Page 10 of 32
`
`
`
`Atty. Dkt. No.: 026032-5012 (Innovation No. 1220)
`
`non-volatile memory 138. In this embodiment, the media file data for a particular media
`
`player 114 would only be accessible when that particular user's media player 114 is
`
`connected to the control system via the wireless communications link. Each media player
`
`114 may have a unique identifier that identifies one user's media player 114 from another
`
`media player.
`
`[0026] Figure 3 is a block diagram of an integrated system for controlling a vehicle's
`
`audio and telephony systems. The control system of Figure 3 enables a user to connect a
`
`digital media storage device, such as an iPod ® media player, in order to extract meta
`
`data from the digital media storage device. Figure 3 illustrates a preferred embodiment
`
`of the software architecture employed to support a control system of Figure 1.
`
`[0027] Music manager 242 includes a media cataloger 248 which is configured to
`
`extract the meta data from the connected media device (e.g., mass storage device, media
`
`player, mobile phone, etc.). In the case of mass storage device 278, it may be connected
`
`via a universal serial bus (USB) connection. Media cataloger 248 searches through the
`
`file structure of mass storage device 278, in order to identify audio media stored in
`
`memory of the device. Media cataloger 248 is configured to parse the media file to locate
`
`the embedded metadata (ID3 tags) and extract them. USB Playback 244 decodes the
`
`audio media during file reading and playback of the audio media files. Media cataloger
`
`248 also searches through the audio media files for various file parameters, including an
`
`ID3 tag, which is a tagging format for MP3 files. Media cataloger 248 may be configured
`
`to perform the meta data extraction on a file by file basis, such that media cataloger 248
`
`creates a database, which is shown as music database 252. Media cataloger is configured
`
`to request that the user re-catalog the media files on the device, when it detects that a
`
`modification or addition has been made to the media files. It should be understood that
`
`mass storage device 278 may include media storage devices, such as a thumb drive, a
`
`USB stick, etc.
`
`[0028]
`
`In the case of media player 274 (such as an iPod® media player), it may
`
`connect to music manager 242 through a wireless connection with a Bluetooth dongle.
`
`MILW_1975100
`
`-10-
`
`Page 11 of 32
`
`
`
`Atty. Dkt. No.: 026032-5012 (Innovation No. 1220)
`
`An after-market dongle, called naviPlay™, is currently manufactured by TEN
`
`Technology. lrnpulsesoft Corporation also created a proprietary protocol that enables the
`
`system to extract the meta data from an iPod® media player. Upon connecting the Blue
`
`tooth dongle with an iPod® media player, the iPod control 264 recognizes that an iPod®
`
`me~ia player is connected. Media cataloger 248 interfaces with Bluetooth control
`
`module 260, in order to request the meta data over the Bluetooth connection. Media
`
`streaming 266 includes a streaming profile such as advanced audio distribution profile
`
`(A2DP), which is used for controlling the streaming of audio data from media player 274
`
`or mobile telephone 276 to the system. It should be further understood that the scope of
`
`the present invention is not limited to an iPod® media player. Media player 274 may
`
`include any of several types of media storage devices, digital audio/video players, etc.,
`
`capable of storing media files in memory.
`
`[0029] Additionally, mobile telephone 276 is shown coupled to Bluetooth control
`
`module 260 through Bluetooth host stack 262. Bluetooth control module 260 preferably
`
`includes a hands-free profile, in order to inter-operate with the Bluetooth HFP-enabled
`
`mobile phone. Alternatively, mobile phone 276 may be a Bluetooth-enabled phone with a
`
`hands-free profile. In an alternative embodiment, mobile telephone 276 may also include
`
`a m~dia player for streaming-in media files over a Bluetooth connection. Mobile
`
`telephone 276 is configured to stream-in audio via media streaming 266. Media cataloger
`
`248 is further configured to extract the meta data from mobile telephone 276, wherein the
`
`meta data are stored in music database 252.
`
`[0030] Music database 252 preferably includes a client application programming
`
`interface (API) 254 for media cataloger 248 to invoke for requests for cataloging media
`
`files. Music database 252 may also include SQL database engine 256 and music database
`
`schema 258, serving as a relational database management system. A memory module 268
`
`is coupled to music database 252. Music database 252 includes a volatile memory 270
`
`(e.g., RAM) and a non-volatile memory 272 (e.g., flash). Accordingly, a meta data
`
`catalog stored in volatile memory 270 is not preserved across power cycles of the system,
`
`MILW_1975100
`
`-11-
`
`Page 12 of 32
`
`
`
`Atty. Dkt. No.: 026032-5012 (Innovation No. 1220)
`
`whereas the media file may be stored in non-volatile memory 272 and may be maintained
`
`across power cycles and available after a power-on initialization.
`
`[0031] Once the media device (e.g., mass storage device 278, media player 274, mobile
`
`phone 276, etc.) has connected, music manager 242 informs state manager 222 that a
`
`media device has been located (e.g., a Bluetooth-enabled device is found or a mass
`
`storage device has been connected). If cataloging for the media device is necessary,
`
`music manager 242 informs state manager 222 that cataloging has been completed. State
`
`manager 222 uses these data to update graphical user interface (GUI) 212 and voice user
`
`interface (VUI) 232 that cataloging is occurring and/or has been completed via UI
`
`Context Manager 224 and integration module 225. The interface between state manager
`
`222, GUI 212, and VUI 232 demonstrate how a synchronous multimodal user interface is
`
`achieved. Existing focus management 226 controls various vehicle systems when
`
`multiple systems are in use at the same time. Existing hands-free application 228 controls
`
`the operation of the connected mobile phone and other vehicle systems when the mobile
`
`phone receives a call. For example, if the user is playing back music when the mobile
`
`phone receives a call, the system may be configured to pause music playback at that time.
`
`Subsequently, the user can disconnect the call and have the music playback automatically
`
`resume.
`
`[0032] VUI 232 includes speech recognition engine 234, text-to-speech engine 236,
`
`and text-to-grammar engine 238. Microphone 240 and speakers 250 are preferably
`
`coupled to VUI 232 for processing various data signals, such as audio signals (e.g., oral
`
`input commands, audio output data, etc.). When the cataloging process is complete, state
`
`manager 222 notifies VUI 232 that the media device has been cataloged. Upon receiving
`
`the update from state manager 222 that cataloging is complete, VUI 232 is configured to
`
`parse through music database 252 for each of the entries of the meta data and convert the
`
`entries to an acoustic baseform (i.e., phonemic representation of the entry). The acoustic
`
`baseforms are stored in a baseform list in volatile memory 270. Therefore, the baseform
`
`list is not preserved across power cycles of the system. In an alternative embodiment,
`
`MILW_19751 00
`
`-12-
`
`Page 13 of 32
`
`
`
`Atty. Dkt. No.: 026032-5012 (Innovation No. 1220)
`
`music manager 242 is notified by a power module (not shown) that the system is shutting
`
`down. Music manager 242 writes the RAM-based database(s) to non-volatile memory
`
`272, in order to be maintained across power cycles.
`
`[0033] Additionally, VUI 232 includes software logic for converting text data,
`
`including acronyms, punctuation, and unique sounding names, into an acoustic baseform.
`
`Text-to-speech engine 236 is configured to convert several such meta data entries. For
`
`example, text-to-speech engine 236 is configured to recognize and convert the artist's
`
`name "INXS," which phonetically sounds like "in excess." Another example would be
`
`the artist's name ".38 Special,'' which phonetically sounds like "thirty-eight special"
`
`instead of "point three eight special" In one embodiment, the software logic is embedded
`
`directly into VUI 232, wherein VUI 232 best converts the text data according to its own
`
`rules. In an alternative embodiment, the system may use a connected mobile phone (e.g.,
`
`mobile phone 276) to create a dial-up connection to the Internet to access an online music
`
`database. Alternatively, the system can access a shared netwprk drive or a database that
`
`includes a phonetic representation in speech synthesis mark-up language (SSML). Text(cid:173)
`
`to-speech engine 236 may use the SSML to pronounce the entry correctly and to create
`
`the correct acoustic baseform for the entry of the meta data.
`
`[0034] Music manager 242 further includes a USB playback 244 and iPod® media
`
`player playback 246. Using either in GUI 212 or VUI 232, the user may select a mode to
`
`playback media files with USB playback 244 or iPod® media player playback 246. When
`
`the user selects a mode of playback, GUI 212 and/or VUI 232 determine how playback
`
`will happen. Upon selecting the artist to be played (e.g., "play the Beatles"), state
`
`manager 222 notifies music manager 242, and music manager 242, through the two
`
`playback sub-components, accesses music database 252 through the client API 254 to
`
`find all the tracks associated with the specified artist. The tracks may then be played back
`
`in a pre-determined order or at random. For example, a user may decide to playback the
`
`Beatles' albums in alphabetical order and then within the albums, in the individual track
`
`MILW_1975100
`
`-13-
`
`Page 14 of 32
`
`
`
`Atty. Dkt. No.: 026032-5012 (Innovation No. 1220)
`
`order. Alternatively, a user may decide that to play the albums in the chronological
`
`order, starting with the first Beatles' album.
`
`[0035] Tactile user interface (TUI) 202 includes rotary input 204, general purpose
`
`input/output (GPIO) 206, and radio input/output ("radio 10") 208. TUI 202 is coupled to
`GPIO 210 and 12C unit 214 (or ec), which is a serial bus. 12C unit 214 is coupled to
`GPIO Extender 216 and radio unit 218. Radio unit 218 preferably includes an AMIFM
`
`tuner, a power amplifier, equalizer, a satellite radio, and an auxiliary input.
`
`(0036] As the system is playing back the selected track, music manager 242 preferably
`
`provides playback status of the track. Media cataloger 248 is configured to perform the
`
`meta data extraction, which includes extracting data such as song title, album title, artist,
`
`genre, time length, track number, the elapsed time, the recording label, featured artist(s),
`
`etc.
`
`[0037] State manager 222 is configured to provide the playback status to GUI 212 and
`
`VUI 232. GUI 212 can show the playback status of the current track in the list of the
`
`selected tracks. VUI 232 also allows the user to "barge in,'' to the playing track and input
`
`a desired command. For example, a user may press a button, in order to activate speech
`
`recognition engine 234, and, then, the user may utter the appropriate command to begin
`
`playback of another media file (e.g., "next," "pause," "play 'Yellow Submarine"').
`
`[0038] Figur