gordonw.top
VegasScriptAPI.html
VegasScriptFAQ.html
Vegas Pro Scripting API Summary
Revision Date: Monday, September 12, 2016.
Copyright © 2016. MAGIX.
This document summarizes most classes, interfaces, enumerations, and delegates exposed in the ScriptPortal.Vegas namespace. It is intended as a reference for programmers writing scripts and custom commands for Vegas. For an overview on how to run scripts in Vegas Pro, please refer to the Vegas Pro Online Help manual. We encourage you to post questions, comments, ideas, and solutions to the Vegas - Scripting discussion forum.
Table of Contents
AppChangeFlag Enumeration Enumeration of application change flags
AudioBusMode Enumeration Enumeration of audio bus modes.
AudioBusTrack Class Represents an audio bus track.
AudioCDProperties Class Represents a project's audio CD properties.
AudioChannelFlags Enumeration Enumeration of audio channel flags (speaker positions).
AudioEvent Class Represents an audio event.
AudioFXBusTrack Class Represents an assignable audio effect bus track.
AudioProperties Class Base class for objects that represent audio properties.
AudioResampleQuality Enumeration Enumeration of audio resample quality modes.
AudioStream Class Represents an audio stream.
AudioTrack Class Represents an audio track.
BackgroundProjectActiveState Class This class is used just with the Project.CreateBackgroundProjectActiveState() method. Call that method in a using() block to make the specified project temporarily active in Vegas, then when this object is disposed at the end of the block the previously active project will be restored. The main reason why you would use this is to gain access to the BusTracks object, which is only available for the active project. It is legal to nest this call or invoke it on a project that is otherwise already active -- in that case, it just does nothing.
BaseList Class Base class for most collections in the Vegas object model.
BaseTrackMotionKeyframe Class Base class for all track motion keyframes.
BaseTrackMotionKeyframeList Class Base class for lists of track motion keyframes.
BeatValue Enumeration Enumeration of beat values.
BusTrack Class Represents a bus track.
BusTracks Class Collection of bus tracks.
CaptionDoubleClickEventArgs Class Event arguments passed when the user double-clicks the caption of a dockable control.
CaptionDoubleClickEventHandler Delegate Represents the method that handles a CaptionDoubleClick event.
CDMarker Class Represents a CD track index marker.
CDMarkerList Class List of CDMarker objects.
CDRegion Class Represents a CD track region marker.
CDRegionList Class List of CDRegion objects.
ChannelRemapping Enumeration Enumeration of audio channel remapping modes.
CommandCategory Enumeration Custom command categories
CommandMarker Class Represents a command marker.
CommandMarkerList Class List of CommandMarker objects.
CompositeMode Enumeration Video track composite modes.
CurveType Enumeration Enumeration of envelope curve types.
CustomCommand Class Represents a command that extends or customizes the Vegas application.
CustomDataContainer Class A container for custom data saved with various objects in a vegas project.
DockableControl Class Represents a user control that can be docked in the Vegas user interface.
DockWindowStyle Enumeration Dock window styles
Effect Class Represents an instance of an effect, transition, or generator.
EffectPreset Class Represents a set of predefined parameter values for an effect key frame.
EffectPresets Class Collection of parameter presets for an effect.
Effects Class Collection of audio or video effects.
Envelope Class Represents an envelope.
EnvelopePoint Class Represents an envelope point.
EnvelopePoints Class Collection of points in an envelope.
Envelopes Class Collection of envelopes.
EnvelopeType Enumeration Enumeration of envelope types.
Fade Class Represents the fade (in or out) of an event.
ICustomCommandModule Interface Defines initialization routines for hosting a set of custom commands.
ImageFileFormat Enumeration Enumeration of image file formats.
IMediaBinNode Interface Implemented by media bin objects.
ImproperProjectSettingException Class The exception that is thrown when one or more project settings make the attempted operation impossible or inappropriate.
IneligableMediaException Class The exception that is thrown when the media object provided is ineligable for the attempted operation.
IProgressCallback Interface Callback object for asynchronous or long-running tasks in Vegas. Several of the scriptable tasks in Vegas, like opening or saving projects, execute on background threads. Some of those allow for periodic progress updates from that thread back to the GUI thread. If your script wants access to this background information, then implement this interface.
Keyframe Class Represents a video effect key frame.
Keyframes Class Collection of effect key frames.
LogCallback Delegate This delegate matches the signature of AddLogEntry(string)
LogFile Class This is a very simple implementation of a file-based logger.
LowPassFilterQuality Enumeration Enumeration of low-pass filter qualities
Marker Class Represents a marker on the project's time line.
MarkerCommandType Class Command marker types
MarkerList Class List of Marker objects.
Media Class Represents a media file referenced by a Vegas project.
MediaBin Class Represents a node in the hierarchy of media bins.
MediaBinNodeType Enumeration Enumeration of media bin object types.
MediaCommandMarker Class Represents a media command marker.
MediaCommandMarkerList Class List of MediaCommandMarker objects.
MediaFile Class A file asset associated with a project Media object. Many Media assets have just one file (e.g. Movie.mp4) but in some cases there can be many associated files. For example, Panasonic P2 has separate essence files for video and each audio channel. Most formats support proxy files, and all audio formats have cached peaks files. Some media files store metadata in external sidecar files rather than inside the media file.
MediaFiles Class A immutable collection of the MediaFile assets for a given Media instance. Although this collection is immutable from the scripting API, it is possible that the media may change without warning from the engine side -- for example, if a video proxy is created for the asset that will add a new entry to this collection automatically. This list will not reflect that change until Media.MediaFiles is invoked again.
MediaFileType Enumeration The type of a file associated with a Media item, used with the MediaFile class. Some media types have multiple files that represent the same clip. Most commonly, Vegas caches audio peaks data in a .sfk file alongside the original media file -- this is an AudioProxy type.
MediaMarker Class Represents a media marker.
MediaMarkerList Class List of MediaMarker objects.
MediaPool Class Collection of media used in a project. This pool is represented as an immutable IDictionary, but please note that the IDictionary implementation is incomplete and has flaws that cannot be corrected without breaking backward compatibility. Most significantly: 1) CopyTo, Keys and Values are not implemented, 2) GetEnumerator() iterates over Media items rather than DictionaryEntry items like it's supposed to. If you try to code "foreach (DictionaryEntry de in pool)" you will get an InvalidCastException. Instead, you need to code as "foreach (Media m in pool)" and the key will be "m.KeyString".
MediaPoolEnumerator Class Enumerator of media referenced by a project.
MediaRegion Class Represents a media region.
MediaRegionList Class List of MediaRegion objects.
MediaStream Class Represents a media stream.
MediaStreams Class Collection of media streams.
MediaType Enumeration Enumeration of media types.
MissingMediaEventArgs Class Arguments provided to MissingMedia event handlers.
MissingMediaEventHandler Delegate Represents the method that handles a MissingMedia event.
MotionBlurType Enumeration Enumeration of motion blur types.
OFXBase Class Represents a base class for Open FX video plug-ins and effects.
OFXBooleanKeyframe Class Represents a keyframe of an Open FX paramter with a Boolean value.
OFXBooleanParameter Class Represents a boolean parameter for an Open FX video effect.
OFXChoice Class Represents a choice parameter value used in Open FX video effects.
OFXChoiceKeyframe Class Represents a keyframe of an Open FX paramter with a Choice value.
OFXChoiceParameter Class Represents a choice parameter for an Open FX video effect.
OFXColor Class Represents a color parameter value used in Open FX video effects.
OFXControlPoint Class Represents a control point for a keyframe of an Open FX paramter with a Double value.
OFXCustomKeyframe Class Represents a keyframe of an Open FX paramter with a Custom value.
OFXCustomParameter Class Represents a custom type parameter for an Open FX video effect.
OFXDouble2D Class Represents a two dimentional double precision floating point vector used in Open FX video effects.
OFXDouble2DKeyframe Class Represents a keyframe of an Open FX paramter with a OFXDouble2D value.
OFXDouble2DParameter Class Represents a two dimentional double precision floating point parameter for an Open FX video effect.
OFXDouble3D Class Represents a three dimentional double precision floating point vector used in Open FX video effects.
OFXDouble3DKeyframe Class Represents a keyframe of an Open FX paramter with a OFXDouble3D value.
OFXDouble3DParameter Class Represents a three dimentional double precision floating point parameter for an Open FX video effect.
OFXDoubleKeyframe Class Represents a keyframe of an Open FX paramter with a Double value.
OFXDoubleParameter Class Represents a double precision floating point parameter for an Open FX video effect.
OFXEffect Class Represents an Open FX video effect instance.
OFXInteger2D Class Represents a two dimentional integer vector used in Open FX video effects.
OFXInteger2DKeyframe Class Represents a keyframe of an Open FX paramter with a OFXInteger2D value.
OFXInteger2DParameter Class Represents a two dimentional integer parameter for an Open FX video effect.
OFXInteger3D Class Represents a three dimentional integer vector used in Open FX video effects.
OFXInteger3DKeyframe Class Represents a keyframe of an Open FX paramter with a OFXInteger3D value.
OFXInteger3DParameter Class Represents a three dimentional integer parameter for an Open FX video effect.
OFXIntegerKeyframe Class Represents a keyframe of an Open FX paramter with a Integer value.
OFXIntegerParameter Class Represents an integer parameter for an Open FX video effect.
OFXKeyframe Class Represents a keyframe of an Open FX parameter.
OFXKeyframe Class Represents a keyframe of an Open FX paramter with a given type of value.
OFXKeyframes Class Collection of keyframes of an Open FX paramter.
OFXParameter Class Represents an Open FX video plug-in parameter.
OFXParameter Class Generic base class for Open FX parameters that have values.
OFXParameters Class Collection of paramters from an Open FX video plug-in.
OFXPlugIn Class Represents an Open FX video plug-in.
OFXRangeParameter Class Base class for Open FX parameters that have minimum and maximum allowable values.
OFXRGBAKeyframe Class Represents a keyframe of an Open FX paramter with a OFXColor value.
OFXRGBAParameter Class Represents a RGBA color parameter for an Open FX video effect.
OFXRGBKeyframe Class Represents a keyframe of an Open FX paramter with a OFXColor (no alpha) value.
OFXRGBParameter Class Represents a RGB color parameter for an Open FX video effect.
OFXStringKeyframe Class Represents a keyframe of an Open FX paramter with a String value.
OFXStringParameter Class Represents a string parameter for an Open FX video effect.
PanType Enumeration Enumeration of audio pan settings.
PixelFormat Enumeration Enumeration of video pixel formats.
PlugInNode Class Represents a node in the hierarchy of plug-in effects, transitions, and generators.
PreviewVideoProperties Class Represents a project's preview video properties.
ProgressEventArgs Class Represents the arguments passed to a progress worker event.
ProgressEventHandler Delegate Represents a method that handles a progress worker event.
ProgressWorker Class Represents an object that performs work on Vegas' asynchronous task manager.
Project Class Represents the currently opened project.
ProjectAudioProperties Class Represents a project's audio properties.
ProjectChangeFlag Enumeration Enumeration of project change flags
ProjectOpeningEventArgs Class Arguments provided to ProjectOpening event handlers.
ProjectOpeningEventHandler Delegate Represents the method that handles a ProjectOpening event.
ProjectVideoProperties Class Represents a project's video properties.
Region Class Represents a region marker on the project time line.
RegionList Class List of Region objects.
RenderArgs Class Arguments for a render operation
Renderer Class Represents a render plug-in.
Renderers Class Collection of render plug-ins.
RenderStatus Enumeration Enumeration of return values for render commands.
RenderStatusEventArgs Class Arguments provided to RenderFinished and RenderProgress event handlers.
RenderTemplate Class Represents a render template.
RenderTemplates Class Collection of templates for a render plug-in.
RulerFormat Enumeration Enumeration of ruler formats.
RulerProperties Class Represents a project's ruler properties.
ScriptArg Class Script argument name/value pair.
ScriptArgs Class Represents a list of script arguments.
ScriptEngineType Enumeration Enumeration of script engine types supported by Vegas
Stereo3DInputMode Enumeration Enumeration of stereoscopic 3D input modes.
Stereo3DOutputMode Enumeration Enumeration of stereoscopic 3D output modes.
Subclip Class Represents a subclip of a media file.
SummaryProperties Class Represents a project's summary properties.
Take Class Represents a take for an event.
Takes Class Collection of takes associated with an event. It's very important to note that removing a take from this list invalidates all Take instances after the removed one because the take index values are all modified. So, removing should be done from back to front.
Timecode Class Represents a time duration or position in Vegas. The constructors all apply to the active project. We recommend using ProjectTimecode instead to be explicit about which project's framerate your timecodes are evaluated against.
Track Class Represents an audio or video track.
TrackEvent Class Represents a track event.
TrackEventGroup Class Represents a group of track events.
TrackEventGroups Class Collection of track event groups.
TrackEvents Class Collection of track events.
TrackGlowKeyframe Class Represents glow effect track motion keyframes.
TrackGlowKeyframeList Class Represents a list of glow effect track motion keyframes.
TrackGroup Class Represents a group of tracks.
TrackGroups Class Collection of track groups.
TrackMotion Class Provides access to video track motion data.
TrackMotionKeyframe Class Represents positional track motion keyframes.
TrackMotionKeyframeList Class Represents a list of positional track motion keyframes.
TrackMotionScaleFactors Class Represents the scale factors used when accessing the stored track motion keyframe data.
Tracks Class Collection of tracks in a project.
TrackShadowKeyframe Class Represents shadow effect track motion keyframes.
TrackShadowKeyframeList Class Represents a list of shadow effect track motion keyframes.
TransportControl Class Represents transport controls in Vegas.
Vegas Class Represents the Vegas application. You can get access to this singleton object via DomainManager.VegasDomainManager.GetVegas()
VideoAlphaType Enumeration Enumeration of video alpha modes.
VideoBusTrack Class Represents a video bus track.
VideoColor Class Represents a color used in various video properties
VideoDeinterlaceMethod Enumeration Enumeration of video deinterlace methods.
VideoEvent Class Represents an video event.
VideoFieldOrder Enumeration Enumeration of video field orderings.
VideoKeyframeType Enumeration Enumeration of video key frame interpolation types.
VideoMotion Class Represents the motion of a video event.
VideoMotionBounds Class Represents a 4 sided bounds polygon used in video motion key frames.
VideoMotionKeyframe Class Represents a key frame for video event motion parameters.
VideoMotionKeyframes Class Collection of video motion key frames for a video event.
VideoMotionVertex Class Represents a vertex used in video motion key frames.
VideoOutputRotation Enumeration Enumeration of video output rotation settings.
VideoPreviewSize Enumeration Enumeration of video preview render size settings.
VideoProperties Class Base class for objects that represent video properties.
VideoRenderQuality Enumeration Enumeration of video render quality modes.
VideoResampleMode Enumeration Enumeration of video resampling modes.
VideoStream Class Represents a video stream.
VideoTrack Class Represents a video track.
AppChangeFlag Enumeration

Enumeration of application change flags

Syntax:
enum AppChangeFlag
AudioBusMode Enumeration

Enumeration of audio bus modes.

Syntax:
enum AudioBusMode
Fields: Summary:
AudioBusMode.Stereo Stereo (2 channels)
AudioBusMode.Surround Surround (5.1)
AudioBusTrack Class

Represents an audio bus track.

Syntax:
class AudioBusTrack : BusTrack
Constructors: Summary:
AudioBusTrack
(
Project project
)
Create a new audio bus track.
Parameters:
project: Project.ActiveProject or a specific project
AudioBusTrack() Obsolete: use AudioBusTrack(Project) instead
Public Properties: Summary:
MediaType MediaType Get the media type of the bus track.
Int32 Index Get the list index of this bus track.
String Name Get the name of the audio bus track.
String Description Get or set the description of the audio bus track.
Boolean Solo Get or set whether of not the bus track is soloed.
Boolean Mute Get or set whether of not the bus track is muted.
PanType PanType Get or set the audio bus track pan type setting.
Boolean MonoRenderEnabled Get or set whether the mono downmix of this audio bus is included in multichannel renders.
Boolean StereoRenderEnabled Get or set whether the stereo mix of this audio bus is included in multichannel renders.
Boolean SurroundRenderEnabled Get or set whether the 5.1 surround mix of this audio bus is included in multichannel renders (5.1 master bus only).
Int32 MonoRenderOrder Get or set the order in which the mono downmix of this audio bus is included in multichannel renders.
Int32 StereoRenderOrder Get or set the order in which the stereo mix of this audio bus is included in multichannel renders.
Int32 SurroundRenderOrder Get or set the order in which the 5.1 surround mix of this audio bus is included in multichannel renders.
Public Methods: Summary:
override Boolean Equals
(
Object obj
)
Determines whether the specified object is equal to the current AudioBusTrack.
Parameters:
obj: Object to compare with the current AudioBusTrack.
override Int32 GetHashCode() Serves as a hash function for AudioBusTrack objects, suitable for use in hashing algorithms and data structures like a hash table.
override Boolean IsAudio() Indicates whether the media type of the bus track is audio.
override Boolean IsVideo() Indicates whether the bus track is the master video bus.
override Boolean IsMaster() Indicates whether the audio bus track is the master bus.
Public Operators: Summary:
static Boolean operator ==
(
AudioBusTrack a,
AudioBusTrack b
)
Determines whether the specified AudioBusTrack objects are equal.
Parameters:
a: left hand side of operator
b: right hand side of operator
static Boolean operator !=
(
AudioBusTrack a,
AudioBusTrack b
)
Determines whether the specified AudioBusTrack objects are not equal.
Parameters:
a: left hand side of operator
b: right hand side of operator
AudioCDProperties Class

Represents a project's audio CD properties.

Syntax:
class AudioCDProperties
Public Properties: Summary:
String UPC Get or set the UPC code.
UInt32 FirstTrack Get or set the first track index.
AudioChannelFlags Enumeration

Enumeration of audio channel flags (speaker positions).

Syntax:
enum AudioChannelFlags
Fields: Summary:
AudioChannelFlags.SpeakerFrontLeft left front speaker (also used to indicate mono)
AudioChannelFlags.SpeakerFrontRight right front speaker
AudioChannelFlags.SpeakerFrontCenter center front speaker
AudioChannelFlags.SpeakerLowFrequency low frequecy speaker (subwoofer)
AudioChannelFlags.SpeakerBackLeft left back speaker
AudioChannelFlags.SpeakerBackRight right back speaker
AudioChannelFlags.SpeakerFrontLeftOfCenter center left front speaker
AudioChannelFlags.SpeakerFrontRightOfCenter center right front speaker
AudioChannelFlags.SpeakerBackCenter back-center speaker
AudioChannelFlags.SpeakerSideLeft left side speaker
AudioChannelFlags.SpeakerSideRight right side speaker
AudioChannelFlags.SpeakerTopCenter center top speaker
AudioChannelFlags.SpeakerTopFrontLeft left front top speaker
AudioChannelFlags.SpeakerTopFrontCenter center front top speaker
AudioChannelFlags.SpeakerTopFrontRight right front top speaker
AudioChannelFlags.SpeakerTopBackLeft left back top speaker
AudioChannelFlags.SpeakerTopBackCenter center back top speaker
AudioChannelFlags.SpeakerTopBackRight right back top speaker
AudioEvent Class

Represents an audio event.

Syntax:
class AudioEvent : TrackEvent
Constructors: Summary:
AudioEvent
(
Project project,
Timecode start,
Timecode length,
String name
)
Creates a new audio event.
Parameters:
project: Project.ActiveProject or a specific project
start: start time of event, or null
length: length of event, or null
name: name of event, or null
AudioEvent
(
Timecode start,
Timecode length,
String name
)
Obsolete: Use AudioEvent(project, ...) instead
Parameters:
start:
length:
name:
AudioEvent
(
Timecode start,
Timecode length
)
Obsolete: Use AudioEvent(project, ...) instead
Parameters:
start:
length:
AudioEvent
(
Timecode start
)
Obsolete: Use AudioEvent(project, ...) instead
Parameters:
start:
AudioEvent() Obsolete: Use AudioEvent(project, ...) instead
Public Properties: Summary:
MediaType MediaType Get the event's media type.
Effects Effects Get the audio event's collection of effects.
Boolean Normalize Get or set whether to normalize audio data.
Double NormalizeGain Get or set the gain used to normalize the audio event.
Boolean InvertPhase Get or set whether to invert the phase of audio data.
ChannelRemapping Channels Get or set how audio channels are remapped.
Public Methods: Summary:
override Boolean IsAudio() Indicates if the event's media type is audio.
override Boolean IsVideo() Indicates if the event's media type is video.
void SetNormalize
(
Boolean normalize,
Double gain
)
Set normalization values for the audio event.
Parameters:
normalize: A value that indicates whether audio is normalized.
gain: The gain used to normalize the audio.
Double RecalculateNorm() Recalculates the normalization gain of the audio event based on its peak values.
Return Value:
The new gain value for audio normalization.
AudioFXBusTrack Class

Represents an assignable audio effect bus track.

Syntax:
class AudioFXBusTrack : AudioBusTrack
Constructors: Summary:
AudioFXBusTrack
(
Project project,
PlugInNode plugin
)
Create a new assignable audio effect bus track.
Parameters:
project: Project.ActiveProject or a specific project
plugin: audio effect plugin associated with the bus track
AudioFXBusTrack
(
PlugInNode plugin
)
Obsolete: Use AudioFXBusTrack(Project, PlugInNode) instead
Parameters:
plugin:
Public Properties: Summary:
Effects Effects Get the assignable audio effect bus track's collection of effects.
AudioProperties Class

Base class for objects that represent audio properties.

Syntax:
class AudioProperties
Public Properties: Summary:
UInt32 SampleRate Get or set the sample rate.
UInt32 BitDepth Get or set the bit depth.
AudioResampleQuality Enumeration

Enumeration of audio resample quality modes.

Syntax:
enum AudioResampleQuality
Fields: Summary:
AudioResampleQuality.Preview preview (lower) quality
AudioResampleQuality.Good good quality
AudioResampleQuality.Best best quality
AudioStream Class

Represents an audio stream.

Syntax:
class AudioStream : MediaStream
Public Properties: Summary:
MediaType MediaType Get the audio stream's media type (MediaType.Audio).
UInt32 SampleRate Get the audio stream's sample rate.
UInt32 BitDepth Get the audio stream's bit depth.
Int32 Channels Get the audio stream's number of channels.
String Format Get the audio stream's encoding format.
Int64 AverageDataRate Get the audio stream's average data rate.
AudioTrack Class

Represents an audio track.

Syntax:
class AudioTrack : Track
Constructors: Summary:
AudioTrack
(
Project project,
Int32 index,
String name
)
Creates a new audio track.
Parameters:
project: Project.ActiveProject or a specific project
index: display index of new track, or -1 for automatic
name: name of new track, or null
AudioTrack
(
Int32 index,
String name
)
Obsolete: Use AudioTrack(project,...) instead
Parameters:
index:
name:
AudioTrack
(
Int32 index
)
Obsolete: Use AudioTrack(project,...) instead
Parameters:
index:
AudioTrack() Obsolete: Use AudioTrack(project,...) instead
Public Properties: Summary:
MediaType MediaType Get the track's media type.
Boolean InvertPhase Get or set whether the track's audio is phase inverted.
Single Volume Get or set the volume gain value for the audio track.
Single PanX Get or set the track's left/right pan trim value.
Single PanY Get or set the track's front/back pan trim level (surround only).
Single PanCenter Get or set the track's center pan trim level (surround only).
Boolean ArmRecord Get whether the track is armed for recording.
BusTrack BusTrack Get or set the audio bus to which the track is routed.
Public Methods: Summary:
override Boolean IsAudio() Indicates if the track's media type is audio.
override Boolean IsVideo() Indicates if the track's media type is video.
AudioEvent AddAudioEvent() Add a new audio event to the track.
AudioEvent AddAudioEvent
(
Timecode start,
Timecode length
)
Add a new audio event to the track.
Parameters:
start: start time of the new event
length: length of the new event
BackgroundProjectActiveState Class

This class is used just with the Project.CreateBackgroundProjectActiveState() method. Call that method in a using() block to make the specified project temporarily active in Vegas, then when this object is disposed at the end of the block the previously active project will be restored. The main reason why you would use this is to gain access to the BusTracks object, which is only available for the active project. It is legal to nest this call or invoke it on a project that is otherwise already active -- in that case, it just does nothing.

Syntax:
class BackgroundProjectActiveState : IDisposable
BaseList Class

Base class for most collections in the Vegas object model.

Syntax:
abstract class BaseList<T> : IList, ICollection, IEnumerable, IList<T>, ICollection<T>, IEnumerable<T>
Public Properties: Summary:
Boolean IsFixedSize Indicates whether the collection has a fixed size.
Boolean IsReadOnly Indicates whether the collection is read only.
Int32 Count Get the number of items in the collection.
Boolean IsSynchronized Indicates whether access to the collection is thread safe.
Object SyncRoot Get the object that can be used to to synchronize access to the collection.
T Item
(
Int32 index
)
Get the nth item in the collection.
Parameters:
index: zero-based index of item
Public Methods: Summary:
void CopyTo
(
Array array,
Int32 index
)
Copies the items in the collection to an array.
Parameters:
array: destination array
index: start index in the array
IEnumerator<T> GetEnumerator() Get a new enumerator for the collection.
Int32 Add
(
Object item
)
Add an item to the collection.
Parameters:
item: object to add
void Add
(
T item
)
Add an item to the collection.
Parameters:
item: object to add
virtual void Clear() Removes all items from the collection.
Boolean Contains
(
Object item
)
Indicates whether the given object is a member of the collection.
Parameters:
item: object whose membership is determined
Int32 IndexOf
(
Object item
)
Get the index of the given object in the collection.
Parameters:
item: object whose index is determined
Int32 IndexOf
(
T item
)
Get the index of the given object in the collection.
Parameters:
item: object whose index is determined
void Insert
(
Int32 index,
Object item
)
Inserts the object at the given index.
Parameters:
index: zero-based index
item: object to insert
virtual void Insert
(
Int32 index,
T item
)
Inserts the object at the given index.
Parameters:
index: zero-based index of inserted item
item: item to insert
Boolean Remove
(
T item
)
Removes the given object from the collection.
Parameters:
item: object to be removed
Return Value:
True if the item is removed, false otherwise.
void Remove
(
Object item
)
Removes the given object from the collection.
Parameters:
item: object to be removed
void RemoveAt
(
Int32 index
)
Removes the object at the given index.
Parameters:
index: index of item to be removed
BaseTrackMotionKeyframe Class

Base class for all track motion keyframes.

Syntax:
abstract class BaseTrackMotionKeyframe
Public Properties: Summary:
Int32 Index Get the list index of the track motion keyframe.
Timecode Position Get or set the timeline position of the track motion keyframe.
Double Smoothness Get or set the interpolation smoothness of the track motion keyframe.
VideoKeyframeType Type Get or set the interpolation type of the track motion keyframe.
Boolean Selected Get or set a value that indicates whether the track motion keyframe is selected.
Double PositionX Get or set the x coordinate of the video position.
Double PositionY Get or set the y coordinate of the video position.
Double Width Get or set the width of the video.
Double Height Get or set the height of the video.
Double RotationZ Get or set rotation of the video around the z axis.
Double RotationOffsetX Get or set the x offset of the axis of rotation.
Double RotationOffsetY Get or set the y offset of the axis of rotation.
Double OrientationZ Get or set the orientation of the video around the z axis.
Public Methods: Summary:
Boolean IsValid() Indicates whether the track motion keyframe object is valid.
override Int32 GetHashCode() Serves as a hash function suitable for use in hashing algorithms and data structures like a hash table.
override Boolean Equals
(
Object that
)
Determines whether the specified object is equal to the current object.
Parameters:
that: Object to compare with the current object.
BaseTrackMotionKeyframeList Class

Base class for lists of track motion keyframes.

Syntax:
class BaseTrackMotionKeyframeList<T> : BaseList<T>
Public Methods: Summary:
override void Clear() Removes all but the first item from the collection.
BeatValue Enumeration

Enumeration of beat values.

Syntax:
enum BeatValue
Fields: Summary:
BeatValue.Whole Whole Note
BeatValue.Half Half Note
BeatValue.Quarter Quarter Note
BeatValue.Eighth Eighth Note
BeatValue.Sixteenth 16th Note
BeatValue.ThirtySecond 32nd Note
BusTrack Class

Represents a bus track.

Syntax:
abstract class BusTrack
Public Properties: Summary:
MediaType MediaType Get the media type of the bus track.
Int32 Index Get the list index of this bus track.
String Name Get the name of the bus track.
String Description Get or set the description of the bus track.
Envelopes Envelopes Get the bus track's collection of envelopes.
Effects Effects Get the bus track's collection of effects.
Public Methods: Summary:
override Boolean Equals
(
Object that
)
Determines whether the specified object is equal to the current BusTrack.
Parameters:
that: Object to compare with the current BusTrack.
override Int32 GetHashCode() Serves as a hash function for BusTrack objects, suitable for use in hashing algorithms and data structures like a hash table.
Boolean IsValid() Indicates whether the bus track has been added.
abstract Boolean IsAudio() Indicates whether the media type of the bus track is audio.
abstract Boolean IsVideo() Indicates whether the bus track is the master video bus.
abstract Boolean IsMaster() Indicates whether the bus track is a master bus.
Public Operators: Summary:
static Boolean operator ==
(
BusTrack a,
BusTrack b
)
Determines whether the specified objects are equal.
Parameters:
a: left hand side of operator
b: right hand side of operator
static Boolean operator !=
(
BusTrack a,
BusTrack b
)
Determines whether the specified objects are not equal.
Parameters:
a: left hand side of operator
b: right hand side of operator
BusTracks Class

Collection of bus tracks.

Syntax:
class BusTracks : BaseList<BusTrack>
Public Methods: Summary:
override void Clear() Removes all bus tracks from the collection except the master audio and video bus.
CaptionDoubleClickEventArgs Class

Event arguments passed when the user double-clicks the caption of a dockable control.

Syntax:
class CaptionDoubleClickEventArgs : EventArgs
Public Properties: Summary:
Boolean NoSizeChange Get a value that indicates whether the window should be resized.
Boolean GenericSizeChange Get or set a value that indicates whether the window should be resized using Vegas' default algorithm.
Size ControlSize Get or set the new size of the window.
CaptionDoubleClickEventHandler Delegate

Represents the method that handles a CaptionDoubleClick event.

Syntax:
delegate void CaptionDoubleClickEventHandler(Object sender,
CaptionDoubleClickEventArgs args)
CDMarker Class

Represents a CD track index marker.

Syntax:
class CDMarker : Marker
Constructors: Summary:
CDMarker
(
Timecode position
)
Create a new CD track index marker.
Parameters:
position: position of new CD marker
CDMarker
(
Timecode position,
String label
)
Create a new CD track index marker.
Parameters:
position: position of new CD marker
label: label of new CD marker
Public Methods: Summary:
override Boolean Equals
(
Object obj
)
Determines whether the specified object is equal to this CDMarker.
Parameters:
obj: Object to compare with this CDMarker.
override Int32 GetHashCode() Serves as a hash function for CDMarker objects, suitable for use in hashing algorithms and data structures like a hash table.
Public Operators: Summary:
static Boolean operator ==
(
CDMarker a,
CDMarker b
)
Determines whether the specified CDMarker objects are equal.
Parameters:
a: left hand side of operator
b: right hand side of operator
static Boolean operator !=
(
CDMarker a,
CDMarker b
)
Determines whether the specified CDMarker objects are not equal.
Parameters:
a: left hand side of operator
b: right hand side of operator
CDMarkerList Class

List of CDMarker objects.

Syntax:
class CDMarkerList : BaseMarkerList<CDMarker>
CDRegion Class

Represents a CD track region marker.

Syntax:
class CDRegion : Region
Constructors: Summary:
CDRegion
(
Timecode position,
Timecode length
)
Create a new CD track region marker.
Parameters:
position: position of new CD region
length: length of new CD region
CDRegion
(
Timecode position,
Timecode length,
String label
)
Create a new CD track region marker.
Parameters:
position: position of new CD region
length: length of new CD region
label: label of new CD region
Public Methods: Summary:
override Boolean Equals
(
Object obj
)
Determines whether the specified object is equal to this CDRegion.
Parameters:
obj: Object to compare with this CDRegion.
override Int32 GetHashCode() Serves as a hash function for CDRegion objects, suitable for use in hashing algorithms and data structures like a hash table.
Public Operators: Summary:
static Boolean operator ==
(
CDRegion a,
CDRegion b
)
Determines whether the specified CDRegion objects are equal.
Parameters:
a: left hand side of operator
b: right hand side of operator
static Boolean operator !=
(
CDRegion a,
CDRegion b
)
Determines whether the specified CDRegion objects are not equal.
Parameters:
a: left hand side of operator
b: right hand side of operator
CDRegionList Class

List of CDRegion objects.

Syntax:
class CDRegionList : BaseMarkerList<CDRegion>
ChannelRemapping Enumeration

Enumeration of audio channel remapping modes.

Syntax:
enum ChannelRemapping
Fields: Summary:
ChannelRemapping.None no channel remapping
ChannelRemapping.DisableLeft disable left channel
ChannelRemapping.DisableRight disable right channel
ChannelRemapping.MuteLeft mute left channel
ChannelRemapping.MuteRight mute right channel
ChannelRemapping.Mono mono
ChannelRemapping.Swap swap channels
CommandCategory Enumeration

Custom command categories

Syntax:
enum CommandCategory
Fields: Summary:
CommandCategory.Edit Category for editing commands.
CommandCategory.View Category for commands that show non-modal user interfaces.
CommandCategory.Tools Category for commands that provide miscellaneous tools.
CommandMarker Class

Represents a command marker.

Syntax:
class CommandMarker : Marker
Constructors: Summary:
CommandMarker
(
Timecode position
)
Create a new command marker.
Parameters:
position: position of new command marker
CommandMarker
(
Timecode position,
MarkerCommandType cmd,
String param
)
Create a new command marker.
Parameters:
position: position of new command marker
cmd: type of new command marker
param: parameter of new command marker
CommandMarker
(
Timecode position,
MarkerCommandType cmd,
String param,
String comment
)
Create a new command marker.
Parameters:
position: position of new command marker
cmd: type of new command marker
param: parameter of new command marker
comment: comment of new command marker
Public Properties: Summary:
String Label Get or set the command marker's comment (same as Comment property).
String Comment Get or set the command marker's comment.
MarkerCommandType CommandType Get the command marker's type.
String CommandParameter Get or set the command marker's parameter.
Public Methods: Summary:
override Boolean Equals
(
Object obj
)
Determines whether the specified object is equal to this CommandMarker.
Parameters:
obj: Object to compare with this CommandMarker.
override Int32 GetHashCode() Serves as a hash function for CommandMarker objects, suitable for use in hashing algorithms and data structures like a hash table.
void SetCommand
(
MarkerCommandType cmdType,
String param
)
Get the command marker's type and parameter.
Parameters:
cmdType: type of command
param: command parameter
Public Operators: Summary:
static Boolean operator ==
(
CommandMarker a,
CommandMarker b
)
Determines whether the specified CommandMarker objects are equal.
Parameters:
a: left hand side of operator
b: right hand side of operator
static Boolean operator !=
(
CommandMarker a,
CommandMarker b
)
Determines whether the specified CommandMarker objects are not equal.
Parameters:
a: left hand side of operator
b: right hand side of operator
CommandMarkerList Class

List of CommandMarker objects.

Syntax:
class CommandMarkerList : BaseMarkerList<CommandMarker>
CompositeMode Enumeration

Video track composite modes.

Syntax:
enum CompositeMode
Fields: Summary:
CompositeMode.Invalid Invalid composite mode.
CompositeMode.Custom Use compositing effect.
CompositeMode.SrcAlpha Source alpha composite mode.
CompositeMode.SrcAlpha3D 3D source alpha composite mode.
CompositeMode.Add Add composite mode.
CompositeMode.Subtract Subtract composite mode.
CompositeMode.Multiply Multiply composite mode.
CompositeMode.Cut Cut composite mode.
CompositeMode.Screen Screen composite mode.
CompositeMode.Overlay Overlay composite mode.
CompositeMode.HardLight Hard light composite mode.
CompositeMode.Dodge Dodge composite mode.
CompositeMode.Burn Burn composite mode.
CompositeMode.Darken Darken composite mode.
CompositeMode.Lighten Lighten composite mode.
CompositeMode.Difference Difference composite mode.
CompositeMode.DifferenceSquared Difference squared composite mode.
CurveType Enumeration

Enumeration of envelope curve types.

Syntax:
enum CurveType
Fields: Summary:
CurveType.Invalid invalid envelope curve type
CurveType.Sharp cubic sharp fade
CurveType.Slow logarithmic slow fade
CurveType.None no fade (hold)
CurveType.Linear linear fade
CurveType.Fast logarithmic fast fade
CurveType.Smooth cubic smooth fade
CustomCommand Class

Represents a command that extends or customizes the Vegas application.

Syntax:
class CustomCommand
Constructors: Summary:
CustomCommand
(
CommandCategory category,
String name
)
Creates a new custom command.
Parameters:
category: the command category
name: the unique locale-invariant name of the command
Public Properties: Summary:
CommandCategory Category Get the category of the command.
String Name Get the unique locale-invariant name of the command.
String FullName Get the unique locale-invariant full name of the command.
String DisplayName Get the localized display name of the command.
String FullDisplayName Get the localized full display name of the command.
CustomCommand Parent Get the parent of this command.
UInt32 ID Get the unique identifier assigned to this command.
String MenuItemName Get or set the string displayed in menu items created for this command.
String IconFile Get or set the name of a PNG file that is used as a small icon (16x16) in the tool bar and menu items.
String MenuSelectMessage Get or set the message displayed in Vegas' status bar when the user's mouse hovers over the command's menu item.
Boolean CanAddToKeybindings Get or set a value that indicates whether the command can be included in the customized keyboard settings.
Boolean CanAddToToolbar Get or set a value that indicates whether the command can be added to the tool bar.
Boolean CanAddToMenu Get or set a value that indicates whether the command can be added to a menu.
Boolean Enabled Get or set a value that indicates whether the command is enabled.
Boolean Checked Get or set a value that indicates whether the command's user interface elements appear checked or selected.
Public Methods: Summary:
Boolean HasChildren() Get a value that indicates whether the command contains sub-commands.
Boolean AddChild
(
CustomCommand child
)
Add a sub-command to this command.
Parameters:
child:
ICollection<CustomCommand> GetChildren() Get the collection of this command's sub-commands.
Public Events: Summary:
EventHandler Invoked Occurs when the command is invoked.
EventHandler MenuPopup Occurs just before the command's menu item appears.
CustomDataContainer Class

A container for custom data saved with various objects in a vegas project.

Syntax:
class CustomDataContainer
Public Methods: Summary:
Boolean GetStream
(
Guid dataID,
Stream dataStream
)
Retrieves custom data, writing it to a stream.
Parameters:
dataID: the data identifier
dataStream: the stream into which the custom data is written
Return Value:
True if data was found, false otherwise.
void SetStream
(
Guid dataID,
Stream dataStream,
Int32 cbData
)
Stores custom data, reading it from a stream.
Parameters:
dataID: the data identifier
dataStream: the stream from which the custom data is read
cbData: the number of bytes to read from the stream
Byte[] GetBytes
(
Guid dataID
)
Retrieves custom data, returning it as an array of bytes.
Parameters:
dataID: the data identifier
Return Value:
An array of bytes or null if data is not found.
void SetBytes
(
Guid dataID,
Byte[] data
)
Stores custom data, reading it from an array of bytes.
Parameters:
dataID: the data identifier
data: the array of bytes to store
void SetBytes
(
Guid dataID,
Byte[] data,
Int32 index,
Int32 count
)
Stores custom data, reading it from a subset of an array of bytes.
Parameters:
dataID: the data identifier
data: the array of bytes to store
index: the zero-based index of the first byte in the array to store
count: the number of bytes from the array to store
Object GetObject
(
Guid dataID
)
Retrieves custom data, returning it as a deserialized object.
Parameters:
dataID: the data identifier
Return Value:
A deserialized object or null if data is not found.
void SetObject
(
Guid dataID,
Object obj
)
Stores custom data using a serializable object.
Parameters:
dataID: the data identifier
obj: the serializable object to store
void DeleteData
(
Guid dataID
)
Deletes any custom data associated with the given identifier.
Parameters:
dataID: the data identifier
DockableControl Class

Represents a user control that can be docked in the Vegas user interface.

