Skip to content

Conversation

@Quant1um
Copy link

This PR implements:

  • Multi-layout support for VST3 backend via configurable-audio-ports and audio-ports-config (whichever is present)
  • Bus activation flags via audio-ports-activation
  • Better support for null-typed ports with arbitrary number of channels (speakerArrFromPortType)
  • audio-ports-config implemented for clap-first-example so it could be validated

A similar feature probably needs to be implemented on the AUv2 side, but I don't have enough experience working with AUv2.

@baconpaul
Copy link
Collaborator

OK this is a big change. We may want to drop 0.14 first (planned this week) and then put this on next after that.

I also note that your diff changes const char *foo to const char* foo throughout making a lot of diff noise. Any reason fro that? I'm honestly a bit surprised it passed clang format.

…-activation' extension support for vst3, implement the 'audio-ports-config' extension for the clap-first-example plugin
@Quant1um
Copy link
Author

Quant1um commented Jan 17, 2026

@baconpaul The formatting change was not intentional, just fixed it! I think it would be a good idea to add PointerAlignment: Right (or Left) to .clang-format, currently pointer alignment seems to be all over the place.

@defiantnerd
Copy link
Collaborator

Oh, and audio-ports-config is not suitable for this - the only reason for this extension is a list to be presented to the user. But the settings do not contain enough information so setup the specific busses when it comes to surround/ambisonic.

@Quant1um
Copy link
Author

Okay, I removed audio-ports-config extension support; there are still some unresolved questions:

  • VST3's setBusArrangements wants the plugin to report a suggested configuration if the plugin doesn't accept the given config. Current implementation defaults to suggesting the current plugin layout. What would the desired behavior be?
  • Should this PR also implement 'surround' extension and report layouts with more than 2 channels as CLAP_PORT_SURROUND, or should this be left to a future PR? (currently it reports them as null-typed ports)

@defiantnerd
Copy link
Collaborator

I would think ghat suggested config is the current default config - which can be determined from audio-ports. Maybe I am thinking too simple.

@defiantnerd
Copy link
Collaborator

Thanks! Very good contribution!

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants