throbber
Case 1:20-cv-03159-AKH Document 1-4 Filed 04/21/20 Page 1 of 30
`
`Exhibit 4
`
`

`

`Case 1:20-cv-03159-AKH Document 1-4 Filed 04/21/20 Page 2 of 30
`
`US006721489B1
`
`(12) United States Patent
`Benyamin et al.
`
`(10) Patent N0.:
`(45) Date of Patent:
`
`US 6,721,489 B1
`Apr. 13, 2004
`
`(54) PLAY LIST MANAGER
`
`(75) Inventors: Daniel Benyamin, Oakland, CA (US);
`Dannie C. Lau, Santa Clara, CA (US);
`Brendan T- Dowling, Malibu, CA (Us)
`
`(73) Assignee: PhatNoise, Inc., Los Angeles, CA (US)
`_
`_
`_
`_
`_
`(*) Nt
`Sb tt
`d l
`tht
`fth
`0 ice:
`u Jec 0 any 1sc a1mer, e ermo 1s
`patent is extended or adjusted under 35
`U'S'C' 154(k)) by 0 days'
`
`(21) Appl. No.: 09/521,874
`
`Mar. 8, 2000
`(22) Filed:
`(51) Int. Cl.7 ......................... .. H04N 5/91; G11B 27/00
`_
`"""""""" " 386/46’ 386/55
`_
`(52)
`(58) Fleld of Search ............................ .. 386/46, 1, 4, 6,
`386/52> 55> 69> 68> 83> 104> 105> 106> 125;
`369/3001; 360/13; H04N 5/91; G11B 27/00
`
`(56)
`
`References Cited
`US PATENT DOCUMENTS
`
`5,173,888 A 12/1992 An ......................... .. 369/33
`5390927 A
`2/1995 Henml et a1‘
`2
`"""""""""" " 369/32
`
`6,016,522 A
`6,055,478 A
`
`1/2000 Rossum ..................... .. 710/52
`4/2000 Heron ...................... .. 701/213
`
`6,084,581 A * 7/2000 Hunt
`6,320,111 B1 * 11/2001 KiZaki
`
`OTHER PUBLICATIONS
`Excerpts from WWW.empeg.com, 1999.
`Clarion AutoPC 310C OWner’s Manual, Clarion Co. Ltd.,
`1998_
`RCA LYRA User’s Guide, RD2201/2202/2204, 1999.
`
`* Cited by eXaIIliner
`Primary Examiner—Robert Chevalier
`
`(57)
`
`ABSTRACT
`
`A play list manager is disclosed that can be used to create
`and update pla-y hSt-S' The play hsts can be. uséd for audio
`information, visual information, or a combination of audio
`and visual information. The user of the play list manager
`Creates a play list and Speci?es Certain Criteria for automa?_
`cally adding tracks to the play list. When a neW track is
`added to the environment, the system tests Whether the
`track’s properties satisfy the criteria for the play list. If so,
`the neW track is automatically added to the play list. In one
`alternative, a user can select a prede?ned play list, Whose
`criteria has already been created. Upon selection of the
`prede?ned play list, the play list manager accesses each
`track and adds the track to the play list if the track’s
`properties satisfy the criteria for the prede?ned play list.
`
`51 Claims, 16 Drawing Sheets
`
`1718~/~
`
`receive one click
`.
`selection
`
`1720
`
`7
`
`search for next track
`
`track found?
`
`1724
`
`access track properties
`
`criteria
`satisfied?
`
`automatically add
`track to play list
`
`

`

`Case 1:20-cv-03159-AKH Document 1-4 Filed 04/21/20 Page 3 of 30
`
`U.S. Patent
`
`Apr. 13, 2004
`
`Sheet 1 0f 16
`
`US 6,721,489 B1
`
`Internet
`
`Internet
`server
`
`128
`
`130
`
`I126
`
`monitor
`
`124
`
`f
`
`[122
`
`[120
`
`com uter
`p
`
`docking
`station
`
`disk
`cartridge
`
`102
`
`f
`
`music
`server
`
`[104
`
`head
`unit
`
`1H
`
`I
`
`t
`106
`
`t
`108
`
`t
`110
`
`t
`112
`
`Fig. 1
`
`

