As I said, you would need code that determined “start”, “length”, and “myTrack”. Here’s a fully functional version:
//—————————————-
using ScriptPortal.Vegas;
public class EntryPoint
{
Vegas myVegas;
public void FromVegas(Vegas vegas)
{
myVegas = vegas;
Track myTrack = null;
if (myVegas.Project.Tracks.Count > 0)
{
myTrack = myVegas.Project.Tracks[0]; // just take the “top” track for now.
}
if (myTrack != null) // if there was a track
{
Timecode start = myVegas.Transport.CursorPosition; // put it at the cursor position
Timecode length = new Timecode(“00:00:01:00”); // make it 1 second long
//Add the Generated Media
string GenMed = “{Svfx:com.vegascreativesoftware:solidcolor}”; //Magix Solid Color
Media media = CreateGeneratedMedia(GenMed, “White”);
MediaStream stream = media.Streams[0] as MediaStream;
VideoEvent newEvent = new VideoEvent(start, length);
myTrack.Events.Add(newEvent);
Take take = new Take(stream);
newEvent.Takes.Add(take);
}
}
public Media CreateGeneratedMedia(string generatorName, string presetName)
{
PlugInNode generator = myVegas.Generators.GetChildByUniqueID(generatorName);
Media media = new Media(generator, presetName);
if (!media.IsValid())
{
//MessageBox.Show(“failed to create media; ” + generatorName + ” (” + presetName + “)”);
}
return media;
}
}
//—————————————-