Locator: Automator - Edit Script > Edit Script .
The Automator provides several methods for injecting Announcements (pre-recorded audio messages) into music programming. You build a script with Play Steps and mark it as Announcements (one of several types of announcements below). The music programming is suspended for the duration of the announcement.
You mark a Script as Announcements by checking one of the checkboxes in the Special Processing > Process as Announcements section of the Script Editor (Figure 2 below).
One announcement is selected at a time in sequential order. When the last announcement has played, the cycle begins again from the first announcement. Thus, the number of announcements does not need to match the number of music tracks.
You can also automatically force all announcements to have a Pre-Delay and/or Post-Delay which will add 'dead air' padding between the music and the announcement (see Announcements/Preemptive Play - Delay Defaults settings in the Sound Item Options. It provides a less abrupt transition between the music and the announcements.
If you are using Auto-Fades for the music programming, you may want to exclude your Announcements from Auto-Fade behavior. Do this by checking the option Exclude Announcements/Preempt Sound Items from Auto-Fades in the Sound Item Options.
Everytime you run an Announcements Script, its Play Steps get added to the stack of Announcements. That may or may not suit your needs. If you want an Announcements Script to replace (not add to) any existing set of announcements, you need to execute a Clear Announcements Step.
In general, when you are playing music tracks, you never want them to play over each other (concurrent play). To avoid that, in the Automation Options dialog, check the Automator ignores the Sound List Editor 'Allow Concurrent Sounds' option.
You will create three Scripts: 1) A Master Script to run the other two; 2) A Script to hold the music playlist; 3) A Script containing the announcements you want to inject.
To start the programming, simply run the Master Script. If you have Scheduled Announcements Steps, you need to start the Scheduler instead which will in turn start the Master Script.
Listing 1. Master ScriptScript Name: Pre-show Music Master Steps: 1. Run Script (My-Announcements) 2. Run Script (My-Playlist)
Announcements are inserted between sequential playing music tracks; one announcement after each music track ends. Announcements selection is cycled. You can set the Insert Frequency so an announcement plays every two music tracks, or every three, and so on. Also see Announcements Cycling above.
One announcement is played at a regular Time Interval that you pick (ex. every 5 minutes) by suspending any currently playing music track. When the Announcement ends, the music track is resumed. Announcements selection is cycled. (see Announcements Cycling above). If the Script is paused, no announcements are lost during the pause. If you pause the Script, Interval Announcements will suspend until the script is resumed.
Each announcement Step is timed to play at an time Offset from the run start of a Script. For example, if the containing Script starts at 1:00PM, and the Step Offset is 5 minutes, the announcement will play at 1:05PM. These announcements will play only once, each time the containing Script is run. If the Script is set to Repeat or Loop continously, the announcements will play at their specified offset from the start of each repeat sequence.
The Announcement type is much more labor intensive to setup than Interval Announcements. Generally, use Offset Timed when you want announcements to play at irregular times. If you want to play announcements at regular intervals (ex every 5 minutes), it is much easier to use Interval Announcements.
If you forget to enable an offset time or a scheduled time (Time Of Day) to a Standard Announcement Step, it will default to execute as a Sequenital Step. Script validation will flag this as a warning. It is not a critical error but is not a logical setup for Announcements.
Each announcement Step is scheduled for a Time Of Day and played by the Scheduler. (ex. 8:00PM )
Also see Warning: Non-Timed Standard Announcements above.
Given the General Implementation above using three Scripts (Listing 1), it's important to understand Announcements Visibility between Scripts. When you run the Master Script, it creates a thread. Consider the Master thread as the blue area in Figure 1. The Master Script spawns the My-Announcements and My-Playlist Scripts within the Master thread (by using Run Script Steps). That gives the Master thread visibility to all three Scripts and thus visibility to the Announcements. The Scheduler also creates it's own main thread (similar to the Master Script thread).
If you instead run the My-Announcements and My-Playlist Scripts by selecting the each script in the Automator and clicking the Run button, they would each run in their own separate threads. And in that case, the announcements would have no visibility to the playlist and announcements behavior will not work properly.