throbber
0
`5,168,481
`1111 Patent Number:
`[191
`United States Patent
`
`Culbertson et al.
`[45] Date of Patent:
`Dec. 1, 1992
`
`||||l|lllllllllllllllllllllIlllllllllllllllllllllllllllllllllllllllllllllll
`U8005168481A
`
`[54] AUTOMATED DIGITAL BROADCAST
`SYSTEM
`'
`
`[76]
`
`Inventors Charles R. Culbertson. 11513
`Wiginton Dr., Austin, Tex. 78758;
`Arthur C. Holly, 6902 Bayridge Ten,
`AUSIin, TEX- 73759; DEVid 15118111,
`205555 Little Rock Way. Mallbu,
`Callf- 907-65
`[21] Appl. No.: 453,947
`
`[22] Filed:
`
`Dec. 29, 1989
`
`_
`Int. Cl.s ........................ H043 1/20, 61113 17/22
`[51]
`[52] US. Cl.
`........................................... 369/2; 369/6;
`369/30; 369/33
`[58] Field of Search ......................... 369/2, 3, 4, 6, 35,
`369/33’ 34’ 36’ 30’ 32; 360/12;805f,8/13;835811/213,
`’
`’
`’
`References Cited
`U. S. PATENT DOCUMENTS
`360/27
`3 896 490 7/1975 R
`t
`1
`ose e a .
`............................
`,
`,
`4,636,880
`1/1937 Debell ................................... 360/12
`
`4,706,233 11/1987 d‘Alayer dc Costemore
`d‘ArC .........
`369/36
`8/1988 Korn et a1.
`............................ 369/34
`
`4,766,581
`
`[56]
`
`
`4,792,934 12/ 1988 Masaki .................................. 369/36
`4,817,075
`3/1989 Kikuchi et al.
`.
`...... 369/33
`
`4,899,326 2/1990 Takega et a1.
`..
`...... 369/36
`4,969,135 11/1990 Tobe ................................... 369/2
`
`OTHER PUBLICATIONS
`NCD—6OO Programmable Compact Digital Disc
`Changer PTO received Oct. 24, 1986.
`Technics “SL—Pl6” Multi Compact Disc Player PTO
`Received Oct. 24, 1986.
`
`Primary Examiner—Stuart S. Levy
`Assistant Examiner—Tan Nguyen
`Attorney, Agent, or Firm—Pravel, Gambrell, Hewitt,
`Kimball & Kn'eger
`
`[57]
`ABSTRACT
`An automated digital broadcast system which is capable
`of reliable operation for long periods of time without
`human assistance. The system comprises a plurality of
`compact discplayers or other audio devices which are
`controlled by computer to sequentially play a predeter-
`-
`-
`-
`-
`-
`~
`_
`:“med .I‘St i’f mus‘cal ”lemons and commerml °r 1“
`“mam“ messages-
`
`2 Claims, 10 Drawing Sheets
`
`
`
`INTERFACE
`ARE
`”ARDW
`"B
`
`3215351an
`
`INTERFACE
`HARDWARE
`
`
`14A
`
`COMPACT
`
`DISC
`
`
`PLAYER 1
`SYSTEM
`
`
`CONTROL
`
`SOFTWARE
`
`COMPACT
`AUDIO
`
`
`
`
`
`DISC
`MULTIPLE
`24
`comnoL
`
`
`an
`
`
`SN”
`OUTPUT
`PLAYER 2
`COMPUTER
`PLAYLIST
`
`
`
`(AW)
`DATA
`
`
`COMPACT
`
`
`
`DISC
`
`PLAYER N
`
`
`(OFFLINE)
`
`PLAYLIST OF
`
`
`PRERECORDED
`
`SELECTIONS
`
` CUSTOM
`COMPACT DISC
`
`LIBRARY
`
`
`18
`
`
`
`
` DISPLAY
`
`28
`
`Page 1 of 15
`Page 1 of 15
`
`SONOS 1013
`SONOS 1013
`
`

