I'm no programmer, so bear with my question. I was wondering how difficult would be for someone to create an OFX plugin where one could load VirtualDub filters, and/or Avisynth scripts? Or at least acting like some kind of a bridge between the OFX host and VirtualDub/Avisynth? Is it even possible? That would eliminate the need for intermediate renderings, and would also save disk space. Any thoughts?
+ Reply to Thread
Results 1 to 5 of 5
Very difficult , or next to impossible to have it "live" and adjustable within the host
If your concern is disk space and large intermediates, there are some workflows and workarounds where you can frameserve into applications, and frameserve out of some applications. You need to be more specific about which applications you are using if you want more information
Poisondeathray, thank you for the suggestion, so I looked into frameserving a little. I'm using DaVinci Resolve for everything (or at least I'm trying to), together with OFX plugins. As I understand though, not all VirtualDub filters will work through FrameServer, and Resolve is not on the Debugmode's list of supported NLEs.
But for the sake of conversation, and to understand how this works, can I load more than one Frameserver files at the same time into an editor, and edit them there on-the-fly? Example, I'm applying some filters on two (or three or four) clips in multiple instances of VirtualDub and want to call them through the NLE for simultaneous or sequential playback and editing.
I also understand that every time I want to work with the editor on a project which includes frameserving clips, I'll have to run VirtualDub(s) again, open the clips, load their settings, and start the frameserving, in advance. In general, is this a reliable, stable method for long projects?
Another similar thing I've found is an OFX bridge plugin from Motiva (http://www.motivacg.com/en/ofx-bridge) which provides realtime communication between OFX applications. Whatever changes you make within a host, you also see the result in the other. It's in beta stage and the download link doesn't work, but the video shows it in action. The obvious problem here is that the applications must both support OFX, a scenario not uncommon, like above. So, although it shows great potential, in this case it's of no use. Well, unless VirtualDub itself starts supporting OFX... *cough cough*
Vdub has it's own frameserver, but there are some limitations. If you can apply a filter in vdub, you can frameserve the output out of vdub as a signpost (which can be opened in avisynth, and sometimes directly in other programs) . It can become even more convoluted since you can use multiple frameservers (in / out on 1 video). There are some drawbacks, like overhead, limitation of colorspaces, memory limitations (the stable versions of avisynth and vdub are x86). So yes you can load multiple frameserved clips into a NLE, but many filters are slower than realtime. Unlike many retail OFX plugins, most vdub and avisynth filters are non GPU accellerated (they can be fricken slow) . It can become very difficult and sluggish to edit depending on what filters you are using. No it's not reliable, and prone to crashes, the more memory you use (remember x86), depending on the filters you use. There are many potential other issues - such as frame accuracy (you nee frame accurate parsing source filters, otherwise your edits will be mixed up) . Lossless or near-lossless intermediates are the way to go, especially on collaborative projects
And that's what I mean by "live" - realtime feedback and operation reflected in the program. It's not possible with things like avisynth - You can barely get that with avisynth alone with avspmod, forget about the other OFX hosts.
The chance of making an avisynth /vdub OFX compatible version is about zero. Also, there are so many 3d party plugins for vdub/avisynth, and not all of them have the sources available, some of them have "missing" authors, etc... You would have to pay an army of programmers. Basically forget about. It would be better to look for something similar, some plugin with similar function(s) in the other program. Yes, some things can't be done except in avisynth, but there are other python based scripting tools that you can run in other retail programs.
Vdub and avisynth are 8bit applications. So for some workflows wouldn't want to use them with Davinci or other programs anyways. Although avisynth has a stacked 16 format that is of some use - no retail program will understand this, so you would have fix all those other things as well
I see. If only there was a broader support for MagicYUV/UTVideo, and near lossless Grass Valley HQX by the hosts. DaVinci supports only the latter at the moment, and, from what I know, can not be scripted. In any case, I appreciate your thorough explanation.