Syntax:
class DockableControl : UserControl, IDockView
Constructors: Summary:
DockableControl
(
String instanceName
)
Create a new docakable control with the specified instance name.
Parameters:
instanceName: The name used to identify this dockable control.
Protected Fields: Summary:
Vegas myVegas The Vegas application object.
String myInstanceName The unique name associated with this dockable control.
Public Properties: Summary:
String InstanceName Get the unique name that identifies this instance of a dockable control.
String DisplayName Get or set the control's display name.
IDockWindow DockWindow Get or set the dock window interface that helps manage this dockable control.
DockWindowStyle DefaultDockWindowStyle Get the default style of dock window that should contain this control.
Size DefaultFloatingSize Get or set the default size of the control when contained by a floating window.
Point DefaultFloatingLocation Get or set the default location of the control when contained by a floating window.
Boolean HasModalDockWindow Get or set a value that indicates whether the control's window is modal.
Boolean PersistDockWindowState Get or set a value that indicates whether the control's window state should be persisted.
CustomCommand AutoLoadCommand Get or set the custom command that loads this control.
IWin32Window ParentWindow Get the window that contains this control.
IWin32Window OwnerWindow Get the window that owns this control (typically Vegas' main window).
Public Methods: Summary:
void SaveFocus() Call this method before showing a modal dialog so that focus will be restored to the dockable control after the dialog is dismissed.
void SaveFocus
(
Control focusControl
)
Call this method before showing a modal dialog so that focus will be restored to the provided Control after the dialog is dismissed.
Parameters:
focusControl: the Control that should receive focus
void SetFocusToMainTrackView() Sends input focus to Vegas' main track view.
void Close() Close the dock window that contains this control.
void ResumeCloseAppWindow
(
CancelEventArgs args
)
Resumes application shutdown precedures after an AppWindowClosing event was canceled.
Parameters:
args: The arguments passed to the AppWindowClosing event that was canceled.
Protected Methods: Summary:
override void Dispose
(
Boolean disposing
)
Release resources related to this dockable control.
Parameters:
disposing:
void OnParentWindowChanged
(
EventArgs args
)
Raises the ParentWindowChanged event.
Parameters:
args: An EventArgs that contains the event data.
virtual void OnCaptionDoubleClick
(
CaptionDoubleClickEventArgs args
)
Raises the CaptionDoubleClick event.
Parameters:
args: A CaptionDoubleClickEventArgs that contains the event data.
virtual void OnWindowMove
(
EventArgs args
)
Raises the WindowMove event.
Parameters:
args: An EventArgs that contains the event data.
virtual void OnClosing
(
CancelEventArgs args
)
Raises the Closing event.
Parameters:
args: A CancelEventArgs that contains the event data.
virtual void OnClosed
(
EventArgs args
)
Raises the Closed event.
Parameters:
args: An EventArgs that contains the event data.
virtual void OnAppWindowClosing
(
CancelEventArgs args
)
Raises the AppWindowClosing event.
Parameters:
args: A CancelEventArgs that contains the event data.
virtual void OnAppWindowClosed
(
EventArgs args
)
Raises the AppWindowClosed event.
Parameters:
args: An EventArgs that contains the event data.
virtual void OnLoaded
(
EventArgs args
)
Raises the Loaded event.
Parameters:
args: An EventArgs that contains the event data.
Public Events: Summary:
EventHandler ParentWindowChanged Occurs when the dockable control is docked or undocked and the ParentWindow property changes.
CaptionDoubleClickEventHandler CaptionDoubleClick Occurs when the user double clicks the caption of the control's dock window.
EventHandler WindowMove Occurs when the user moves control's dock window.
CancelEventHandler Closing Occurs when the user attempts to close the dock window that contains this control.
EventHandler Closed Occurs when the dock window that contains this control is closed.
CancelEventHandler AppWindowClosing Occurs when the user attempts to close Vegas' main window.
EventHandler AppWindowClosed Occurs when Vegas' main window is closed.
EventHandler Loaded Occurs after the dockable control has been loaded.
DockWindowStyle Enumeration

Dock window styles

Syntax:
enum DockWindowStyle
Fields: Summary:
DockWindowStyle.Detached Window is detached and not able to be docked.
DockWindowStyle.Floating Window is detached and able to be docked.
DockWindowStyle.Docked Window is docked.
Effect Class

Represents an instance of an effect, transition, or generator.

Syntax:
class Effect
Constructors: Summary:
Effect
(
PlugInNode plugIn
)
Create a new effect.
Parameters:
plugIn: plug-in to use for the effect
Public Properties: Summary:
Int32 Index Get the list index of this Effect.
PlugInNode PlugIn Get the effect's plug-in.
String Description Get the effect's plug-in description.
Boolean Bypass Get or set whether the effect is bypassed.
Boolean ApplyBeforePanCrop Get or set whether the effect is applied prior to pan/crop operations (video events only).
Keyframes Keyframes Get the collection of key frames for the effect.
EffectPresets Presets Get the collection of effect presets.
String Preset Set the preset for the first keyframe by name.
EffectPreset CurrentPreset Get or set the effect preset for the first key frame.
Boolean IsOFX Indicates whether the effect is an Open FX video effect.
OFXEffect OFXEffect Get the Open FX video effect if available.
Public Methods: Summary:
Boolean IsValid() Indicates whether the effect has been added.
override Boolean Equals
(
Object that
)
Determines whether the specified object is equal to the current object.
Parameters:
that: Object to compare with the current object.
override Int32 GetHashCode() Serves as a hash function suitable for use in hashing algorithms and data structures like a hash table.
Public Operators: Summary:
static Boolean operator ==
(
Effect a,
Effect b
)
Determines whether the specified objects are equal.
Parameters:
a: left hand side of operator
b: right hand side of operator
static Boolean operator !=
(
Effect a,
Effect b
)
Determines whether the specified objects are not equal.
Parameters:
a: left hand side of operator
b: right hand side of operator
EffectPreset Class

Represents a set of predefined parameter values for an effect key frame.

Syntax:
class EffectPreset
Public Properties: Summary:
String Name Get the name of the preset.
Int32 Index Get the list index of the preset.
Public Methods: Summary:
override String ToString() Describe the preset as a string.
EffectPresets Class

Collection of parameter presets for an effect.

Syntax:
class EffectPresets : BaseList<EffectPreset>
Public Properties: Summary:
Boolean IsFixedSize Indicates whether the collection has a fixed size.
Boolean IsReadOnly Indicates whether the collection is read only.
Effects Class

Collection of audio or video effects.

Syntax:
class Effects : BaseList<Effect>
Public Methods: Summary:
override void Insert
(
Int32 index,
Effect item
)
Inserts the Effect at the given index.
Parameters:
index: zero-based index of inserted item
item: Effect to insert
override void Clear() Removes all items from the collection.
Effect AddEffect
(
PlugInNode plugIn
)
Add a new Effect to the collection using the given plug-in.
Parameters:
plugIn: plug-in to use for the effect
Envelope Class

Represents an envelope.

Syntax:
class Envelope
Constructors: Summary:
Envelope
(
EnvelopeType type
)
Create a new envelope.
Parameters:
type: type of envelope
Public Properties: Summary:
EnvelopeType Type Get the type of envelope.
String Name Get the name of the envelope.
Int32 Index Get the index of the envelope.
Double Min Get the minimum value for points in the envelope.
Double Max Get the maximum value for points in the envelope.
Double Neutral Get the neutral value for points in the envelope.
EnvelopePoints Points Get the envelope's collection of points.
Public Methods: Summary:
override Int32 GetHashCode() Serves as a hash function for Envelope objects, suitable for use in hashing algorithms and data structures like a hash table.
override Boolean Equals
(
Object that
)
Determines whether the specified object is equal to this Envelope.
Parameters:
that: Object to compare with this Envelope.
Boolean IsValid() Indicates whether the envelope has been added.
Double ValueAt
(
Timecode position
)
Get the Y value of the envelope at the given position.
Parameters:
position: X position for value returned
Public Operators: Summary:
static Boolean operator ==
(
Envelope a,
Envelope b
)
Determines whether the specified Envelope objects are equal.
Parameters:
a: left hand side of operator
b: right hand side of operator
static Boolean operator !=
(
Envelope a,
Envelope b
)
Determines whether the specified Envelope objects are not equal.
Parameters:
a: left hand side of operator
b: right hand side of operator
EnvelopePoint Class

Represents an envelope point.

Syntax:
class EnvelopePoint
Constructors: Summary:
EnvelopePoint
(
Timecode x,
Double y,
CurveType curveType
)
Create a new envelope point.
Parameters:
x: position of envelope point
y: value of envelope point
curveType: type of curve
EnvelopePoint
(
Timecode x,
Double y
)
Create a new envelope point.
Parameters:
x: position of envelope point
y: value of envelope point
Public Properties: Summary:
Int32 Index Get the list index of the envelope point.
Timecode X Get or set the time-wise position of the envelope point.
Double Y Get or set the value of the envelope point.
CurveType Curve Get or set the type of curve following the envelope point.
Timecode MaxTransitionProgress Get the maximum X value for a transition progress envelope point. Warning: this only works for the active project.
Public Methods: Summary:
override Boolean Equals
(
Object obj
)
Determines whether the specified object is equal to this EnvelopePoint.
Parameters:
obj: Object to compare with this EnvelopePoint.
override Int32 GetHashCode() Serves as a hash function for EnvelopePoint objects, suitable for use in hashing algorithms and data structures like a hash table.
Boolean IsValid() Indicates whether the envelope point has been added.
Public Operators: Summary:
static Boolean operator ==
(
EnvelopePoint a,
EnvelopePoint b
)
Determines whether the specified EnvelopePoint objects are equal.
Parameters:
a: left hand side of operator
b: right hand side of operator
static Boolean operator !=
(
EnvelopePoint a,
EnvelopePoint b
)
Determines whether the specified EnvelopePoint objects are not equal.
Parameters:
a: left hand side of operator
b: right hand side of operator
EnvelopePoints Class

Collection of points in an envelope.

Syntax:
class EnvelopePoints : BaseList<EnvelopePoint>
Public Methods: Summary:
override void Clear() Removes all but the first item from the collection.
EnvelopePoint GetPointAtX
(
Timecode x
)
Find the envelope point at a given time.
Parameters:
x: The position of the envelope point.
Return Value:
The envelope point at the specified time or null if not found.
Envelopes Class

Collection of envelopes.

Syntax:
class Envelopes : BaseList<Envelope>
Public Methods: Summary:
Boolean HasEnvelope
(
EnvelopeType type
)
Indicates whether the collection contains an envelope of the given type.
Parameters:
type: envelope type
Envelope FindByType
(
EnvelopeType type
)
Finds the envelope of the given type.
Parameters:
type: envelope type
EnvelopeType Enumeration

Enumeration of envelope types.

Syntax:
enum EnvelopeType
Fields: Summary:
EnvelopeType.Volume audio track volume
EnvelopeType.Pan audio track pan / surround pan x position
EnvelopeType.BusA send audio bus A
EnvelopeType.BusB send audio bus B
EnvelopeType.BusC send audio bus C
EnvelopeType.BusD send audio bus D
EnvelopeType.BusE send audio bus E
EnvelopeType.BusF send audio bus F
EnvelopeType.BusG send audio bus G
EnvelopeType.BusH send audio bus H
EnvelopeType.BusI send audio bus I
EnvelopeType.BusJ send audio bus J
EnvelopeType.BusK send audio bus K
EnvelopeType.BusL send audio bus L
EnvelopeType.BusM send audio bus M
EnvelopeType.BusN send audio bus N
EnvelopeType.BusO send audio bus O
EnvelopeType.BusP send audio bus P
EnvelopeType.BusQ send audio bus Q
EnvelopeType.BusR send audio bus R
EnvelopeType.BusS send audio bus S
EnvelopeType.BusT send audio bus T
EnvelopeType.BusU send audio bus U
EnvelopeType.BusV send audio bus V
EnvelopeType.BusW send audio bus W
EnvelopeType.BusX send audio bus X
EnvelopeType.BusY send audio bus Y
EnvelopeType.BusZ send audio bus Z
EnvelopeType.Composite video track composite level
EnvelopeType.FadeToColor video track fade to color
EnvelopeType.Mute audio track mute
EnvelopeType.MotionBlurLength video bus track motion blur length
EnvelopeType.VideoSupersampling video bus track video super-sampling
EnvelopeType.FX1 send audio FX bus 1
EnvelopeType.FX2 send audio FX bus 2
EnvelopeType.FX3 send audio FX bus 3
EnvelopeType.FX4 send audio FX bus 4
EnvelopeType.FX5 send audio FX bus 5
EnvelopeType.FX6 send audio FX bus 6
EnvelopeType.FX7 send audio FX bus 7
EnvelopeType.FX8 send audio FX bus 8
EnvelopeType.FX9 send audio FX bus 9
EnvelopeType.FX10 send audio FX bus 10
EnvelopeType.FX11 send audio FX bus 11
EnvelopeType.FX12 send audio FX bus 12
EnvelopeType.FX13 send audio FX bus 13
EnvelopeType.FX14 send audio FX bus 14
EnvelopeType.FX15 send audio FX bus 15
EnvelopeType.FX16 send audio FX bus 16
EnvelopeType.FX17 send audio FX bus 17
EnvelopeType.FX18 send audio FX bus 18
EnvelopeType.FX19 send audio FX bus 19
EnvelopeType.FX20 send audio FX bus 20
EnvelopeType.FX21 send audio FX bus 21
EnvelopeType.FX22 send audio FX bus 22
EnvelopeType.FX23 send audio FX bus 23
EnvelopeType.FX24 send audio FX bus 24
EnvelopeType.FX25 send audio FX bus 25
EnvelopeType.FX26 send audio FX bus 26
EnvelopeType.FX27 send audio FX bus 27
EnvelopeType.FX28 send audio FX bus 28
EnvelopeType.FX29 send audio FX bus 29
EnvelopeType.FX30 send audio FX bus 30
EnvelopeType.FX31 send audio FX bus 31
EnvelopeType.FX32 send audio FX bus 32
EnvelopeType.PanY surround pan y position
EnvelopeType.PanSmoothness surround pan smoothness
EnvelopeType.PanCenter surround pan center level
EnvelopeType.TransitionProgress transition progress
EnvelopeType.Fade not used
EnvelopeType.Velocity video event velocity
EnvelopeType.AutomationMin minimum id for audio effect automation
EnvelopeType.AutomationMax maximum id for audio effect automation
Fade Class

Represents the fade (in or out) of an event.

Syntax:
class Fade
Public Properties: Summary:
Timecode Length Get or set the length of the fade.
CurveType Curve Get or set the type of curve of the fade.
CurveType ReciprocalCurve Get or set the type of curve of the inverse fade.
Single Gain Get or set the peak gain of the fade.
Object Transition Get or set the transition effect used in the fade.
Envelopes Envelopes Get the collection of envelopes associated with this Fade object.
Public Methods: Summary:
override Boolean Equals
(
Object that
)
Determines whether the specified object is equal to the current Fade.
Parameters:
that: Object to compare with the current Fade.
override Int32 GetHashCode() Serves as a hash function for Fade objects, suitable for use in hashing algorithms and data structures like a hash table.
Boolean RemoveTransition() Remove any transition effect used in the fade.
Public Operators: Summary:
static Boolean operator ==
(
Fade a,
Fade b
)
Determines whether the specified objects are equal.
Parameters:
a: left hand side of operator
b: right hand side of operator
static Boolean operator !=
(
Fade a,
Fade b
)
Determines whether the specified objects are not equal.
Parameters:
a: left hand side of operator
b: right hand side of operator
ICustomCommandModule Interface

Defines initialization routines for hosting a set of custom commands.

Syntax:
interface ICustomCommandModule
Public Methods: Summary:
abstract void InitializeModule
(
Vegas vegas
)
Initialize the module which hosts a set of custom commands.
Parameters:
vegas: the Vegas application object
abstract ICollection GetCustomCommands() Get the collection of custom command objects hosted by this module.
ImageFileFormat Enumeration

Enumeration of image file formats.

Syntax:
enum ImageFileFormat
Fields: Summary:
ImageFileFormat.PNG PNG format
ImageFileFormat.JPEG JPEG format
IMediaBinNode Interface

Implemented by media bin objects.

Syntax:
interface IMediaBinNode
Public Properties: Summary:
MediaBinNodeType NodeType Get the type of media bin object.
UInt32 NodeID Get media bin identifier.
Public Methods: Summary:
abstract Boolean IsValid() Indicates whether the object has been added to the project.
ImproperProjectSettingException Class

The exception that is thrown when one or more project settings make the attempted operation impossible or inappropriate.

Syntax:
class ImproperProjectSettingException : ArgumentException
IneligableMediaException Class

The exception that is thrown when the media object provided is ineligable for the attempted operation.

Syntax:
class IneligableMediaException : ArgumentException
IProgressCallback Interface

Callback object for asynchronous or long-running tasks in Vegas. Several of the scriptable tasks in Vegas, like opening or saving projects, execute on background threads. Some of those allow for periodic progress updates from that thread back to the GUI thread. If your script wants access to this background information, then implement this interface.

Syntax:
interface IProgressCallback
Public Methods: Summary:
abstract void UpdatePercentComplete
(
Int32 percentComplete
)
Invoked on the GUI thread periodically while a background process is running. For a successful operation, this is guaranteed to be called at minimum for 0% and 100% complete. This method might be called more than once for the same percentage, and it's possible for the percentage to go backward (although that should not happen normally).
Parameters:
percentComplete: a value expected to be in the range of 0 to 100
Keyframe Class

Represents a video effect key frame.

Syntax:
class Keyframe
Constructors: Summary:
Keyframe
(
Timecode position
)
Create a new key frame.
Parameters:
position: position of new key frame
Public Properties: Summary:
Effect Effect Get the effect associated with this key frame.
Int32 Index Get the list index of this key frame.
Timecode Position Get or set the position of this key frame.
VideoKeyframeType Type Get or set the interpolation type for this key frame.
String Preset Set the parameters preset for this key frame.
Public Methods: Summary:
Boolean IsValid() Indicates whether the key frame has been added to an effect.
Keyframes Class

Collection of effect key frames.

Syntax:
class Keyframes : BaseList<Keyframe>
LogCallback Delegate

This delegate matches the signature of AddLogEntry(string)

Syntax:
delegate void LogCallback(String log)
LogFile Class

This is a very simple implementation of a file-based logger.

Syntax:
class LogFile : IDisposable
Constructors: Summary:
LogFile() Create a new in-memory logger. The log is not written to disk.
LogFile
(
Vegas vegas,
String logFilePath
)
Create a new logger. This opens the log file, appending if it already exists.
Parameters:
vegas: the Vegas instance, used to find the application data path
logFilePath: the absolute or relative file path for the log file. If relative, it is combined with the local application data folder of Vegas.
Public Properties: Summary:
Boolean AutoFlush Defaults to true, but you might want to set it to false for speed.
Public Methods: Summary:
void AddLogEntry
(
String entry
)
Adds the specified text to the log file. A newline is automatically appended.
Parameters:
entry: a non-null log string
void Close() Closes the output log file. After this call, AddLogEntry() will fail with a null pointer.
void ShowLogAsDialog
(
String title
)
Reads in the log file and shows it in a simple scrolling dialog window.
Parameters:
title:
LowPassFilterQuality Enumeration

Enumeration of low-pass filter qualities

Syntax:
enum LowPassFilterQuality
Fields: Summary:
LowPassFilterQuality.Preview Preview quality
LowPassFilterQuality.Good good quality
LowPassFilterQuality.Best best quality
Marker Class

Represents a marker on the project's time line.

Syntax:
class Marker
Constructors: Summary:
Marker
(
Timecode position
)
Create a new marker
Parameters:
position: position of new marker
Marker
(
Timecode position,
String label
)
Create a new marker.
Parameters:
position: position of new marker
label: label of new marker
Public Properties: Summary:
Timecode Position Get or set the marker's position.
String Label Get or set the marker's label.
Public Methods: Summary:
override Boolean Equals
(
Object obj
)
Determines whether the specified object is equal to this Marker.
Parameters:
obj: Object to compare with this Marker.
override Int32 GetHashCode() Serves as a hash function for Marker objects, suitable for use in hashing algorithms and data structures like a hash table.
virtual Boolean IsValid() Indicates whether the marker has been added.
Public Operators: Summary:
static Boolean operator ==
(
Marker a,
Marker b
)
Determines whether the specified Marker objects are equal.
Parameters:
a: left hand side of operator
b: right hand side of operator
static Boolean operator !=
(
Marker a,
Marker b
)
Determines whether the specified Marker objects are not equal.
Parameters:
a: left hand side of operator
b: right hand side of operator
MarkerCommandType Class

Command marker types

Syntax:
class MarkerCommandType
Constructors: Summary:
MarkerCommandType
(
String cmd
)
Creates a new marker command type with the given command type.
Parameters:
cmd: command type string
Public Fields: Summary:
MarkerCommandType URL URL
MarkerCommandType Text TEXT
MarkerCommandType WMClosedCaption WMClosedCaption
MarkerCommandType WMWMTextBodytext WMTextBodytext
MarkerCommandType WMTextHeadline WMTextHeadline
MarkerCommandType Title Title
MarkerCommandType Author Author
MarkerCommandType Copyright Copyright
MarkerCommandType HotSpotPlay HotSpotPlay
MarkerCommandType HotSpotBrowse HotSpotBrowse
MarkerCommandType HotSpotSeek HotSpotSeek
MarkerCommandType ScottEOM SCOTT EOM
MarkerCommandType ScottCueIn SCOTT Cue In
MarkerCommandType CEA608CC1 CEA608CC1
MarkerCommandType CEA608CC2 CEA608CC2
MarkerCommandType CEA608CC3 CEA608CC3
MarkerCommandType CEA608CC4 CEA608CC4
Public Methods: Summary:
override String ToString() Converts marker command type to its string representation.
MarkerList Class

List of Marker objects.

Syntax:
class MarkerList : BaseMarkerList<Marker>
Media Class

Represents a media file referenced by a Vegas project.

Syntax:
class Media : IMediaBinNode
Constructors: Summary:
Media
(
String path
)
Obsolete: Use Media.CreateInstance(project,path) instead
Parameters:
path:
Media
(
PlugInNode generator
)
Obsolete: Use Media.CreateInstance(project,generator) instead
Parameters:
generator:
Media
(
PlugInNode generator,
String presetName
)
Obsolete: Use Media.CreateInstance(project,generator,presetName) instead
Parameters:
generator:
presetName:
Public Properties: Summary:
MediaBinNodeType NodeType Get the media bin type for this object.
UInt32 NodeID Get the media bin node identifier for this object.
MediaStreams Streams Get the collection of media streams.
Effects Effects Get the collection of effects associated with the media.
String FilePath Get the full path of the media file.
Effect Generator Get the effect object for generated media.
String KeyString Get the key String for generated media.
Boolean UseCustomTimecode Get or set whether custom time code is used for the media.
Timecode TimecodeIn Get or set the start time code for the media.
Timecode TimecodeOut Get the end time code for the media.
Timecode Length Get or set the length of the media.
RulerFormat RulerFormat Get or set the ruler format used to represent the media's time code.
String Comment Get or set the comment for the media.
String Title Get the title for the media.
String TapeName Get or set the tape name associated with the media.
DateTime RecordedDateTime Get the date and time when the media was recorded or DateTime.MinValue if not available.
String Rating Get the video capture rating for the media or null if not available.
String VideoCaptureComment Get the video capture comment for the media or null if not available.
Int64 AverageDataRate Get the average total data rate in bytes per second.
Int32 UseCount Get the number of references to the media in the project.
MediaMarkerList Markers Get the list of markers associated with this Media object.
MediaRegionList Regions Get the collection of regions associated with this Media object.
MediaCommandMarkerList CommandMarkers Get the collection of command markers associated with this Media object.
CustomDataContainer CustomData Gets the container for custom data associated with the media.
Public Methods: Summary:
static Media CreateInstance
(
Project project,
String path
)
Create a new media file reference.
Parameters:
project: Project.ActiveProject or a specific project
path: full path of media file
static Media CreateInstance
(
Project project,
PlugInNode generator,
String presetName
)
Create a media reference based on a generator plug-in.
Parameters:
project: Project.ActiveProject or a specific project
generator: generator plug-in to use
presetName: name of plug-in preset to use
static Media CreateInstance
(
Project project,
PlugInNode generator
)
Create a media reference based on a generator plug-in and preset.
Parameters:
project: Project.ActiveProject or a specific project
generator: generator plug-in to use
override Boolean Equals
(
Object that
)
Determines whether the specified object is equal to the current Media.
Parameters:
that: Object to compare with the current Media.
override Int32 GetHashCode() Serves as a hash function for Media objects, suitable for use in hashing algorithms and data structures like a hash table.
Boolean IsValid() Indicates if the media file is valid.
Boolean IsOffline() Indicates if the media is offline.
Boolean CanRecapture() Indicates if the media can be recaptured.
VideoStream GetVideoStreamByIndex
(
Int32 index
)
Get the nth VideoStream in the media's collection of stream.
Parameters:
index: The type-wise zero-based index of the video stream.
Return Value:
The nth VideoStream object or null if not found.
AudioStream GetAudioStreamByIndex
(
Int32 index
)
Get the nth AudioStream in the media's collection of stream.
Parameters:
index: The type-wise zero-based index of the audio stream.
Return Value:
The nth AudioStream object or null if not found.
Boolean IsGenerated() Indicates if the media is generated by a plug-in.
Boolean IsImageSequence() Indicates if the media is an image sequence.
Boolean IsSubclip() Indicates if the media is a sub-clip.
Int32 StreamCount
(
MediaType type
)
Get the number of streams of a particular media type.
Parameters:
type: media type of streams to count
Boolean HasAudio() Indicates if the media contains audio streams.
Boolean HasVideo() Indicates if the media contains video streams.
MediaStream CreateOfflineStream
(
MediaType type
)
Creates a place-holder MediaStream and adds it to this Media's Streams (offline media only).
Parameters:
type: media type of stream
void ReplaceWith
(
Media other
)
Replace all references to this media object with refernces to another.
Parameters:
other: replacement media object
Public Operators: Summary:
static Boolean operator ==
(
Media a,
Media b
)
Determines whether the specified objects are equal.
Parameters:
a: left hand side of operator
b: right hand side of operator
static Boolean operator !=
(
Media a,
Media b
)
Determines whether the specified objects are not equal.
Parameters:
a: left hand side of operator
b: right hand side of operator
MediaBin Class

Represents a node in the hierarchy of media bins.

Syntax:
class MediaBin : BaseList<IMediaBinNode>, IMediaBinNode
Constructors: Summary:
MediaBin
(
Project project,
String name
)
Create a new media bin.
Parameters:
project: Project.ActiveProject or a specific project
name: name of new media bin
MediaBin
(
String name
)
Obsolete: Use MediaBin(project,...) instead
Parameters:
name:
Public Properties: Summary:
MediaBinNodeType NodeType Get the media bin type for this object.
UInt32 NodeID Get the media bin node identifier for this object.
String Name Get or set the name of the media bin.
MediaBin Parent Get the parent of this media bin.
Public Methods: Summary:
Boolean IsValid() Indicates whether the media bin has been added to the project.
Boolean IsRoot() Indicates whether the media bin is the top-level bin.
MediaBinNodeType Enumeration

Enumeration of media bin object types.

Syntax:
enum MediaBinNodeType
Fields: Summary:
MediaBinNodeType.Unknown Unknown media bin object type.
MediaBinNodeType.Bin Media bin object type.
MediaBinNodeType.MediaRef Media object type.
MediaCommandMarker Class

Represents a media command marker.

Syntax:
class MediaCommandMarker : CommandMarker, IMediaMarker
Public Methods: Summary:
void Initialize
(
IMarkerCOM com,
UInt32 id,
UInt32 mediaID
)
Obsolete: Use Initialize(project,...) instead
Parameters:
com:
id:
mediaID:
override Boolean Equals
(
Object obj
)
Determines whether the specified object is equal to this MediaCommandMarker.
Parameters:
obj: Object to compare with this MediaCommandMarker.
override Int32 GetHashCode() Serves as a hash function for MediaCommandMarker objects, suitable for use in hashing algorithms and data structures like a hash table.
Public Operators: Summary:
static Boolean operator ==
(
MediaCommandMarker a,
MediaCommandMarker b
)
Determines whether the specified MediaCommandMarker objects are equal.
Parameters:
a: left hand side of operator
b: right hand side of operator
static Boolean operator !=
(
MediaCommandMarker a,
MediaCommandMarker b
)
Determines whether the specified MediaCommandMarker objects are not equal.
Parameters:
a: left hand side of operator
b: right hand side of operator
MediaCommandMarkerList Class

List of MediaCommandMarker objects.

Syntax:
class MediaCommandMarkerList : BaseMediaMarkerList<MediaCommandMarker>
MediaFile Class

A file asset associated with a project Media object. Many Media assets have just one file (e.g. Movie.mp4) but in some cases there can be many associated files. For example, Panasonic P2 has separate essence files for video and each audio channel. Most formats support proxy files, and all audio formats have cached peaks files. Some media files store metadata in external sidecar files rather than inside the media file.

Syntax:
class MediaFile
Public Properties: Summary:
MediaFileType Type The general category of this asset. For example, is it a VideoProxy, or AudioEssence, or Metadata?
Boolean IsProxy True if the file is of type VideoProxy or AudioProxy; otherwise false.
Boolean IsEssence True if the file is of type MixedEssence, VideoEssence, or AudioEssence; otherwise false
Boolean IsMetadata True if the file is of type VegasMetadata or OtherMetadata; otherwise false
String FilePath The absolute path of this asset.
String PathPattern A pattern that can be used as the first argument to String.Format to generate the filename for this file asset given the file path of the primary media asset. The subsequence arguments to String.Format should be the directory, the base name, and the extension of the primary asset. For example, the audio peaks proxy file might have a pattern like "{0}/{1}{2}.sfk". A Panasonic P2 audio essence file might have a pattern like "{0}/../AUDIO/{1}01{2}" indicating the second channel relative to a video file "CONTENTS/VIDEO/0001AB.MXF".
Public Methods: Summary:
String FormatPath
(
String mediaPath
)
Given a path to a primary media asset, calculate a filename for this asset using the PathPattern. This is useful for renaming a group of related files, for example during an archive operation.
Parameters:
mediaPath: the path to a primary asset.
Return Value:
a new path that would be appropriate for this asset given the mediaPath
static void FixMetadataFile
(
String metadataFilename,
String mediaFilename
)
If you rename a .sfl file, the enclosed reference to the media filename will be wrong. Rewrite the file with the new media filename. This will throw an exception if the metadata file does not exist or if the file is not a metadata file.
Parameters:
metadataFilename: a path to the .sfl file
mediaFilename: a path to the media file
MediaFiles Class

A immutable collection of the MediaFile assets for a given Media instance. Although this collection is immutable from the scripting API, it is possible that the media may change without warning from the engine side -- for example, if a video proxy is created for the asset that will add a new entry to this collection automatically. This list will not reflect that change until Media.MediaFiles is invoked again.

Syntax:
class MediaFiles : BaseList<MediaFile>
MediaFileType Enumeration

The type of a file associated with a Media item, used with the MediaFile class. Some media types have multiple files that represent the same clip. Most commonly, Vegas caches audio peaks data in a .sfk file alongside the original media file -- this is an AudioProxy type.

Syntax:
enum MediaFileType
Fields: Summary:
MediaFileType.Unknown A catch-all for files not covered by the other types
MediaFileType.MixedEssence Audio and video in the same file. E.g. media.mp4
MediaFileType.VideoEssence A media file with only video and no audio. E.g. images equence or still JPEG
MediaFileType.AudioEssence A media file with only audio and no video. E.g. sound.wav
MediaFileType.VideoProxy A low-res copy of a video essense. E.g. media.mp4.sfvp0
MediaFileType.AudioProxy A low-res copy of a audio essense. E.g. media.mp4.sfap0 or media.mp4.sfk
MediaFileType.VegasMetadata Vegas metadata about a media asset. E.g. media.mp4.sfl
MediaFileType.OtherMetadata Info file about a whole media asset. E.g. a P2 or XAVC XML file
MediaMarker Class

Represents a media marker.

Syntax:
class MediaMarker : Marker, IMediaMarker
Public Methods: Summary:
void Initialize
(
IMarkerCOM com,
UInt32 id,
UInt32 mediaID
)
Obsolete: Use Initialize(project,...) instead
Parameters:
com:
id:
mediaID:
override Boolean Equals
(
Object obj
)
Determines whether the specified object is equal to this MediaMarker.
Parameters:
obj: Object to compare with this MediaMarker.
override Int32 GetHashCode() Serves as a hash function for MediaMarker objects, suitable for use in hashing algorithms and data structures like a hash table.
Public Operators: Summary:
static Boolean operator ==
(
MediaMarker a,
MediaMarker b
)
Determines whether the specified MediaMarker objects are equal.
Parameters:
a: left hand side of operator
b: right hand side of operator
static Boolean operator !=
(
MediaMarker a,
MediaMarker b
)
Determines whether the specified MediaMarker objects are not equal.
Parameters:
a: left hand side of operator
b: right hand side of operator
MediaMarkerList Class

List of MediaMarker objects.

Syntax:
class MediaMarkerList : BaseMediaMarkerList<MediaMarker>
MediaPool Class

Collection of media used in a project. This pool is represented as an immutable IDictionary, but please note that the IDictionary implementation is incomplete and has flaws that cannot be corrected without breaking backward compatibility. Most significantly: 1) CopyTo, Keys and Values are not implemented, 2) GetEnumerator() iterates over Media items rather than DictionaryEntry items like it's supposed to. If you try to code "foreach (DictionaryEntry de in pool)" you will get an InvalidCastException. Instead, you need to code as "foreach (Media m in pool)" and the key will be "m.KeyString".

