Surround Encoder Script?

Rednroll wrote on 5/10/2004, 10:06 AM
I'm very new to the scripting feature, so I'm hoping someone here can assist me, or give some suggestions.

What I want to do is take the seperate surround outputs in Vegas, Center, LF, RF, LR, RR, and LFE, and then run them through a surround encoder, which will render these seperate inputs to a surround encoded stereo file. I'm using a Logic 7 encoder, which is very similar to Dolby Pro Logic II encoder. The Logic 7 encoder equations will be in a .dll file.

Optimally, what I'ld like to happen is to playback a surround project in Vegas, and then the outputs in the surround master section would get fed to the .DLL file, and then I could monitor the Stereo output coming from the .DLL file. I'm not sure if that would be possible using the scripting feature.

If that can't be done, then I was wondering if I could render the surround project as seperate mono files. Then run a script within Vegas that would ask me where the seperate mono files are located. Then these seperate mono files would be rendered through the .DLL to an encoded Stereo file?

I'm open to other suggestions also. Basically, I have the equations for the encoder and a software engineer offering to put them into an .EXE or .DLL for me. I'm just trying to find a better way to integrate this into Vegas, so I can get a surround encoded Stereo file by feeding it the seperate surround outputs. Oh yeah, and I'm trying to do this on a laptop that only has a stereo out soundcard.

Comments

roger_74 wrote on 5/10/2004, 11:36 AM
Can't do it by playback only with just scripting, sorry. I'm not just saying that because we had a "fight" about surround encoders in the past, really. ;-)

What could be done is a script that renders your mono files and then executes the .EXE with the correct parameters. The .DLL approach would work too, but is a bit more complex.

It would be great if the Downmix button in Vegas produced a proper Dolby Surround stereo output...
Rednroll wrote on 5/10/2004, 2:32 PM
"What could be done is a script that renders your mono files and then executes the .EXE with the correct parameters. The .DLL approach would work too, but is a bit more complex."

Excellent. Would it then be possible within that same script to have, the file rendered from the .EXE to be imported back into a track within Vegas? or would I have to run another script to do the second part? So what I'm thinking is:
1. Render Mono Tracks in Vegas
2. Run a script that will run the .EXE
3. The .EXE will render the Stereo Encoded file
4. The script, then imports that rendered file into a new track or the last track in a project.
5. Then I could solo that track and send it out a stereo bus for playback, or have it sent directly to the LF/RF outputs.

"It would be great if the Downmix button in Vegas produced a proper Dolby Surround stereo output..."

Another option, I'm thinking about, is since Vegas now has an FX insert in the surround master bus, a surround compatible DX plugin could be written, where the inputs would be the LF,RF,RR,LR,C and LFE being sent to the master bus, and then the outputs of the DX plugin, would feed the LF and RF outputs, with the encoded mix.

How's your DX programming skills? :-)
roger_74 wrote on 5/10/2004, 4:54 PM
Importing the rendered file can be done in the same script, yes. But Vegas will not respond until the external render is done, does it take a long time?

"How's your DX programming skills?"

I have some C++ skills, but not enough to feel comfortable writing Directshow filters. Even if someone else could do it I'm not sure that the current public SDK from Sony supports access to the surround channels. I'm not saying it doesn't, I'm saying I just don't know.
Rednroll wrote on 5/11/2004, 7:48 AM
"But Vegas will not respond until the external render is done, does it take a long time?"

Not sure I might have to time it. Do I have to put a Sleep command in the script, like in C++, if the file isn't there yet, because the render hasn't completed?
roger_74 wrote on 5/16/2004, 11:06 AM
No, you don't have to do that. The script commands will execute one by one, and I think you can execute the external render and automatically wait for it to complete. In this regard the DLL approach is better, since all the logic will be in the same place.