LV2: Ignore connection optional ports
This commit is contained in:
parent
4b31a1078a
commit
5a1fc0ddc9
@ -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…
Reference in New Issue
Block a user