Syntax:
class MediaPool : IDictionary, ICollection, IEnumerable
Public Properties: Summary:
Int32 Count Get the number of media objects in the collection.
Boolean IsSynchronized Indicates whether access to the collection is thread safe.
Object SyncRoot Get the object that can be used to to synchronize access to the collection.
Boolean IsFixedSize Indicates whether the collection has a fixed size.
Boolean IsReadOnly Indicates whether the collection is read only.
Object Item
(
Object key
)
Get a media object by name (file path).
Parameters:
key: full path of media file
ICollection Keys not supported
ICollection Values not supported
MediaBin RootMediaBin Get the top level media bin.
Public Methods: Summary:
void CopyTo
(
Array array,
Int32 index
)
Copies the items in the collection to an array.
Parameters:
array: destination array of media pool items
index: start index for items in the array
void Add
(
Object key,
Object value
)
not supported (use the AddMedia methods)
Parameters:
key:
value:
Media AddMedia
(
String path
)
Creates and adds a media object to the project media pool.
Parameters:
path: full path of media file
Media AddMedia
(
String path,
Boolean addToSelectedBin
)
Creates and adds a media object to the project media pool.
Parameters:
path: full path of media file
addToSelectedBin: whether to add the media to the selected media bin
Media AddImageSequence
(
String path,
Int32 imageCount,
Double fps
)
Creates and adds an image sequence to the project media pool.
Parameters:
path: full path of the fisrt image in the sequence
imageCount: number of image files in the sequence
fps: frame rate of the image sequence
Media AddImageSequence
(
String path,
Int32 imageCount,
Double fps,
Boolean addToSelectedBin
)
Creates and adds an image sequence to the project media pool.
Parameters:
path: full path of the fisrt image in the sequence
imageCount: number of image files in the sequence
fps: frame rate of the image sequence
addToSelectedBin: whether to add the media to the selected media bin
void Clear() not supported
Boolean Contains
(
Object key
)
Indicates whether the given object is contained in the media pool.
Parameters:
key: full path of media file
IDictionaryEnumerator GetEnumerator() Get a new enumerator for the media pool. Beware, this is an enumerator over Media instances and not over DictionaryEntry instances. This is a bug, but it cannot be corrected without breaking compatibility with existing scripts.
void Remove
(
Object key
)
Remove the given media object from the pool.
Parameters:
key: full path of media file
void RemoveUnusedMedia() Remove all unused Media objects from the pool.
Media Find
(
String path
)
Find a media object whose file path is the given string.
Parameters:
path: full path of media file or display name of generated media
Media[] GetSelectedMedia() Get an array containing the Media objects that are selected in the Project Media window.
Boolean CanCreateStereo3DSubclip
(
Media left,
Media right
)
Determines whether the provided left and right media sources are suitable for creating a stereoscopic 3D subclip.
Parameters:
left: media to use for the left eye source
right: media to use for the right eye source
Subclip CreateStereo3DSubclip
(
Media left,
Media right
)
Create a stereoscopic 3D subclip from the provided left and right media sources.
Parameters:
left: media to use for the left eye source
right: media to use for the right eye source
void OpenAllMedia() Open each file in the pool. This is useful because it triggers Vegas' search for the proxy and peaks files attached to the media. Without this, the call to media.MediaFiles may overlook some ancillary files.
MediaPoolEnumerator Class

Enumerator of media referenced by a project.

Syntax:
class MediaPoolEnumerator : IDictionaryEnumerator, IEnumerator
Public Properties: Summary:
Object Current Get the current object in the enumeration. Beware, this returns a Media instance and not a DictionaryEntry instance! This is a bug, but it cannot be corrected without breaking compatibility with existing scripts.
DictionaryEntry Entry Get the dictionary entry for the current item.
Object Key Get the key string (file path) of the current item.
Object Value Get the current media object in the enumeration.
Public Methods: Summary:
Boolean MoveNext() Move to the next object in the enumeration.
void Reset() Reset the enumeration.
MediaRegion Class

Represents a media region.

Syntax:
class MediaRegion : Region, IMediaMarker
Public Methods: Summary:
void Initialize
(
IMarkerCOM com,
UInt32 id,
UInt32 mediaID
)
Obsolete: Use Initialize(project,...) instead
Parameters:
com:
id:
mediaID:
override Boolean Equals
(
Object obj
)
Determines whether the specified object is equal to this MediaRegion.
Parameters:
obj: Object to compare with this MediaRegion.
override Int32 GetHashCode() Serves as a hash function for MediaRegion objects, suitable for use in hashing algorithms and data structures like a hash table.
Public Operators: Summary:
static Boolean operator ==
(
MediaRegion a,
MediaRegion b
)
Determines whether the specified MediaRegion objects are equal.
Parameters:
a: left hand side of operator
b: right hand side of operator
static Boolean operator !=
(
MediaRegion a,
MediaRegion b
)
Determines whether the specified MediaRegion objects are not equal.
Parameters:
a: left hand side of operator
b: right hand side of operator
MediaRegionList Class

List of MediaRegion objects.

Syntax:
class MediaRegionList : BaseMediaMarkerList<MediaRegion>
MediaStream Class

Represents a media stream.

Syntax:
abstract class MediaStream
Public Properties: Summary:
Media Parent Get the Media object that contains this stream.
MediaType MediaType Get the stream's media type.
Int32 Index Get the list index of this media stream.
Timecode Offset Get the start offset of the media stream.
Timecode Length Get the length of the media stream.
Public Methods: Summary:
override Int32 GetHashCode() Serves as a hash function for MediaStream objects, suitable for use in hashing algorithms and data structures like a hash table.
override Boolean Equals
(
Object that
)
Determines whether the specified object is equal to the current MediaStream.
Parameters:
that: Object to compare with the current MediaStream.
Public Operators: Summary:
static Boolean operator ==
(
MediaStream a,
MediaStream b
)
Determines whether the specified objects are equal.
Parameters:
a: left hand side of operator
b: right hand side of operator
static Boolean operator !=
(
MediaStream a,
MediaStream b
)
Determines whether the specified objects are not equal.
Parameters:
a: left hand side of operator
b: right hand side of operator
MediaStreams Class

Collection of media streams.

Syntax:
class MediaStreams : BaseList<MediaStream>
Public Properties: Summary:
Boolean IsFixedSize Indicates whether the collection has a fixed size.
Boolean IsReadOnly Indicates whether the collection is read only.
Public Methods: Summary:
MediaStream GetItemByMediaType
(
MediaType type,
Int32 index
)
Get the nth media stream of a given media type.
Parameters:
type: media type of stream
index: type-wise zero-based index of media stream
MediaType Enumeration

Enumeration of media types.

Syntax:
enum MediaType
Fields: Summary:
MediaType.Unknown unknown media type
MediaType.Audio audio media type
MediaType.Video video media type
MissingMediaEventArgs Class

Arguments provided to MissingMedia event handlers.

Syntax:
class MissingMediaEventArgs : EventArgs
Public Properties: Summary:
String MissingMedia Get the name of the missing media file.
Boolean IgnoreMissingMedia Set to true to bypass the missing media dialog and leave the media offline.
MissingMediaEventHandler Delegate

Represents the method that handles a MissingMedia event.

Syntax:
delegate void MissingMediaEventHandler(Object sender,
MissingMediaEventArgs args)
MotionBlurType Enumeration

Enumeration of motion blur types.

Syntax:
enum MotionBlurType
Fields: Summary:
MotionBlurType.Gaussian gaussian
MotionBlurType.Pyramid pyramid
MotionBlurType.Box box
MotionBlurType.AsymmetricGaussian asymmetric gaussian
MotionBlurType.AsymmetricPyramid asymmetric pyramid
MotionBlurType.AsymmetricBox asymmetric box
OFXBase Class

Represents a base class for Open FX video plug-ins and effects.

Syntax:
abstract class OFXBase
Public Properties: Summary:
OFXEffectType EffectType Get the OFX effect type of the plug-in.
String Label Get the localized label string used in user interfaces.
String Grouping Get the grouping identifier.
String PlugInPath Get the file path of the plug-in component.
Version Version Get the version number of the plug-in component.
Public Methods: Summary:
Boolean Equals
(
OFXBase that
)
Determines whether the specified object is equal to the current object.
Parameters:
that: Object to compare with the current object.
OFXBooleanKeyframe Class

Represents a keyframe of an Open FX paramter with a Boolean value.

Syntax:
class OFXBooleanKeyframe : OFXKeyframe<Boolean>
Public Properties: Summary:
Boolean Value Get or set the value for the parameter.
Boolean Value Get or set the value for the parameter.
OFXBooleanParameter Class

Represents a boolean parameter for an Open FX video effect.

Syntax:
class OFXBooleanParameter : OFXParameter<Boolean, OFXBooleanKeyframe>
Public Properties: Summary:
Boolean Value Get or set the value for the parameter.
Public Methods: Summary:
override Boolean GetValueAtTime
(
Timecode time
)
Get the value for the parameter at a given time.
Parameters:
time: the time to get the parameter value.
override void SetValueAtTime
(
Timecode time,
Boolean value
)
Set the value for the parameter at a given time.
Parameters:
time: the time to set the parameter value.
value: the new parameter value.
OFXChoice Class

Represents a choice parameter value used in Open FX video effects.

Syntax:
class OFXChoice
Public Fields: Summary:
String Name The name of the choice value.
Int32 Index The index of the choice value.
OFXChoiceKeyframe Class

Represents a keyframe of an Open FX paramter with a Choice value.

Syntax:
class OFXChoiceKeyframe : OFXKeyframe<OFXChoice>
Public Properties: Summary:
OFXChoice Value Get or set the value for the parameter.
OFXChoice Value Get or set the value for the parameter.
OFXChoiceParameter Class

Represents a choice parameter for an Open FX video effect.

Syntax:
class OFXChoiceParameter : OFXParameter<OFXChoice, OFXChoiceKeyframe>
Public Properties: Summary:
OFXChoice Value Get or set the value for the parameter.
Public Methods: Summary:
override OFXChoice GetValueAtTime
(
Timecode time
)
Get the value for the parameter at a given time.
Parameters:
time: the time to get the parameter value.
override void SetValueAtTime
(
Timecode time,
OFXChoice value
)
Set the value for the parameter at a given time.
Parameters:
time: the time to set the parameter value.
value: the new parameter value.
OFXColor Class

Represents a color parameter value used in Open FX video effects.

Syntax:
sealed class OFXColor : ValueType
Constructors: Summary:
OFXColor
(
Double r,
Double g,
Double b
)
Construct an OFX color from red, green, and blue components.
Parameters:
r: the red component
g: the green component
b: the blue component
OFXColor
(
Double r,
Double g,
Double b,
Double a
)
Construct an OFX color from red, green, blue, and alpha components.
Parameters:
r: A value specifying the red component.
g: A value specifying the green component.
b: A value specifying the blue component.
a: A value specifying the alpha component.
Public Fields: Summary:
Double R The red color component. Range 0.0 to 1.0.
Double G The green color component. Range 0.0 to 1.0.
Double B The blue color component. Range 0.0 to 1.0.
Double A The alpha transparentcy color component. Range 0.0 to 1.0.
Public Methods: Summary:
Boolean Equals
(
OFXColor that
)
Determines whether the specified object is equal to the current object.
Parameters:
that: OFXColor to compare with the current object.
override Boolean Equals
(
Object that
)
Determines whether the specified object is equal to the current object.
Parameters:
that: Object to compare with the current object.
override Int32 GetHashCode() Serves as a hash function suitable for use in hashing algorithms and data structures like a hash table.
Public Operators: Summary:
static Boolean operator ==
(
OFXColor a,
OFXColor b
)
Determines whether the specified objects are equal.
Parameters:
a: left hand side of operator
b: right hand side of operator
static Boolean operator !=
(
OFXColor a,
OFXColor b
)
Determines whether the specified objects are not equal.
Parameters:
a: left hand side of operator
b: right hand side of operator
OFXControlPoint Class

Represents a control point for a keyframe of an Open FX paramter with a Double value.

Syntax:
sealed class OFXControlPoint : ValueType
Constructors: Summary:
OFXControlPoint
(
Timecode time,
Double val
)
Create a new control point with the given time and value.
Parameters:
time: The time of the control point.
val: The value of the control point.
Public Fields: Summary:
Timecode Time The time of the control point.
Double Value The value of the control point.
OFXCustomKeyframe Class

Represents a keyframe of an Open FX paramter with a Custom value.

Syntax:
class OFXCustomKeyframe : OFXKeyframe<String>
Public Properties: Summary:
String Value Get or set the value for the parameter.
String Value Get or set the value for the parameter.
OFXCustomParameter Class

Represents a custom type parameter for an Open FX video effect.

Syntax:
class OFXCustomParameter : OFXParameter<String, OFXCustomKeyframe>
Public Properties: Summary:
String Value Get or set the value for the parameter.
Public Methods: Summary:
override String GetValueAtTime
(
Timecode time
)
Get the value for the parameter at a given time.
Parameters:
time: the time to get the parameter value.
override void SetValueAtTime
(
Timecode time,
String value
)
Set the value for the parameter at a given time.
Parameters:
time: the time to set the parameter value.
value: the new parameter value.
OFXDouble2D Class

Represents a two dimentional double precision floating point vector used in Open FX video effects.

Syntax:
sealed class OFXDouble2D : ValueType
Public Fields: Summary:
Double X The first componet of the vector.
Double Y The second componet of the vector.
OFXDouble2DKeyframe Class

Represents a keyframe of an Open FX paramter with a OFXDouble2D value.

Syntax:
class OFXDouble2DKeyframe : OFXKeyframe<OFXDouble2D>
Public Properties: Summary:
OFXDouble2D Value Get or set the value for the parameter.
OFXControlPoint PrevControlPointX Get or set the control point that leads the keyframe (X-component).
OFXControlPoint NextControlPointX Get or set control point that follows the keyframe (X-component).
OFXControlPoint PrevControlPointY Get or set the control point that leads the keyframe (Y-component).
OFXControlPoint NextControlPointY Get or set control point that follows the keyframe (Y-component).
OFXDouble2D Value Get or set the value for the parameter.
OFXDouble2DParameter Class

Represents a two dimentional double precision floating point parameter for an Open FX video effect.

Syntax:
class OFXDouble2DParameter : OFXRangeParameter<OFXDouble2D, OFXDouble2DKeyframe>
Public Properties: Summary:
OFXDouble2D Value Get or set the value for the parameter.
Public Methods: Summary:
override OFXDouble2D GetValueAtTime
(
Timecode time
)
Get the value for the parameter at a given time.
Parameters:
time: the time to get the parameter value.
override void SetValueAtTime
(
Timecode time,
OFXDouble2D value
)
Set the value for the parameter at a given time.
Parameters:
time: the time to set the parameter value.
value: the new parameter value.
OFXDouble3D Class

Represents a three dimentional double precision floating point vector used in Open FX video effects.

Syntax:
sealed class OFXDouble3D : ValueType
Public Fields: Summary:
Double X The first componet of the vector.
Double Y The second componet of the vector.
Double Z The thrid componet of the vector.
OFXDouble3DKeyframe Class

Represents a keyframe of an Open FX paramter with a OFXDouble3D value.

Syntax:
class OFXDouble3DKeyframe : OFXKeyframe<OFXDouble3D>
Public Properties: Summary:
OFXDouble3D Value Get or set the value for the parameter.
OFXControlPoint PrevControlPointX Get or set the control point that leads the keyframe (X-component).
OFXControlPoint NextControlPointX Get or set control point that follows the keyframe (X-component).
OFXControlPoint PrevControlPointY Get or set the control point that leads the keyframe (Y-component).
OFXControlPoint NextControlPointY Get or set control point that follows the keyframe (Y-component).
OFXControlPoint PrevControlPointZ Get or set the control point that leads the keyframe (Z-component).
OFXControlPoint NextControlPointZ Get or set control point that follows the keyframe (Z-component).
OFXDouble3D Value Get or set the value for the parameter.
OFXDouble3DParameter Class

Represents a three dimentional double precision floating point parameter for an Open FX video effect.

Syntax:
class OFXDouble3DParameter : OFXRangeParameter<OFXDouble3D, OFXDouble3DKeyframe>
Public Properties: Summary:
OFXDouble3D Value Get or set the value for the parameter.
Public Methods: Summary:
override OFXDouble3D GetValueAtTime
(
Timecode time
)
Get the value for the parameter at a given time.
Parameters:
time: the time to get the parameter value.
override void SetValueAtTime
(
Timecode time,
OFXDouble3D value
)
Set the value for the parameter at a given time.
Parameters:
time: the time to set the parameter value.
value: the new parameter value.
OFXDoubleKeyframe Class

Represents a keyframe of an Open FX paramter with a Double value.

Syntax:
class OFXDoubleKeyframe : OFXKeyframe<Double>
Public Properties: Summary:
Double Value Get or set the value for the parameter.
OFXControlPoint PrevControlPoint Get or set control point that leads the keyframe.
OFXControlPoint NextControlPoint Get or set control point that follows the keyframe.
Double Value Get or set the value for the parameter.
OFXDoubleParameter Class

Represents a double precision floating point parameter for an Open FX video effect.

Syntax:
class OFXDoubleParameter : OFXRangeParameter<Double, OFXDoubleKeyframe>
Public Properties: Summary:
Double Value Get or set the value for the parameter.
Public Methods: Summary:
override Double GetValueAtTime
(
Timecode time
)
Get the value for the parameter at a given time.
Parameters:
time: the time to get the parameter value.
override void SetValueAtTime
(
Timecode time,
Double value
)
Set the value for the parameter at a given time.
Parameters:
time: the time to set the parameter value.
value: the new parameter value.
OFXEffect Class

Represents an Open FX video effect instance.

Syntax:
class OFXEffect : OFXBase
Public Properties: Summary:
OFXParameters Parameters Get the collection of parameters available from this Open FX video plug-in.
OFXParameter Item
(
String name
)
Get the parameter with the given name.
Parameters:
name: Name of parameter.
Timecode CurrentTime Get or set the current time for parameter changes.
Public Methods: Summary:
OFXParameter FindParameterByName
(
String name
)
Find the parameter with the given name.
Parameters:
name: Name of parameter.
void AllParametersChanged() Notifies the Open FX plugin that multiple parameter values have changed.
Boolean Equals
(
OFXEffect that
)
Determines whether the specified object is equal to the current object.
Parameters:
that: Object to compare with the current object.
override Boolean Equals
(
Object that
)
Determines whether the specified object is equal to the current object.
Parameters:
that: Object to compare with the current object.
override Int32 GetHashCode() Serves as a hash function suitable for use in hashing algorithms and data structures like a hash table.
Public Operators: Summary:
static Boolean operator ==
(
OFXEffect a,
OFXEffect b
)
Determines whether the specified objects are equal.
Parameters:
a: left hand side of operator
b: right hand side of operator
static Boolean operator !=
(
OFXEffect a,
OFXEffect b
)
Determines whether the specified objects are not equal.
Parameters:
a: left hand side of operator
b: right hand side of operator
OFXInteger2D Class

Represents a two dimentional integer vector used in Open FX video effects.

Syntax:
sealed class OFXInteger2D : ValueType
Public Fields: Summary:
Int32 X The first componet of the vector.
Int32 Y The second componet of the vector.
OFXInteger2DKeyframe Class

Represents a keyframe of an Open FX paramter with a OFXInteger2D value.

Syntax:
class OFXInteger2DKeyframe : OFXKeyframe<OFXInteger2D>
Public Properties: Summary:
OFXInteger2D Value Get or set the value for the parameter.
OFXInteger2D Value Get or set the value for the parameter.
OFXInteger2DParameter Class

Represents a two dimentional integer parameter for an Open FX video effect.

Syntax:
class OFXInteger2DParameter : OFXRangeParameter<OFXInteger2D, OFXInteger2DKeyframe>
Public Properties: Summary:
OFXInteger2D Value Get or set the value for the parameter.
Public Methods: Summary:
override OFXInteger2D GetValueAtTime
(
Timecode time
)
Get the value for the parameter at a given time.
Parameters:
time: the time to get the parameter value.
override void SetValueAtTime
(
Timecode time,
OFXInteger2D value
)
Set the value for the parameter at a given time.
Parameters:
time: the time to set the parameter value.
value: the new parameter value.
OFXInteger3D Class

Represents a three dimentional integer vector used in Open FX video effects.

Syntax:
sealed class OFXInteger3D : ValueType
Public Fields: Summary:
Int32 X The first componet of the vector.
Int32 Y The second componet of the vector.
Int32 Z The thrid componet of the vector.
OFXInteger3DKeyframe Class

Represents a keyframe of an Open FX paramter with a OFXInteger3D value.

Syntax:
class OFXInteger3DKeyframe : OFXKeyframe<OFXInteger3D>
Public Properties: Summary:
OFXInteger3D Value Get or set the value for the parameter.
OFXInteger3D Value Get or set the value for the parameter.
OFXInteger3DParameter Class

Represents a three dimentional integer parameter for an Open FX video effect.

Syntax:
class OFXInteger3DParameter : OFXRangeParameter<OFXInteger3D, OFXInteger3DKeyframe>
Public Properties: Summary:
OFXInteger3D Value Get or set the value for the parameter.
Public Methods: Summary:
override OFXInteger3D GetValueAtTime
(
Timecode time
)
Get the value for the parameter at a given time.
Parameters:
time: the time to get the parameter value.
override void SetValueAtTime
(
Timecode time,
OFXInteger3D value
)
Set the value for the parameter at a given time.
Parameters:
time: the time to set the parameter value.
value: the new parameter value.
OFXIntegerKeyframe Class

Represents a keyframe of an Open FX paramter with a Integer value.

Syntax:
class OFXIntegerKeyframe : OFXKeyframe<Int32>
Public Properties: Summary:
Int32 Value Get or set the value for the parameter.
Int32 Value Get or set the value for the parameter.
OFXIntegerParameter Class

Represents an integer parameter for an Open FX video effect.

Syntax:
class OFXIntegerParameter : OFXRangeParameter<Int32, OFXIntegerKeyframe>
Public Properties: Summary:
Int32 Value Get or set the value for the parameter.
Public Methods: Summary:
override Int32 GetValueAtTime
(
Timecode time
)
Get the value for the parameter at a given time.
Parameters:
time: the time to get the parameter value.
override void SetValueAtTime
(
Timecode time,
Int32 value
)
Set the value for the parameter at a given time.
Parameters:
time: the time to set the parameter value.
value: the new parameter value.
OFXKeyframe Class

Represents a keyframe of an Open FX parameter.

Syntax:
class OFXKeyframe
Public Properties: Summary:
Timecode Time Get or set the time of the keyframe relative to the beginning of the effect.
OFXInterpolationType Interpolation Get or set the interpolation type of the keyframe.
OFXKeyframe Class

Represents a keyframe of an Open FX paramter with a given type of value.

Syntax:
abstract class OFXKeyframe<T> : OFXKeyframe
Public Properties: Summary:
T Value Get or set the value for the parameter.
OFXKeyframes Class

Collection of keyframes of an Open FX paramter.

Syntax:
class OFXKeyframes<TValue, TKeyframe> : BaseList<TKeyframe>
OFXParameter Class

Represents an Open FX video plug-in parameter.

