mirror of
https://github.com/Ardour/ardour.git
synced 2025-12-06 14:54:56 +01:00
LV2: Ignore connection optional ports
This commit is contained in:
parent
4b31a1078a
commit
5a1fc0ddc9
1 changed files with 57 additions and 54 deletions
|
|
@ -186,6 +186,7 @@ public:
|
|||
LilvNode* lv2_ControlPort;
|
||||
LilvNode* lv2_InputPort;
|
||||
LilvNode* lv2_OutputPort;
|
||||
LilvNode* lv2_connectionOptional;
|
||||
LilvNode* lv2_designation;
|
||||
LilvNode* lv2_enumeration;
|
||||
LilvNode* lv2_freewheeling;
|
||||
|
|
@ -837,7 +838,7 @@ LV2Plugin::init(const void* c_plugin, samplecnt_t rate)
|
|||
lilv_nodes_free(min_size_v);
|
||||
lilv_nodes_free(buffer_types);
|
||||
lilv_nodes_free(atom_supports);
|
||||
} else {
|
||||
} else if (!lilv_port_has_property(_impl->plugin, port, _world.lv2_connectionOptional)) {
|
||||
error << string_compose(
|
||||
"LV2: \"%1\" port %2 has no known data type",
|
||||
lilv_node_as_string(_impl->name), i) << endmsg;
|
||||
|
|
@ -3514,6 +3515,7 @@ LV2World::LV2World()
|
|||
lv2_ControlPort = lilv_new_uri(world, LILV_URI_CONTROL_PORT);
|
||||
lv2_InputPort = lilv_new_uri(world, LILV_URI_INPUT_PORT);
|
||||
lv2_OutputPort = lilv_new_uri(world, LILV_URI_OUTPUT_PORT);
|
||||
lv2_connectionOptional = lilv_new_uri(world, LV2_CORE__connectionOptional);
|
||||
lv2_inPlaceBroken = lilv_new_uri(world, LV2_CORE__inPlaceBroken);
|
||||
lv2_isSideChain = lilv_new_uri(world, LV2_CORE_PREFIX "isSideChain");
|
||||
lv2_index = lilv_new_uri(world, LV2_CORE__index);
|
||||
|
|
@ -3616,6 +3618,7 @@ LV2World::~LV2World()
|
|||
lilv_node_free(lv2_integer);
|
||||
lilv_node_free(lv2_isSideChain);
|
||||
lilv_node_free(lv2_inPlaceBroken);
|
||||
lilv_node_free(lv2_connectionOptional);
|
||||
lilv_node_free(lv2_OutputPort);
|
||||
lilv_node_free(lv2_InputPort);
|
||||
lilv_node_free(lv2_ControlPort);
|
||||
|
|
@ -3971,7 +3974,7 @@ LV2PluginInfo::discover (boost::function <void (std::string const&, PluginScanLo
|
|||
count_ctrl_out++;
|
||||
}
|
||||
}
|
||||
else if (!lilv_port_is_a (p, port, world.lv2_AudioPort)) {
|
||||
else if (!lilv_port_is_a(p, port, world.lv2_AudioPort) && !lilv_port_has_property(p, port, world.lv2_connectionOptional)) {
|
||||
err = 1;
|
||||
LilvNode* name = lilv_port_get_name(p, port);
|
||||
cb (uri, PluginScanLogEntry::Error, string_compose (_("Port %1 ('%2') has no known data type"), i, lilv_node_as_string (name)), false);
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue