`(10) Patent N0.:
`US 6,772,212 B1
`
`Lau et al.
`(45) Date of Patent:
`Aug. 3, 2004
`
`USOO6772212B1
`
`(54) AUDIO/VISUAL SERVER
`
`(75)
`
`.
`-
`.
`Inventors 33111119 C' Landsama Clara’ CA(US).’
`anlel Benyamln, Oakland, CA (US),
`,
`.
`Brendan T-D0W11ng,Ma11bu> CA (US)
`
`(73) Assignee: PhatNoise, Inc., Los Angeles, CA (US)
`
`( * ) Notice:
`
`Subject to any disclaimer, the term of this
`'
`~
`ginseng 1:5:XECHSC%%T adJuSted under 35
`‘
`‘
`‘
`( ) y
`ays‘
`
`(21) Appl. N0.: 09/521,182
`
`(22)
`
`Filed:
`
`Mar. 8, 2000
`
`Int. Cl.7 ............................ G11B 2/10; G06F 15/16
`(51)
`(52) US. Cl.
`........................ 709/228; 709/203; 364/515
`(58) Field of Search ................................. 709/206, 203,
`709/217, 218, 222, 225, 228, 232; 710/8,
`10; 705/51; 364/514, 515
`
`6,061,232 A
`5/2000 Ho ............................. 361/685
`6,078,112 A
`6/2000 Saunders et a1.
`........... 307/125
`6,132,243 A
`10/2000 Hirata et a1.
`............. 439/541.5
`6 142 796 A
`11/2000 Behl et a1. ............ 439/131
`
`6,155,853 A
`12/2000 Kan
`439
`,
`,
`Jlura ..........
`/159
`
`6,163,817 A * 12/2000 Shteyn et a1. ............ 710/8
`............ 439/493
`6,176,734 B1
`1/2001 Juntwait et a1.
`6,212,555 B1
`4/2001 Brooks, Jr.
`6,233,226 B1
`5/2001 Gringeri et a1.
`............ 370/252
`
`2,332,333 31
`23881 ‘lffilords 6t taLI -------
`733/7318
`.....
`,
`,
`o amer e a.
`..
`
`.........
`6,317,141 B1 * 11/2001 Pavley et a1.
`345/732
`12/2001 Nicholson et a1.
`............ 381/86
`6,330,337 B1
`.............. 340/8154
`6,344,801 B1
`2/2002 Aoki et a1.
`
`4/2002 Burks ................... 710/68
`6,378,010 B1
`6,385,596 B1 *
`5/2002 Wiser et a1.
`.................. 705/51
`6,457,640 B2 * 10/2002 Ramachandran et a1.
`235/379
`6,487,145 B1
`11/2002 Berhan .................... 369/30.15
`6,721,489 B1 *
`4/2004 Benyamin et a1,
`,,,,,,,,,,,, 386/46
`
`OTHER PUBLICATIONS
`Excerpts from WWW.empeg.com, 1999.
`Clarion AutoPC 310C Owner’s Manual, Clarion Co. Ltd.,
`1998.
`
`(56)
`
`References Cited
`
`RCA LYRA User’s Guide, RD2201/2202/2204, 1999.
`
`Us PATENT DOCUMENTS
`
`* cited by examiner
`
`4,833,554 A
`4,982,303 A
`5,173,888 A
`5,253,133 A
`5,319,519 A
`5,390,027 A
`5,408,449 A
`5,454,080 A
`5,541,738 A
`5,557,541 A *
`5’612’927 A
`5,620,244 A
`5,726,373 A
`5 734 119 A *
`5,816,861 A
`5,841,424 A
`5,860,068 A
`5,865,651 A
`5,322,234 2
`,
`,
`6,016,522 A
`6,023,290 A
`6,055,478 A
`
`5/1989 Dalziel et a1.
`........... 360/9804
`
`1/1991 Krenz .................. 360/137
`
`12/1992 A11 -------------- 369/33
`
`10/1993 Guo ...................
`.. 360/97.01
`........... 361/685
`6/1994 Sheppard et a1.
`2/1995 Henmi et a1.
`4/1995 on .............................. 369/32
`9/1995 Fasig et a1.
`................. 395/283
`7/1996 MankOVitZ
`9/1996 SChulhOf 6t al~ ~~~~~~~~~~~~~~ 700/94
`
`””” 361/685
`3/1997 Momson et al‘
`
`4/1997 Yang ....................... 312/333
`3/1998 Choi et a1.
`84/609
`................. 84/622
`3/1998 France et a1.
`10/1998 Cheng ........................ 439/653
`11/1998 Kjkinis ....................... 345/168
`1/1999 Cook
`2/1999 Dague et a1.
`g;1333 £1an t
`1
`a z e a .
`“2000 Rossum ....................... 710/52
`2/2000 Seita
`4/2000 Heron ........................ 701/213
`
`............... 439/680
`
`Primary Examiner—Frantz B. Jean
`Assistant Examiner—Khanh Quang Dinh
`(74) Attorney, Agent, or Firm—Vierra Magen Marcus
`Harmon & DeNiro LLP
`
`(57)
`
`ABSTRACT
`
`An audio/visual server is described that can be used to store
`and play audio/visual data. A removable hard disk (or other
`media) is connected to a dock that is in communication With
`a computer. While the removable hard disk is connected to
`h
`d k
`d. /
`.
`1 d t
`b
`t
`f
`d f
`th
`t e
`oc , au 10 Visua . a a can
`e
`rans erre.
`rom e
`computer to the hard disk. After the hard disk is removed
`from the dock and connected to the audio/visual server, the
`server can access and play the audio/visual data. In one
`embodiment, the audio/visual server stores and plays music,
`emulates a disc changer, and communicates With an auto-
`mobile stereo head unit. The interface With the head unit is
`-
`-
`programmable so that multiple head units can be supported.
`
`36 Claims, 16 Drawing Sheets
`
`Internet
`
`Internet
`server
`
`
`
`128
`
`126
`
` 130
`
`
`
`monitor
`
`124
`
`
`computer
`
`
`
`music
`server
`
`
`122
`
`
`
`
`
`docking
`station
`
`
`
`120
`
`
`
`disk
`Canndge
`
`1 04
`
`head
` unit
`
`
`
`
`I H
`I
`
`
`
`
`
`
`
`
`
`
`
`1
`t
`l—
`l
`
`Samsung Ex. 1012 p. 1
`
`Samsung Ex. 1012 p. 1
`
`
`
`US. Patent
`
`Aug. 3, 2004
`
`Sheet 1 0f 16
`
`US 6,772,212 B1
`
`Internet
`server
`
`
`
`
`
`122
`
`
`
`diSk
`cartridge
`
`120
`
`
`
`docking
`station
`
`monitor
`
`124
`
`computer
`
`music
`server
`
`
`
`102
`
`
`
`Samsung Ex. 1012 p. 2
`
`Samsung Ex. 1012 p. 2
`
`
`
`US. Patent
`
`Aug. 3, 2004
`
`Sheet 2 0f 16
`
`US 6,772,212 B1
`
`Fig. 2
`
`140
`
`/
`
`122
`
`144
`
`42
`
`Fig. 3
`
`142
`
`IDE
`
`connector
`
`USB <==> IDE
`
`Samsung EX. 1012 p. 3
`
`Samsung Ex. 1012 p. 3
`
`
`
`US. Patent
`
`Aug. 3, 2004
`
`Sheet 3 0f 16
`
`US 6,772,212 B1
`
` 172
`
`Fig. 4
`
`102
`
`204\
`
`Fig. 5
`
`Samsung Ex. 1012 p. 4
`
`Samsung Ex. 1012 p. 4
`
`
`
`US. Patent
`
`Aug. 3, 2004
`
`Sheet 4 0f 16
`
`US 6,772,212 B1
`
`Reprogrammable
`
`320
`
`340
`
`Controller _ Power
`342
`
`glue logic
`
`
`
`Processor
`
`302
`
`300
`
`boot
`
`304
`
`306
`
`330
`
`IDE
`
`308
`
`IDE Connector
`
`D/A
`
`324
`
`31 0
`
`Audio Connector
`
`326
`
`Samsung EX. 1012 p. 5
`
`Samsung Ex. 1012 p. 5
`
`
`
`US. Patent
`
`Aug. 3, 2004
`
`Sheet 5 0f 16
`
`US 6,772,212 B1
`
`store music on cartridge
`
`404
`
`remove cartridge from
`
`insert cartrdige into music
`
`receive power
`
`602
`
`
`
`604
`
`606
`
`
`
`
`
` 614
`
`
`operate head unit
`
`410
`
`read start file
`
`608
`
`head unit sends
`commands
`
`412
`
`music server provides
`music
`
`414
`
`firmware update
`sequence
`
`
`
`612
`
`
`
`execute music player
`program
`
`head unit provides music
`
`416
`
`Flg ' 9
`
`Fig. 7
`
`Samsung EX. 1012 p. 6
`
`Samsung Ex. 1012 p. 6
`
`
`
`US. Patent
`
`Aug. 3, 2004
`
`Sheet 6 0f 16
`
`US 6,772,212 B1
`
`load boot program
`
`542
`
`_
`
`ver3ion
`
`Fi
`
`. 8
`
`receive firmware
`.
`ver3ion
`
`~ 550
`
`
`
`552
`
`is there an
`
`update?
`
`request new firmware
`
`554
`
`
`
`decrypt and store
`
`
`
`canndge
`change?
`
`
`572
`
`
`
` send list 1, track 1
`
`send previous location
`
`execute state machine
`
`578
`
`Samsung EX. 1012 p. 7
`
`Samsung Ex. 1012 p. 7
`
`
`
`US. Patent
`
`Aug. 3, 2004
`
`Sheet 7 0f 16
`
`US 6,772,212 B1
`
`firmware version
`
`read firmware verSIon
`from disk
`
`724
`
`send firmware versnon to
`controller
`
`726
`
`728
`
`
`
`
`request for update?
`
`
`
`yes
`
`
`no
`
`Fig . 1 0
`
`read firmware from disk
`
`740
`
`send firmware to
`
`742
`
`controller
`
`program glue logic
`
`744
`
`Samsung EX. 1012 p. 8
`
`Samsung Ex. 1012 p. 8
`
`
`
`US. Patent
`
`Aug. 3, 2004
`
`Sheet 8 0f 16
`
`US 6,772,212 B1
`
`Fig. 11
`
`814
`
`812
`
`810
`
`1 a O
`
`816
`
`830
`
`818
`
`§
`
`no
`
`command
`
`7)< 05
`
`820
`
`840
`
`
`
`got
`forward
`
`got
`
`got
`
`status
`play
`
`got
`source
`
`864
`
`866
`
`868
`
`870
`
`872
`
`Samsung EX. 1012 p. 9
`
`Samsung Ex. 1012 p. 9
`
`
`
`US. Patent
`
`Aug. 3, 2004
`
`Sheet 9 0f 16
`
`US 6,772,212 B1
`
`093
`
`Fig-12
`
`932
`
`934
`
`
`
`from controller
`
`message received?
`
`
`from player
`960
`
`
`
`
`
`playlist
`
`938
`
`respond to message from
`controller
`
`end of playlist’?
`
`track
`
`962
`
`play next track
`
`play first track of next
`playlist
`
`964
`
`972
`
`
`
` end of track or
`
` 970
`
`send text information to
`
`send text information to
`
`
`
`
`
`
`controller
`
`controller
`
`Samsung Ex. 1012 p. 10
`
`Samsung Ex. 1012 p. 10
`
`
`
`US. Patent
`
`Aug. 3, 2004
`
`Sheet 10 0f 16
`
`US 6,772,212 B1
`
`Fig. 13
`
`1200
`
`
`
`
`1202
`
`1204
`
`1206
`
`1212
`
`browser
`
`
`
`play“Sts I
`
`
`
`
`
`devices
`
`1208
`
`1210
`
`buttons
`
`one
`
`Cllck
`playlist
`bufions
`
`Fig. 15
`
`Fig. 14
`
`select "create play list"
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`1302
`
`create play list
`
`1250
`
`add tracks to play list
`
`
`
`1254
`
`Samsung Ex. 1012 p. 11
`
`Samsung Ex. 1012 p. 11
`
`
`
`US. Patent
`
`Aug. 3, 2004
`
`Sheet 11 0f 16
`
`US 6,772,212 B1
`
`1718
`
`receive one click
`.
`selection
`
`search for next track
`
`
`access track properties
`
`criteria
`
`satisfied?
`
`audio data
`
`comment
`
`tag
`
`title
`
`artist
`
`album
`
`year
`
`genre
`
`1350
`
`1352
`
`1354
`
`1356
`
`1358
`
`1360
`1362
`
`1364
`
`Fig. 16
`
`
`
`
`
`automatically add
`
`track to play list
`
`Fig. 20
`
`Samsung Ex. 1012 p. 12
`
`Samsung Ex. 1012 p. 12
`
`
`
`US. Patent
`
`Aug. 3, 2004
`
`Sheet 12 0f 16
`
`US 6,772,212 B1
`
`store track
`
`1402
`
`detect new track
`
`1404
`
`access play lists
`
`1406
`
`Fig. 17
`
`choose first play list
`
`1408
`
`criteria
`
`satisfied?
`
`1412
`
`automatically
`add track to play list
`
`
`
`
`
`
`
`.
`more play lists?
`
`no
`
`choose next play list
`
`1416
`
`Samsung Ex. 1012 p. 13
`
`Samsung Ex. 1012 p. 13
`
`
`
`US. Patent
`
`Aug. 3, 2004
`
`Sheet 13 0f 16
`
`US 6,772,212 B1
`
`F'g- 18
`
`1530
`
`1 532
`
`request for new device
`
`1502
`
`edit properties
`
`display dialog. box of
`known deVIces
`
`1504
`
`1506
`
`known or new
`
`device?
`
`
`
`1520
` 09W
`
`1508
`
`
`have firmware?
`
`device info template
`
`
`
`update firmware?
`
`
`
`browse for firmware
`
`1522
`
`prepare to load firmware
`
`1512
`
`Samsung Ex. 1012 p. 14
`
`Samsung Ex. 1012 p. 14
`
`
`
`US. Patent
`
`Aug. 3, 2004
`
`Sheet 14 0f 16
`
`US 6,772,212 B1
`
`1600
`
`Flg.19
`
`receive request to
`synchronize
`
`1602
`
`.
`.
`access GUI devuce fiie(s)
`
`1604
`
`access stored device
`fi|e(s)
`
`1606
`
`remove tracks from
`
`device
`
`1616
`
`
`
`new device config
`info?
`
`no
`
`yes 1618
`
`
`
`.
`.
`_
`update deVIce config info
`
`1620
`
`no
`
`1608
`
`new firmware?
`
`add tracks to device
`
`change flag
`
`1610
`
`1612
`
`update play list files on
`device
`
`1614
`
`update play list config
`files on device
`
`1628
`
`
`OS update?
`
`
`no
`
`add new OS
`
`Samsung Ex. 1012 p. 15
`
`Samsung Ex. 1012 p. 15
`
`
`
`US. Patent
`
`Aug. 3, 2004
`
`Sheet 15 0f 16
`
`US 6,772,212 B1
`
`1704
`
`disc
`
`changer
`
`1028
`
`music server
`
`Internet
`server
`
`Fig. 21
`
`126
`
`
`
`
`
`
`
`
`
`
`
`monitor
`
`124
`
`
`
`computer
`
`docking
`station
`
` disk
`
`caflndge
`
`Fig. 23
`
`store music on disk
`caflndge
`
`insert dlSk cartridge Into
`server
`
`1904
`
`1906
`
`receive selection of music
`source
`
`”‘11908
`
`play selected music
`
`1910
`
`Samsung Ex. 1012 p. 16
`
`Samsung Ex. 1012 p. 16
`
`
`
`US. Patent
`
`Aug. 3, 2004
`
`Sheet 16 0f 16
`
`US 6,772,212 B1
`
`1806
`
`1808
`
`Controller
`
`
`
`
`
`Gluelogic
`I
`
`
`
`
`
`boot
`
`304
`
`306
`
`IDE
`
`.
`Glue Loglc
`
`308
`
`IDE Connector
`
`V
`
`
`
`preamp/
`equalizer
`
`
`
`
`
`amplifier
`
`Fig. 22
`
`Samsung Ex. 1012 p. 17
`
`Samsung Ex. 1012 p. 17
`
`
`
`US 6,772,212 B1
`
`1
`AUDIO/VISUAL SERVER
`
`CROSS-REFERENCE TO RELATED
`APPLICATIONS
`
`This Application is related to the following Applications:
`PLAY LIST MANAGER, by Daniel Benyamin, et al.,
`filed the same day as the present application, Ser. No.
`09/521,874; and
`VEHICLE SOUND SYSTEM, by Dannie C. Lau, et al.,
`filed the same day as the present application, Ser. No.
`09/521,186.
`Each of these related Applications are incorporated herein
`by reference.
`BACKGROUND OF THE INVENTION
`
`10
`
`15
`
`1. Field of the Invention
`
`The present invention is directed to a server for audio/
`visual data.
`
`20
`
`2. Description of the Related Art
`The automobile audio industry is a growing and success-
`ful industry. Most automobiles sold include some type of
`audio system. For example, many automobiles include a
`radio, a cassette player and/or a compact disc player. Some
`automobile audio systems include a disc changer. A disc
`changer is a device that can hold more than one audio disc
`and can be used to play songs from any of the discs being
`stored in the disc changer. Typical disc changers are separate
`components of a stereo system and can hold six, eight or ten
`discs such that the disks can be inserted in and removed from
`
`the disc changer separately. Examples of disc changers
`includes audio compact disc changers, audio minidisk
`changers and CD-ROM disc changers.
`Part of the reason that automobile audio systems are so
`popular is because many people want to hear music while
`they are driving. While listening to a radio is sufficient for
`many people, a growing number of drivers prefer to pick and
`choose what music they will listen to. These drivers prefer
`audio systems that include a tape deck or a compact disc
`player.
`Although there are many audio systems with a compact
`disc player or tape deck available to the public, these audio
`systems have drawbacks. First, these systems can only store
`a limited amount of music. That is, a system with a tape deck
`can only store the maximum amount of music that fits on a
`tape, which often is sixty minutes or one hundred and twenty
`minutes. Compact discs typically hold approximately sev-
`enty four minutes of music. Thus,
`these devices have a
`limited amount of music that can be stored. Second, if a user
`is listening to a first tape or compact disc and chooses to
`listen to a different tape or compact disc that is not already
`stored in the player, the user must remove the compact disc
`or tape and insert a different one. This can be a difficult and
`dangerous maneuver while driving an automobile. Third,
`tape decks and compact disc players require physical media.
`Although music can be stored on a computer’s memory,
`prior art stereos require tapes or compact discs for each set
`of songs. Thus, extra resources are wasted manufacturing
`and purchasing the media. Fourth, the media is vulnerable.
`For example, compact discs can scratch or break. Cassettes
`can wear out or break.
`
`Additionally, there is a new trend to order music online.
`That is, consumers can purchase music over the Internet by
`downloading the music. As downloading music becomes
`more popular, consumers will want to play this downloaded
`
`25
`
`30
`
`35
`
`40
`
`45
`
`50
`
`55
`
`60
`
`65
`
`2
`music in their automobiles. An automobile stereo that
`
`includes a compact disc player to play music requires the
`user to purchase a compact disc recorder and burn a compact
`disc in order to play the downloaded music. Thus, there is a
`need for an improved automobile audio system that does not
`require cassettes or compact discs, can be used with reusable
`media and can play music downloaded from a computer or
`other device.
`
`One solution that is currently available is the portable
`solid state music player, which uses flash memory to store
`music files in digitally compressed formats. Some of these
`devices include a removable memory such as compact flash
`card. The compact flash card can be removed from the player
`and inserted into a compact flash card reader which is
`connected to a computer. Other music players connect
`directly to a computer for downloading music. These por-
`table solid state music players typically are shipped with
`headphones for listening to the music. Alternatively, a user
`can purchase an adapter so that the output of the music
`player connects to the cassette input of an automobile stereo.
`While this solution solves some of the problems identified
`above, using the portable solid state music player with an
`automobile stereo is not satisfactory. First, sending the
`sound signal through the cassette deck causes a degradation
`in sound quality. Second, using a solid state music player
`with a car stereo as described above can be dangerous
`because all of the controls are on the portable player, rather
`than on the dashboard or another convenient location for the
`
`driver. Third, while music can be sent from the portable
`player to the car stereo, the car stereo cannot communicate
`back to a music player so the user is unable to use the
`controls of the car stereo to control
`the music player.
`Additionally, many portable music players tend to have a
`limited amount of storage, there is no convenient location to
`store the music player while driving and the solution is not
`available if there is no tape deck.
`Another solution includes an in-dash car stereo which
`
`plays music stored in MP3 format. This solution, however,
`has drawbacks. First, to store music on the stereo, the entire
`stereo is removed from the vehicle which can be difficult and
`can break the stereo. Second, the stereo does not work with
`a disk changer; therefore, a user who has a collection of
`compact disks or minidisks can no longer use the collection.
`Third, use of this solution requires removal of all prior audio
`equipment. Thus, a user who has invested in a prior stereo
`loses the entire investment
`
`Thus, there is a need for an improved automobile audio
`system.
`
`SUMMARY OF THE INVENTION
`
`The present invention, roughly described, provides for an
`audio/visual server system that can be used to store and play
`audio/visual data.
`In one embodiment,
`the audio/visual
`server stores music, emulates a disc changer, and commu-
`nicates with an audio head unit. The interface with the head
`
`unit is programmable so that multiple head units can be
`supported.
`In another embodiment, the audio/visual server system of
`the present invention includes a dock adapted to be con-
`nected to an audio/visual data providing device, an audio/
`visual server adapted to be in bidirectional communication
`with an audio/visual head unit and a first storage device
`capable of being removably connected to both the dock and
`the audio/visual server. The first storage device stores audio/
`visual data. An example of the first storage device can be a
`removable hard disk drive. In one embodiment, the audio/
`
`Samsung Ex. 1012 p. 18
`
`Samsung Ex. 1012 p. 18
`
`
`
`US 6,772,212 B1
`
`3
`visual server performs a method comprising the steps of
`receiving a request
`from the head unit
`to send music
`information to the head unit, reading audio/visual data from
`the first storage device and sending audio/visual information
`to the head unit in response to the request from the head unit.
`The audio/visual information sent to the head unit could be
`an analog signal or a digital signal. In one embodiment, the
`audio/visual server plays the audio/visual data and sends the
`output to the head unit.
`Another embodiment of the present invention includes an
`input connector, one or more readable and writeable storage
`devices capable of storing user replaceable interface pro-
`gram code, an output connector connected to the head unit,
`and one or more processors. The storage devices also store
`the audio/visual data. At least one of the processors engages
`in two-way communication with the head unit based on the
`replaceable interface program code. In one embodiment, the
`replaceable interface program code is loaded on the server
`by downloading the code from a computer to a removable
`hard disk drive (or other media). The removable hard disk
`drive is then connected to the server for loading the code on
`the server.
`
`These and other objects and advantages of the present
`invention will appear more clearly from the following
`detailed description in which the preferred embodiment of
`the invention has been set forth in conjunction with the
`drawings.
`BRIEF DESCRIPTION OF THE DRAWINGS
`
`FIG. 1 is a block diagram of one embodiment of the
`present invention.
`FIG. 2 is the side view of the dock of the present
`invention.
`
`10
`
`15
`
`20
`
`25
`
`30
`
`FIG. 3 is a schematic diagram of the dock of the present
`invention.
`
`35
`
`FIG. 4 is a cut away overhead view of a removable hard
`disk drive.
`
`FIG. 5 is the perspective view of the server of the present
`invention.
`
`FIG. 6 is a block diagram of the components of the server
`of one embodiment of the present invention.
`FIG. 7 is a flow chart describing the operation of the
`present invention.
`FIG. 8 is a flow chart describing the start up process for
`the controller.
`
`FIG. 9 is a flow chart describing the start up process for
`the processor.
`FIG. 10 is a flow chart describing the firmware update
`sequence performed by the processor.
`FIG. 11 is a state diagram for the controller.
`FIG. 12 is a flow chart describing a process performed by
`the processor for playing audio/visual data.
`FIG. 13 depicts the graphical user interface for the soft-
`ware used on a computer to manage play lists and load tracks
`on the hard disk drive.
`
`FIG. 14 is a flow chart describing the process of acquiring
`tracks, managing tracks and adding tracks to a device.
`FIG. 15 is a flow chart describing the process of creating
`a play list.
`FIG. 16 is a block diagram depicting an ID3 tag.
`FIG. 17 is a flow chart describing the method for auto-
`matically adding tracks to a play list.
`FIG. 18 is a flow chart describing the method of selecting
`new interface program code to be loaded on the server of the
`present invention.
`
`40
`
`45
`
`50
`
`55
`
`60
`
`65
`
`4
`FIG. 19 is a flow chart describing the process of synchro-
`nizing data between the hard disk drive and the software on
`the computer.
`FIG. 20 is a flow chart describing the process for gener-
`ating a one click play list.
`FIG. 21 is a block diagram of an alternative embodiment
`of the present invention.
`FIG. 22 is a block diagram of the components of an
`alternative embodiment of the music server.
`
`FIG. 23 is a flow chart describing the operation of an
`alternative embodiment of the present invention.
`DETAILED DESCRIPTION
`
`While the preferred embodiment of the invention is
`described in regard to an in-vehicle audio system,
`the
`present invention can also be used in other contexts and with
`other types of audio/visual data. For purposes of this patent,
`audio/visual includes audio alone, visual alone, or a com-
`bination of audio and visual. Examples of audio data include
`music, speech or other sounds. Examples of visual data
`include video, animation, slide show, text, still images, etc.
`Thus, the present invention can be used as a server for video
`data, visual text data, speech data, or any other type of
`audio/visual data. In one embodiment, the audio/visual data
`is grouped into tracks. A track could be a song, a message,
`a story, a video, a scene from a video, etc. The term track is
`used, therefore, to refer to a grouping of audio/visual data.
`FIG. 1 depicts one embodiment of the present invention.
`FIG. 1 depicts music server 102 which is one embodiment
`of an audio/visual server. Music server 102 emulates a disc
`changer. Emulating a disc changer is understood to mean
`that music server 102 is not an actual disk changer; however,
`based on the input/output data communication to and from
`the audio/visual server, music server 102 appears to act like
`a disc changer. Music server 102 is in communication with
`head unit 104. In one embodiment, head unit 104 is a
`standard automobile stereo head unit which is adapted to
`communicate with a disc changer. Connected to head unit
`104 are speakers 106, 108, 110 and 112 for providing music
`to the user. FIG. 1 also shows removable disk cartridge 120
`which can be connected to music server 102 or docking
`station 122 (also called a dock).
`Docking station 122 is connected to computer 124. In one
`embodiment, docking station 122 connects to a USB port of
`computer 124. In other embodiments, docking station 122
`can connect to a parallel port, serial port, fire wire connec-
`tion or other interface.
`In other embodiments, docking
`station 122 communicates with computer 124 using a wire-
`less connection, including infrared, RF, etc. Alternatively,
`docking station can be a separate entity on a network
`communicating to computer 124 over a network.
`FIG. 1 shows a monitor 126 connected to computer 124.
`Computer 124 is a standard personal computer known in the
`art. For example, computer 124 includes a processor, a
`memory in communication with the processor, a hard disk
`drive in communication with the processor, a USB port, a
`serial port, a parallel port, a network interface (e.g. network
`card or modem), a keyboard and a pointing device. The
`keyboard, pointing device and monitor 126 are used to
`provide and interact with a graphical user interface (GUI) so
`that a user can add tracks to music server 102. Computer 124
`is connected to Internet 128 via a modem, LAN or other
`means. In one embodiment of the present invention, an
`Internet server 130 is provided via the Internet for down-
`loading tracks, downloading information about tracks, stor-
`ing information about tracks and downloading firmware. In
`one embodiment of the system of FIG. 1, the tracks are
`songs.
`
`Samsung Ex. 1012 p. 19
`
`Samsung Ex. 1012 p. 19
`
`
`
`US 6,772,212 B1
`
`5
`In general, the embodiment shown in FIG. 1 operates as
`follows. A user will insert disk cartridge 120 into docking
`station 122. Using the GUI on computer 124, the user will
`download tracks from the Internet (including Internet server
`130) to the hard disk of computer 124. The downloading of
`music can also be done without using the GUI of the present
`invention. After the tracks are on disk cartridge 120, disk
`cartridge 120 is removed from docking station 122 and
`inserted into music server 102. In one embodiment, music
`server 102 and head unit 104 are mounted in an automobile.
`
`More specifically, music server 102 may be mounted in the
`trunk of a car and head unit 104 is mounted in the dash
`
`board. After disk cartridge 120 is inserted into music server
`102, a user can use head unit 104 to access tracks on disk
`cartridge 120 and play those tracks through speakers 106,
`108, 110 and 112.
`FIG. 2 is a side view of docking station 122. On the top
`of docking station 122 is an opening 140 for receiving disk
`cartridge 120. In one embodiment, disk cartridge 120 is
`inserted into opening 140 in a vertical orientation. FIG. 2
`also shows two wires connected to docking station 122. Wire
`142 supplies DC power to docking station 122. In one
`embodiment, wire 142 is connected to a five volt regulated
`transformer. Wire 144 connects docking station 122 to a
`USB port of computer 124.
`FIG. 3 is a schematic of the internal components of
`docking station 122. Wire 142 is connected to switch 150.
`Switch 150 is a mechanical switch that is triggered when
`disk cartridge 120 is completely and properly inserted into
`opening 140. Switch 150 is connected to IDE controller 152
`and USB to IDE interface 154. When switch 150 is triggered
`(disk cartridge 120 is inserted in docking station 122), power
`from wire 142 is provided to IDE connector 152 and USB
`to IDE interface 154. USB to IDE interface 154 is also
`connected to wire 144, IDE connector 152, LED 156 and
`LED 158. LED 156 indicates whether docking station 122 is
`receiving power. LED 158 indicates hard drive activity. In
`one embodiment, USB to IDE interface 154 is an OnSpec
`90C36. The purpose of the docking station is to connect the
`hard disk drive to the computer. Other alternative docking
`stations different from that of FIGS. 2 and 3 could also be
`
`used within the spirit of the present invention. Examples of
`suitable alternative docks include a cable that connects to
`
`both a computer and the disk drive, a connector that con-
`nects to both a computer and the disk drive, a drive bay that
`is within or connected to the computer and can receive the
`disk drive, etc.
`FIG. 4 shows an overhead cutaway view of disk cartridge
`120. Outer shell 170 protects and houses the components of
`disk cartridge 120. In one embodiment, outer shell 170 is
`made of hard plastic. Metals can also be used. At one end of
`outer shell 170 is IDE connector 172. Connected to IDE
`
`connector 172 is a printed circuit board (or a flexible ribbon
`cable) with various circuit elements and wires. For example,
`flexible ribbon cable 174 includes capacitors and resistors
`for decoupling. Connected to flexible ribbon cable 174 is
`connector 176. In one embodiment, connector 176 is a 44
`pin connector. Flexible ribbon cable 174 maps signals from
`connector 172 to connector 176. Connector 176 is attached
`to hard disk drive 178. In one embodiment, hard disk drive
`178 is a 5 gigabyte hard disk drive from Toshiba with a 21/2
`inch form factor. Other hard disk drives can also be used. A
`
`hard disk drives utilizing one or multiple disks can be used.
`Hard disk drives with multiple disks typically have separate
`read/write heads for each disk. In other alternatives, the hard
`disk drive can be replaced by other high density disk drives,
`flash memory, CDRW or other appropriate storage media. In
`
`5
`
`10
`
`15
`
`20
`
`25
`
`30
`
`35
`
`40
`
`45
`
`50
`
`55
`
`60
`
`65
`
`6
`one embodiment, the gap between hard disk drive 178 and
`outer shell 170 can be filled with a shock absorbing sub-
`stance.
`
`Hard disk drive 178 includes music files to be played by
`music server 102. Hard disk drive 178 also includes various
`program code and configuration information.
`In one
`embodiment, hard disk drive 178 includes at least five top
`level directories:
`/MP3,
`/playlist,
`/playlist config,
`/microcontroller config and /OS. The directory /MP3 con-
`tains all of the audio files. The directory /playlist contains all
`the play list files. The drive can store many play lists. Each
`play list file contains a set of strings. Each string specifies the
`path location to a particular track in the /MP3 directory. The
`strings are stored in the file according to the order set up by
`the user. The directory /playlist config contains files that
`include special configuration information for each play list.
`Examples of such special configuration information includes
`whether there should be a pause between tracks, whether
`text output should be enabled, whether random play should
`be enabled, the length of the gap between tracks, informa-
`tion about repeating tracks in the play list, etc.
`The directory /microcontroller config includes a series of
`files for configuring controller 320 (see FIG. 6) to commu-
`nicate with head unit 104. One file is a text file with a set of
`
`flags which indicate any of the following: disk cartridge
`change, other devices connected, head unit text on/off, time
`elapsed to be displayed up or down, etc. The flag indicating
`disk cartridge change is a one bit binary value that
`is
`inverted by computer 124 if disk cartridge 120 is connected
`to docking station 122 and data is written to or deleted from
`disk cartridge 120. Note that in one embodiment, music
`server 102 is prohibited from writing to disk cartridge 120.
`The directory /microcontroller config also includes a button
`mapping file which is used to override the function of any
`button on the head unit. A file is also included which
`
`provides a temperature setting for automatically turning the
`box off. In one embodiment, music server 102 includes a
`thermometer and electronics for determining the tempera-
`ture. If the temperature reaches the setting in the file, music
`server 102 will automatically turn off. Another file in the
`directory /microcontroller config stores the firmware used to
`program controller 320 to communicate with head unit 104.
`The firmware on hard disk drive 178 is encrypted. The
`/microcontroller config directory also includes files which
`store a version number for the encrypted microcode and
`code for programming a PLD or FPGA (described below).
`In the /OS directory, hard disk drive 178 stores the
`operating system for music server 102. In one embodiment,
`the operating system used is LINUX. Other operating sys-
`tems can also be used. In addition to the operating system
`code, the /OS directory also stores drivers including the IDE
`driver, audio drivers for the digital to analog converter, a
`driver for the serial interface between the processor and the
`controller, etc. The /OS directory also stores a start up file
`which includes start up code performed by processor 302
`after receiving power.
`FIG. 5 shows a perspective view of music server 102. At
`one end of music server 102 is an opening 202 for inserting
`disk cartridge 120. The components of music server 102 are
`protected by hinged door 204. When disk cartridge 120 is
`inserted in opening 202, door 204 is opened.
`In one
`embodiment, music server 102 will include metal springs or
`high density shock absorbing air pouches inside the outer
`box in order to suspend the frame that holds disk cartridge
`120.
`
`FIG. 6 shows a block diagram of the components of music
`server 102. Bus 300 is connected to processor 302, boot
`
`Samsung Ex. 1012 p. 20
`
`Samsung Ex. 1012 p. 20
`
`
`
`US 6,772,212 B1
`
`7
`ROM 304, RAM 306 and IDE glue logic 308. Connected to
`IDE glue logic 308 is IDE connector 310. IDE connector
`310 is used to connect to connector 172 of disk cartridge
`120. RAM 306 is used as memory for processor 302. In one
`embodiment, RAM 306 includes 16 megabytes of DRAM.
`Boot ROM 304 is used to store the code for booting
`processor 302. Processor 302 is also connected to controller
`320. Music server 102 uses a separate processor and con-
`troller because the communication with the head unit is in
`
`real time, while processor 302 is busy decoding audio and/or
`visual data. In one embodiment, processor 302 is an EP 7212
`from Cirrus Logic, which implements the ARM architecture.
`One example of a suitable controller is the Phillips 8051
`Microcontroller. Note that other processors and/or control-
`lers can also be used. Although controller 320 is referred to
`as a controller, the terms controller and processor can be
`used interchangeably and controller 320 can be referred to as
`a processor. The reason device 320 is referred to as a
`controller rather than a processor is to make the text clearer
`to read.
`
`The communication between controller 320 and processor
`302 includes a serial interface. In some embodiments, there
`is also a program signal sent from processor 302 to control-
`ler 320. Controller 320 includes an internal flash memory.
`The program signal is used by processor 302 to program the
`internal flash memory of controller 320. Controller 320 is
`connected to glue logic 330, which is connected to connector
`322. In one embodiment,