VST and TCP/IP...possible?
-
- KVRAF
- Topic Starter
- 1579 posts since 14 Oct, 2002
Ok this is a strange one...
Is in theory possible for a VST or VSTi to send and/or
recieve data on TCP/IP on a local computer or over a lan?...or even over the net?
I'm thinkin' about a plugin that can control or be controlled a Flash server...obviously i'd like the VST control will be automatable and controllable via MidiCC or MidiNote events...
I need some expert opinion....
thanx
lalo
Is in theory possible for a VST or VSTi to send and/or
recieve data on TCP/IP on a local computer or over a lan?...or even over the net?
I'm thinkin' about a plugin that can control or be controlled a Flash server...obviously i'd like the VST control will be automatable and controllable via MidiCC or MidiNote events...
I need some expert opinion....
thanx
lalo
- Beware the Quoth
- 33326 posts since 4 Sep, 2001 from R'lyeh Oceanic Amusement Park and Funfair
It can. They call it "FX Teleport" round 'ere, m'boy....
my other modular synth is a bugbrand
- KVRAF
- 7169 posts since 8 Feb, 2003 from London, UK
FX Teleport moves the audio samples over the LAN, of course. Like lalo says, MIDI over LAN would be more useful for controlling stuff...
http://www.halfbakery.com/idea/TCP_2fIP_20over_20MIDI
Ah, sorry, not that way around... Try this? http://www.cs.huji.ac.il/~anker/Abstrac ... smidi.html
Essentially, the VSTi would open a socket to a known port at a given address where a WDM miniport driver would be listening, implementing a MIDI port. You'd then have to use something like MIDI OX to send the LAN MIDI data out over the physical MIDI port to control hardware. Of course, rather than use a VSTi, you'd probably write another WDM miniport driver to implement the other side of the MIDI interface over the LAN, and use that directly from the host.
If you just wanted to invoke a webservice (I assume that's what a Flash server is), then your VSTi would just construct and issue HTTP requests and process responses. (It would be easier to have the VSTi poll to get "commands" if you wanted it slaved to the server.)
In any case, you'd want to have a good model to follow for handling the network latency if you expect plugin delay compensation to work..!
http://www.halfbakery.com/idea/TCP_2fIP_20over_20MIDI
Ah, sorry, not that way around... Try this? http://www.cs.huji.ac.il/~anker/Abstrac ... smidi.html
Essentially, the VSTi would open a socket to a known port at a given address where a WDM miniport driver would be listening, implementing a MIDI port. You'd then have to use something like MIDI OX to send the LAN MIDI data out over the physical MIDI port to control hardware. Of course, rather than use a VSTi, you'd probably write another WDM miniport driver to implement the other side of the MIDI interface over the LAN, and use that directly from the host.
If you just wanted to invoke a webservice (I assume that's what a Flash server is), then your VSTi would just construct and issue HTTP requests and process responses. (It would be easier to have the VSTi poll to get "commands" if you wanted it slaved to the server.)
In any case, you'd want to have a good model to follow for handling the network latency if you expect plugin delay compensation to work..!
- Beware the Quoth
- 33326 posts since 4 Sep, 2001 from R'lyeh Oceanic Amusement Park and Funfair
pljones quoth FX Teleport moves the audio samples over the LAN, of course. Like lalo says, MIDI over LAN would be more useful for controlling stuff...
Yeah, I was just pointng out that if FXTeleoprt can move audio, then less demanding date is going to be much easier.
For this sort of thing it might be worthwhile looking at CPS... Its a MAX type environment, but not only can it be used as a VST plugin, but it has support for various network protocols built in... including HTTP, which could be generated via Flash...
Yeah, I was just pointng out that if FXTeleoprt can move audio, then less demanding date is going to be much easier.
For this sort of thing it might be worthwhile looking at CPS... Its a MAX type environment, but not only can it be used as a VST plugin, but it has support for various network protocols built in... including HTTP, which could be generated via Flash...
Last edited by whyterabbyt on Wed Dec 03, 2003 10:34 pm, edited 1 time in total.
my other modular synth is a bugbrand
-
- KVRist
- 33 posts since 15 Jan, 2003
that sounds...complicated pljones. try MidiOverLAN. i think they have a demo, it works pretty well. also includes midiyoke style loopback features. not sure if other plugs can send OSC, but you can do it from pdvst, a real simple patch could translate vst or midi-cc automation params into osc if you wanted to control a copy of traktor on a remote machine, or wahtever else..some visuals, google for pdvst..
- KVRAF
- 7169 posts since 8 Feb, 2003 from London, UK
A pre-built solution is always going to be easier than building something yourself... But if you build something yourself, you can have exactly what you want. With power and flexibility comes choice and complexity. It's always a trade-off.
The TransMIDI reference was for a "pre-built" solution, which I proposed as a model of how one might base a custom design. The pitfalls with using a "pure MIDI" implementation of what lalo was proposing also include complexity. Webservices are now sufficiently mainstream you can implement them with pre-built modules. So, if that's what you want, interrupting the flow with a needless MIDI implementation is just overhead.
The TransMIDI reference was for a "pre-built" solution, which I proposed as a model of how one might base a custom design. The pitfalls with using a "pure MIDI" implementation of what lalo was proposing also include complexity. Webservices are now sufficiently mainstream you can implement them with pre-built modules. So, if that's what you want, interrupting the flow with a needless MIDI implementation is just overhead.
-
- KVRAF
- 8388 posts since 11 Apr, 2003 from back on the hillside again - but now with a garden!
-
- KVRist
- 332 posts since 23 Apr, 2003
I just found MidiWeb over at Smartelectronix (jason). It may be helpful to you. GPLed too!
-
- KVRAF
- Topic Starter
- 1579 posts since 14 Oct, 2002
THANK U SO MUCH GUYS!!!
A lot of useful informations!!!!
...hope this thread continues to provide even more info.
thanx a lot
lalo
A lot of useful informations!!!!
...hope this thread continues to provide even more info.
thanx a lot
lalo
- KVRAF
- 7169 posts since 8 Feb, 2003 from London, UK
Oh yes! Tom's article http://www.kvr-vst.com/forum/viewtopic.php?t=31273 reminds me - if you're playing with MIDI, do take a look at KeyKit: it's a huge resource of ready-written code for mangling MIDI messages and, IIRC, it does have some network handling.