PBD::error << "OSC: given processor # " << piid << " on RID '" << ssid << "' is not a Plugin." << endmsg;
continue;
}
- lo_message_add_int32(reply, piid);
+ lo_message_add_int32(reply, piid + 1);
boost::shared_ptr<ARDOUR::Plugin> pip = pi->plugin();
lo_message_add_string(reply, pip->name());
return -1;
}
- boost::shared_ptr<Processor> redi = r->nth_plugin(piid);
+ boost::shared_ptr<Processor> redi = r->nth_plugin(piid - 1);
if (!redi) {
PBD::error << "OSC: cannot find plugin # " << piid << " for RID '" << ssid << "'" << endmsg;
if( pip->parameter_is_input(controlid) || pip->parameter_is_control(controlid) ) {
boost::shared_ptr<AutomationControl> c = pi->automation_control(Evoral::Parameter(PluginAutomation, 0, controlid));
- lo_message_add_int32(reply, ppi);
+ lo_message_add_int32(reply, ppi + 1);
ParameterDescriptor pd;
pi->plugin()->get_parameter_descriptor(controlid, pd);
lo_message_add_string(reply, pd.label.c_str());
return -1;
}
- boost::shared_ptr<Processor> redi = r->nth_plugin(piid);
+ boost::shared_ptr<Processor> redi = r->nth_plugin(piid - 1);
if (!redi) {
PBD::error << "OSC: cannot find plugin # " << piid << " for RID '" << ssid << "'" << endmsg;
return -1;
}
- boost::shared_ptr<Processor> redi=r->nth_plugin (piid);
+ boost::shared_ptr<Processor> redi=r->nth_plugin (piid - 1);
if (!redi) {
PBD::error << "OSC: cannot find plugin # " << piid << " for RID '" << ssid << "'" << endmsg;
boost::shared_ptr<ARDOUR::Plugin> pip = pi->plugin();
bool ok=false;
- uint32_t controlid = pip->nth_parameter (par,ok);
+ uint32_t controlid = pip->nth_parameter (par - 1,ok);
if (!ok) {
PBD::error << "OSC: Cannot find parameter # " << par << " for plugin # " << piid << " on RID '" << ssid << "'" << endmsg;
return -1;
}
- boost::shared_ptr<Processor> redi=r->nth_processor (piid);
+ boost::shared_ptr<Processor> redi=r->nth_plugin (piid - 1);
if (!redi) {
return -1;
boost::shared_ptr<ARDOUR::Plugin> pip = pi->plugin();
bool ok=false;
- uint32_t controlid = pip->nth_parameter (par,ok);
+ uint32_t controlid = pip->nth_parameter (par - 1,ok);
if (!ok) {
return -1;
if (pi->plugin()->get_parameter_descriptor (controlid, pd) == 0) {
boost::shared_ptr<AutomationControl> c = pi->automation_control (Evoral::Parameter(PluginAutomation, 0, controlid));
- cerr << "parameter: " << redi->describe_parameter(controlid) << "\n";
- cerr << "current value: " << c->get_value ();
+ cerr << "parameter: " << pd.label << "\n";
+ if (c) {
+ cerr << "current value: " << c->get_value () << "\n";
+ } else {
+ cerr << "current value not available, control does not exist\n";
+ }
cerr << "lower value: " << pd.lower << "\n";
cerr << "upper value: " << pd.upper << "\n";
}
return -1;
}
- boost::shared_ptr<Processor> redi=r->nth_plugin (piid);
+ boost::shared_ptr<Processor> redi=r->nth_plugin (piid - 1);
if (!redi) {
PBD::error << "OSC: cannot find plugin # " << piid << " for RID '" << ssid << "'" << endmsg;
return -1;
}
- boost::shared_ptr<Processor> redi=r->nth_plugin (piid);
+ boost::shared_ptr<Processor> redi=r->nth_plugin (piid - 1);
if (!redi) {
PBD::error << "OSC: cannot find plugin # " << piid << " for RID '" << ssid << "'" << endmsg;