Syntax:
class OFXParameter
Public Properties: Summary:
Int32 Index Get the list index of the parameter.
OFXParameterType ParameterType Get the data type of the parameter.
String Name Get the internal name of the parameter.
String Definition Get the definition of the parameter.
String Label Get the label of the parameter (used in user interfaces).
String Hint Get the hint string of the parameter (used in tool tips).
String ParentName Get the name of the grouping parent of this parameter.
Boolean Enabled Get whether the parameter is enabled.
Boolean Secret Get whether the parameter is secret.
Boolean Subservient Get whether the parameter is subservient of another.
Boolean CanAnimate Get whether the parameter can be animated.
Boolean IsAnimated Get or set whether the parameter is animated.
Boolean Persisted Get whether the parameter is persisted.
Public Methods: Summary:
void ParameterChanged() Notifies the Open FX plugin that a value of this parameter has changed.
Boolean Equals
(
OFXParameter that
)
Determines whether the specified object is equal to the current object.
Parameters:
that: Object to compare with the current object.
override Boolean Equals
(
Object that
)
Determines whether the specified object is equal to the current object.
Parameters:
that: Object to compare with the current object.
override Int32 GetHashCode() Serves as a hash function suitable for use in hashing algorithms and data structures like a hash table.
Public Operators: Summary:
static Boolean operator ==
(
OFXParameter a,
OFXParameter b
)
Determines whether the specified objects are equal.
Parameters:
a: left hand side of operator
b: right hand side of operator
static Boolean operator !=
(
OFXParameter a,
OFXParameter b
)
Determines whether the specified objects are not equal.
Parameters:
a: left hand side of operator
b: right hand side of operator
OFXParameter Class

Generic base class for Open FX parameters that have values.

Syntax:
abstract class OFXParameter<TValue, TKeyframe> : OFXParameter
Public Properties: Summary:
TValue Default Get the default value for the parameter.
TValue Value Get or set the value for the parameter.
OFXKeyframes<TValue, TKeyframe> Keyframes Get the list of keyframes for the parameter.
Public Methods: Summary:
abstract TValue GetValueAtTime
(
Timecode time
)
Get the value for the parameter at a given time.
Parameters:
time: the time to get the parameter value.
abstract void SetValueAtTime
(
Timecode time,
TValue value
)
Set the value for the parameter at a given time.
Parameters:
time: the time to set the parameter value.
value: the new parameter value.
OFXParameters Class

Collection of paramters from an Open FX video plug-in.

Syntax:
class OFXParameters : BaseList<OFXParameter>
OFXPlugIn Class

Represents an Open FX video plug-in.

Syntax:
class OFXPlugIn : OFXBase
Public Methods: Summary:
Boolean Equals
(
OFXPlugIn that
)
Determines whether the specified object is equal to the current object.
Parameters:
that: Object to compare with the current object.
override Boolean Equals
(
Object that
)
Determines whether the specified object is equal to the current object.
Parameters:
that: Object to compare with the current object.
override Int32 GetHashCode() Serves as a hash function suitable for use in hashing algorithms and data structures like a hash table.
Public Operators: Summary:
static Boolean operator ==
(
OFXPlugIn a,
OFXPlugIn b
)
Determines whether the specified objects are equal.
Parameters:
a: left hand side of operator
b: right hand side of operator
static Boolean operator !=
(
OFXPlugIn a,
OFXPlugIn b
)
Determines whether the specified objects are not equal.
Parameters:
a: left hand side of operator
b: right hand side of operator
OFXRangeParameter Class

Base class for Open FX parameters that have minimum and maximum allowable values.

Syntax:
abstract class OFXRangeParameter<TValue, TKeyframe> : OFXParameter<TValue, TKeyframe>
Public Properties: Summary:
TValue Min Get the minimum allowable value.
TValue Max Get the maximum allowable value.
TValue DisplayMin Get the minimum value for user interfaces.
TValue DisplayMax Get the maximum value for user interfaces.
OFXRGBAKeyframe Class

Represents a keyframe of an Open FX paramter with a OFXColor value.

Syntax:
class OFXRGBAKeyframe : OFXKeyframe<OFXColor>
Public Properties: Summary:
OFXColor Value Get or set the value for the parameter.
OFXColor Value Get or set the value for the parameter.
OFXRGBAParameter Class

Represents a RGBA color parameter for an Open FX video effect.

Syntax:
class OFXRGBAParameter : OFXParameter<OFXColor, OFXRGBAKeyframe>
Public Properties: Summary:
OFXColor Value Get or set the value for the parameter.
Public Methods: Summary:
override OFXColor GetValueAtTime
(
Timecode time
)
Get the value for the parameter at a given time.
Parameters:
time: the time to get the parameter value.
override void SetValueAtTime
(
Timecode time,
OFXColor value
)
Set the value for the parameter at a given time.
Parameters:
time: the time to set the parameter value.
value: the new parameter value.
OFXRGBKeyframe Class

Represents a keyframe of an Open FX paramter with a OFXColor (no alpha) value.

Syntax:
class OFXRGBKeyframe : OFXKeyframe<OFXColor>
Public Properties: Summary:
OFXColor Value Get or set the value for the parameter.
OFXColor Value Get or set the value for the parameter.
OFXRGBParameter Class

Represents a RGB color parameter for an Open FX video effect.

Syntax:
class OFXRGBParameter : OFXParameter<OFXColor, OFXRGBKeyframe>
Public Properties: Summary:
OFXColor Value Get or set the value for the parameter.
Public Methods: Summary:
override OFXColor GetValueAtTime
(
Timecode time
)
Get the value for the parameter at a given time.
Parameters:
time: the time to get the parameter value.
override void SetValueAtTime
(
Timecode time,
OFXColor value
)
Set the value for the parameter at a given time.
Parameters:
time: the time to set the parameter value.
value: the new parameter value.
OFXStringKeyframe Class

Represents a keyframe of an Open FX paramter with a String value.

Syntax:
class OFXStringKeyframe : OFXKeyframe<String>
Public Properties: Summary:
String Value Get or set the value for the parameter.
String Value Get or set the value for the parameter.
OFXStringParameter Class

Represents a string parameter for an Open FX video effect.

Syntax:
class OFXStringParameter : OFXParameter<String, OFXStringKeyframe>
Public Properties: Summary:
String Value Get or set the value for the parameter.
Public Methods: Summary:
override String GetValueAtTime
(
Timecode time
)
Get the value for the parameter at a given time.
Parameters:
time: the time to get the parameter value.
override void SetValueAtTime
(
Timecode time,
String value
)
Set the value for the parameter at a given time.
Parameters:
time: the time to set the parameter value.
value: the new parameter value.
PanType Enumeration

Enumeration of audio pan settings.

Syntax:
enum PanType
Fields: Summary:
PanType.Add add
PanType.ConstantPower constant power
PanType.Balance balance
PanType.Notch3Db notched at 3 Db
PanType.Notch6Db Notched at 6Db
PanType.Film film
PanType.Unknown unknown/invalid pan type
PixelFormat Enumeration

Enumeration of video pixel formats.

Syntax:
enum PixelFormat
Fields: Summary:
PixelFormat.Int8Bit 8-bit integer.
PixelFormat.Float32Bit 32-bit floating point.
PlugInNode Class

Represents a node in the hierarchy of plug-in effects, transitions, and generators.

Syntax:
class PlugInNode : BaseList<PlugInNode>
Public Properties: Summary:
Boolean IsFixedSize Indicates whether the collection has a fixed size.
String Name Get the name of the plug-in.
String UniqueID Get the unique identifier string for the plug-in.
Guid ClassID Depricated. Use UniqueID instead
Boolean IsVideo Indicates whether or the the plug-in operates on video data.
Boolean IsAudio Indicates whether or the the plug-in operates on audio data.
Boolean IsContainer Indicates whether or the the node contains children.
Boolean IsReadOnly Indicates whether or the the node is read only.
Boolean CanCreateSubnodes Indicates whether or the the node can add child nodes.
Boolean IsDisabled Indicates whether or the the plug-in is disabled.
Boolean IsPackage Indicates whether or the the plug-in node is a package of other plug-ins.
Boolean IsAutomatable Indicates whether the the plug-in is automatable.
Boolean IsOFX Indicates whether the plug-in is an Open FX video plugin.
OFXPlugIn OFXPlugIn Get the Open FX video plug-in if available.
EffectPresets Presets Get the collection of effect presets for this plug-in node.
Public Methods: Summary:
override Int32 GetHashCode() Serves as a hash function for PlugInNode objects, suitable for use in hashing algorithms and data structures like a hash table.
override Boolean Equals
(
Object obj
)
Determines whether the specified object is equal to the current Take.
Parameters:
obj: Object to compare with the current Take.
PlugInNode GetChild
(
Int32 index
)
Get the nth child of this node.
Parameters:
index: index of child node
PlugInNode FindChildByName
(
String name
)
Find a child node by name.
Parameters:
name: name of child node
PlugInNode FindChildByClassID
(
Guid classID
)
Find a child node by class id Guid.
Parameters:
classID: Guid of child node
PlugInNode FindChildByUniqueID
(
String uniqueID
)
Find a child node by identifier string.
Parameters:
uniqueID: identifier string of child node
PlugInNode GetChildByName
(
String val
)
Depricated. Use FindChildByName.
Parameters:
val:
PlugInNode GetChildByClassID
(
Guid val
)
Depricated. Use FindChildByClassID.
Parameters:
val:
PlugInNode GetChildByUniqueID
(
String val
)
Depricated. Use FindChildByUniqueID.
Parameters:
val:
Public Operators: Summary:
static Boolean operator ==
(
PlugInNode a,
PlugInNode b
)
Determines whether the specified PlugInNode objects are equal.
Parameters:
a: left hand side of operator
b: right hand side of operator
static Boolean operator !=
(
PlugInNode a,
PlugInNode b
)
Determines whether the specified PlugInNode objects are not equal.
Parameters:
a: left hand side of operator
b: right hand side of operator
PreviewVideoProperties Class

Represents a project's preview video properties.

Syntax:
class PreviewVideoProperties : VideoProperties
Public Properties: Summary:
Int32 Width Get the pixel width.
Int32 Height Get the pixel height.
Double FrameRate Get the frame rate.
VideoFieldOrder FieldOrder Get the field order.
Double PixelAspectRatio Get the pixel aspect ratio.
VideoRenderQuality RenderQuality Get or set the preview render quality.
Boolean FullSize Obsolete. Use PreviewSize property.
VideoPreviewSize PreviewSize Get or set the size at which video preview frames are rendered.
ProgressEventArgs Class

Represents the arguments passed to a progress worker event.

Syntax:
class ProgressEventArgs : EventArgs
ProgressEventHandler Delegate

Represents a method that handles a progress worker event.

Syntax:
delegate void ProgressEventHandler(ProgressWorker worker,
ProgressEventArgs args)
ProgressWorker Class

Represents an object that performs work on Vegas' asynchronous task manager.

Syntax:
class ProgressWorker
Constructors: Summary:
ProgressWorker() Creates a new progress worker.
Public Properties: Summary:
String ProgressText Get or set the text displayed in Vegas' status bar while the work is done.
Double ProgressMin Get or set the minimum amount of work.
Double ProgressMax Get or set the maximum amount of work.
Double Progress Get or set the amount of work that has been completed.
Int32 PercentComplete Get the percentage of work completed.
Boolean BlockUserInput Get or set a value that indicates whether normal user input should be blocked while the work is in progress (default is true).
Boolean SerializeWork Get or set a value that indicates whether the work should be performed after previously queued work completes (default is true).
Boolean Canceled Get a value that indicates whether the task has been canceled.
Form StatusDialog Get or set a Form window that appears while the worker performs its task.
Boolean KeepStatusDialog Get or set a value that indicates whether the status dialog should remain visible after the task completes.
Protected Methods: Summary:
virtual void OnDoWork
(
ProgressEventArgs args
)
Raises the DoWork event.
Parameters:
args: A ProgressEventArgs that contains the event data.
virtual void OnCompleteWork
(
ProgressEventArgs args
)
Raises the CompleteWork event.
Parameters:
args: A ProgressEventArgs that contains the event data.
virtual void OnStatusBegin
(
EventArgs args
)
Raises the StatusBegin event.
Parameters:
args: An EventArgs that contains the event data.
virtual void OnStatusUpdate
(
EventArgs args
)
Raises the StatusUpdate event.
Parameters:
args: An EventArgs that contains the event data.
virtual void OnStatusEnd
(
EventArgs args
)
Raises the StatusEnd event.
Parameters:
args: An EventArgs that contains the event data.
virtual void OnDequeued
(
EventArgs args
)
Raises the Dequeued event.
Parameters:
args: An EventArgs that contains the event data.
Public Events: Summary:
ProgressEventHandler DoWork Occurs when the worker should perform its work (off the main window thread).
ProgressEventHandler CompleteWork Occurs when the worker should finish its work (on the main window thread).
EventHandler StatusBegin Occurs just before the work begins.
EventHandler StatusUpdate Occurs when work status should be updated.
EventHandler StatusEnd Occurs just after the work ends.
EventHandler Dequeued Occurs when the worker is removed from the task manager's queue.
Project Class

Represents the currently opened project.

Syntax:
class Project : IDisposable
Constructors: Summary:
Project
(
Boolean promptSave,
Boolean showDialog
)
Creates a new Vegas project after closing the current active project.
Parameters:
promptSave: prompt user to save existing project if needed
showDialog: show the new project dialog
Project() Creates a new Vegas project after closing the current active project. This will prompt the user to save if needed, but will not show the new project dialog.
Public Properties: Summary:
Tracks Tracks Get the list of tracks.
BusTracks BusTracks Get the list of bus tracks. Be aware that this list will be empty and may throw exceptions for background projects. See CreateBackgroundProjectActiveState(). If you are using Project.ActiveProject then you don't need to worry about this detail.
VideoBusTrack VideoBus Gets the video bus track.
AudioBusTrack MasterBus Gets the master audio bus track.
MediaPool MediaPool Get the collection of media.
MarkerList Markers Get the list of time line markers.
RegionList Regions Get the list of time line region markers.
CDMarkerList CDIndices Get the list of CD index markers.
CDRegionList CDTracks Get the list of CD track markers.
CommandMarkerList CommandMarkers Get the list of command markers.
TrackGroups TrackGroups Get the list of track groups.
TrackEventGroups TrackEventGroups Get the list of track event groups.
TrackEventGroups Groups Get the list of track event groups. (Depricated. Use TrackEventGroups property)
ProjectVideoProperties Video Get the object representing the project's video properties.
PreviewVideoProperties Preview Get the object representing the project's preview video properties.
ProjectAudioProperties Audio Get the object representing the project's audio properties.
RulerProperties Ruler Get the object representing the project's ruler properties.
SummaryProperties Summary Get the object representing the project's summary properties.
AudioCDProperties AudioCD Get the object representing the project's audio CD properties.
Timecode Length Get the length of the entire project.
Boolean IsModified Get whether the project has been modified.
Boolean IsUntitled Get a value that indicates whether the project is untitled and has not yet been saved.
String FilePath Get the full path of the project file.
CustomDataContainer CustomData Gets the container for custom data associated with the project.
Public Methods: Summary:
VideoTrack AddVideoTrack() Adds a new video track to the project.
AudioTrack AddAudioTrack() Adds a new audio track to the project.
AudioBusTrack AddAudioBusTrack() Adds a new audio bus track to the project.
AudioFXBusTrack AddAudioFXBusTrack
(
PlugInNode plugin
)
Adds a new assignable audio effect bus track to the project.
Parameters:
plugin: audio effect plugin associated with the bus track
TrackGroup GroupSelectedTracks() Create a new track group from the selected tracks.
void UngroupSelectedTracks() Remove all selected tracks from their groups.
TrackGroup GetTrackGroupOfTrack
(
Int32 indexOfTrack
)
Get the TrackGroup that track belongs to
Parameters:
indexOfTrack:
void InsertTime() Inserts time into the project, prompting the user to specify the amount of time.
void InsertTime
(
Timecode start,
Timecode length
)
Inserts time into the project.
Parameters:
start: Start of inserted time.
length: Length of inserted time.
void InsertTime
(
Timecode start,
Timecode length,
Boolean ignoreSelection
)
Inserts time into the project.
Parameters:
start: Start of inserted time.
length: Length of inserted time.
ignoreSelection: Whether to ignore the current set of selected events.
Boolean SaveProject
(
String fileName
)
Saves the current project to disk. Unlike Vegas.SaveProject, this will never show a dialog.
Parameters:
fileName: Full path of the project file, must be non-null.
RenderStatus Render
(
RenderArgs args
)
Renders the project using the parameters specified by a RenderArgs object.
Parameters:
args: parameters for the render operation.
RenderStatus Render
(
String outputFile,
RenderTemplate renderTemplate,
Timecode start,
Timecode length
)
Renders the specified region of the project.
Parameters:
outputFile: full path of rendered output file
renderTemplate: render template to use
start: project start time of rendered output
length: length of rendered output
RenderStatus Render
(
String outputFile,
RenderTemplate renderTemplate
)
Renders the entire project.
Parameters:
outputFile: full path of rendered output file
renderTemplate: render template to use
Boolean ArchiveProject
(
String fileName
)
Archives the current project along with a trimmed copy of all media.
Parameters:
fileName: project file (full path)
Boolean ArchiveProject
(
String fileName,
ArchiveProjectFlags flags
)
Archives the current project along with a trimmed copy of all media.
Parameters:
fileName: project file (full path)
flags: any flags from the ArchiveProjectFlags enumeration
Project CloneProject
(
String newPath
)
Creates a new project that is a copy of the current one.
Parameters:
newPath: null or the path where the new project should be saved. If null, a temporary location will be automatically chosen
Return Value:
a new Project instance.
Project CloneProject
(
String newPath,
IProgressCallback callback
)
Creates a new project that is a copy of the current one.
Parameters:
newPath: null or the path where the new project should be saved. If null, a temporary location will be automatically chosen
callback: null or an object to invoke periodically with progress updates
Return Value:
a new Project instance.
Boolean MatchProjectSettingsWithMedia
(
Media media
)
Alters the project's audio and video settings to match the specified media. This is simply shorthand for Video.MatchProjectSettingsWithMedia(media); Audio.MatchProjectSettingsWithMedia(media).
Parameters:
media: a non-null media instance that's already added to this project's media pool.
Return Value:
true if it succeeds, false if it doesn't due to the file not being valid media or the properties already match
BackgroundProjectActiveState CreateBackgroundProjectActiveState() Call this in a using() block to indicate a block of code during which this project will temporarily be the active project. This should only be used in conjunction with Vegas.CloneProject() or Vegas.CreateEmptyProject(), which enable interaction with background projects. For most of the project properties, you don't need this. But if you want to interact with the BusTracks property then you need to be the active project because only the active project is allowed to communicate with the audio engine.
Return Value:
a state object that must be disposed to restore the active project to Vegas.
ProjectAudioProperties Class

Represents a project's audio properties.

Syntax:
class ProjectAudioProperties : AudioProperties
Public Properties: Summary:
UInt32 SampleRate Get or set the sample rate.
UInt32 BitDepth Get or set the bit depth.
AudioBusMode MasterBusMode Get or set the audio bus mode.
AudioResampleQuality ResampleQuality Get or set the audio resample quality.
Boolean LFELowpassFilterEnabled Get or set whether the LFE low-pass filter is enabled.
UInt32 LFELowpassFilterCutoffFrequency Get or set the LFE low-pass filter cutoff frequency.
LowPassFilterQuality LFELowpassFilterQuality Get or set the LFE low-pass filter quality.
String RecordedFilesFolder Get or set the folder containing recorded files.
Public Methods: Summary:
Boolean MatchProjectSettingsWithMedia
(
Media media
)
Alters the project's audio settings to match the specified media, similar to the way Vegas offers to match video settings to the first media added to the project.
Parameters:
media: a non-null media instance that's already added to this project's media pool.
Return Value:
true if it succeeds, false if it doesn't due to the file not being valid audio media or the properties already match
ProjectChangeFlag Enumeration

Enumeration of project change flags

Syntax:
enum ProjectChangeFlag
ProjectOpeningEventArgs Class

Arguments provided to ProjectOpening event handlers.

Syntax:
class ProjectOpeningEventArgs : EventArgs
Public Fields: Summary:
String ProjectFile Name of the project file being opened.
ProjectOpeningEventHandler Delegate

Represents the method that handles a ProjectOpening event.

Syntax:
delegate void ProjectOpeningEventHandler(Object sender,
ProjectOpeningEventArgs args)
ProjectVideoProperties Class

Represents a project's video properties.

Syntax:
class ProjectVideoProperties : VideoProperties
Public Properties: Summary:
Int32 Width Get or set the pixel width.
Int32 Height Get or set the pixel height.
Double FrameRate Get or set the frame rate.
VideoFieldOrder FieldOrder Get or set the field order.
Double PixelAspectRatio Get or set the pixel aspect ratio.
VideoOutputRotation OutputRotation Get or set the project video output rotation setting.
VideoRenderQuality RenderQuality Get or set the render quality.
MotionBlurType MotionBlurType Get or set the motion blur type.
VideoDeinterlaceMethod DeinterlaceMethod Get or set the deinterlace method.
String PrerenderedFilesFolder Get or set the folder containing pre-rendered files.
PixelFormat PixelFormat Get or set the pixel format used when rendering video for the project.
Stereo3DOutputMode Stereo3DMode Get or set the stereoscopic 3D mode for the project.
Public Methods: Summary:
Boolean GetStereo3DSwap
(
Stereo3DOutputMode mode
)
Get whether left and right eye output channels are swapped for the given stereoscopic 3D mode.
Parameters:
mode: the stereoscopic 3D mode associated with the setting
void SetStereo3DSwap
(
Stereo3DOutputMode mode,
Boolean value
)
Set whether left and right eye output channels are swapped for the given stereoscopic 3D mode.
Parameters:
mode: the stereoscopic 3D mode associated with the setting
value: whether left and right output channels are swapped
Single GetStereo3DCrosstalkCancelation
(
Stereo3DOutputMode mode
)
Get the crosstalk cancelation amount for the given stereoscopic 3D mode.
Parameters:
mode: the stereoscopic 3D mode associated with the setting
void SetStereo3DCrosstalkCancelation
(
Stereo3DOutputMode mode,
Single value
)
Set the crosstalk cancelation amount for the given stereoscopic 3D mode.
Parameters:
mode: the stereoscopic 3D mode associated with the setting
value: amount of crosstalk cancelation
Boolean GetIncludeCrosstalkCancelationInRenders
(
Stereo3DOutputMode mode
)
Get whether to include crosstalk cancelation in renders for the given stereoscopic 3D mode.
Parameters:
mode: the stereoscopic 3D mode associated with the setting
void SetIncludeCrosstalkCancelationInRenders
(
Stereo3DOutputMode mode,
Boolean value
)
Set whether to include crosstalk cancelation in renders for the given stereoscopic 3D mode.
Parameters:
mode: the stereoscopic 3D mode associated with the setting
value: whether crosstalk cancelation is included in renders
Boolean MatchProjectSettingsWithFile
(
String filePath
)
Will match the current project's video settings with the settings of the file in the path. If it succeeds, the function will return true.
Parameters:
filePath: path of the media file to match video properties to
Return Value:
true if it succeeds, false if it doesn't due to the file not being valid video media or the properties already match
Boolean MatchProjectSettingsWithMedia
(
Media media
)
Alters the project's video settings to match the specified media, similar to the way Vegas offers to match settings to the first media added to the project.
Parameters:
media: a non-null media instance that's already added to this project's media pool.
Return Value:
true if it succeeds, false if it doesn't due to the file not being valid video media or the properties already match
Region Class

Represents a region marker on the project time line.

Syntax:
class Region : Marker
Constructors: Summary:
Region
(
Timecode position,
Timecode length
)
Create a new region marker.
Parameters:
position: position of new region
length: length of new region
Region
(
Timecode position,
Timecode length,
String label
)
Create a new region marker.
Parameters:
position: position of new region
length: length of new region
label: label of new region
Public Properties: Summary:
Timecode Length Get or set the region marker's length.
Timecode End Get or set the region marker's end time.
Public Methods: Summary:
override Boolean Equals
(
Object obj
)
Determines whether the specified object is equal to this Region.
Parameters:
obj: Object to compare with this Region.
override Int32 GetHashCode() Serves as a hash function for Region objects, suitable for use in hashing algorithms and data structures like a hash table.
Public Operators: Summary:
static Boolean operator ==
(
Region a,
Region b
)
Determines whether the specified Region objects are equal.
Parameters:
a: left hand side of operator
b: right hand side of operator
static Boolean operator !=
(
Region a,
Region b
)
Determines whether the specified Region objects are not equal.
Parameters:
a: left hand side of operator
b: right hand side of operator
RegionList Class

