Using Apple iCal to schedule ingest using AJA Kona/Io devices and VTRXchange

While not optimal, sometimes you don’t want to spend the extra money to get a robust tool for doing scheduled ingest from companies like Softron or ToolsOnAir.  I had an inquiry on how you could do this using the free tools that come with AJA hardware after my write up on scheduling the KiPro using iCal. Considering that the free download from AJA’s site, VTR XChange, is Applescript capable this task is actually quite easy.  We don’t need to write any shells scripts or interact with any command line utilities this time.  In fact, we only need two scripts in total.  One will start our VTRXchange Application recording, the second will stop record. Our first script is pretty simple:

set StartTime to do shell script "date '+%Y.%m.%d-%H:%M'"
tell application "AJA VTR Xchange"
	activate
	capture to StartTime & "-iCalSchedule"
end tell

The first statement simply grabs the start time of the recording and uses it to name the file in the second statement. The second statement starts VTRXchange if it isn’t already running, tells it to start capturing, and names the file in the format YYYY.MM.DD-HH:MM-iCalSchedule.mov Our second script is even easier:

tell application "AJA VTR Xchange"
	activate
	stop capture
end tell

Save these scripts into ~/Library/Scripts as “Start Kona Capture” and “Stop Kona Capture” respectively.   Then use the setup method in the article above on KiPro scheduling to add them to iCal. Enjoy!

Categories AJA

2 thoughts on “Using Apple iCal to schedule ingest using AJA Kona/Io devices and VTRXchange

  1. Hi Mike,
    Thanks for the scripts. Could you please give an example with actual date and time entered for StartTime. I’m not sure I understand the date and time formatting.
    Thanks,
    Tom F

  2. Tom, the StartTime variable is actually just a text string, so you can put anything you want in there. It is the file name that VTR XChange writes to (you set up where VTR XChange writes to in its own application preferences).

    I used a date stamp as the file name, that is what the first line of the first script does. It actually just runs the command line program “date” with some variables to output when the record actually started. The reason I’ve done this is so that back to back records don’t overwrite each other. If I had just set StartTime to “myrecording”, I’d just get one file that is constantly overwriting itself.

    The “-iCalSchedule” in the fourth line is probably best set to the name of the channel you are firing as well. If you are running in a SAN environment with multiple of these systems in place, you could theoretically have two systems start recording to the same place at the same time, so you would want unique identifiers for each channel.

    It is important to note that the scripts themselves are not schedulers at all. You actually us the “run applescript” option in iCal to run these scripts.

    Hope this helps.

Leave a Reply