Minimizing Tracks

bcgreen wrote on 4/23/2003, 11:23 AM
So what's the easiest way to add a Color Bars event to a track...I've gone over some example scripts, but I'm not a programmer, so its very hard for me to decipher what's going on most of the time. I want to select a track, and then run a script that would insert :15 of SMPTE color bars at the cursor position....

Thanks!
Bryan

Comments

jetdv wrote on 4/23/2003, 1:16 PM
How about:


/**
* This script will add a 15 second test pattern to the selected track
* Written By: Edward Troxel
* Modified: 04-23-2003
**/

import System;
import System.IO;
import System.Windows.Forms;
import SonicFoundry.Vegas;


try {

var track = FindTrack("Current");
if (null == track)
throw "no selected track";

//Determine whether the file exists and the current cursor timecoded
var cursorTimecode = Vegas.Cursor;

var media = CreateGeneratedMedia("Sonic Foundry Test Pattern","SMPTE Bars (NTSC)");
var stream = media.Streams[0];
var newEvent = new VideoEvent(cursorTimecode, stream.length);
track.Events.Add(newEvent);
var take = new Take(stream);
newEvent.Takes.Add(take);

//Now set the one second fade in and fade out
newEvent.Length = new Timecode("00:00:15:00");


} catch (e) {
MessageBox.Show(e);
}


function FindTrack(WhichTrack) : Track {
var trackEnum = new Enumerator(Vegas.Project.Tracks);
var PrevTrack : Track = Track(trackEnum.item());
while (!trackEnum.atEnd()) {
var track : Track = Track(trackEnum.item());
if (WhichTrack == "Current") {
if (track.Selected) {
return track;
}
}
if (WhichTrack == "Previous") {
if (track.Selected) {
return PrevTrack;
}
}
if (track.Name == WhichTrack) {
return track;
}
trackEnum.moveNext();
}
return null;
}

function CreateGeneratedMedia(generatorName, presetName) {
var generator = Vegas.Generators.GetChildByName(generatorName);
var media = new Media(generator, presetName);
if (!media.IsValid()) {
throw "failed to create media; " + generatorName + " (" + presetName + ")";
}
return media;
}