List of Region objects.

Syntax:
class RegionList : BaseMarkerList<Region>
RenderArgs Class

Arguments for a render operation

Syntax:
class RenderArgs : IRenderArgs
Constructors: Summary:
RenderArgs() Obsolete: Use RenderArgs(Project.ActiveProject) instead
Public Properties: Summary:
String OutputFile Get or set the full path of the output file.
String OutputFileName Get the name of the output file.
RenderTemplate RenderTemplate Get or set the render template to use for the render operation.
Timecode Start Get or set project start time of the region to render.
Timecode Length Get or set length of the region to render.
Boolean UseSelection Get or set whether to render the currently selected region of the project.
Boolean IncludeMarkers Get or set whether to include the project markers and regions in the output file.
Boolean StretchToFill Get or set whether to scale video to match the size of the output file.
Boolean SaveAsMonoStreams Get or set whether to save audio as separate mono streams.
Boolean SaveAsMono Get or set whether to save audio as a single mono stream.
Boolean UseChannelMapping Get or set whether to use multichannel mapping for rendering (when applicable).
Boolean UseProjectRotation Get or set whether to use project output rotation settings (when applicable).
Boolean SaveProjectPathLink Get or set whether to save a relative path link to the current project in the rendered media file (when applicable).
Boolean ShowOpenButtonsOnComplete Get or set whether to show the buttons that open the rendered file or folder on the render progress dialog.
Renderer Class

Represents a render plug-in.

Syntax:
class Renderer
Public Properties: Summary:
String Name Get the name of the render plug-in (same as FileTypeName).
String FileTypeName Get the name of the file type created by the render plug-in.
String FileExtension Get the default file extension associated with the render plug-in.
String[] FileExtensions Get all of the file extensions associated with the render plug-in.
Boolean SupportsAudio Get whether the render plug-in supports audio streams.
Boolean SupportsVideo Get whether the render plug-in supports video streams.
RenderTemplates Templates Get the collection of render templates for the render plug-in.
Boolean SupportsMultistream Get a value that indicates whether the renderer supports multiple media streams.
Boolean SupportsMarkers Get a value that indicates whether the renderer supports media markers and/or regions.
Boolean SupportsCommands Get a value that indicates whether the renderer supports command markers.
Boolean SupportsMultichannel Get a value that indicates whether the renderer supports more than 2 audio channels per stream.
Boolean SupportsLinkedProject Get a value that indicates whether the renderer supports linked projects for launching the creator app.
Boolean HasReader Get a value that indicates whether Vegas has a reader for the file formats created by this renderer.
Public Methods: Summary:
static Renderer CreateInstance
(
Guid classID
)
Obsolete: Use CreateInstance(project, classID) instead
Parameters:
classID:
override String ToString() Combines the FileTypeName and FileExtension strings.
Int32 TemplateCount() Get the number of templates available for this renderer
RenderTemplate CreateRenderTemplate
(
Byte[] templateData
)
Create a RenderTemplate from the template data.
Parameters:
templateData:
RenderTemplate CreateRenderTemplate
(
UInt32 templateID
)
Create a RenderTemplate of the given templateID.
Parameters:
templateID:
Renderers Class

Collection of render plug-ins.

Syntax:
class Renderers : BaseList<Renderer>
Public Properties: Summary:
Boolean IsFixedSize Indicates whether the collection has a fixed size.
Boolean IsReadOnly Indicates whether the collection is read only.
Public Methods: Summary:
Renderer FindByName
(
String rendererName
)
Finds a renderer by name.
Parameters:
rendererName: the name of the renderer
Renderer FindByClassID
(
Guid classID
)
Finds a renderer by class id.
Parameters:
classID: the class id of the renderer
RenderStatus Enumeration

Enumeration of return values for render commands.

Syntax:
enum RenderStatus
Fields: Summary:
RenderStatus.Unknown unknown render status
RenderStatus.Queued render queued
RenderStatus.NothingToDo given the arguments, there was nothing to render
RenderStatus.Rendering render in progress
RenderStatus.Stitching stitching segments
RenderStatus.Complete render completed
RenderStatus.Canceled render canceled
RenderStatus.Failed render failed
RenderStatus.Quit application was quit mid-render
RenderStatusEventArgs Class

Arguments provided to RenderFinished and RenderProgress event handlers.

Syntax:
class RenderStatusEventArgs : EventArgs
Public Fields: Summary:
RenderStatus Status Get the current status of the render operation.
Int32 Result Get the result code (HRESULT) of the render operation.
String ErrorMessage Get the error message string (if any) for the render operation.
Int32 PercentComplete Get the percent of the render operation that has completed.
Public Methods: Summary:
String ResultDescription() Returns a description of the render operation's status or, if available, its error message.
RenderTemplate Class

Represents a render template.

Syntax:
class RenderTemplate
Public Properties: Summary:
Int32 Index Get the list index of this render template or -1 if it is not a list member.
Guid TemplateGuid Get the unique guid associated with this render template.
String Name Get the name of the render template.
String Description Get the description of the render template.
String Notes Get the notes of the render template.
Int32 VideoStreamCount Get the number of video streams in the render template.
Int64 TotalBitrate Get the average data rate of the encoded video and audio combined in bits per second.
Int64 VideoBitrate Get the average data rate of the encoded video in bits per second.
Int64 AudioBitrate Get the average data rate of the encoded audio in bits per second.
Int64 VideoDataRate Depricated. Use the VideoBitrate property instead.
Int32 AudioStreamCount Get the number of audio streams in the render template.
Int32 AudioChannelCount Get the number of audio channels in the render template.
AudioChannelFlags AudioChannelFlags Get the audio channel flags (speaker positions) of the render template.
UInt32 AudioSampleRate Get the audio sample rate of the render template.
Int32 AudioBitsPerSample Get the number of bits per audio sample of the render template.
Int32 VideoWidth Get the width of the video in the render template.
Int32 VideoHeight Get the height of the video in the render template.
Double VideoPixelAspectRatio Get the pixel aspect of ratio the video in the render template.
Double VideoFrameRate Get the frame rate of the video in the render template.
String[] FileExtensions Get the file extensions for the set of files this render template will produce.
Public Methods: Summary:
Boolean IsValid() Indicates whether the render template is valid.
override String ToString() Returns a string representation the render template (same as Name property).
RenderTemplates Class

Collection of templates for a render plug-in.

Syntax:
class RenderTemplates : BaseList<RenderTemplate>
Public Properties: Summary:
Boolean IsFixedSize Indicates whether the collection has a fixed size.
Boolean IsReadOnly Indicates whether the collection is read only.
Public Methods: Summary:
RenderTemplate FindByName
(
String templateName
)
Finds a render template by name.
Parameters:
templateName: the name of the render template to find.
void Refresh() Refresh the list of render templates.
RenderTemplate FindByGuid
(
Guid presetGUID
)
Finds a render template by GUID.
Parameters:
presetGUID: the GUID of the render template to find.
RenderTemplate[] FindProjectMatches
(
Project project
)
Sorts the template list in order of most-closely to least-closely matching the project.
Parameters:
project: a project to compare to
Return Value:
a list of templates in the order described above
RulerFormat Enumeration

Enumeration of ruler formats.

Syntax:
enum RulerFormat
Fields: Summary:
RulerFormat.Samples samples
RulerFormat.Time time
RulerFormat.Seconds seconds
RulerFormat.TimeAndFrames time and frames
RulerFormat.AbsoluteFrames absolute frames
RulerFormat.MeasuresAndBeats measures and beats
RulerFormat.FeetAndFrames16mm Feet and Frames 16mm (40 fpf)
RulerFormat.FeetAndFrames35mm Feet and Frames 35mm (16 fpf)
RulerFormat.SmpteFilmSyncIVTC SMPTE Film Sync IVTC (23.976 fps, Video)
RulerFormat.SmpteFilmSync SMPTE Film Sync (24 fps, Film)
RulerFormat.SmpteEBU SMPTE EBU (25 fps, Video)
RulerFormat.SmpteNonDrop SMPTE Non-Drop (29.97 fps, Video)
RulerFormat.SmpteDrop SMPTE Drop (29.97 fps, Video)
RulerFormat.Smpte30 SMPTE 30 (30 fps, Audio)
RulerFormat.AudioCDTime Audio CD time
RulerFormat.Nanoseconds units of 100 nanoseconds
RulerFormat.Microseconds microseconds
RulerProperties Class

Represents a project's ruler properties.

Syntax:
class RulerProperties
Public Properties: Summary:
RulerFormat Format Get or set the ruler format.
Timecode StartTime Get or set the ruler start time.
Double BeatsPerMinute Get or set the beats per minute.
UInt32 BeatsPerMeasure Get or set the beats per measure.
BeatValue BeatValue Get or set the beat value.
ScriptArg Class

Script argument name/value pair.

Syntax:
class ScriptArg
Constructors: Summary:
ScriptArg() Construct a new script argument with no name or value.
ScriptArg
(
String szArg
)
Construct a new script argument with name and value separated by the '=' or ':' character.
Parameters:
szArg: Argument name and value separated by the '=' or ':' character.
Public Fields: Summary:
String Name Script argument name.
String Value Script argument value.
Public Methods: Summary:
override String ToString() Get the string representation of the script argument.
ScriptArgs Class

Represents a list of script arguments.

Syntax:
class ScriptArgs : CollectionBase
Public Properties: Summary:
ScriptArg Item
(
Int32 index
)
Get or set a script argument by index.
Parameters:
index: Index of the script argument to get or set.
Public Methods: Summary:
void Add
(
ScriptArg aArg
)
Add a script argument to the list.
Parameters:
aArg: Script argument to add to the list.
void Remove
(
Int32 index
)
Add a script argument to the list by index.
Parameters:
index: Index of the script argument to remove from the list.
Boolean Exists
(
String sKey
)
Determines whether a script argument is contained in the list.
Parameters:
sKey: The name of the script argument.
Boolean Exists
(
String sKey,
Boolean fIgnoreCase
)
Determines whether a script argument is contained in the list.
Parameters:
sKey: The name of the script argument.
fIgnoreCase: Whether to ignore capitalization when searching for the argument.
String ValueOf
(
String sKey
)
Get the value of the script argument with a given name.
Parameters:
sKey: The name of the script argument.
String ValueOf
(
String sKey,
Boolean fIgnoreCase
)
Get the value of the script argument with a given name.
Parameters:
sKey: The name of the script argument.
fIgnoreCase: Whether to ignore capitalization when searching for the argument.
ScriptEngineType Enumeration

Enumeration of script engine types supported by Vegas

Syntax:
enum ScriptEngineType
Fields: Summary:
ScriptEngineType.Unknown Unknown script engine type
ScriptEngineType.CSharp C# .NET using the CodeDOM compiler
ScriptEngineType.JScript JScript .NET using the CodeDOM compiler
ScriptEngineType.VBScript Visual Basic .NET using the CodeDOM compiler
ScriptEngineType.Precompiled Precompiled .NET assembly
ScriptEngineType.JScript_VSA JScript .NET using the VSA compiler (obsolete, use CodeDOM)
ScriptEngineType.VBScript_VSA Visual Basic .NET using the VSA compiler (obsolete, use CodeDOM)
Stereo3DInputMode Enumeration

Enumeration of stereoscopic 3D input modes.

Syntax:
enum Stereo3DInputMode
Fields: Summary:
Stereo3DInputMode.Off Stereoscopic 3D off.
Stereo3DInputMode.PairWithNextStream Pair with next stream.
Stereo3DInputMode.SideBySideHalf Side by side (half).
Stereo3DInputMode.SideBySideFull Side by side (full).
Stereo3DInputMode.TopBottomHalf Top/bottom (half).
Stereo3DInputMode.TopBottomFull Top/bottom (full).
Stereo3DInputMode.LineAlternate Line alternate.
Stereo3DOutputMode Enumeration

Enumeration of stereoscopic 3D output modes.

Syntax:
enum Stereo3DOutputMode
Fields: Summary:
Stereo3DOutputMode.Off Stereoscopic 3D off.
Stereo3DOutputMode.SideBySideHalf Side by side (half).
Stereo3DOutputMode.SideBySideFull Side by side (full).
Stereo3DOutputMode.TopBottomHalf Top/bottom (half).
Stereo3DOutputMode.TopBottomFull Top/bottom (full).
Stereo3DOutputMode.AnaglyphicRedCyan Anaglyphic red cyan.
Stereo3DOutputMode.AnaglyphicAmberBlue Anaglyphic amber blue.
Stereo3DOutputMode.AnaglyphicGreenMagenta Anaglyphic green magenta.
Stereo3DOutputMode.LineAlternate Line alternate.
Stereo3DOutputMode.Checkerboard Checkerboard.
Stereo3DOutputMode.LeftOnly Left eye only.
Stereo3DOutputMode.RightOnly Right eye only.
Stereo3DOutputMode.Blend Blend.
Stereo3DOutputMode.Difference Difference.
Stereo3DOutputMode.LeftAndRight Separate left and right streams.
Subclip Class

Represents a subclip of a media file.

Syntax:
class Subclip : Media
Constructors: Summary:
Subclip
(
Project project,
String path,
Timecode start,
Timecode length,
Boolean reverse,
String displayName
)
Create a new media subclip.
Parameters:
project: Project.ActiveProject or a specific project
path: full path of source media file
start: start offset in source media
length: length of subclip
reverse: whether the subclip is reversed
displayName: display name of subclip
Subclip
(
String path,
Timecode start,
Timecode length,
Boolean reverse,
String displayName
)
Obsolete: Use Subclip(project,...) instead
Parameters:
path:
start:
length:
reverse:
displayName:
Public Properties: Summary:
Media ParentMedia Get the media object from which a subclip is derived.
Timecode Start Get the start offset of a subclip.
Boolean IsReversed Get a value indicating whether a subclip is reversed.
Public Methods: Summary:
override Boolean Equals
(
Object obj
)
Determines whether the specified object is equal to the current Subclip.
Parameters:
obj: Object to compare with the current Subclip.
override Int32 GetHashCode() Serves as a hash function for Subclip objects, suitable for use in hashing algorithms and data structures like a hash table.
Public Operators: Summary:
static Boolean operator ==
(
Subclip a,
Subclip b
)
Determines whether the specified Subclip objects are equal.
Parameters:
a: left hand side of operator
b: right hand side of operator
static Boolean operator !=
(
Subclip a,
Subclip b
)
Determines whether the specified Subclip objects are not equal.
Parameters:
a: left hand side of operator
b: right hand side of operator
SummaryProperties Class

Represents a project's summary properties.

Syntax:
class SummaryProperties
Public Properties: Summary:
String Title Get or set the title.
String Artist Get or set the artist.
String Engineer Get or set the engineer.
String Copyright Get or set the copyright.
String Comments Get or set the comments.
Public Methods: Summary:
String GetItem
(
SummaryProperties.FourCC fcc
)
Get summary item using FourCC code as key
Parameters:
fcc:
String GetItem
(
String labelOrFcc
)
Get summary item a FourCC code or its friendly name as key
Parameters:
labelOrFcc:
void SetItem
(
SummaryProperties.FourCC fcc,
String value
)
Set A summary item using FourCC code as key
Parameters:
fcc:
value:
SummaryProperties.FourCC SetItem
(
String labelOrFcc,
String value
)
Set summary item using a FourCC code or its friendly name as key.
Parameters:
labelOrFcc:
value:
Return Value:
The FourCC code that was used to set the item.
Take Class

Represents a take for an event.

Syntax:
class Take
Constructors: Summary:
Take
(
MediaStream mediaStream,
Boolean makeActive,
String name
)
Obsolete: Use Take.CreateInstance(project,...) instead
Parameters:
mediaStream:
makeActive:
name:
Take
(
MediaStream mediaStream,
Boolean makeActive
)
Obsolete: Use Take.CreateInstance(project,...) instead
Parameters:
mediaStream:
makeActive:
Take
(
MediaStream mediaStream
)
Obsolete: Use Take.CreateInstance(project,...) instead
Parameters:
mediaStream:
Public Properties: Summary:
Int32 Index Get the list index of the take.
Media Media Get the media object associated with the take.
MediaStream MediaStream Get the media stream object associated with the take.
String MediaPath Get the path of the media file associated with the take.
String Name Get or set the name of the take.
Int32 StreamIndex Get the index of the media stream associated with the take.
Timecode Offset Get or set the start time of the take's media stream.
Timecode Length Get the length of the take's media stream.
Timecode AvailableLength Get the length of time available in the take's media stream.
Boolean IsActive Indicates whether or not the take is active.
Int32 FirstAudioChannelIndex Get the zero-based index of the first audio stream channel used for the take.
Int32 AudioChannelCount Get the number of audio channels used for the take.
Public Methods: Summary:
static Take CreateInstance
(
Project project,
MediaStream mediaStream,
Boolean makeActive,
String name
)
Creates a new take.
Parameters:
project: Project.ActiveProject or a specific project
mediaStream: The media stream used in the new take.
makeActive: A value that indicates whether the new take should be active.
name: The name of the new take.
static Take CreateInstance
(
Project project,
MediaStream mediaStream,
Boolean makeActive
)
Creates a new take.
Parameters:
project: Project.ActiveProject or a specific project
mediaStream: The media stream used in the new take.
makeActive: A value that indicates whether the new take should be active.
static Take CreateInstance
(
Project project,
MediaStream mediaStream
)
Creates a new take.
Parameters:
project: Project.ActiveProject or a specific project
mediaStream: The media stream used in the new take.
Boolean IsValid() Indicates whether the take has been added to an event.
override Int32 GetHashCode() Serves as a hash function for Take objects, suitable for use in hashing algorithms and data structures like a hash table.
override Boolean Equals
(
Object obj
)
Determines whether the specified object is equal to the current Take.
Parameters:
obj: Object to compare with the current Take.
void SetAudioChannels
(
Int32 firstChannelIndex,
Int32 channelCount
)
Set the index and number of audio channels used for the take (valid only for audio streams with 3 or more channels).
Parameters:
firstChannelIndex: Zero-based index of the first audio channel.
channelCount: Number of audio channels (1 or 2).
Public Operators: Summary:
static Boolean operator ==
(
Take a,
Take b
)
Determines whether the specified Take objects are equal.
Parameters:
a: left hand side of operator
b: right hand side of operator
static Boolean operator !=
(
Take a,
Take b
)
Determines whether the specified Take objects are not equal.
Parameters:
a: left hand side of operator
b: right hand side of operator
Takes Class

Collection of takes associated with an event. It's very important to note that removing a take from this list invalidates all Take instances after the removed one because the take index values are all modified. So, removing should be done from back to front.

Syntax:
class Takes : BaseList<Take>
Timecode Class

Represents a time duration or position in Vegas. The constructors all apply to the active project. We recommend using ProjectTimecode instead to be explicit about which project's framerate your timecodes are evaluated against.

Syntax:
class Timecode : IComparable
Constructors: Summary:
Timecode() Create a new timecode representing zero time for the active project.
Timecode
(
Double milliseconds
)
Obsolete. Use Timecode.FromMilliseconds
Parameters:
milliseconds: number of milliseconds
Timecode
(
String timestamp
)
Obsolete. Use Timecode.FromString
Parameters:
timestamp: a string representation of the new timecode
Public Properties: Summary:
Int64 Nanos Get or set the timecode's internal representation in hundred nanosecond units.
Int64 FrameCount Get or set the number of frames represented by the timecode.
Double FrameRate Just for reference and convenience, this is the framerate that is used for any frame/time conversions for this timecode. It is shorthand for myProject.Video.FrameRate.
Public Methods: Summary:
static Timecode FromString
(
String timestamp
)
Create a new (duration) Timecode from a string representation using the current project's ruler format.
Parameters:
timestamp: a string representation of the new timecode
static Timecode FromPositionString
(
String timestamp
)
Create a new (position) Timecode from a string representation using the current project's ruler format.
Parameters:
timestamp: a string representation of the new timecode
static Timecode FromString
(
String timestamp,
RulerFormat format
)
Create a new (duration) Timecode from a string representation using the provided ruler format.
Parameters:
timestamp: a string representation of the new timecode
format: ruler format to use for conversion
static Timecode FromPositionString
(
String timestamp,
RulerFormat format
)
Create a new (position) Timecode from a string representation using the provided ruler format.
Parameters:
timestamp: a string representation of the new timecode
format: ruler format to use for conversion
static Timecode FromString
(
String timestamp,
RulerFormat format,
Boolean isPosition
)
Create a new Timecode from a string representation using the provided ruler format and a value that indicates whether the timecode represents a position or duration.
Parameters:
timestamp: a string representation of the new timecode
format: ruler format to use for conversion
isPosition: indicates whether the timecode represents a position (true) or duration (false)
static Timecode FromMilliseconds
(
Double milliseconds
)
Create a new Timecode from a number of milliseconds.
Parameters:
milliseconds: number of milliseconds.
static Timecode FromSeconds
(
Double seconds
)
Create a new Timecode from a number of seconds.
Parameters:
seconds: number of seconds.
static Timecode FromNanos
(
Int64 nanos
)
Create a new Timecode from a number of hundred nanosecond units.
Parameters:
nanos: number of hundred nanosecond time units.
static Timecode FromFrames
(
Int64 frames
)
Create a new Timecode from a number of frames.
Parameters:
frames: number of frames (frame length depends on current project's ruler format).
override Boolean Equals
(
Object obj
)
Determines whether the specified object is equal to the current Timecode.
Parameters:
obj:
override Int32 GetHashCode() Serves as a hash function for Timecode objects, suitable for use in hashing algorithms and data structures like a hash table.
override String ToString() Get the string representation of the timecode using the current project's ruler format.
String ToPositionString() Get the string representation of the (position) timecode using the current project's ruler format.
String ToString
(
RulerFormat format
)
Get the string representation of the timecode using the provided ruler format.
Parameters:
format: ruler format to use for conversion
String ToPositionString
(
RulerFormat format
)
Get the string representation of a (position) timecode using the provided ruler format.
Parameters:
format: ruler format to use for conversion
String ToString
(
RulerFormat format,
Boolean isPosition
)
Get the string representation of a timecode using the provided ruler format and flag that indicates whether the timecode represents a duration or position.
Parameters:
format: ruler format to use for conversion
isPosition: indicates whether the timecode represents a position (true) or duration (false)
Int32 CompareTo
(
Object other
)
Compares this timecode to another.
Parameters:
other: Timecode object which is compared to this instance.
Double ToMilliseconds() Convert the timecode to a number of milliseconds.
Public Operators: Summary:
static Boolean operator ==
(
Timecode a,
Timecode b
)
Determines whether the specified Timecode objects are equal.
Parameters:
a: left hand side of operator
b: right hand side of operator
static Boolean operator !=
(
Timecode a,
Timecode b
)
Determines whether the specified Timecode objects are not equal.
Parameters:
a: left hand side of operator
b: right hand side of operator
static Boolean operator <
(
Timecode a,
Timecode b
)
Indicates whether one timecode is less than another.
Parameters:
a: left hand side of operator
b: right hand side of operator
static Boolean operator >
(
Timecode a,
Timecode b
)
Indicates whether one timecode is greater than another.
Parameters:
a: left hand side of operator
b: right hand side of operator
static Boolean operator <=
(
Timecode a,
Timecode b
)
Indicates whether one timecode is less than or equal to another.
Parameters:
a: left hand side of operator
b: right hand side of operator
static Boolean operator >=
(
Timecode a,
Timecode b
)
Indicates whether one timecode is greater than or equal to another.
Parameters:
a: left hand side of operator
b: right hand side of operator
static Timecode operator +
(
Timecode a,
Timecode b
)
Add one timecode to another.
Parameters:
a: left hand side of operator
b: right hand side of operator
static Timecode operator -
(
Timecode a,
Timecode b
)
Subtract one timecode to another.
Parameters:
a: left hand side of operator
b: right hand side of operator
static Timecode operator ++
(
Timecode value
)
Increment a timecode by one frame.
Parameters:
value: Timecode value to increment
static Timecode operator --
(
Timecode value
)
Decrement a timecode by one frame.
Parameters:
value: Timecode value to decrement
Track Class

Represents an audio or video track.

Syntax:
abstract class Track
Public Properties: Summary:
MediaType MediaType Get the track's media type.
TrackEvents Events Get the collection of track events.
Envelopes Envelopes Get the collection of track envelopes.
Effects Effects Get the collection of track effects.
String Name Get or set the name of the track.
Timecode Length Get the length of the track.
Int32 Index Get the list index of the track.
Int32 DisplayIndex Get the display index of the track.
Boolean Solo Get or set whether the track is soloed.
Boolean Mute Get or set whether the track is muted.
Boolean Selected Get or set whether the track is selected.
BusTrack BusTrack Get or set the bus to which the track is routed.
CustomDataContainer CustomData Gets the container for custom data associated with the track.
Public Methods: Summary:
override Boolean Equals
(
Object that
)
Determines whether the specified object is equal to the current object.
Parameters:
that: Object to compare with the current object.
override Int32 GetHashCode() Serves as a hash function suitable for use in hashing algorithms and data structures like a hash table.
abstract Boolean IsAudio() Indicates if the track's media type is audio.
abstract Boolean IsVideo() Indicates if the track's media type is video.
Boolean IsValid() Indicates if the track has been added to the project.
Public Operators: Summary:
static Boolean operator ==
(
Track a,
Track b
)
Determines whether the specified objects are equal.
Parameters:
a: left hand side of operator
b: right hand side of operator
static Boolean operator !=
(
Track a,
Track b
)
Determines whether the specified objects are not equal.
Parameters:
a: left hand side of operator
b: right hand side of operator
TrackEvent Class

Represents a track event.

Syntax:
abstract class TrackEvent
Public Properties: Summary:
MediaType MediaType Get the event's media type.
Track Track Get or set the event's track.
Takes Takes Get the event's collection of takes.
Take ActiveTake Get or set the event's active take.
Fade FadeIn Get an object that represents the event's fade in.
Fade FadeOut Get an object that represents the event's fade out.
Int32 Index Get the list index of the event.
String Name Get or set the event's name.
Timecode Start Get or set the event's start time.
Timecode Length Get or set the event's length.
Timecode End Get or set the event's end time.
Double PlaybackRate Get or set the event's playback rate.
Boolean Mute Get or set whether the event is muted.
Boolean Locked Get or set whether the event is locked.
Boolean Loop Get or set whether the event is looped.
Boolean Selected Get or set whether the event is selected.
Boolean IsGrouped Get whether the event is grouped with other events.
TrackEventGroup Group Get the group (if any) to which this event belongs.
Timecode SyncOffset Get the event's synchronization offset.
TrackEvent SyncEvent Get the event's synchronization event (the event it's SyncOffset is relative to).
Timecode SnapOffset Get or set the snap offset for the event.
CustomDataContainer CustomData Gets the container for custom data associated with the event.
Int32 SourceStreamIndex Get the stream index that this event uses from the source media.
UInt32 SourceFirstChannel Get the first channel from the source that this event uses.
UInt32 SourceNumOfChannels Get the number of channels from the source that this event uses.
Public Methods: Summary:
override Int32 GetHashCode() Serves as a hash function for TrackEvent objects, suitable for use in hashing algorithms and data structures like a hash table.
override Boolean Equals
(
Object that
)
Determines whether the specified object is equal to the current TrackEvent.
Parameters:
that: Object to compare with the current TrackEvent.
abstract Boolean IsAudio() Indicates if the event's media type is audio.
abstract Boolean IsVideo() Indicates if the event's media type is video.
Boolean IsValid() Indicates if the event has been added to a track.
Take AddTake
(
MediaStream mediaStream
)
Add a new take to the track event.
Parameters:
mediaStream: The media stream used in the new take.
Return Value:
The new Take object.
Take AddTake
(
MediaStream mediaStream,
Boolean makeActive
)
Add a new take to the track event.
Parameters:
mediaStream: The media stream used in the new take.
makeActive: A value that indicates whether the new take should be active.
Return Value:
The new Take object.
Take AddTake
(
MediaStream mediaStream,
Boolean makeActive,
String name
)
Add a new take to the track event.
Parameters:
mediaStream: The media stream used in the new take.
makeActive: A value that indicates whether the new take should be active.
name: The name of the new take.
Return Value:
The new Take object.
void AdjustStartLength
(
Timecode start,
Timecode length,
Boolean adjustTakes
)
Adjusts the event's start time and length.
Parameters:
start: new start of event
length: new length of event
adjustTakes: whether to adjust the edges of the event's takes
TrackEvent Split
(
Timecode offset
)
Split the event at the given offset.
Parameters:
offset: position of the split relative to the event start.
TrackEvent Copy
(
Track destination,
Timecode startTime
)
Copy the event and place it in the given track at the given start time.
Parameters:
destination: destination track of duplicate event.
startTime: start time of duplicate event.
void AdjustPlaybackRate
(
Double rate,
Boolean adjustStart
)
Adjusts the event's playback rate.
Parameters:
rate: new playback rate
adjustStart: whether to alter the start or the end of the event's take
void SyncByMove
(
Boolean selected
)
Sync event by moving it.
Parameters:
selected: Sync selection (target event is dominant media type for sync)
void SyncBySlip
(
Boolean selected
)
Sync event by slipping media.
Parameters:
selected: Sync selection (target event is dominant media type for sync)
Public Operators: Summary:
static Boolean operator ==
(
TrackEvent a,
TrackEvent b
)
Determines whether the specified objects are equal.
Parameters:
a: left hand side of operator
b: right hand side of operator
static Boolean operator !=
(
TrackEvent a,
TrackEvent b
)
Determines whether the specified objects are not equal.
Parameters:
a: left hand side of operator
b: right hand side of operator
TrackEventGroup Class

