Software Documentation

Software Documentation


Last updated: November 26, 2023

4 Synchronizing events to music in a production controlled by others

Synchronizing events in a production controlled by other people is an agreement between the parties involved about what timecode ranges correspond to what elements of the production.  Consider a concert in which the performer will perform 10 to 15 songs.  The pyro production company, lighting company, and possibly other special effects companies may all have contributions to the production that are designed specifically for each of the songs.  The timecode agreement is a list of songs and the timecode range that each song corresponds to.

The agreement typically allocates a one-hour range of timecode in a 24 hour “day” for each song, making the list simple for everyone.  At the time of the concert, the songs can be performed in any order.  At the onset of each song, the production operator will start playing the timecode range corresponding to that song, which will trigger the pyro, lights, and special effects to play along in synch with the song.


Matching the timecode range provided by others

When other people control the production using timecode, you need to know what timecode ranges correspond to your part or parts of the show.  If the overall show begins at timecode 00:00:00:00, and your part of the show is at the beginning of the show, then you can design your part of the show beginning at zero on the timeline in Finale 3D and export your script normally.  When the production operator plays the timecode beginning with 00:00:00:00, your part of the show will play along with it.

If your part of the show is not at the beginning, then you need to make sure your script events correspond to the correct timecode range.  Typically, timecode ranges are allocated in one hour slots of a 24 hour “day”.   Say your part of the show is at the hour slot beginning at 7 hours (07:00:00:00).  It is imperative that your script events begin at 7 hours, not zero hours.  In Finale 3D you have two choices for getting your script events to begin at 7 hours instead of zero: 1) you can script your show on the timeline beginning at 7 hours, or 2) you can script your show at zero on the timeline and set the “Firing system export offset” to add 7 hours to the event times in the exported script.


Moving songs on the timeline to their timecode ranges

Scripting your show beginning at whatever time range is required is your only option if you are contributing multiple parts to the production at various timecode ranges scripted in the same show file.  While it may seem disorienting to have a timeline that is 15 or 20 hours long with short, 5-minute songs at the beginnings of various hours, that’s what people do.

If you are told the timecode ranges for each song, you need to import all the songs.  If the song files contain their timecode on one of the channels, Finale 3D will automatically position them on the timeline according to the timecode.  If the files are just audio, you need to slide them on the timeline to the correct timecode ranges and then script the parts of your show to correspond to the music.

If you are given a single concert soundtrack file containing all the songs with their independent timecode ranges, then you can just import the soundtrack file (“Music > Add song…”) and Finale 3D will automatically split it up and align the sections to the timeline as shown in Figure 1.  Please see Concert soundtracks containing multiple SMPTE timecode sections for more information.


Figure 1 – A soundtrack with eight songs beginning on SMPTE hours 1-8 is eight hours long!


Finale 3D also has the function, “File > Tools > Analyze timecode in soundtrack file…” which reads the timecode of any chosen soundtrack file without importing it into your show, displays information about the timecode, and optionally saves a text log file of the timecode data in a human readable form so you can see exactly what timecode times the file contains, all of them.  See The “Analyze timecode in soundtrack file…” function for SMPTE and FSK for more information.


Scripting at zero on the timeline and adding export offsets

Scripting your show at zero on the timeline and setting the “Firing system export offset” to begin at the required timecode range is an option if your show file contains only one part, and thus needs only one offset to the required timecode range.  The “Firing system export offset” field is in the “Show > Set show information…” dialog, along with another field, “Timecode export offset”.

If you are the one supplying a soundtrack for your part of the show with music and timecode at the correct range, then before exporting the soundtrack with the function “File > Export > Export soundtrack” it is imperative that you also set the “Timecode export offset” to the correct range, matching the “Firing system export offset”.  You can verify the soundtrack file you export has the correct timecode range by using the function, “File > Tools > Show timecode statistics for song file…”.