`

`Case 1:20-cv-03159-AKH Document 1-4 Filed 04/21/20 Page 4 of 30
`
`U.S. Patent
`
`Apr. 13, 2004
`
`Sheet 2 0f 16
`
`US 6,721,489 B1
`
`Fig. 2
`
`140
`
`/
`/'122
`
`144
`
`:142
`
`‘
`
`Flg. 3
`
`[142
`
`150
`swltch f
`l
`
`f
`
`IDE
`connector
`
`__
`USB <n> ‘DE
`
`f144
`
`156
`
`‘I58
`
`

`

`Case 1:20-cv-03159-AKH Document 1-4 Filed 04/21/20 Page 5 of 30
`
`U.S. Patent
`
`Apr. 13, 2004
`
`Sheet 3 0f 16
`
`US 6,721,489 B1
`
`x /
`
`174
`
`1zof4‘rdk
`17°
`
`178
`
`176
`Fig. 4
`
`102
`
`Fig. 5
`
`204
`
`202
`
`

`

`Case 1:20-cv-03159-AKH Document 1-4 Filed 04/21/20 Page 6 of 30
`
`U.S. Patent
`
`Apr. 13, 2004
`
`Sheet 4 0f 16
`
`US 6,721,489 B1
`
`Connector ~ 322
`
`F '9 ' 6
`
`—| |
`
`Reprogramrnable ~ 330
`glue |og|c
`
`/32D
`/'340
`
`\342
`
`Controller
`
`~ 330
`
`Power
`
`Processor ~ 302
`
`switch ~ 332
`
`[300
`
`boot
`ROM
`
`RAM
`
`IDE
`Glue Logic
`
`\ 304
`
`\ 306
`
`\ 308
`
`D/A
`
`~ 324
`
`\ 310
`
`IDE Connector
`
`Audio Connector ~ 326
`
`

`

`Case 1:20-cv-03159-AKH Document 1-4 Filed 04/21/20 Page 7 of 30
`
`U.S. Patent
`
`Apr. 13, 2004
`
`Sheet 5 0f 16
`
`US 6,721,489 B1
`
`acquire music ~ 402
`
`v
`
`store music on cartridge ~ 404
`
`receive power N 602
`
`v
`remove cartridge from
`
`dock V
`
`I
`
`N
`
`
`
`load v
`
`~
`
`insert cartrdige into music
`server
`~ 408
`
`boot OS
`
`~ 606
`
`l
`
`I
`
`operate head unit ~ 410
`
`read Start ?le
`
`~ 608
`
`y
`
`l
`
`head unit sends N 412
`commands
`
`firmware update N 612
`sequence
`
`v
`
`1
`
`music server provides N 414
`music
`
`execute music player N 614
`program
`
`head unit provides music ~ 416
`
`Flg ' 9
`
`Fig. 7
`
`

`

`Case 1:20-cv-03159-AKH Document 1-4 Filed 04/21/20 Page 8 of 30
`
`U.S. Patent
`
`Apr. 13, 2004
`
`Sheet 6 6f 16
`
`US 6,721,489 B1
`
`load boot program ~ 542
`
`v
`
`request firmware
`-
`version
`
`~ 548
`
`-
`
`F '9 ' 8
`
`}
`
`request new firmware ~ 554
`
`‘
`receive new firmware ~ 556
`
`t
`decrypt and store
`new firmware ~ 558
`
`V
`
`receive ?rmware N 550
`version
`
`552
`
`is there an
`update?
`
`no
`
`V
`
`receive flag N 570
`
`572
`
`yes
`
`cartridge
`change‘?
`
`.
`.
`send previous location ~ 574
`
`send list 1, track 1
`and 0 Seconds ~ 576
`
`v
`
`execute state machine ~ 578
`
`

`

