What's new in Vegas 6.0a

SonyPJM wrote on 4/18/2005, 9:08 AM
Here's what is new in Vegas 6.0a for scripting. The new API docs can
be found here.

* Scripts now run in their own app domain which is loaded and unloaded
each time a script is run. This allows referenced assemblies to be
recompiled without restarting Vegas and fixes various problems.


* Vegas now supports CodeDom compilers. This allows scripts to be
written in C# as well as JScript and VB. Vegas also now supports
precompiled scripts which can be written in any CLR language.
Precompiled script have better performance by allowing Vegas to
bypass compilation each time the script is run. By default, JScript
and VB still use the VSA script engines but they can be converted to
CodeDOM by adding the following element to their script config
files:

<UseCodeDomCompiler>true</UseCodeDomCompiler>

CodeDom and precompiled scripts require an entry point that Vegas
calls to begin execution. By default, this is a class named
"EntryPoint" with a method named "FromVegas:. Here is a sample C#
script:

using System;
using System.Windows.Forms;
using Sony.Vegas;

public class EntryPoint
{
public void FromVegas(Vegas vegas)
{
MessageBox.Show(vegas.Version);
}
}

The EntryPoint class is defined in the top level namespace (not
within any namespace statements). The FromVegas method can have a
variety of arguments. Here are the options:

public void FromVegas(Vegas vegas)
public void FromVegas(Vegas vegas, String scriptFile)
public void FromVegas(Vegas vegas, String scriptFile, XmlDocument scriptSettings)
public void FromVegas(Vegas vegas, String scriptFile, XmlDocument scriptSettings, ScriptArgs args)

Vegas will call the version with the greatest number of arguments.
It is possible to use a different class for your entry point by
specifying the class name in your script config file. For example,
the following element will instruct Vegas to create an instance of
the class named MyClass declared in the namespace MyNamespace and
call its FromVegas method:

<MainClass>MyNamespace.MyClass</MainClass>


* Shortcuts (.lnk files) located in the script menu directory can be
used invoke scripts located in another directory. Shortcuts can
also be used to specify ScriptArg values which are passed to the
script as an entry point method parameter for CodeDom and
precompiled scripts or as a global variable named "ScriptArgList"
for VSA scripts. To specify ScriptArgs in a shortcut file, first
right-click on the shortcut and select Properties. The Target field
of the Shortcut tab in the properties dialog will contain the path
to your script. After the path, you can append script arguments as
name/value pairs. For example, in the shortcut target field,
specify the following:

C:\Vegas Scripts\TestScript.cs msgEN=hello world&msgES=hola mundo

Make sure there is a space between the script path and the first
script argument. Argument names and values are separated by the '='
character and additional pairs are separated by the '&' character.
Below in an example of the reading argument values from the
ScriptArgs object:

public class EntryPoint
{
public void FromVegas(Vegas vegas, String scriptFile, XmlDocument scriptSettings, ScriptArgs args)
{
MessageBox.Show(args.ValueOf("msgEN", false));
MessageBox.Show(args.ValueOf("msgSP", false));
}
}

See the scripting API documentation for more details on using the
ScriptArgs class. Icons for shortcuts in the script menu should be
named similarly to how they're named for scripts. For example, if
your shortcut is named "MyScript.lnk", its icon should be named
"MyScript.lnk.png".


* Video track compositing properties:

VideoTrack.CompositeLevel
VideoTrack.CompositeMode
VideoTrack.CompositeModeEffect
VideoTrack.ParentCompositeMode
VideoTrack.ParentCompositeModeEffect
VideoTrack.CompositeNestingLevel
VideoTrack.IsCompositingChild
VideoTrack.IsCompositingParent


* Event sync properties and methods:

TrackEvent.SyncOffset
TrackEvent.SyncEvent
TrackEvent.SyncByMove()
TrackEvent.SyncByMove()
TrackEvent.SyncBySlip()


* Equals method and equality operators (== and !=) are now overridden
for the following classes:

Track
AudioTrack
VideoTrack
TrackEvent
AudioTrackEvent
VideoTrackEvent
BusTrack
AudioBusTrack
VideoBusTrack
Envelope
EnvelopePoint
Marker
Region
CDMarker
CDRegion
CommandMarker
Media
Subclip
Take
Timecode
TrackEventGroup

Comments

2G wrote on 4/18/2005, 10:17 AM
Maybe I missed it, but PLEASE tell me that I can access track motion presets in scripts now.

Also, a long shot, but can I add leader/trailer time to media when I do "ArchiveProject" in scripts like I can do when I manually "Save With Trimmed Media"?

Thanks.

2G
Vegas - The Big Gamble wrote on 4/18/2005, 3:17 PM
and maybe I missed it, but PLEASE tell me that I can set the actual text for Sony Text generated media in scripts now!
klaymen wrote on 4/19/2005, 2:11 AM
I just scanned shortly through the Vegas 6 API on your site and wonder about the Media Manager, whihc was added in v6... Is this supported through the API, and if yes, how? Particularely, I'm interested if one can set media columns (shown in the "grid" mode), like "comments" and custom ones ("like "Order" :-) and initiate sorting by them in the GUI, which would finally allow to bring media easily in a given order (storyboard-like function).
Thanks, Andy
SonyPJM wrote on 4/19/2005, 6:49 AM
Still no track motion.

No option to add leader & trailer to trimmed media.
SonyPJM wrote on 4/19/2005, 6:49 AM
Still no scriptable effect parameters, including text.
2G wrote on 4/20/2005, 3:34 PM
Hmm, well I'm glad to see scripting got the high focus of attention that it deserves from Sony management....

Does management even know there is a scripting language in Vegas? Do they know the users have made requests for improving tremendously deficient function? Do they care? Never mind... I think that answer is obvious.
Vegas - The Big Gamble wrote on 4/23/2005, 11:19 AM
Shame. When a product gets you so excited with the initial implementation of features, it's just bound to create disappointment if it doesn't continue to add to them on a regular basis. Especially when those features are ones that people request time and again.

I'm still hopeful for future releases but you only have to look at the audio forum to see how disappointed users are that the main addition this time (after a year) was something which was already released in ACID and SF.. ie. things aren't really moving at great speed with anything but video in Vegas.

Of course since no-one will ever tell us what scripting improvements are planned for future releases (although I can't see why it's considered sensitive info compared with A/V functionality additions) we just have to sit & wait for another year or so.