`

`US. Patent
`
`Dec. 1, 1992
`
`Sheet 1 of 10
`
`5,168,481
`
`,:2:
`
`32$
`
`._.U<n=200
`
`.
`
`zmm><._n_
`
`Hum—D
`
`onmm<>>om<z
`
`5.56mmxN52....5:55.00
`H.252:$53555..6528
`
`
`
`O_DD<#052200
`
`Posh—5.00
`
`Oma
`
`_.mm><._n_
`
`<2.
`
`mO<me._.Z_
`
`mm<>>om<1
`
`
`
`S:E
`
`mm<>>am<z
`
`,mofimmhz.
`
`omE#052200
`
`>m<mm3
`
`2F@E
`
`aw
`
`NN
`
`Emhm>w
`
`JOE—.200
`
`mm<>>tom
`
`em
`
`mm
`
`.hm_._><.._n_
`
`<._.<D
`
`fizztov
`
`no5353a
`
`DmDEOOmmmm—n.
`
`sz_._.Um.._wm
`
`Page 2 of 15
`Page 2 0f 15
`
`SONOS 1013
`
`SONOS 1013
`
`
`
`
`
`
`
`
`

`

`US. Patent
`
`Dec. 1, 1992
`
`Sheet 2 of 10
`
`5,168,481
`
`100
`
`DISPLAY OPENING SCREEN
`
`120
`
`
`
`
`ARE SYSTEM DATE
`
`
`AND TIME?CORRECT
`
`YES
`
`130
`
`
`
`ARE CORRECT
`PLAYLIST
`FILES ON?DISKETTE
`
`
`
`
`
`
`125
`
`GET USER INPUT
`
`NO I
`
`USER INSERT
`PROPER
`DISKEI'I'E
`
`YES
`
`140
`
`READ STATUS FILES FOR STARTING
`DAY AND SELECTION NUMBER
`
`150
`
`INITIALIZE DISPLAY WINDOWS AND TEXT
`
`
`
`150
`
`
`
`
`INITIALIZE PROGRAMMABLE INPUT/OUTPUT CARDS
`
`
`
`
`
`Page 3 of 15
`Page 3 0f 15
`
`SONOS 1013
`
`SONOS 1013
`
`

`

`US. Patent
`
`Dec. 1, 1992
`
`Sheet 3 of 10
`
`5,168,481
`
`READ PLAYLIST DATA FILE; DISPLAY
`BEGINNING ENTRIES OF PLAYLIST
`
`170
`
`
`180
`
`
`
`
`
`
`INITIALIZE ERROR LOG FILE
`
`INSTALL INTERRUPT HANDLER
`
`
`
`CUE DISC PLAYERS 1, 2, AND 3
`
`190
`
`200
`
`210
`
`ISSUES COMMANDS TO START
`PLAYING FIRST SELECTION
`
`220
`
`START RUNTIME CLOCK
`
`230
`
`
`
`REISSUE COMMANDS
`
`
`DID DISC PLAYER
`UP TO 3 TIMES,
`
`
`ACKNOWLEDGE RECEIPT
`UNTIL DISC PLAYER
`
`
`OF COMMANDS?
`ACKNOWLEDGES;
`
`
`LOG ERRORS
`
`
`
`v $11321»
`
`Page 4 (1f 15
`Page 4 of 15
`
`SONOS 1013
`
`SONOS 1013
`
`

`

`US. Patent
`
`Dec. 1, 1992
`
`Sheet 4 of 10
`
`5,168,481
`
`240
`
`CALL SUBROUTINE
`MOMITOR DISC PLAYER
`
`250
`
`STOP SELECTION
`
`
`ACTUAL RUNTIME <
`SCHEDULED
`
`260
`
`
`
`265
`
`ADJUST
`TIME
`
`RUNTIME? - GAP
`
`
`No
`
`ISSUE COMMANDS TO START NEXT SELECTION
`
`START RUNTIME CLOCK
`
`290
`
`Page 5 of 15
`Page 5 0f 15
`
`
`
`.
`
`DID DISC PLAYER
`No
`
`
`ACKNOWLEDGE RECEIPT OF
`
`
`COMMANDS?
`
`
`
`
`295
`
`REISSUE COMMANDS
`UP TO 3 TIMES,
`UNTIL DISC PLAYER
`ACKNOWLEDGES;
`
`LOG ERRORS
`
`Yes
`
`Ffigu 2©
`
`SONOS 1013
`
`SONOS 1013
`
`

`

`US. Patent
`
`I
`
`Dec. 1, 1992
`
`Sheet 5 of 10,
`
`5,168,481
`
`
`
`
`WRITE CURRENT SELECTION
`NUMBER AND DAY NUMBER TO
`
`STATUS FILE
`
`a
`
`m
`
` MORE THAN 2
`
`
`seuscnous LEFI' TO
`PLAY?
`
`
`
`IS CURRENT
`SELECTION
`
`RUNTIME < 35
`
`
`SECONDS?
`
`
`
`
`
`YES
`
`CALL SUBROUTINE
`MONITOR SONG CUE
`
`3
`
`m
`
`360
`
`V
`
`CALL SUBROUTINE
`MONITOR DISC PLAYER
`
`
`
`STOP SELECTION
`
`fig}. @dl
`
`Page 6 of 15
`Page 6 0f 15
`
`SONOS 1013
`
`SONOS 1013
`
`

`

