possibilities and limitations of scripting

JeffW wrote on 8/29/2016, 3:26 AM

hi,

totally new to Vegas I wonder what the possibilities are or developers. I ran into some dead api docs links and couldn't register for http://www.jetdv.com/ which seems to have a lot of info (Internal Server Error).

I understand there's an sdk. And I read about 'extensions', 'scripting' and 'addons'. How do these relate? It seems you can script extensions and addons are a different thing?

Is it possible to do calls to a remote server from within such an 'extension' e.g. XMLHttpRequests?

Download and display images?

Write to and read files from the file system? 

I'd like to communicate with Vegas using functions that tell it to import video or get the current items in a project / on the timeline / in a sequence. Stuff like that, same as Adobe's addons can do - which are now htmls/js scripted.

Is NodeJS supported when you script in Javascript?

Do you maybe have a link to the current api documentation?

And a link to the latest SDK?

Thanks a lot from a newcomer :-)

Jeff.

Comments

altarvic wrote on 8/29/2016, 3:50 AM

Vegas scripting is based on Microsoft .Net Framework. Possibilities are huge, but Vegas API has many limits. For example, you can't create/change masks etc. 

Scripts are text files written in C# or JScript .NET. Extensions are compiled scripts with much more possibilities.

NickHope wrote on 8/29/2016, 4:58 AM
Do you maybe have a link to the current api documentation?

And a link to the latest SDK?

The download page for the development kits for Sony Vegas Pro, www.sonycreativesoftware.com/download/devkits now redirects to the MAGIX Vegas sales page but for the time being it's still in Google's cache and you can find working links to the development kit downloads from there. See http://webcache.googleusercontent.com/search?q=cache:f74XBFA54-cJ:www.sonycreativesoftware.com/download/devkits Grab them while you can! Here are some direct links in case the Google cache gets deleted but the downloads don't:

Note the very important forthcoming namespace changes for MAGIX Vegas Pro 14. Sony-branded plugins/FX are also changing name ("Sony..." to "Vegas..."), and if you bought Vegas Pro 13.0 very recently (i.e. version 543 from MAGIX) then they probably already have.

JeffW wrote on 8/29/2016, 1:59 PM

Thanks guys, downloaded the sdks :-) 

So when I build an extension I can use anything that .net offers and also can interact with Vegas within the limits of the sdk? I see functions like importFile and replaceFile, which looks promising.

altarvic wrote on 8/29/2016, 2:40 PM

Yes, you can download an image from a server, play audio, make sql requests, whatever... and work with Vegas using its SDK.

Musicvid wrote on 8/22/2020, 7:06 PM

I noted that the downloads are no longer available from Google, but here are the last English OFX SDKs courtesy of the Wayback Machine / Archive.org

https://web.archive.org/web/20140122213530/http://www.sonycreativesoftware.com/download/devkits

jetdv wrote on 8/22/2020, 7:26 PM

couldn't register for http://www.jetdv.com/ which seems to have a lot of info (Internal Server Error).

Sorry about that. Not sure what the issue is. If there's anything I can help you access there, just send me a message.

I understand there's an sdk. And I read about 'extensions', 'scripting' and 'addons'. How do these relate? It seems you can script extensions and addons are a different thing?

There's basically three different options:

Scripts - which you would see under Tools - Scripting and will simply perform a task and then end.

Extensions - which can be under one of the three Extension location (Edit, View, and Tools) and the extension can specify which it is under. It will start and stay running so you can access it at any time or it can continuously perform the desired function. For example, my Excalibur is a Custom Command (i.e. Extension) that stays running all the time and can be docked with the VideoFX, Media Pool, Explorer, etc... so you can access any of those tools at any time. My "AutoSave" extension stays running all the time but you can't "see" it normally. It just runs in the background automatically saving your project periodically.

Plugins - These would show up under Transitions, VideoFX, AudioFX, or Generated Media, for example. These are different than scripts or extensions/custom commands.

Is it possible to do calls to a remote server from within such an 'extension' e.g. XMLHttpRequests?

Download and display images?

Write to and read files from the file system? 

Well... yes. If you can write a program to do that, a script can also do that. It's just a .NET program that can do anything any other .Net program can do.

I'd like to communicate with Vegas using functions that tell it to import video or get the current items in a project / on the timeline / in a sequence. Stuff like that, same as Adobe's addons can do - which are now htmls/js scripted.

You can access those items direct from the script. No issue at all with accessing anything on the timeline.

Is NodeJS supported when you script in Javascript?

Anything that works in .NET should work. I think you'll find most examples today are in c#. Older examples will be in JScript.

michael-harrison wrote on 8/23/2020, 10:41 AM

it's really bizarre when people resurrect 4yo posts.

System 1:

Processor        Intel(R) Core(TM) i7-8700 CPU @ 3.20GHz, 3192 Mhz, 6 Core(s), 12 Logical Processor(s)

BaseBoard Product        ROG STRIX Z390-E GAMING

Installed Physical Memory (RAM)        32.0 GB

Adapter Description        NVIDIA GeForce GTX 1660

Driver Version        Studio <the latest stable>

Resolution        1920 x 1080 x 60 hertz

Video Memory 6G GDDR5

 

System 2:

Lenovo Yoga 720

Core i7-7700 2.8Ghz quad core, 8 logical

16G ram

Intel HD 630 gpu

Nvidia GTX 1050 gpu

Musicvid wrote on 8/23/2020, 11:38 AM

I resurrected the thread to post a link to the original SDK, which is truly hard to find these days, and which a new, highly qualified user requested. Edward's thoroughness is by no means "bizarre," he happens to be the guy who brought us all here!

Defer, respectfully.