Represents a group of track events.

Syntax:
class TrackEventGroup : BaseList<TrackEvent>
Constructors: Summary:
TrackEventGroup() Obsolete: Use TrackEventGroup(project,...) instead
Public Methods: Summary:
override Boolean Equals
(
Object obj
)
Determines whether the specified object is equal to the current TrackEventGroup.
Parameters:
obj: Object to compare with the current TrackEventGroup.
override Int32 GetHashCode() Serves as a hash function for TrackEventGroup objects, suitable for use in hashing algorithms and data structures like a hash table.
Public Operators: Summary:
static Boolean operator ==
(
TrackEventGroup a,
TrackEventGroup b
)
Determines whether the specified TrackEventGroup objects are equal.
Parameters:
a: left hand side of operator
b: right hand side of operator
static Boolean operator !=
(
TrackEventGroup a,
TrackEventGroup b
)
Determines whether the specified TrackEventGroup objects are not equal.
Parameters:
a: left hand side of operator
b: right hand side of operator
TrackEventGroups Class

Collection of track event groups.

Syntax:
class TrackEventGroups : BaseList<TrackEventGroup>
TrackEvents Class

Collection of track events.

Syntax:
class TrackEvents : BaseList<TrackEvent>
TrackGlowKeyframe Class

Represents glow effect track motion keyframes.

Syntax:
class TrackGlowKeyframe : BaseTrackMotionKeyframe
Public Properties: Summary:
Double Blur Get or set the amount of blur for the track glow effect.
Double Intensity Get or set the intensity of the track glow effect.
VideoColor Color Get or set the color of the track glow effect.
TrackGlowKeyframeList Class

Represents a list of glow effect track motion keyframes.

Syntax:
class TrackGlowKeyframeList : BaseTrackMotionKeyframeList<TrackGlowKeyframe>
TrackGroup Class

Represents a group of tracks.

Syntax:
class TrackGroup : BaseList<Track>
Public Properties: Summary:
String Name Get or set the name of the track group.
Boolean Mute Get or set whether every track in the group is muted.
Boolean Solo Get or set whether every track in the group is soloed.
Public Methods: Summary:
override Boolean Equals
(
Object obj
)
Determines whether the specified object is equal to this track group.
Parameters:
obj: Object to compare with the current track group.
override Int32 GetHashCode() Serves as a hash function for track groups, suitable for use in hashing algorithms and data structures like a hash table.
void ExpandTrackGroup() Expand the track group in the timeline
void CollapseTrackGroup() Collapse the track group in the timeline
Boolean InsertTrack
(
Track track,
Int32 ixWhereToInsert
)
Inserts an existing track into a group
Parameters:
track: left hand side of operator
ixWhereToInsert: pass a 0 to insert at the beginning of the group pass a -1 to insert at the end of the group pass any other number to put in the middle...if the number exceeds the size of the group, the track will be put at the end of the group.
Public Operators: Summary:
static Boolean operator ==
(
TrackGroup a,
TrackGroup b
)
Determines whether the specified track groups are equal.
Parameters:
a: left hand side of operator
b: right hand side of operator
static Boolean operator !=
(
TrackGroup a,
TrackGroup b
)
Determines whether the specified track groups are not equal.
Parameters:
a: left hand side of operator
b: right hand side of operator
TrackGroups Class

Collection of track groups.

Syntax:
class TrackGroups : BaseList<TrackGroup>
TrackMotion Class

Provides access to video track motion data.

Syntax:
class TrackMotion
Public Properties: Summary:
TrackMotionScaleFactors ScaleFactors Get the scale factors used to map keyframe data from stored units to display units.
Boolean HasMotionData Get a value that indicates whether the track contains motion data.
TrackMotionKeyframeList MotionKeyframes Get the list of track motion (position) keyframes.
Boolean HasShadowData Get a value that indicates whether the track contains shadow data.
Boolean ShadowEnabled Get or set a value that indicates whether the track shadow effect is enabled.
TrackShadowKeyframeList ShadowKeyframes Get the list of track shadow keyframes.
Boolean HasGlowData Get a value that indicates whether the track contains glow data.
Boolean GlowEnabled Get or set a value that indicates whether the track glow effect is enabled.
TrackGlowKeyframeList GlowKeyframes Get the list of track glow keyframes.
Double LensSeparation Get or set the Stereoscopic 3D Camera Lens Separation percentage.
Double DepthAdjust Get or set the Stereoscopic 3D Camera Depth Adjust percentage.
Public Methods: Summary:
TrackMotionKeyframe InsertMotionKeyframe
(
Timecode position
)
Inserts a track motion (position) keyframe at the specified time.
Parameters:
position: The point on the timeline where the keyframe is inserted.
Return Value:
The new keyframe.
TrackShadowKeyframe InsertShadowKeyframe
(
Timecode position
)
Inserts a track shadow keyframe at the specified time.
Parameters:
position: The point on the timeline where the keyframe is inserted.
Return Value:
The new keyframe.
TrackGlowKeyframe InsertGlowKeyframe
(
Timecode position
)
Inserts a track glow keyframe at the specified time.
Parameters:
position: The point on the timeline where the keyframe is inserted.
Return Value:
The new keyframe.
TrackMotionKeyframe Class

Represents positional track motion keyframes.

Syntax:
class TrackMotionKeyframe : BaseTrackMotionKeyframe
Public Properties: Summary:
Double PositionZ Get or set the z coordinate of the video position.
Double Depth Get or set the depth of the video.
Double RotationX Get or set rotation of the video around the x axis.
Double RotationY Get or set rotation of the video around the x axis.
Double RotationOffsetZ Get or set the z offset of the axis of rotation.
Double OrientationX Get or set the orientation of the video around the x axis.
Double OrientationY Get or set the orientation of the video around the y axis.
TrackMotionKeyframeList Class

Represents a list of positional track motion keyframes.

Syntax:
class TrackMotionKeyframeList : BaseTrackMotionKeyframeList<TrackMotionKeyframe>
TrackMotionScaleFactors Class

Represents the scale factors used when accessing the stored track motion keyframe data.

Syntax:
class TrackMotionScaleFactors
Constructors: Summary:
TrackMotionScaleFactors() Obsolete: Use TrackMotionScaleFactors(project,...) instead
Public Fields: Summary:
Double X The scale factor used when accessing x coordinates.
Double Y The scale factor used when accessing y coordinates.
Double Z The scale factor used when accessing z coordinates.
Double W The scale factor used when accessing width values.
Double H The scale factor used when accessing height values.
Double D The scale factor used when accessing depth values.
Double A The scale factor used when accessing angles.
Double P The scale factor used when accessing percentages.
Public Methods: Summary:
void Reset() Resets the track motion scale factors relative to the project's current video height and aspect ratio.
void Clear() Clears the track motion scale factors so that keyframe data is represented in native units.
Tracks Class

Collection of tracks in a project.

Syntax:
class Tracks : BaseList<Track>
TrackShadowKeyframe Class

Represents shadow effect track motion keyframes.

Syntax:
class TrackShadowKeyframe : BaseTrackMotionKeyframe
Public Properties: Summary:
Double Blur Get or set the amount of blur for the track shadow effect.
Double Intensity Get or set the intensity of the track shadow effect.
VideoColor Color Get or set the color of the track shadow effect.
TrackShadowKeyframeList Class

Represents a list of shadow effect track motion keyframes.

Syntax:
class TrackShadowKeyframeList : BaseTrackMotionKeyframeList<TrackShadowKeyframe>
TransportControl Class

Represents transport controls in Vegas.

Syntax:
class TransportControl
Public Properties: Summary:
Boolean IsPlaying Get a value which indicates whether playback is in progress.
Boolean IsRecording Get a value which indicates whether recording is in progress.
Boolean IsRecordMonitoring Get a value which indicates whether record monitoring is in progress.
Timecode CursorPosition Get or set the cursor position.
Timecode SelectionStart Get or set the start of the timeline selection.
Timecode SelectionLength Get or set the length of the timeline selection.
Timecode PlayCursorPosition Get the playback cursor position.
Boolean LoopMode Get or set whether playback is looped around the selection
Timecode LoopRegionStart Get or set the start of the timeline loop region.
Timecode LoopRegionLength Get or set the length of the timeline loop region.
Public Methods: Summary:
void Play() Begin playback from the current cursor location.
void PlayFromStart() Begin playback from the start of the project.
void Stop() Stop playback and return to the cursor position.
void Pause() Stop playback and move the cursor to the current position.
void ViewCursor
(
Boolean centered
)
Show the cursor position in the track view, scrolling if necessary.
Parameters:
centered: indicates whether the cursor position should be centered in the track view or, if false, at the nearest edge
void ZoomSelection() Zoom the track view to fit the current selection, scrolling if necessary.
IDisposable Suspend() Suspends the current transport mode.
Return Value:
An IDisposable object that resumes the current transport mode when its Dispose method is called.
IDisposable SuspendForFX() Suspends the current transport mode changes to audio effects.
Return Value:
An IDisposable object that resumes the current transport mode when its Dispose method is called.
Vegas Class

Represents the Vegas application. You can get access to this singleton object via DomainManager.VegasDomainManager.GetVegas()

Syntax:
class Vegas
Public Properties: Summary:
IWin32Window MainWindow Get an interface that provides Vegas' main window handle.
CultureInfo AppCultureInfo Get the CultureInfo that represents the culture used by the application.
String Version Get the version of Vegas.
String TemporaryFilesPath Get the directory that contains Vegas' temporary files (configured by user).
String ApplicationDataPath Obsolete. Use GetApplicationDataPath method.
String InstallationDirectory Get the directory that contains the running Vegas executable and accompanying files.
Project Project Get the current Project
TransportControl Transport Get the transport control object for Vegas' main timeline.
PlugInNode PlugIns Get the root plug-in node.
PlugInNode VideoFX Get the root plug-in node for video effects.
PlugInNode AudioFX Get the root plug-in node for audio effects.
PlugInNode Transitions Get the root plug-in node for video transitions.
PlugInNode Generators Get the root plug-in node for video generators.
PlugInNode VideoCompositeFX Get the root plug-in node for video compositing effects.
Renderers Renderers Get the collection of render plug-ins.
Timecode Cursor Obsolete. Use the CursorPosition property of the TransportControl object.
Boolean LoopPlayback Obsolete. Use the LoopMode property of the TransportControl object.
Boolean LoopMode Obsolete. Use the LoopMode property of the TransportControl object.
Timecode SelectionStart Obsolete. Use the SelectionStart or LoopRegionStart property of the TransportControl object.
Timecode SelectionLength Obsolete. Use the SelectionLength or LoopRegionLength property of the TransportControl object.
Boolean BypassAllAudioFX Get or set whether all audio effects are bypassed.
Boolean ResumePlaybackOnScriptExit Set whether Vegas should resume playback when the script completes.
Boolean UnloadScriptDomainOnScriptExit Set whether Vegas should unload the app domain when the script completes.
Public Methods: Summary:
void LoadDockView
(
IDockView dockview
)
Load the specified dock view.
Parameters:
dockview: the dock view to load
Boolean ActivateDockView
(
String instanceName
)
Attempts to activate the dock view that has specified instance name.
Parameters:
instanceName: the instance name of the dock view
Return Value:
True if the dock view is activated, false otherwise.
Boolean FindDockView
(
String instanceName
)
Indicates whether a dock view that has the specified instance name is loaded.
Parameters:
instanceName: the instance name of the dock view
Return Value:
True if the dock view is loaded, false otherwise.
Boolean FindDockView
(
String instanceName,
out IDockView dockview
)
Attempts to find a dock view that has the specified instance name.
Parameters:
instanceName: the instance name of the dock view
dockview: the dock view
Return Value:
True if the dock view is loaded, false otherwise.
void RunScriptFile
(
String scriptFile
)
Run a script from a file.
Parameters:
scriptFile: the complete file path of the script to run
void RunScriptFile
(
String scriptFile,
String scriptArgs
)
Run a script from a file.
Parameters:
scriptFile: the complete file path of the script to run
scriptArgs: script arguments
void RunScriptText
(
ScriptEngineType engineType,
String scriptText
)
Run a script from a text in memory.
Parameters:
engineType: the type of script engine used to compile the script
scriptText: the text of the script
void RunScriptText
(
ScriptEngineType engineType,
String scriptText,
String scriptArgs
)
Run a script from a text in memory.
Parameters:
engineType: the type of script engine used to compile the script
scriptText: the text of the script
scriptArgs: script arguments
void ShowError
(
String msg
)
Shows error message dialog.
Parameters:
msg: error message
void ShowError
(
String msg,
String details
)
Shows error message dialog.
Parameters:
msg: error message
details: error details
void ShowError
(
Exception e
)
Shows error message dialog.
Parameters:
e: error exception
String GetApplicationDataPath
(
Environment.SpecialFolder baseFolder
)
Get the directory that contains Vegas' application data files.
Parameters:
baseFolder: which application data directory (ApplicationData, LocalApplicationData, or CommonApplicationData)
Boolean NewProject
(
Boolean promptSave,
Boolean showDialog
)
Creates a new project. Unlike CreateEmptyProject, this closes the active project and the new, empty project becomes the active project. This is just like selecting File+New from the menu, but with a bit more control.
Parameters:
promptSave: prompt user to save existing project if needed
showDialog: show the new project dialog
Boolean NewProject() Creates a new project. Unlike CreateEmptyProject, this closes the active project and the new, empty project becomes the active project. This is just like selecting File+New from the menu.
Boolean SaveProjectDialog
(
String fileName
)
Saves the current project to disk after prompting the user with the Save Project dialog. (this simply invokes Vegas.Project.SaveProject with selected arguments)
Parameters:
fileName: Default value of the full path of the project file.
Boolean SaveProject
(
String fileName
)
Saves the current project to disk. (this simply invokes Vegas.Project.SaveProject with selected arguments)
Parameters:
fileName: Full path of the project file.
Boolean SaveProject() Saves the current project to disk. (this simply invokes Vegas.Project.SaveProject with selected arguments)
Boolean ArchiveProject
(
String fileName
)
Archives the current project along with a trimmed copy of all media.
Parameters:
fileName: project file (full path)
Boolean ArchiveProject
(
String fileName,
ArchiveProjectFlags flags
)
Archives the current project along with a trimmed copy of all media.
Parameters:
fileName: project file (full path)
flags: any flags from the ArchiveProjectFlags enumeration
Project ReadProject
(
String path
)
Creates a new project by reading the specified project file. Unlike OpenFile or OpenFileDialog, this does not affect the active project. Instead, this is useful for scripting exported or nested projects.
Parameters:
path: the path for the project file to read
Return Value:
a new Project instance.
Project ReadProject
(
String path,
IProgressCallback callback
)
Creates a new project by reading the specified project file. Unlike OpenFile or OpenFileDialog, this does not affect the active project. Instead, this is useful for scripting exported or nested projects.
Parameters:
path: the path for the project file to read
callback: null or an object to invoke periodically with progress updates
Return Value:
a new Project instance.
Project CreateEmptyProject() Creates a new empty project. Unlike NewProject, this does not affect the active project. Instead, this is useful for scripting temporary projects, like transcoding single media files.
Return Value:
a new Project instance.
Project CreateEmptyProject
(
IProgressCallback callback
)
Creates a new empty project. Unlike NewProject, this does not affect the active project. Instead, this is useful for scripting temporary projects, like transcoding single media files.
Parameters:
callback: null or an object to invoke periodically with progress updates
Return Value:
a new Project instance.
void OpenFile
(
String fileName
)
Open a media or project file.
Parameters:
fileName: The full path of the file to open
void OpenFile
(
String fileName,
Boolean mediaPoolOnly
)
Open a media or project file.
Parameters:
fileName: The full path of the file to open
mediaPoolOnly: Add media files to the media pool only
void ImportFile
(
String fileName
)
Import a media or nested project file into the current project.
Parameters:
fileName: The full path of the file to import
void ImportFile
(
String fileName,
Boolean mediaPoolOnly
)
Import a media or nested project file into the current project.
Parameters:
fileName: The full path of the file to import
mediaPoolOnly: Add media files to the media pool only
DialogResult OpenFileDialog() Open one or more files using Vegas' Open dialog box. If used to select a project file, that will replace the active project just like the File+Open menu but unlike the ReadProject method which does not affect the active project.
DialogResult OpenFileDialog
(
String initialDir
)
Open one or more files using Vegas' Open dialog box. If used to select a project file, that will replace the active project just like the File+Open menu but unlike the ReadProject method which does not affect the active project.
Parameters:
initialDir: The initial directory displayed by the dialog box
DialogResult OpenFileDialog
(
String initialDir,
Boolean mediaPoolOnly
)
Open one or more files using Vegas' Open dialog box. If used to select a project file, that will replace the active project just like the File+Open menu but unlike the ReadProject method which does not affect the active project.
Parameters:
initialDir: The initial directory displayed by the dialog box
mediaPoolOnly: Add selected media files to the media pool only.
DialogResult OpenFileDialog
(
String initialDir,
Boolean mediaPoolOnly,
out String[] filePaths
)
Open one or more files using Vegas' Open dialog box. If used to select a project file, that will replace the active project just like the File+Open menu but unlike the ReadProject method which does not affect the active project.
Parameters:
initialDir: The initial directory displayed by the dialog box
mediaPoolOnly: Add selected media files to the media pool only.
filePaths: Array of file paths selected by the user.
DialogResult ImportFileDialog() Import one or more files using Vegas' Import dialog box.
DialogResult ImportFileDialog
(
String initialDir
)
Import one or more files using Vegas' Import dialog box.
Parameters:
initialDir: The initial directory displayed by the dialog box
DialogResult ImportFileDialog
(
String initialDir,
Boolean mediaPoolOnly
)
Import one or more files using Vegas' Import dialog box.
Parameters:
initialDir: The initial directory displayed by the dialog box
mediaPoolOnly: Add selected media files to the media pool only.
DialogResult ImportFileDialog
(
String initialDir,
Boolean mediaPoolOnly,
out String[] filePaths
)
Import one or more files using Vegas' Import dialog box.
Parameters:
initialDir: The initial directory displayed by the dialog box
mediaPoolOnly: Add selected media files to the media pool only.
filePaths: Array of file paths selected by the user.
DialogResult ImportMediaFromProjectDialog() Import media from a project file using Vegas' Import Media from Project dialog box.
DialogResult ImportMediaFromProjectDialog
(
String initialDir
)
Import media from a project file using Vegas' Import Media from Project dialog box.
Parameters:
initialDir: The initial directory displayed by the dialog box.
DialogResult ImportMediaFromProjectDialog
(
String initialDir,
out String[] filePaths
)
Import media from a project file using Vegas' Import Media from Project dialog box.
Parameters:
initialDir: The initial directory displayed by the dialog box.
filePaths: Array of file paths selected by the user.
void ImportMediaFromProject
(
String fileName,
Boolean importBins,
Boolean mergeBins
)
Import media and optionally bins from a project file.
Parameters:
fileName: The full path of the project file to import media from.
importBins: If true, import bins into project.
mergeBins: If true and importBins is true, merge them into project; else place them all under a new bin.
Boolean OpenProject() Obsolete. Use OpenFileDialog method.
Boolean OpenProject
(
String fileName
)
Obsolete. Use the OpenFile method.
Parameters:
fileName:
void WaitForIdle() Wait for asynchonous actions (such as building audio peaks) to complete.
RenderStatus BeginRender
(
RenderArgs args
)
Begins rendering the project using the parameters specified by a RenderArgs object. (This simply invokes the same method on the active Project)
Parameters:
args: parameters for the render operation.
RenderStatus Render
(
RenderArgs args
)
Renders the project using the parameters specified by a RenderArgs object. (This simply invokes the same method on the active Project)
Parameters:
args: parameters for the render operation.
RenderStatus Render
(
String outputFile,
RenderTemplate renderTemplate,
Timecode start,
Timecode length
)
Renders the specified region of the project. (This simply invokes the same method on the active Project)
Parameters:
outputFile: full path of rendered output file
renderTemplate: render template to use
start: project start time of rendered output
length: length of rendered output
RenderStatus Render
(
String outputFile,
RenderTemplate renderTemplate
)
Renders the entire project. (This simply invokes the same method on the active Project)
Parameters:
outputFile: full path of rendered output file
renderTemplate: render template to use
RenderStatus SaveSnapshot
(
String outputFile,
ImageFileFormat format,
Timecode seekTime
)
Renders and saves a still image file to disk.
Parameters:
outputFile: full path of rendered output file
format: image file format
seekTime: project position of image
RenderStatus SaveSnapshot
(
String outputFile,
ImageFileFormat format
)
Renders and saves a still image file to disk.
Parameters:
outputFile: full path of rendered output file
format: image file format
RenderStatus SaveSnapshot
(
Timecode seekTime
)
Renders and saves a still image file to the clipboard.
Parameters:
seekTime: project position of image
RenderStatus SaveSnapshot() Renders and saves a still image file to the clipboard.
void UpdateUI() Redraws the Vegas user interface.
void Exit() Quits the Vegas application upon completion of the script.
void DebugOut
(
String sz
)
Sends strings to the ScriptEditor output window.
Parameters:
sz:
void DebugClear() Clears the ScriptEditor output window.
void QueueProgressWorker
(
ProgressWorker worker
)
Adds a worker to Vegas' queue of asynchronous tasks.
Parameters:
worker: The ProgressWorker that performs the task.
void CancelAsynchronousTasks() Cancels any remaining asynchronous tasks (including the current one).
Public Events: Summary:
ProjectOpeningEventHandler ProjectOpening Occurs when a Vegas begins to open a project file.
EventHandler ProjectOpened Occurs when a project is opened.
EventHandler ProjectClosed Occurs when a project is closed.
EventHandler RenderStarted Occurs when a render operation is started.
RenderStatusEventHandler RenderProgress Occurs when a render operation's progress is updated.
RenderStatusEventHandler RenderFinished Occurs when a render operation is finished.
EventHandler AppInitialized Occurs when the Vegas application completes initialization.
EventHandler AppActivated Occurs when the Vegas application activates.
EventHandler AppDeactivate Occurs when the Vegas application deactivates.
EventHandler AppSkinChanged Occurs when the Vegas application skin changes.
MissingMediaEventHandler MissingMedia Occurs when missing media is encountered when loading a project.
EventHandler TrackCountChanged Occurs when tracks are added or removed.
EventHandler TrackStateChanged Occurs when tracks change state.
EventHandler TrackEventCountChanged Occurs when track events are added or removed.
EventHandler TrackEventStateChanged Occurs when track events change state.
EventHandler TrackEventTimeChanged Occurs when track events change position or size.
EventHandler MarkersChanged Occurs when markers or regions are added, removed, or changed.
EventHandler MediaPoolChanged Occurs when media is added or removed from the media pool.
VideoAlphaType Enumeration