`US. Patent
`
`Dec. 1, 1992
`
`Sheet 6 of 10
`
`5,168,481"
`
`375
`370 V
`
`
`ACTUAL RUNTIME <
`YES
`SCHEDULE RUNTIME ?
`
`
`
`No
`
`ADJUST
`TIME GAP
`
`380
`
`ISSUE COMMANDS TO START PLAYING NEXT SELECTION
`
`390
`
`START RUNTIME CLOCK
`
`405
`
`
`REISSUE COMMANDS
`400
`mp
`UP To 3 TIMES,
`
`
`”NIELug'wSEEEéEE"
`
`
`;
`ACKNOWLEDGE RECEIPT
`
`OF COMMANDS ?
`LOG ERRORS
`
`
`
`
`YES
`
`410
`
`a
`
`warm CURRENT SELECTION NUMBER
`
`AND DAY NUMBER TO STATUS FILE
`
`42°
`
`
`NEXT
`
`
`
`
`TO LAST SELECTION
`OF THE DAY ?
`
`
`NO
`
`YES
`
`425
`
`CALL
`SUBROUTINE
`NEXT TO LAST
`
`SELECTION
`
`0
`
`fig}. 2C)
`
`Page 7 of 15
`Page 7 0f 15
`
`SONOS 1013
`
`SONOS 1013
`
`

`

`US. Patent
`
`Dec. 1, 1992
`
`Sheet 7 of 10
`
`5,168,481
`
`430
`
`
`
`LAST SELECTION OF DAY ?
`
`
`
`
`YES
`
`
`LAST DAY OF WEEK ?
`
`
`NO
`
`445
`
`
`DISPLAY MESSAGE
`FOR OPERATOR TO
`
`LOAD NEW DISKETTE
`
`AND CBS
`
`
`440
`
`450
`
`NO
`
`CALL SUBROUTINE
`MONITOR DISC PLAYER
`
`STOP SELECTION
`
`DISPLAY MESSAGE FOR
`END OF DAY OR END OF WEEK
`
`ISTIMEBETWEEN . DELAY250ms;
`
`DISPLAY TIME AND DATE
`
`480
`
`11PM ANDQMIDNIGHT
`
`
`"°
`
`490
`
`INCREMENT DAY NUMBER
`
`0
`
`499'
`
`Ffigo @fi
`
`Page 8 of 15
`Page 8 0f 15
`
`SONOS 1013
`
`SONOS 1013
`
`

`

`US. Patent
`
`Dec. 1, 1992
`
`Sheet 8 of 10
`
`5,168,481
`
`' 500
`
`START
`
`51 0
`
`545
`
`ENABLE INTERRUPT T0 MONITOR DISC PLAYER
`
`
`
`525
`
` IS RUNTIME LESS THAN
`"0
`PREDETERMINED LIMIT ?
`
`
`LOG ERROR; _
`SET EOT FLAG
`
`
`
`
`SET EOT FLAG
`
` END OF TRACK ?
`
`
`Is DISC PLAYING 7
`(HEAD 0 DATA)
`
`LOG ERROR;
`
`(EOT = TRUE '2 )
`
`YES
`
`DISABLE INTERRUPT
`
`550
`
`560
`
`@ F
`
`figu @g]
`
`Page 9 of 15
`Page 9 0f 15
`
`SONOS 1013
`
`SONOS 1013
`
`

`

`US. Patent
`
`' Dec. 1, 1992
`
`Sheet 9 of 10
`
`5,168,481
`
`soc
`
`610
`
`635
`
`ENABLE INTERRUPT FOR
`PLAYER BEING CUED
`
`
`
`YES
`
`
`HAS TABLE OF CONTENTS (T00)
`
`BEEN SUCCESSFULLY READ FOR
`DISC BEING CUED ?
`
`
`
`
`HAS 25 SECONDS ELAPSED
`ON RUNTIME CLOCK ?
`
`REISSUE COMMANDS T0 CUE DISC
`
`LOG ERROR TO DISKE1TE
`
`
`
`
`
`
`
`HAVE THERE BEEN MORE THAN
`3 ATTEMPTS TO CUE DISC ?
`
`YES
`
`“7°-
`fig}. 2%
`
`Page 10 of 15
`Page 10 0f 15
`
`SONOS 1013
`
`SONOS 1013
`
`

`

`US. Patent
`
`Dec. 1, 1992
`
`Sheet 10 of 10
`
`5,168,481
`
`79°-
`
`
`
`710
`
`
`
`
`715
`
`YES
`
`
`
`DISPLAY MESSAGE
`FOR OPERATOR T0
`LOAD NEW CDs
`
`AND DISKETTE
`
`LAST DAY OF WEEK ?
`
`
`
`720
`
`'
`
`CALL SUBROUTINE
`MONITOR DISC PLAYER
`
`730
`
`STOP SELECTION
`
`740
`
`ADJUST TIME GAP
`BETWEEN SELECTIONS
`
`AS REQUIRED
`
`750
`
`I
`START LAST SELECTION
`
`WRITE CURRENT SELECTION
`NUMBER AND DAY NUMBER
`
`TO STATUS FILE
`
`Page 11 of 15
`Page 11 0f 15
`
`SONOS 1013
`
`SONOS 1013
`
`

`

`1
`
`5,168,481
`
`AUTOMATED DIGITAL BROADCAST SYSTEM
`
`FIELD OF THE INVENTION
`
`invention relates generally to radio
`The present
`broadcast systems. More Specifically, the present inven-
`tion provides an automated digital broadcast system
`which is capable of reliable, unattended operation over
`very long periods of time.
`BACKGROUND
`
`10
`
`Radio broadcast stations are typically manned by
`human operators who control a plurality of audio sys-
`tem devices for playing music selections and prere-
`corded commercials and announcements. The various 15
`music selections and prerecorded materials have known
`durations or runtimes which can be used to compile a
`scheduled playlist. One of the tasks of the human opera-
`tor is to start and stop the various selections so that the
`predetermined schedule is maintained. Another task of 20
`the operator is to monitor the operation of the audio
`playback devices and take appropriate action if one of
`the devices fails to properly cue or play a given selec-
`tion.
`There are a number of applications where it would be 25
`desirable to have an automated broadcast system capa-
`ble of playing music and other prerecorded materials
`over extended periods of time without human assist-
`ance. Such a system must perform the same tasks that
`were described above; it must start and stop the various 30
`selections in a timely manner to maintain a predeter-
`mined schedule, and it must operate reliably, monitor-
`ing the operation of the audio playback devices and
`taking appropriate action if a device fails to cue or play
`a given selection.
`The prior art has heretofore lacked an automated
`broadcast system capable of operating reliably over
`long periods of time without human assistance. The
`automated digital broadcast system of the present in-
`vention, described in greater detail below, provides a '40
`system which meets this need.
`SUMMARY OF THE INVENTION
`
`35
`
`The present invention overcomes the shortcomings
`of the prior art by providing an automated digital 45
`broadcast system which is capable of reliable operation
`for long periods of time without human assistance. The
`system comprises a plurality of compact disc players or
`other audio devices which are controlled by computer
`to sequentially play a predetermined list of musical 50
`selections and commercial or informational messages.
`The system executes control software to perform the
`following functions. It reads from a data storage device
`into memory a compiled playlist of selections for a
`given period of time, such as 24 hours. It sends control 55
`signals, using appropriate interface hardware, to the
`audio playback devices to start and stop play of selec-
`tions according to the playlist schedule. The selections
`are cued prior to play so that their starting time can be
`accurately controlled. It receives signals from the audio 60
`playback devices and monitors their operation. In the
`event of failure to cue, start or stop a selection on sched-
`ule, the control software causes corrective action to
`occur. For example, if a compact disc player does not
`acknowledge receipt of a command to start play, the 65
`commands to start play are reissued. Messages describ-
`‘ ing errors in system operation are recorded to file so
`that the operator can determine if maintenance is re-
`
`2
`quired. For example, faulty compact discs can be identi-
`fied for replacement.
`The control software maintains the playlist schedule
`by monitoring the runtime of each selection, and com-
`paring actual runtime to scheduled runtime. If there is a
`difference in the two times, the time gap between selec-
`tions is adjusted to compensate for the deviation. At the
`conclusion of the playlist, the control software causes
`the playlist for the next 24 hour period to be read into
`memory, and procedures are repeated to play the selec-
`tions on that playlist. This process repeats itself indefi-
`nitely for the playlists stored in the system mass storage
`device.
`An audio switching device, under software control,
`routes the output of the audio playback device that is
`playing the current selection to the system audio output.
`BRIEF DESCRIPTION OF THE DRAWINGS
`
`FIG. 1 is a system block diagram of the automated
`digital broadcast system of the present invention.
`FIGS. 20 through 21‘ are flowchart illustrations of the
`processing steps implemented by the system control
`software used in the automated digital broadcast system
`of the present invention.
`DETAILED DESCRIPTION OF THE
`PREFERRED EMBODIMENT
`
`Referring to FIG. 1, schematic block diagram is
`shown of the automated digital broadcast system of the
`present invention. Operation of the system is controlled
`by a control computer 12 which provides control sig-
`nals to interface hardware modules 14a-l4c to control
`operation of compact disc players 16a—16c. Selections
`to be played on the compact disc players Ida—16¢ are
`contained in a custom compact disc library 18. The
`sequence of music and commercial selections to be
`played from the compact disc library is determined by a
`playlist of music selections and commercial/informa-
`tion messages (“infomercials"). The playlist can be
`compiled using a program, such as the “SELECTOR”
`program produced by RCS Inc., to produce a sequential
`list containing information relating to the songs, artists,
`disc and track numbers, and times of play for the vari-
`ous selections. The compiled playlist 22 is stored in an
`appropriate playlist data storage device 24 for subse-
`quent access by the control computer 12. Operation of
`the system is controlled by system control software 26
`which is stored in an appropriate memory device as
`shown in FIG. 1. A display device 28, which can be in
`the form of a high resolution color monitor, displays a
`portion of the information contained in the playlist to
`allow an operator to obtain information about the music
`or commercial selection currently being played as well
`as those selections that will be played subsequently. An
`audio multiplexer unit (AMU) 20 routes the output of
`the compact disc player that is playing the current se-
`lection to the system audio output.
`FIGS. 2a—21' provide a flowchart description of the
`functional features of the system control software. Be-
`fore discussing details relating to the flowcharts, how—
`ever, the main features of the control software will be
`briefly summarized. The control software reads a "play-
`list” file which contains the sequence of selections to be
`played for a defined 24 hour period. At the end of the 24
`hour period, the next file is read and play begins again.
`Although the system will be described in terms of a 24
`hour play period, the maximum “walkaway” or unat—
`
`Page 12 of 15
`Page 12 0f 15
`
`SONOS 1013
`
`SONOS 1013
`
`

`

`5,168,481
`
`3
`tended time is limited by mass storage capacity of the
`computer. Typically, 32 kilobytes is required to store
`one day’s playlist. Therefore, one megabyte would be
`required for one month (31 days) of play time. In gen-
`eral, the system is utilized with one week of walkaway
`time to allow for new program material to be added
`each week. In operation, the control software periodi-
`cally writes a “status file" indicating the selection num-
`ber and day number so the system can return to the
`proper place in the playlist if the system is disabled
`because of loss of power.
`The control software automatically controls the play
`selection of a compact disc library by executing the
`following functions: First, the control software sends
`commands to the compact disc players to do one of the
`following: (a) cue a specified disc; (b) start playing a
`cued disc at a specified track; or (c) stop play at the end
`of track (EDT) and return the disc to the tray. The
`software receives and processes signals from the com-
`pact disc players which indicate that one of the follow-
`ing events has occurred: (a) a disc has been set into
`place and is ready for play, (b) the table of contents
`(T0C) of a specified disc has been read, (0) an BOT has
`been encountered, or (d) a specified track of a disc is
`playing. The software maintains the scheduled play by
`comparing actual runtime to scheduled runtime for
`each selection. The cumulative time difference between
`actual and scheduled time is computed, and the time gap
`between songs is adjusted to correct the cumulative
`difference. For normal operation,
`the error between
`scheduled and actual program time during a 24 hour
`period is maintained to within plus or minus 5 seconds.
`The control software constantly displays the system
`status. For example, the software displays appropriate
`messages to indicate the detection of EOT has oc-
`curred, or that a disc has been set into place and is ready
`to play. In addition,
`the system software constantly
`displays a playlist for some of the selections which have
`already been played and also displays the playlist for the
`current selection and future selections. The playlist
`contains information relating to the artist, title and run-
`time for the next selection, in addition to the disc num-
`her and track number for that selection.
`Referring to FIGS. 2a—2i, the flowchart for the con-
`trol system software will now be discussed. In step 100
`the software is started and in step 110 an opening screen
`is displayed. In steps 120 through 135, the user is pro-
`moted to check displayed information to see if the date,
`time, and playlist files are correct, and to take correc-
`tive action as needed. Then, in step 140, status files are
`read to determine the day and selection number for start
`of play. The status files can be modified off-line by the
`operator so that the machine can be started at a desired
`day and song. Otherwise, the status file will contain the
`day and number corresponding to the selection last
`played. In step 150,
`the windows are initialized for
`displaying playlist and system status information, and in
`step 160 the interface hardware (programmable input-
`/output cards) is initialized so that the control computer
`and the compact disc players can communicate. It may
`be noted that step 150 constitutes the beginning of the
`“day loop”; i.e., when the program concludes play for a
`given 24 hour period, it will return to step 150 to begin
`play for a new day (see FIG. 2]).
`Steps 170 through 190 complete the initialization
`procedures. In step 170, the playlist for the next 24 hour
`period is read into memory and the beginning entries of
`the playlist are displayed. The file to which errors are
`
`4
`written is initialized in step 180, and the software for
`handling interrupts from the compact disc player is
`installed in memory in step 190. The interrupt handler
`allows the control computer to temporarily suspend
`program execution upon a signal from the compact disc
`player so that data signals from the disc player can be
`received.
`
`10
`
`15
`
`20
`
`25
`
`30
`
`35
`
`45
`
`50
`
`55
`
`65
`
`In step 200, the compact disc players are cued to the
`first three selections on the playlist. In the following
`discussion, a set of 3 compact disc players is used. It is
`to be understood, however, that the features described
`hereinbelow can be accomplished with fewer or more
`compact disc players and without necessarily running
`them in the given sequential order. In addition,
`the
`features described can be accomplished with any digi-
`tally controlled audio playback device, such as a digital
`audio tape player rather than a compact
`isc player,
`although the details of the commands sent to and the
`signals received from the audio playback device would
`change.
`Commands are issued in step 210 to start play of the
`first selection. At approximately the same time, in step
`220, a clock is started in software to measure the run-
`time of the selection. In step 230, a check is made to
`verify that the compact disc player has sent a signal to
`acknowledge receipt of the commands to start playing
`the cued selection. If there is no such verification, the
`commands are reissued until their receipt is acknowl-
`edged. If three such attempts are made and fail to start
`play, an error message is displayed and written to file,
`and the program proceeds to the next step under the
`assumption that the selection has started play but that
`the compact disc player failed to acknowledge the com-
`mands. (The validity of this assumption will be tested
`below.)
`'
`Step 240 is a call to the subroutine MONITOR DISC
`PLAYER. This subroutine, diagrammed in FIG. 2g,
`serves three main functions: (1) it monitors the compact
`disc player to determine if the runtime of the selection
`has exceeded a preset limit, (2) it determines whether or
`not a selection is playing, and (3) it detects the end of
`track for the selection being played. These determina—
`tions are made in steps 520, 530, and 540, respectively. If
`the runtime has exceeded its limit (for example, 7 min-
`utes, which exceeds the longest song in the library) then
`an error message is written to the error log file and the
`end of track (EOT) flag is set to TRUE in step 525.
`Similarly, if the compact disc player does not send data
`to the control computer indicating that a disc is playing,
`an error is logged to file and displayed, and the EOT
`flag is set in step 535. If either of these errors occur, or
`if the end of track for the current selection is reached,
`the subroutine will, in step 550, disable the interrupt
`and, in step 560, return to the main program. As long as
`a selection is playing without error, the subroutine con-
`tinues to loop through step 545.
`Upon return from subroutine MONITOR DISC
`PLAYER, the first selection is stopped in step 250. At
`approximately the same time, the runtime clock in soft-
`ware is stopped, and it
`is determined in step 260
`whether or not the actual runtime of the selection was
`less than the scheduled runtime. If the actual runtime is
`less than the scheduled runtime, then a delay is intro-
`duced, the time of which depends upon the difference
`between scheduled and actual runtimes. The scheduled
`runtime is preset to exceed the actual runtime by about
`1 second, so, unless the system is behind schedule, some
`delay will always be introduced. In this way, the time
`
`Page 13 of 15
`Page 13 0f 15
`
`SONOS 1013
`
`SONOS 1013
`
`

`

`5
`gap between selections is adjusted to maintain the play-
`list schedule.
`At the time that is appropriate to maintain schedule,
`commands are issued in step 270 to start playing the
`second selection on the playlist. As was done for the 5
`first selection, a runtime clock is started in step 280 to
`monitor time of play, and a check is made in step 290 to
`determine if the compact disc player received the com-
`mands to start play. If there is no acknowledgement that
`the commands were received, then,
`in step 295, the
`commands are reissued up to 3 times and appropriate
`error messages are written to the error log file and
`displayed to the operator.
`Once the commands to start play are acknowledged,
`or have been sent three times, program control passes to
`step 300, where the number of the currently playing
`selection and the current day number are written to the
`status files. The next step in the control sequence, step
`320, is the beginning of the main loop of the program.
`The main program loop will continue to alternatively 20
`cue and play songs, returning control to steps 310 and
`320, until the next-to-last selection of the 24 hour period
`is played. (See step 420 for the end of this loop.)
`Because the system is configured with three compact
`disc players, the next—to—last and last selections require
`special treatment; no cueing of a later selection in the
`playlist is required during play of either of these selec-
`tions. The first step (step 320) in the main loop therefore
`determines if more than 2 selections remain to be
`played. If not, control is passed to step 410, where fur- 30
`ther steps are taken to play the last two selections. If
`more than 2 selections remain, commands are issued in
`step 330 to cue the next selection.
`The procedures used in cueing a selection on a com-
`pact disc player must take into account the scheduled 35
`runtime of the currently playing selection. Specifically,
`the cueing process must be completed before the end of
`track of the currently playing selection is encountered,
`or the currently playing song will not be stopped at its
`end. Step 340 determines if the selection currently play—
`ing has a short runtime or a relatively long runtime by
`checking the playlist data record. If the selection is
`shorter than 35 seconds, then the quickest possible cue-
`ing procedure is used by passing control to step 350. If
`the selection currently playing has a runtime greater 45
`than 35 seconds, then a longer but more robust cueing
`procedure is taken in step 345, in which the subroutine
`MONITOR SONG CUE is called.
`Subroutine MONITOR SONG CUE, shown in FIG.
`2h, starts at step 600. In step 610, the interrupt corre-
`sponding to the compact disc player being cued is en-
`abled so that the control computer can receive signals
`from that player. In step 620, a check is made that the
`table of contents have been successfully read for the
`disc being cued. If the table of contents have been read,
`then the disc must be loaded into the player and be
`ready for play. In that event control passes to step 670,
`and the subroutine returns to the calling program. If the
`table of contents have not been read, repeated efforts in
`steps 630, 635, and 620 are made until success is
`achieved or until 25 seconds has elapsed. If 25 seconds
`elapses without reading the table of contents, then, in
`step 640, commands are reissued to the compact disc
`player to one the disc and, in step 650, an error message
`is written to the error log file. The entire process, step
`620 through 650, is repeated until the table of contents
`is read or, in step 660, it is determined that a limit of 3
`attempts have been made to cue the disc. In either case,
`
`50
`
`55
`
`60
`
`65
`
`‘
`
`5,168,481
`
`IO
`
`15
`
`25
`
`6
`control returns to the main program in step 670. The
`entire cueing process for a song can take up to 75 sec-
`onds to execute if there are failures in reading the table
`of contents. In practice there are very few failures in
`cueing, and the process for a song is typically com-
`pleted in about 25 seconds.
`Once commands have been issued to one a selection,
`the subrouting MONITOR DISC PLAYER is called in
`step 350 to monitor the selection currently playing.
`Upon detection of the end of track or if the EOT flag
`has been set due to an error as described above, the
`selection is stopped in step 360. Following an adjust-
`ment in time between songs that is performed by steps
`370 and 375, commands are issued in step 380 to start
`the next selection. A software clock is started in step
`390 to measure actual runtime of the selection, and, in
`steps 400 and 405, commands to start play are reissued
`up to 3 times as appropriate. The status files are updated
`with the current selection number and day number in
`step 410.
`It is determined in step 420 whether or not the cur-
`rent selection is the next to last selection of the day. If
`so, step 425 calls subroutine NEXT TO LAST SELEC-
`TION. This subroutine, shown in FIG. 21', begins with
`step 700. If in step 710 it is determined that the current
`day is the last day of the week (or other period of time
`up to a month or more), then a message is displayed in
`step 715 to remind the operator to prepare to load a new
`set of computer discs and new playlist diskette as re-
`quired. In step 720 the subroutine MONITOR DISC
`PLAYER is called to detect the end of track or to set
`the end of track flag upon detection of an appropriate
`error. In step 730 the next to last selection is stopped
`and, following an appropriate time delay as determined
`in step 740, the last selection is started. The status files
`are updated in step 760, and control returns to the main
`program in step 770.
`For all selections in the playlist other than the last
`selection, step 430 marks the end of the main loop; fol-
`lowing step 430 control returns to step 310 in FIG. 2d
`until all selections but one haVe been played. If step 430
`determines that the last selection of the day is being
`played, then a test is made in step 440 to see if it is the
`last day of the week (or other preset time period). If so,
`a second message is displayed to remind the operator to
`prepare for the end of the week. In step 450, a subrou-
`tine is called to monitor the final selection until the end
`of track, and,
`in step 460, the selection is stopped. A
`message is displayed in step 470 to inform the operator
`that the end of the day, or the end of the week, if appro-
`priate, has been reached, and that the system will re-
`sume play at midnight.
`In step 480, the system clock is polled to determine if
`it is between 11 PM and midnight; if so, program execu-
`tion is delayed until midnight. At midnight, the day
`number is incremented in step 490, and program control
`returns to the beginning of the “day loop”, step 150 is
`FIG. 22:.
`Although the automatic digital broadcast system of
`the present invention has been described in connection
`with the preferred embodiment, it is not intended to be
`limited to the specific form set forth herein, but on the
`contrary,
`it is intended to cover such modifications,
`alternatives, and equivalents as can be included within
`the scope and spirit of the invention as defined by the
`appended claims.
`What is claimed is:
`
`Page 14 of 15
`Page 14 0f 15
`
`SONOS 1013
`
`SONOS 1013
`
`

`

`5,168,481
`
`7
`1_ An automated digital broadcast system, compris-
`ing:
`a playlist of desired music and information selections,
`said playlist containing information relating to the
`play time of each music selection in said playlist,
`
`5
`
`8
`means for recording errors detected by said means for
`monitoring said players, said means for recording
`being operable to notify a system operator of the
`need for system maintenance;
`timing means for maintaining operation of said system
`in accordance with a time schedule to allow unat-
`tended operation of said system for long periods of
`time, said timing means being operable to compare
`the actual play time of each music selection with
`the corresponding anticipated play time for said
`selection, said timing means being operable to alter
`the length of said time gaps between said selections
`.
`.
`.
`.
`.
`.
`in said playlist, as needed, to maintain operation of
`said system in accordance with said schedule.
`2. The automated digital broadcast system according
`to claim 1, said plurality of means for playing music
`selections comprising a plurality of optical disc players.
`t
`t
`t
`a
`at
`
`said playlist further comprising a plurality 0f time
`gaps, of predetermined length, between each of
`said selections;
`a plurality of means for playing selections contained 10
`in said playlist;
`ro rammable means for controllin the o eration of
`p g
`g
`p
`said plurality of means for playing said selections;
`a plurality Of means for monitoring the operation or 15
`said means for playing selections to detect and
`correct errors in cueing, starting and stopping 56-
`lections;
`
`20
`
`25
`
`30
`
`35
`
`4O
`
`'45
`
`50
`
`55
`
`65
`
`Page 15 of 15
`Page 15 0f 15
`
`SONOS 1013
`
`SONOS 1013
`
`

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