Depending upon the type of sequence you're using, checking the "S" box to add a sync delay for a particular event can work in different ways. Below we step through and explain triggering media to play locally from a RidePlayer (RP) or BinloopX (BX) script itself, and by triggering media to play on a RP/BX from a V16X show controller.
**Be sure that all of your Alcorn devices are connected to a shared sync source (using something like PTP or NTP). Without all devices getting their clocks from the same source, you will not be able to play media in sync.
Sync Delay Settings
First, lets make sure our Sync Delays in all of your scripts are configured correctly. To set your Sync Delay, go to Configuration > Sync/Timecode > Event Timing in Winscript. You'll have to do this in each of your devices's scripts. In the examples that follow, I'm using the following Sync Delays. From left to right is the V16X script, RidePlayer script, and BinloopX script settings.
You MUST make sure you match your sync delays, otherwise errors can occur. For example, in our RidePlayer script, we're setting our Event Delay to 30 frames, and our Media Delay to 30 frames. In our V16X Script, we must make sure that we set that same RidePlayer to 30 and 30 frames as well. Same with our AVUC Binloop. The AVUC Binloop does not internally run Winscript, so if we tell our V16X we're giving it a 15 frame media sync delay, you must also set the AVUC Binloop to a 15 frame sync delay using the front knob on the AVUC Binloop itself.
** If you're adjusting these settings while in Live Mode, be sure to save your script and push it to the device. These settings to do not automatically get applied while in live mode.
**Exaggerated delays in this example are for training purposes only. There would be no reason to have event delays as high as 60 frames - you can dial that down based upon how busy your network traffic is. When you start a new script, BinloopX and RidePlayer default to an event delay of 16 frames and a media delay of 16 frames.
** For simplicity, it's also a good idea to have all of your scripts running at the same frame rate. In the example scripts attached, all of our scripts are running at 30fps.
Local Playback on a BinloopX or RidePlayer Script
The following events take place inside a BinloopX or RidePlayer Script
Media Play without S Checkbox (Media Begins as Fast As Possible)
Issuing a media play event without the S Checkbox causes the BinloopX or RidePlayer to play content as fast as possible (not synchronous). On RidePlayer, this is a variable time of roughly 200ms.
Media Play with S Checkbox (BX or RP Event Delay + BX or RP Media Delay)
Issuing a media play event with the S Checkbox causes the BinloopX or RidePlayer to play content after the BX/RP event sync delay + BX/RP media sync delay. In our case, 30 frames + 30 frames = 60 frames. This is the equivalent of an "S-Play" in our older Binloop products, and how you get multiple files to play synchronously.
What if you make the same event start 5 frames into your sequence? Media would then begin 65 frames from the point the sequence was triggered to start.
5 frames + BX Event Delay (30) + BX Media Delay (30) = 65 frames total.
Local Sequence Start without S Checkbox (1 frame)
Starting a different sequence in your local script will take one frame to occur.
If the sequence we're starting is the "Play Audio" sequence in the example above (which internally has the S Box Checked, and we made it start at frame 0 again within the sequence ~ no longer 5 frames in), the total frame delay until media playback will be:
1 frame + 30 frames (BX Event Delay) + 30 frames (BX Media Delay) = 61 frames total.
Local Sequence Start with S Checkbox (BX or RP Event Delay)
Starting one sequence from another in your local script with the S Checkbox checked will take the BX Event Delay time to occur. (in our case 30 frames).
In our example, where again we are triggering the "Play Audio" sequence from above, we would wait the BX Event Delay (30 frames) before starting the "Play Audio" sequence. Then the "Play Audio" sequence itself would wait 30 frames BX Event Delay + 30 frames BX Media Delay before beginning media playback (90 frames total).
Remote Playback from a V16X Script
The following events take place inside a V16X Script.
Direct Media Play without S Checkbox (Media Begins as Fast As Possible)
Issuing a media play event without the S Checkbox causes the BinloopX and RidePlayer to play content as fast as possible (not synchronous).
Direct Media Play with S Checkbox (BX or RP Event Delay + BX or RP Media Delay)
Issuing a media play event with the S Checkbox causes the BinloopX or RidePlayer to play content after the BX/RP event sync delay + BX/RP media sync delay. In our case, 30 frames + 30 frames = 60 frames. Again, this is the equivalent of an "S-Play" event in our older Binloop products, and how you get multiple files to play synchronously.
Remote Sequence Start with S Checkbox (Event Delay of the Remote Product)
Starting a remote sequence in your BinloopX script will wait for the BinloopX Event Delay to occur.
Starting a remote sequence in your RidePlayer script will wait for the RidePlayer Event Delay to occur.
In our example here, because both the RidePlayer and BinloopX have 30 frame event delays, starting a remote sequence on both of these products for us will take 30 frames. Then for audio to begin, you still have to factor in the RP / BX Event Delay + the RP / BX Media Delay on that device = 90 frames total.
Local Sequence Start with S Checkbox (V16X Event Delay)
Starting a different sequence in our V16X will take the V16X Event Delay time to occur if the "S" checkbox is checked. (in our case 60 frames).
So in our example, we would wait the V16X Event Delay (60 frames) before starting the "Media Play By Sequence Start" sequence, and then the "Media Play By Sequence" sequence would wait the 30 frame BX/RP Event Delay before the remote sequences are scheduled to start on those products, then the 30 + 30 frame delay on the remote devices = 150 frames total.
**With all of the grid view sequences discussed in this article, make sure you turn off "Wait for Device Response" in each sequence's options tab. If you're in timeline view for a sequence, this is turned off by default.