mirror of
https://github.com/Ardour/ardour.git
synced 2025-12-06 06:44:57 +01:00
VST report audioMasterPinConnected according to Pin Management
This commit is contained in:
parent
e8366dbd83
commit
e77729125e
2 changed files with 20 additions and 0 deletions
|
|
@ -2437,6 +2437,11 @@ PluginInsert::add_plugin (boost::shared_ptr<Plugin> plugin)
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
boost::shared_ptr<VSTPlugin> vst = boost::dynamic_pointer_cast<VSTPlugin> (plugin);
|
||||||
|
if (vst) {
|
||||||
|
vst->set_insert (this, _plugins.size ());
|
||||||
|
}
|
||||||
_plugins.push_back (plugin);
|
_plugins.push_back (plugin);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
||||||
|
|
@ -26,6 +26,7 @@
|
||||||
#include "ardour/debug.h"
|
#include "ardour/debug.h"
|
||||||
#include "ardour/session.h"
|
#include "ardour/session.h"
|
||||||
#include "ardour/tempo.h"
|
#include "ardour/tempo.h"
|
||||||
|
#include "ardour/plugin_insert.h"
|
||||||
#include "ardour/windows_vst_plugin.h"
|
#include "ardour/windows_vst_plugin.h"
|
||||||
#include "ardour/vestige/aeffectx.h"
|
#include "ardour/vestige/aeffectx.h"
|
||||||
#include "ardour/vst_types.h"
|
#include "ardour/vst_types.h"
|
||||||
|
|
@ -124,11 +125,25 @@ intptr_t Session::vst_callback (
|
||||||
}
|
}
|
||||||
switch (value) {
|
switch (value) {
|
||||||
case 0:
|
case 0:
|
||||||
|
if (plug->plugin_insert ()) {
|
||||||
|
bool valid;
|
||||||
|
const ChanMapping& map (plug->plugin_insert ()->input_map (plug->plugin_number ()));
|
||||||
|
map.get (DataType::AUDIO, index, &valid);
|
||||||
|
return valid ? 0 : 1;
|
||||||
|
}
|
||||||
if (index < plug->plugin()->numInputs) {
|
if (index < plug->plugin()->numInputs) {
|
||||||
return 0;
|
return 0;
|
||||||
}
|
}
|
||||||
break;
|
break;
|
||||||
case 1:
|
case 1:
|
||||||
|
#if 0 // investigate, the outputs *are* connected to scratch buffers
|
||||||
|
if (plug->plugin_insert ()) {
|
||||||
|
bool valid;
|
||||||
|
const ChanMapping& map (plug->plugin_insert ()->output_map (plug->plugin_number ()));
|
||||||
|
map.get (DataType::AUDIO, index, &valid);
|
||||||
|
return valid ? 0 : 1;
|
||||||
|
}
|
||||||
|
#endif
|
||||||
if (index < plug->plugin()->numOutputs) {
|
if (index < plug->plugin()->numOutputs) {
|
||||||
return 0;
|
return 0;
|
||||||
}
|
}
|
||||||
|
|
|
||||||
Loading…
Add table
Add a link
Reference in a new issue