`Case 1:20-cv-03159-AKH Document 1-4 Filed 04/21/20 Page 9 of 30
`
`U.S. Patent
`
`Apr. 13, 2004
`
`Sheet 7 0f 16
`
`US 6,721,489 B1
`
`receive request for
`firmware version
`
`read firmware version
`from disk
`
`i
`i
`
`send firmware version to
`controller
`
`~ 722
`
`~ 724
`
`~ 726
`
`728
`
`request for update?
`
`yes
`
`read firmware from disk ~ 740
`
`i
`
`send firmware to
`
`contioller
`
`~ 742
`
`program glue logic ~ 744
`
`I 1 O
`
`

`

`Case 1:20-cv-03159-AKH Document 1-4 Filed 04/21/20 Page 10 of 30
`
`U.S. Patent
`
`Apr. 13, 2004
`
`Sheet 8 0f 16
`
`US 6,721,489 B1
`
`Fig. 11
`
`814
`
`812
`
`310
`
`assign
`ok
`
`1
`
`(2)
`
`816
`
`830
`
`no
`command
`
`0 e
`
`818
`
`820
`
`840
`
`) $
`
`13
`
`14
`
`12
`
`6
`
`E)
`
`got
`forward
`
`got
`reverse
`
`got
`button
`
`15
`
`got
`source
`
`no
`status
`play
`
`864
`
`866
`
`868
`
`870
`
`872
`
`

`

`Case 1:20-cv-03159-AKH Document 1-4 Filed 04/21/20 Page 11 of 30
`
`U.S. Patent
`
`Apr. 13,2004
`
`Sheet 9 0f 16
`
`US
`6,721,489 B1
`
`Fig. 12
`
`930
`/
`
`send flag to controller
`
`v
`
`932
`/
`
`receive starting location
`
`r
`
`934
`/
`
`start music player
`
`"
`
`936
`
`no
`
`message received?
`
`from controller
`
`from player
`960
`
`end of track or
`end of playlist'?
`
`Plat/"5t
`
`938
`v/
`respond to message from
`controller
`
`962
`/
`
`play next track
`
`964
`/
`r
`send text information to
`controller
`
`970
`/
`r
`play ?rst track of next
`playlist
`
`972
`/
`V
`send text information to
`controller
`
`v
`
`<
`
`

`

`Case 1:20-cv-03159-AKH Document 1-4 Filed 04/21/20 Page 12 of 30
`
`U.S. Patent
`
`Apr. 13, 2004
`
`Sheet 10 0f 16
`
`US 6,721,489 B1
`
`Fig. 1 3
`
`1202
`
`1204
`
`1200
`/
`
`1206
`/
`
`devices
`
`play lists
`
`tracks
`
`1208
`/
`
`1210
`/
`
`buttons
`
`one
`Cm!‘
`playlist
`buttons
`
`1212
`/
`
`browser
`
`F'Q- 1 5
`
`Fig. 14
`
`select "create play list" ~1302
`
`Create play list
`
`~1250
`
`v
`
`v
`
`name playlist
`
`~1304
`
`acquire tracks
`
`~1252
`
`r
`
`I
`
`manually add tracks ~1306
`
`add tracks to play list ~1254
`
`add criteria
`
`~1308
`
`select device
`
`~1256
`
`V
`
`V
`
`automatically add tracks ~1310
`
`synchronize
`
`~1258
`
`

`

`Case 1:20-cv-03159-AKH Document 1-4 Filed 04/21/20 Page 13 of 30
`
`U.S. Patent
`
`Apr. 13, 2004
`
`Sheet 11 0f 16
`
`US 6,721,489 B1
`
`1718‘,
`
`receive one click
`selection
`
`1350M
`
`audio data
`
`1352M
`1354~I~
`1356v~
`
`1358M
`1360v~
`1362w
`1364M
`
`tag
`title
`artist
`
`album
`year
`comment
`genre
`
`Fig. 16
`
`: t
`
`L
`
`1720
`\
`search for next track
`
`track found?
`
`1724
`
`access track properties
`
`criteria
`satisfied?
`
`no
`
`automatically add
`track to play list
`
`Fig. 20
`
`

`

`Case 1:20-cv-03159-AKH Document 1-4 Filed 04/21/20 Page 14 of 30
`
`U.S. Patent
`
`Apr. 13,2004
`
`Sheet 12 0f 16
`
`US 6,721,489 B1
`
`store track
`
`~1402
`
`detect new track
`
`l
`l
`
`~1404
`
`Fig. 17
`
`access play lists
`
`~1406
`
`V
`
`choose first play list ~1408
`
`V
`
`1410
`
`criteria
`satisfied?
`
`no
`
`yes
`
`1412
`/
`v
`automatically
`add track to play list
`
`more play lists?
`
`choose next play list ~1416
`__J
`
`

`

`Case 1:20-cv-03159-AKH Document 1-4 Filed 04/21/20 Page 15 of 30
`
`U.S. Patent
`
`Apr. 13, 2004
`
`Sheet 13 0f 16
`
`US 6,721,489 B1
`
`1530
`/
`access device properties
`i
`
`1532 /
`
`edit properties
`
`.
`Flg ' 1 8
`
`request for new device ~1502
`
`lg
`
`display dialog box of
`known devices
`
`~15O4
`
`1506
`
`known or new
`device?
`
`known
`
`device info template
`
`E
`
`have firmware?
`
`1522
`
`browse for firmware
`
`update firmware’?
`
`\
`1510
`
`prepare to load firmware ~1512
`
`

`

`Case 1:20-cv-03159-AKH Document 1-4 Filed 04/21/20 Page 16 of 30
`
`U.S. Patent
`
`Apr. 13, 2004
`
`Sheet 14 0f 16
`
`US 6,721,489 B1
`
`1600
`/
`receive request to
`synchronize
`
`1602
`/
`
`r
`
`access GUI device f||e(s)
`
`.
`
`.
`
`1604
`/
`v
`access stored device
`?le(s)
`
`1606
`/
`v
`remove tracks from
`device
`
`r
`
`1608
`/
`
`add tracks to device
`
`l
`
`change flag
`l
`
`1610
`
`/
`
`1612 /
`
`update play list files on
`device
`
`1614
`/
`r
`update play list config
`files on device
`
`Fig. 19
`
`1616
`
`new device config
`
`no
`
`info?
`
`yes 1618
`/
`f.
`. f
`d t d .
`up a e evice con lg in o
`
`yes 1624
`
`/
`
`add new firmware
`
`no
`
`add new OS
`
`

`

`Case 1:20-cv-03159-AKH Document 1-4 Filed 04/21/20 Page 17 of 30
`
`U.S. Patent
`
`Apr. 13, 2004
`
`Sheet 15 0f 16
`
`US 6,721,489 B1
`
`Internet
`
`Internet
`server
`
`128
`
`\1 3O
`
`_
`
`Fig. 21
`[126
`
`monitor
`
`computer
`
`124
`
`1704
`
`_
`disc
`changer
`
`102a
`
`music server
`
`l
`
`i
`
`H
`l
`108
`
`l
`106
`[122
`
`I
`7;
`110
`
`Z
`112
`I120
`
`docking
`station
`
`disk
`cartridge
`
`Fig. 23
`
`acquire music
`
`~1902
`
`v
`store music on disk ~19O4
`cartridge
`
`v
`insert disk cartridge into ~1906
`server
`
`v
`receive selection of music
`source
`“A908
`
`v
`
`play selected music ~1910
`
`

`

`Case 1:20-cv-03159-AKH Document 1-4 Filed 04/21/20 Page 18 of 30
`
`U.S. Patent
`
`Apr. 13, 2004
`
`Sheet 16 0f 16
`
`US 6,721,489 B1
`
`Connector ~ 322
`
`1804
`
`1806
`
`— Glue logic ~ 330
`
`1808
`
`320a 1802 \ 7
`[340
`
`\342
`
`Power
`
`f 332
`—— switch
`
`Controller
`
`l
`
`_ Processor ~ 302
`
`Control / 1810
`Panel
`
`[300
`
`58?;
`
`RAM
`
`\304
`
`D/A
`
`\. 324
`
`\306
`3
`10
`
`IDE
`Glue Logic
`
`\ 308
`
`IDE Connector
`
`1816
`1814\
`t
`uner
`
`[1812 /-1818 /-182O
`preamp!
`am H. :
`equalizer
`pl ‘er I
`
`audio
`switch
`
`Fig. 22
`
`

`

`Case 1:20-cv-03159-AKH Document 1-4 Filed 04/21/20 Page 19 of 30
`
`US 6,721,489 B1
`
`1
`PLAY LIST MANAGER
`
`CROSS-REFERENCE TO RELATED
`APPLICATIONS
`
`This Application is related to the following Applications:
`AUDIO/VISUAL SERVER, by Dannie C. Lau, et al.,
`?led the same day as the present application, Ser. No.
`09/521,182; and
`VEHICLE SOUND SYSTEM, by Dannie C. Lau, et al.,
`?led 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
`
`1. Field of the Invention
`The present invention is directed to a system for manag
`ing play lists.
`2. Description of the Related Art
`Digitally stored music continues to gain popularity.
`Rather than drive to a store, consumers are doWnloading
`music from the Internet and playing music on a computer or
`on a digital music player. An eXample of a digital music
`player is the Rio digital music player from Diamond Mul
`timedia. This music player includes a ?ash memory for
`storing music and electronics for playing the music. One
`advantage of digital music is that the storage medium is
`Writeable. Thus, the user can choose What songs to play and
`Write those songs to the music player’s storage medium. On
`the other hand, audio compact discs are not Writeable. In
`addition to the versatility offered by digital music, there is a
`huge variety of music available to be doWnloaded through
`the Internet. With the acceptance of a standard for com
`pressed audio ?les, digital music has soared in popularity.
`Users of digital music technology can acquire large
`amounts of digital music ?les. In order to manage these ?les,
`play lists are created. For eXample, a play list may be a list
`of songs to be played by a music player. Play lists alloWs
`users to group their songs according to Whatever method the
`user desires and plays the tracks referenced by the play list
`on a music player.
`One problem that has been associated With play lists is the
`enormous effort needed to manage play lists. As the user
`acquires large amounts of ?les, managing the play list
`becomes dif?cult. A user may have multiple or hundreds of
`play lists. Additionally, the user may have hundreds or
`thousands of music ?les. The effort to move a large number
`of ?les into the appropriate play lists is time consuming.
`Furthermore, as users doWnload neW ?les, the user must
`remember to add the neW tracks to one or more play lists.
`This tWo step approach—(1) doWnloading music ?les and
`(2) moving the doWnloaded ?les to one or more play
`lists—is cumbersome. Therefore, many users stop using
`play lists.
`Thus, there is a need for an improved means for managing
`play lists.
`
`15
`
`25
`
`35
`
`45
`
`55
`
`SUMMARY OF THE INVENTION
`
`The present invention, roughly described, provides for a
`play list manager than can be used to create and update play
`lists. The play lists can be used for audio information, visual
`information or a combination of audio and visual informa
`tion. In one embodiment, a play list stores the names of
`tracks to be played. The user of the play list manager creates
`
`65
`
`2
`a play list and speci?es certain criteria for automatically
`adding tracks to the play list. When a neW track is added to
`the environment, the system tests Whether the track’s prop
`erties satisfy the criteria for the play list. If so, the neW track
`is automatically added to the play list. In one alternative, a
`user can select to create or update a prede?ned play list
`Whose criteria has already been created. Upon selection of
`the prede?ned play list, the play list manager accesses each
`track and automatically adds the track to the play list if the
`track’s properties satisfy the criteria for the prede?ned play
`list. In one embodiment, after a play list is created and tracks
`are added, the tracks on the play list are automatically
`played.
`One embodiment of the present invention includes the
`steps of comparing a set of one or more properties of a ?rst
`track to criteria of a ?rst play list and automatically adding
`the ?rst track to the ?rst play list if the properties of the ?rst
`track satisfy the criteria of the ?rst play list. One embodi
`ment includes detecting that the ?rst track is available such
`that the step of comparing is performed automatically in
`response to the step of detecting. Another embodiment of the
`present invention includes comparing properties for a ?rst
`track to play list criteria for a plurality of play lists and
`automatically adding the ?rst track to each of the play lists
`having play list criteria satis?ed by the properties for the ?rst
`track. Thus, the method can be used to create or update one
`play list or multiple play lists. In another embodiment, the
`present invention includes receiving a request to generate a
`play list having prede?ned play list criteria, determining
`Which tracks from a set of tracks have properties satisfying
`the play list criteria and automatically adding to the play list
`the tracks having properties satisfying the play list criteria.
`The present invention can be implemented using
`softWare, hardWare or a combination of softWare and hard
`Ware. When all or portions of the present invention are
`implemented in softWare, that softWare can reside on a
`processor readable storage medium. Examples of an appro
`priate processor readable storage medium include a ?oppy
`disk, a hard disk, CD-ROM, memory or IC, ?ash memory,
`etc. In one embodiment, the hardWare used to implement the
`present invention includes an output device (eg a monitor,
`a printer, speakers, etc.), an input device (eg a keyboard,
`pointing device, etc.), a processor, an input interface and a
`processor readable storage medium. The input interface
`alloWs the processor to communicate With a disk drive,
`netWork or other device for entering data into the hardWare.
`The processor readable storage medium stores program code
`capable of programming the processor to perform the steps
`to implement the present invention. The present invention
`can be implemented on a desktop computer, netWork server,
`as part of a Web page on the Internet, another type of
`computing platform, a head unit, a server, an audio device,
`a visual device, or any other device suitable for using the
`present invention.
`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.
`FIG. 3 is a schematic diagram of the dock of the present
`invention.
`
`

`

`Case 1:20-cv-03159-AKH Document 1-4 Filed 04/21/20 Page 20 of 30
`
`US 6,721,489 B1
`
`3
`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 How chart describing the operation of the
`present invention.
`FIG. 8 is a How chart describing the start up process for
`the controller.
`FIG. 9 is a How chart describing the start up process for
`the processor.
`FIG. 10 is a How chart describing the ?rmWare update
`sequence performed by the processor.
`FIG. 11 is a state diagram for the controller.
`FIG. 12 is a How 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 How chart describing the process of acquiring
`tracks, managing tracks and adding tracks to a device.
`FIG. 15 is a How chart describing the process of creating
`a play list.
`FIG. 16 is a block diagram depicting an ID3 tag.
`FIG. 17 is a How chart describing the method for auto
`matically adding tracks to a play list.
`FIG. 18 is a How chart describing the method of selecting
`neW interface program code to be loaded on the server of the
`present invention.
`FIG. 19 is a How chart describing the process of synchro
`niZing data betWeen the hard disk drive and the softWare on
`the computer.
`FIG. 20 is a How 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 How 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
`
`10
`
`15
`
`25
`
`35
`
`45
`
`55
`
`65
`
`4
`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, ?re 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 ?rmWare. In
`one embodiment of the system of FIG. 1, the tracks are
`songs.
`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 speci?cally, 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 ?ve 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
`
`

`

`Case 1:20-cv-03159-AKH Document 1-4 Filed 04/21/20 Page 21 of 30
`
`US 6,721,489 B1
`
`10
`
`15
`
`5
`(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 ?exible ribbon
`cable) With various circuit elements and Wires. For example,
`?exible ribbon cable 174 includes capacitors and resistors
`for decoupling. Connected to ?exible 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,
`?ash memory, CDRW or other appropriate storage media. In
`one embodiment, the gap betWeen hard disk drive 178 and
`outer shell 170 can be ?lled With a shock absorbing sub
`stance.
`Hard disk drive 178 includes music ?les to be played by
`music server 102. Hard disk drive 178 also includes various
`program code and con?guration information. In one
`embodiment, hard disk drive 178 includes at least ?ve top
`level directories: /MP3, /playlist, /playlist con?g,
`/microcontroller con?g and /OS. The directory /MP3 con
`tains all of the audio ?les. The directory /playlist contains all
`the play list ?les. The drive can store many play lists. Each
`play list ?le contains a set of strings. Each string speci?es the
`path location to a particular track in the /MP3 directory. The
`strings are stored,in the ?le according to the order set up by
`the user. The directory /playlist con?g contains ?les that
`include special con?guration information for each play list.
`Examples of such special con?guration 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 con?g includes a series of
`?les for con?guring controller 320 (see FIG. 6) to commu
`nicate With head unit 104. One ?le is a text ?le With a set of
`?ags 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 ?ag 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
`
`6
`server 102 is prohibited from Writing to disk cartridge 120.
`The directory/microcontroller con?g also includes a button
`mapping ?le Which is used to override the function of any
`button on the head unit. A ?le 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 ?le, music
`server 102 Will automatically turn off. Another ?le in the
`directory/microcontroller con?g stores the ?rmWare used to
`program controller 320 to communicate With head unit 104.
`The ?rmWare on hard disk drive 178 is encrypted. The/
`microcontroller con?g directory also includes ?les 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 oper
`ating system for music server 102. In one embodiment, the
`operating system used is LINUX. Other operating systems
`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 ?le 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
`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 ?ash memory.
`The program signal is used by processor 302 to program the
`internal ?ash memory of controller 320. Controller 320 is
`connected to glue logic 330, Which is connected to connector
`322. In one embodiment, connector 322 is a 24 pin centron
`ics port. Connector 322 is attached to a cable. The other end
`of the cable connects to head unit 104. Many automobile
`stereo head units have a disc changer port in the back of the
`
`25
`
`35
`
`45
`
`55
`
`65
`
`

`

`Case 1:20-cv-03159-AKH Document 1-4 Filed 04/21/20 Page 22 of 30
`Case 1:20-cv-03159—AKH Document 1—4 Filed 04/21/20 Page 22 of 30
`
`US 6,721,489 B1
`
`7
`head unit. This port contains an interface to connect to a
`cable. The signals communicated by the disc changer port
`include a 12 volt power source, ground, an accessory signal,
`a clock signal and data pins.
`In some alternatives,
`the
`accessory signal is not part of the cable, is not sent or is sent
`separately.
`Glue logic 330 is reprogrammable. For example, glue
`logic 330 can be an FPGAor a PLD (as well as other suitable
`reprogrammable logic devices). Glue logic 330 is connected
`to and programmed by processor 302. Glue logic 330
`provides latches,
`inverters and other glue logic that
`is
`specific for each head unit and used to make communication
`from controller 320 compatible with the particular head unit.
`Connecto

This document is available on Docket Alarm but you must sign up to view it.


Or .

Accessing this document will incur an additional charge of $.

After purchase, you can access this document again without charge.

Accept $ Charge
throbber

Still Working On It

This document is taking longer than usual to download. This can happen if we need to contact the court directly to obtain the document and their servers are running slowly.

Give it another minute or two to complete, and then try the refresh button.

throbber

A few More Minutes ... Still Working

It can take up to 5 minutes for us to download a document if the court servers are running slowly.

Thank you for your continued patience.

This document could not be displayed.

We could not find this document within its docket. Please go back to the docket page and check the link. If that does not work, go back to the docket and refresh it to pull the newest information.

Your account does not support viewing this document.

You need a Paid Account to view this document. Click here to change your account type.

Your account does not support viewing this document.

Set your membership status to view this document.

With a Docket Alarm membership, you'll get a whole lot more, including:

  • Up-to-date information for this case.
  • Email alerts whenever there is an update.
  • Full text search for other cases.
  • Get email alerts whenever a new case matches your search.

Become a Member

One Moment Please

The filing “” is large (MB) and is being downloaded.

Please refresh this page in a few minutes to see if the filing has been downloaded. The filing will also be emailed to you when the download completes.

Your document is on its way!

If you do not receive the document in five minutes, contact support at support@docketalarm.com.

Sealed Document

We are unable to display this document, it may be under a court ordered seal.

If you have proper credentials to access the file, you may proceed directly to the court's system using your government issued username and password.


Access Government Site

We are redirecting you
to a mobile optimized page.





Document Unreadable or Corrupt

Refresh this Document
Go to the Docket

We are unable to display this document.

Refresh this Document
Go to the Docket