Enumeration of video alpha modes.

Syntax:
enum VideoAlphaType
Fields: Summary:
VideoAlphaType.Undefined undefined alpha mode
VideoAlphaType.None no alpha channel
VideoAlphaType.Straight straight alpha channel
VideoAlphaType.Premultiplied premultiplied alpha
VideoAlphaType.PremultipliedDirty premultiplied (dirty)
VideoBusTrack Class

Represents a video bus track.

Syntax:
class VideoBusTrack : BusTrack
Public Properties: Summary:
MediaType MediaType Get the media type of the bus track.
Int32 Index Get the list index of this bus track.
String Name Get the name of the bus track.
String Description Get the description of the video bus track.
VideoColor TopFadeColor Get or set the video bus track's top fade color.
VideoColor BottomFadeColor Get or set the video bus track's bottom fade color.
Boolean Bypass Get or set whether the video bus track's effects and envelopes are bypassed.
Public Methods: Summary:
override Boolean Equals
(
Object obj
)
Determines whether the specified object is equal to the current VideoBusTrack.
Parameters:
obj: Object to compare with the current VideoBusTrack.
override Int32 GetHashCode() Serves as a hash function for VideoBusTrack objects, suitable for use in hashing algorithms and data structures like a hash table.
override Boolean IsAudio() Indicates whether the media type of the bus track is audio.
override Boolean IsVideo() Indicates whether the bus track is the master video bus.
override Boolean IsMaster() Indicates whether the video bus track is a master bus.
Public Operators: Summary:
static Boolean operator ==
(
VideoBusTrack a,
VideoBusTrack b
)
Determines whether the specified VideoBusTrack objects are equal.
Parameters:
a: left hand side of operator
b: right hand side of operator
static Boolean operator !=
(
VideoBusTrack a,
VideoBusTrack b
)
Determines whether the specified VideoBusTrack objects are not equal.
Parameters:
a: left hand side of operator
b: right hand side of operator
VideoColor Class

Represents a color used in various video properties

Syntax:
class VideoColor
Constructors: Summary:
VideoColor() Construct a new video color with default value (black).
VideoColor
(
Single r,
Single g,
Single b,
Single a
)
Construct a new video color from separate color values.
Parameters:
r: the red component (0 to 1)
g: the green component (0 to 1)
b: the blue component (0 to 1)
a: the alpha component (0 to 1)
VideoColor
(
Single r,
Single g,
Single b
)
Construct a new video color (with full alpha) from separate color values.
Parameters:
r: the red component (0 to 1)
g: the green component (0 to 1)
b: the blue component (0 to 1)
VideoColor
(
UInt32 argb
)
Construct a new video color from a combined color value.
Parameters:
argb: a combined color value
VideoColor
(
Byte r,
Byte g,
Byte b,
Byte a
)
Construct a new video color from separate color byte values.
Parameters:
r: the red component
g: the green component
b: the blue component
a: the alpha component
VideoColor
(
Byte r,
Byte g,
Byte b
)
Construct a new video color (with full alpha) from separate color byte values.
Parameters:
r: the red component
g: the green component
b: the blue component
Public Properties: Summary:
Single Red Get or set the red component of the color as a float value.
Single Green Get or set the green component of the color as a float value.
Single Blue Get or set the blue component of the color as a float value.
Single Alpha Get or set the alpha component of the color as a float value.
Byte R Get or set the red component of the color as a byte value.
Byte G Get or set the green component of the color as a byte value.
Byte B Get or set the blue component of the color as a byte value.
Byte A Get or set the alpha component of the color as a byte value.
Public Methods: Summary:
static VideoColor FromByteValues
(
Byte r,
Byte g,
Byte b,
Byte a
)
Create a new video color from separate color byte values.
Parameters:
r: the red component
g: the green component
b: the blue component
a: the alpha component
static VideoColor FromByteValues
(
Byte r,
Byte g,
Byte b
)
Create a new video color from separate color byte values.
Parameters:
r: the red component
g: the green component
b: the blue component
override Boolean Equals
(
Object obj
)
Determines whether the specified object is equal to the current VideoColor.
Parameters:
obj:
override Int32 GetHashCode() Serves as a hash function for VideoColor objects, suitable for use in hashing algorithms and data structures like a hash table.
override String ToString() Returns a string representation of the color.
UInt32 ToArgb() Returns the 32-bit unsigned integer representation of the color (0xAARRGGBB).
Public Operators: Summary:
static Boolean operator ==
(
VideoColor a,
VideoColor b
)
Determines whether the specified VideoColor objects are equal.
Parameters:
a: left hand side of operator
b: right hand side of operator
static Boolean operator !=
(
VideoColor a,
VideoColor b
)
Determines whether the specified VideoColor objects are not equal.
Parameters:
a: left hand side of operator
b: right hand side of operator
VideoDeinterlaceMethod Enumeration

Enumeration of video deinterlace methods.

Syntax:
enum VideoDeinterlaceMethod
Fields: Summary:
VideoDeinterlaceMethod.None no deinterlacing
VideoDeinterlaceMethod.BlendFields deinterlace by blend fields
VideoDeinterlaceMethod.InterpolateFields deinterlace by interpolation
VideoEvent Class

Represents an video event.

Syntax:
class VideoEvent : TrackEvent
Constructors: Summary:
VideoEvent
(
Project project,
Timecode start,
Timecode length,
String name
)
Creates a new video event.
Parameters:
project: Project.ActiveProject or a specific project
start: start time of event, or null
length: length of event, or null
name: name of event, or null
VideoEvent
(
Timecode start,
Timecode length,
String name
)
Obsolete: Use VideoEvent(project, ...) instead
Parameters:
start:
length:
name:
VideoEvent
(
Timecode start,
Timecode length
)
Obsolete: Use VideoEvent(project, ...) instead
Parameters:
start:
length:
VideoEvent
(
Timecode start
)
Obsolete: Use VideoEvent(project, ...) instead
Parameters:
start:
VideoEvent() Obsolete: Use VideoEvent(project, ...) instead
Public Properties: Summary:
MediaType MediaType Get the event's media type.
Envelopes Envelopes Get the video event's collection of envelopes.
Effects Effects Get the video event's collection of effects.
Double UnderSampleRate Get or set the undersample rate for video events.
Boolean MaintainAspectRatio Get or set whether to maintain the video aspect ratio.
Boolean ReduceInterlace Get or set whether to reduce video interlacing.
VideoResampleMode ResampleMode Get or set the method by which video frames are resampled.
VideoMotion VideoMotion Get an object that represents the event's motion settings.
Public Methods: Summary:
override Boolean IsAudio() Indicates if the event's media type is audio.
override Boolean IsVideo() Indicates if the event's media type is video.
VideoFieldOrder Enumeration

Enumeration of video field orderings.

Syntax:
enum VideoFieldOrder
Fields: Summary:
VideoFieldOrder.Unknown unknown video field order
VideoFieldOrder.ProgressiveScan progressive scan (multimedia)
VideoFieldOrder.UpperFieldFirst interlaced (upper field first)
VideoFieldOrder.LowerFieldFirst interlaced (lower field first)
VideoKeyframeType Enumeration

Enumeration of video key frame interpolation types.

Syntax:
enum VideoKeyframeType
Fields: Summary:
VideoKeyframeType.Linear linear interpolation
VideoKeyframeType.Hold no interpolation
VideoKeyframeType.Slow slow (accelerating) interpolation
VideoKeyframeType.Fast fast (decelerating) interpolation
VideoKeyframeType.Smooth smooth interpolation
VideoKeyframeType.Sharp sharp interpolation
VideoMotion Class

Represents the motion of a video event.

Syntax:
class VideoMotion
Public Properties: Summary:
Boolean ScaleToFill Get or set whether to scale the video to fill the output.
VideoMotionKeyframes Keyframes Get the collection of video motion key frames.
VideoMotionBounds Class

Represents a 4 sided bounds polygon used in video motion key frames.

Syntax:
class VideoMotionBounds
Constructors: Summary:
VideoMotionBounds
(
VideoMotionVertex topLeft,
VideoMotionVertex topRight,
VideoMotionVertex bottomRight,
VideoMotionVertex bottomLeft
)
Create a new video motion bounds polygon.
Parameters:
topLeft: top left vertex
topRight: top right vertex
bottomRight: bottom right vertex
bottomLeft: bottom left vertex
VideoMotionBounds
(
Single topLeftX,
Single topLeftY,
Single topRightX,
Single topRightY,
Single bottomRightX,
Single bottomRightY,
Single bottomLeftX,
Single bottomLeftY
)
Create a new video motion bounds polygon.
Parameters:
topLeftX: X coordinate of top left vertex
topLeftY: Y coordinate of top left vertex
topRightX: X coordinate of top right vertex
topRightY: Y coordinate of top right vertex
bottomRightX: X coordinate of bottom right vertex
bottomRightY: Y coordinate of bottom right vertex
bottomLeftX: X coordinate of bottom left vertex
bottomLeftY: Y coordinate of bottom left vertex
Public Properties: Summary:
VideoMotionVertex TopLeft Get or set the top left vertex.
VideoMotionVertex TopRight Get or set the top right vertex.
VideoMotionVertex BottomRight Get or set the bottom right vertex.
VideoMotionVertex BottomLeft Get or set the bottom left vertex.
VideoMotionKeyframe Class

Represents a key frame for video event motion parameters.

Syntax:
class VideoMotionKeyframe
Constructors: Summary:
VideoMotionKeyframe
(
Project project,
Timecode position
)
Create a new video motion key frame.
Parameters:
project: Project.ActiveProject or a specific project
position: position of key frame
VideoMotionKeyframe
(
Timecode position
)
Obsolete: Use VideoMotionKeyframe(project,...) instead
Parameters:
position:
Public Properties: Summary:
Timecode Position Get or set the position of the video motion key frame.
Single Smoothness Get or set the smoothness of the video motion key frame.
VideoMotionVertex TopLeft Get the top left vertex.
VideoMotionVertex TopRight Get the top right vertex.
VideoMotionVertex BottomRight Get the bottom right vertex.
VideoMotionVertex BottomLeft Get the bottom left vertex.
VideoMotionVertex Center Get or set the center of rotation.
VideoMotionBounds Bounds Get or set the video motion keyframe's bounds polygon.
Double Rotation Get or set the rotation angle (in radians)
VideoKeyframeType Type Get or set the interpolation type for this key frame.
Public Methods: Summary:
Boolean IsValid() Indicates whether key frame has been added.
void MoveBy
(
VideoMotionVertex delta
)
Translate all vertices by the given x and y distances
Parameters:
delta: x and y distances
void ScaleBy
(
VideoMotionVertex delta
)
Scale all vertices by the given x and y factors
Parameters:
delta: x and y scale factors
void RotateBy
(
Double delta
)
Rotate all vertices by the given angle
Parameters:
delta: angle of rotation (in radians)
VideoMotionKeyframes Class

Collection of video motion key frames for a video event.

Syntax:
class VideoMotionKeyframes : BaseList<VideoMotionKeyframe>
Public Methods: Summary:
override void Clear() Removes all but the first item from the collection
VideoMotionVertex Class

Represents a vertex used in video motion key frames.

Syntax:
class VideoMotionVertex
Constructors: Summary:
VideoMotionVertex
(
Single x,
Single y
)
Create a new video motion vertex.
Parameters:
x: x coordinate
y: y coordinate
Public Properties: Summary:
Single X Get or set the x (horizontal) coordinate.
Single Y Get or set the y (horizontal) coordinate.
Public Methods: Summary:
override String ToString() Converts the vertex to a string for display.
VideoOutputRotation Enumeration

Enumeration of video output rotation settings.

Syntax:
enum VideoOutputRotation
Fields: Summary:
VideoOutputRotation.None no rotation
VideoOutputRotation.QuarterTurnClockwise 90 degrees clockwise
VideoOutputRotation.Inverted 90 degrees clockwise
VideoOutputRotation.QuarterTurnCounterclockwise 90 degrees counterclockwise
VideoPreviewSize Enumeration

Enumeration of video preview render size settings.

Syntax:
enum VideoPreviewSize
Fields: Summary:
VideoPreviewSize.Full Render video preview at full size.
VideoPreviewSize.Auto Render video preview at auto size.
VideoPreviewSize.Half Render video preview at half size.
VideoPreviewSize.Quarter Render video preview at quarter size.
VideoProperties Class

Base class for objects that represent video properties.

Syntax:
abstract class VideoProperties
Public Properties: Summary:
Int32 Width Get or set the pixel width.
Int32 Height Get or set the pixel height.
Double FrameRate Get or set the frame rate.
VideoFieldOrder FieldOrder Get or set the field order.
Double PixelAspectRatio Get or set the pixel aspect ratio.
VideoRenderQuality Enumeration

Enumeration of video render quality modes.

Syntax:
enum VideoRenderQuality
Fields: Summary:
VideoRenderQuality.Draft draft quality
VideoRenderQuality.Preview preview quality
VideoRenderQuality.Good good quality
VideoRenderQuality.Best best quality
VideoResampleMode Enumeration

Enumeration of video resampling modes.

Syntax:
enum VideoResampleMode
Fields: Summary:
VideoResampleMode.Smart resample if needed
VideoResampleMode.Force force resample
VideoResampleMode.Disable don't resample
VideoStream Class

Represents a video stream.

Syntax:
class VideoStream : MediaStream
Public Properties: Summary:
MediaType MediaType Get the video stream's media type (MediaType.Video).
Int32 Width Get the video stream's pixel width.
Int32 Height Get the video stream's pixel height.
Size Size Get or set the video stream's frame size.
Double FrameRate Get the video stream's frame rate.
VideoFieldOrder FieldOrder Get or set the video stream's field order.
Double PixelAspectRatio Get or set the video stream's pixel aspect ratio.
Int32 ColorDepth Get the video stream's color depth.
VideoAlphaType AlphaChannel Get or set the video stream's alpha channel type.
Int64 AverageDataRate Get the video stream's average data rate.
String Format Get the video stream's encoding format.
VideoColor BackgroundColor Get or set the video stream's background color.
Stereo3DInputMode Stereo3DMode Get or set the video stream's stereoscopic 3D input mode.
Boolean Stereo3DSwap Get or set whether the video stream stereoscopic 3D input channels are swapped.
VideoTrack Class

Represents a video track.

Syntax:
class VideoTrack : Track
Constructors: Summary:
VideoTrack
(
Project project,
Int32 index,
String name
)
Creates a new video track.
Parameters:
project: Project.ActiveProject or a specific project
index: display index of new track, or -1 for automatic
name: name of new track, or null
VideoTrack
(
Int32 index,
String name
)
Obsolete: Use VideoTrack(project,...) instead
Parameters:
index:
name:
VideoTrack
(
Int32 index
)
Obsolete: Use VideoTrack(project,...) instead
Parameters:
index:
VideoTrack() Obsolete: Use VideoTrack(project,...) instead
Public Properties: Summary:
MediaType MediaType Get the track's media type.
VideoColor TopFadeColor Get or set the track's top fade color (video only).
VideoColor BottomFadeColor Get or set the track's bottom fade color (video only).
Single CompositeLevel Get or set the composite level (opacity) of the video track.
CompositeMode CompositeMode Get or set the composite mode of the video track.
CompositeMode ParentCompositeMode Get or set the composite mode of the parent video track.
Int32 CompositeNestingLevel Get or set the composite nesting level of the video track.
Boolean IsCompositingChild Get whether the video track is a compositing child of another video track.
Boolean IsCompositingParent Get whether the video track is a compositing parent of another video track.
Effect CompositeModeEffect Get or set the compositing effect for the video track.
Effect ParentCompositeModeEffect Get or set the parent compositing effect for the video track.
Boolean BypassMotionBlur Get or set whether motion blur is bypassed for the video track.
BusTrack BusTrack Get the video bus (to which all video tracks are routed).
Public Methods: Summary:
override Boolean IsAudio() Indicates if the track's media type is audio.
override Boolean IsVideo() Indicates if the track's media type is video.
Boolean SetCompositeMode
(
CompositeMode mode,
Boolean showWarningDialog
)
Set the composite mode of the video track, optionally showing a dialog to warn if data will be lost.
Parameters:
mode: the new composite mode
showWarningDialog: indicates whether to show a dialog that warns the user when data will be lost
Return Value:
True if the change was made or false if the user canceled the dialog.
Boolean SetParentCompositeMode
(
CompositeMode mode,
Boolean showWarningDialog
)
Set the parent composite mode of the video track, optionally showing a dialog to warn if data will be lost.
Parameters:
mode: the new composite mode
showWarningDialog: indicates whether to show a dialog that warns the user when data will be lost
Return Value:
True if the change was made or false if the user canceled the dialog.
VideoEvent AddVideoEvent() Adds a new video event to the track.
VideoEvent AddVideoEvent
(
Timecode start,
Timecode length
)
Adds a new video event to the track.
Parameters:
start: the start time of the new event
length: the length of the new event


Class Index:

A:
AppChangeFlag
AudioBusMode
AudioBusTrack
AudioCDProperties
AudioChannelFlags
AudioEvent
AudioFXBusTrack
AudioProperties
AudioResampleQuality
AudioStream
AudioTrack

B:
BackgroundProjectActiveState
BaseList
BaseTrackMotionKeyframe
BaseTrackMotionKeyframeList
BeatValue
BusTrack
BusTracks

C:
CaptionDoubleClickEventArgs
CaptionDoubleClickEventHandler
CDMarker
CDMarkerList
CDRegion
CDRegionList
ChannelRemapping
CommandCategory
CommandMarker
CommandMarkerList
CompositeMode
CurveType
CustomCommand
CustomDataContainer

D:
DockableControl
DockWindowStyle

E:
Effect
EffectPreset
EffectPresets
Effects
Envelope
EnvelopePoint
EnvelopePoints
Envelopes
EnvelopeType

F:
Fade

G:

H:

I:
ICustomCommandModule
ImageFileFormat
IMediaBinNode
ImproperProjectSettingException
IneligableMediaException
IProgressCallback

J:

K:
Keyframe
Keyframes

L:
LogCallback
LogFile
LowPassFilterQuality

M:
Marker
MarkerCommandType
MarkerList
Media
MediaBin
MediaBinNodeType
MediaCommandMarker
MediaCommandMarkerList
MediaFile
MediaFiles
MediaFileType
MediaMarker
MediaMarkerList
MediaPool
MediaPoolEnumerator
MediaRegion
MediaRegionList
MediaStream
MediaStreams
MediaType
MissingMediaEventArgs
MissingMediaEventHandler
MotionBlurType

N:

O:
OFXBase
OFXBooleanKeyframe
OFXBooleanParameter
OFXChoice
OFXChoiceKeyframe
OFXChoiceParameter
OFXColor
OFXControlPoint
OFXCustomKeyframe
OFXCustomParameter
OFXDouble2D
OFXDouble2DKeyframe
OFXDouble2DParameter
OFXDouble3D
OFXDouble3DKeyframe
OFXDouble3DParameter
OFXDoubleKeyframe
OFXDoubleParameter
OFXEffect
OFXInteger2D
OFXInteger2DKeyframe
OFXInteger2DParameter
OFXInteger3D
OFXInteger3DKeyframe
OFXInteger3DParameter
OFXIntegerKeyframe
OFXIntegerParameter
OFXKeyframe
OFXKeyframe
OFXKeyframes
OFXParameter
OFXParameter
OFXParameters
OFXPlugIn
OFXRangeParameter
OFXRGBAKeyframe
OFXRGBAParameter
OFXRGBKeyframe
OFXRGBParameter
OFXStringKeyframe
OFXStringParameter

P:
PanType
PixelFormat
PlugInNode
PreviewVideoProperties
ProgressEventArgs
ProgressEventHandler
ProgressWorker
Project
ProjectAudioProperties
ProjectChangeFlag
ProjectOpeningEventArgs
ProjectOpeningEventHandler
ProjectVideoProperties

Q:

R:
Region
RegionList
RenderArgs
Renderer
Renderers
RenderStatus
RenderStatusEventArgs
RenderTemplate
RenderTemplates
RulerFormat
RulerProperties

S:
ScriptArg
ScriptArgs
ScriptEngineType
Stereo3DInputMode
Stereo3DOutputMode
Subclip
SummaryProperties

T:
Take
Takes
Timecode
Track
TrackEvent
TrackEventGroup
TrackEventGroups
TrackEvents
TrackGlowKeyframe
TrackGlowKeyframeList
TrackGroup
TrackGroups
TrackMotion
TrackMotionKeyframe
TrackMotionKeyframeList
TrackMotionScaleFactors
Tracks
TrackShadowKeyframe
TrackShadowKeyframeList
TransportControl

U:

V:
Vegas
VideoAlphaType
VideoBusTrack
VideoColor
VideoDeinterlaceMethod
VideoEvent
VideoFieldOrder
VideoKeyframeType
VideoMotion
VideoMotionBounds
VideoMotionKeyframe
VideoMotionKeyframes
VideoMotionVertex
VideoOutputRotation
VideoPreviewSize
VideoProperties
VideoRenderQuality
VideoResampleMode
VideoStream
VideoTrack

W:

X:

Y:

Z: