Host plugin routing

DSP, Plugin and Host development discussion.
Post Reply New Topic
RELATED
PRODUCTS

Post

Hi,

I'm looking into the functionality that is required for a host to route audio and midi data to a complex chain of VST plugins.

Perhaps the Host builders here can tell what scenarios you support and how you've implemented them. Or if you think you have thought of a nice feature (request)...

Although anything you can say about threading is valuable, that is not the main part of the question. I'm looking for how you support Inserts and Sends and Buses. What routing options do you support.

Thanx.
Grtx, Marc Jacobi.
VST.NET | MIDI.NET

Post

Would you like a plugin routing engine that supports the following?

- Routing of plugin independent audio output channels
- Parallel (plugin) processing when signal splits into multiple channels
- Object model that represents the connections between plugins
- Also supports flexible Midi routing
- Midi channel support (filtering on channels)
- No (memory) management required (engine takes care of that)

If you have any features you can think of I missed or you've always wanted...?

[context]
I'm investigating the problems involved with midi and audio plugin processing. I've received some requests for a host framework for the VST.NET project I work on.

My current thinking is that an object model defines the routing and plugin connections. It has audio and midi channels and connects the audio outputs to other plugin's inputs. This object model is fed into a processing engine that accepts the initial audio and midi data and outputs the processed results - or perhaps you also register the audio output buses and it outputs directly to those? Plugin processing is done by a multi threaded engine that detects forks in the audio paths and processes these branches in parallel.

Any suggestions/feedback/criticism is welcome.
Grtx, Marc Jacobi.
VST.NET | MIDI.NET

Post

Have fun!
What's missing in the above is a bus concept; you're describing a completely modular setup. Correct?
"Until you spread your wings, you'll have no idea how far you can walk." Image

Post

Yeah, I thought about buses. But as far as I could tell, buses are no more than a collection of channels that are manipulated (connected) as one unit. That is how I will incorporate it into the engine, I guess. Input and output buses usually only show up connected to the audio card.

Modular: Yes. The idea is that every routing option is possible but also that you can extend the engine at several points (not sure where exactly tho ;-)).
Grtx, Marc Jacobi.
VST.NET | MIDI.NET

Post Reply

Return to “DSP and Plugin Development”