mirror of
https://github.com/Ardour/ardour.git
synced 2025-12-17 12:16:30 +01:00
Add debug flags to track down #8317
This commit is contained in:
parent
6d6db90b60
commit
fb9f1eff12
4 changed files with 30 additions and 0 deletions
|
|
@ -78,6 +78,8 @@ namespace PBD {
|
||||||
LIBARDOUR_API extern DebugBits Panning;
|
LIBARDOUR_API extern DebugBits Panning;
|
||||||
LIBARDOUR_API extern DebugBits Peaks;
|
LIBARDOUR_API extern DebugBits Peaks;
|
||||||
LIBARDOUR_API extern DebugBits PluginManager;
|
LIBARDOUR_API extern DebugBits PluginManager;
|
||||||
|
LIBARDOUR_API extern DebugBits PortConnectAuto;
|
||||||
|
LIBARDOUR_API extern DebugBits PortConnectIO;
|
||||||
LIBARDOUR_API extern DebugBits Ports;
|
LIBARDOUR_API extern DebugBits Ports;
|
||||||
LIBARDOUR_API extern DebugBits ProcessThreads;
|
LIBARDOUR_API extern DebugBits ProcessThreads;
|
||||||
LIBARDOUR_API extern DebugBits Processors;
|
LIBARDOUR_API extern DebugBits Processors;
|
||||||
|
|
|
||||||
|
|
@ -73,6 +73,8 @@ PBD::DebugBits PBD::DEBUG::OrderKeys = PBD::new_debug_bit ("orderkeys");
|
||||||
PBD::DebugBits PBD::DEBUG::Panning = PBD::new_debug_bit ("panning");
|
PBD::DebugBits PBD::DEBUG::Panning = PBD::new_debug_bit ("panning");
|
||||||
PBD::DebugBits PBD::DEBUG::Peaks = PBD::new_debug_bit ("peaks");
|
PBD::DebugBits PBD::DEBUG::Peaks = PBD::new_debug_bit ("peaks");
|
||||||
PBD::DebugBits PBD::DEBUG::PluginManager = PBD::new_debug_bit ("pluginmanager");
|
PBD::DebugBits PBD::DEBUG::PluginManager = PBD::new_debug_bit ("pluginmanager");
|
||||||
|
PBD::DebugBits PBD::DEBUG::PortConnectAuto = PBD::new_debug_bit ("PortConnectAuto");
|
||||||
|
PBD::DebugBits PBD::DEBUG::PortConnectIO = PBD::new_debug_bit ("PortConnectIO");
|
||||||
PBD::DebugBits PBD::DEBUG::Ports = PBD::new_debug_bit ("Ports");
|
PBD::DebugBits PBD::DEBUG::Ports = PBD::new_debug_bit ("Ports");
|
||||||
PBD::DebugBits PBD::DEBUG::ProcessThreads = PBD::new_debug_bit ("processthreads");
|
PBD::DebugBits PBD::DEBUG::ProcessThreads = PBD::new_debug_bit ("processthreads");
|
||||||
PBD::DebugBits PBD::DEBUG::Processors = PBD::new_debug_bit ("processors");
|
PBD::DebugBits PBD::DEBUG::Processors = PBD::new_debug_bit ("processors");
|
||||||
|
|
|
||||||
|
|
@ -168,6 +168,9 @@ IO::disconnect (boost::shared_ptr<Port> our_port, string other_port, void* src)
|
||||||
|
|
||||||
/* disconnect it from the source */
|
/* disconnect it from the source */
|
||||||
|
|
||||||
|
DEBUG_TRACE (DEBUG::PortConnectIO,
|
||||||
|
string_compose("IO::disconnect %1 from %2\n", our_port->name(), other_port));
|
||||||
|
|
||||||
if (our_port->disconnect (other_port)) {
|
if (our_port->disconnect (other_port)) {
|
||||||
error << string_compose(_("IO: cannot disconnect port %1 from %2"), our_port->name(), other_port) << endmsg;
|
error << string_compose(_("IO: cannot disconnect port %1 from %2"), our_port->name(), other_port) << endmsg;
|
||||||
return -1;
|
return -1;
|
||||||
|
|
@ -199,6 +202,9 @@ IO::connect (boost::shared_ptr<Port> our_port, string other_port, void* src)
|
||||||
|
|
||||||
/* connect it to the source */
|
/* connect it to the source */
|
||||||
|
|
||||||
|
DEBUG_TRACE (DEBUG::PortConnectIO,
|
||||||
|
string_compose("IO::connect %1 to %2\n", our_port->name(), other_port));
|
||||||
|
|
||||||
if (our_port->connect (other_port)) {
|
if (our_port->connect (other_port)) {
|
||||||
return -1;
|
return -1;
|
||||||
}
|
}
|
||||||
|
|
|
||||||
|
|
@ -6862,6 +6862,12 @@ Session::auto_connect_route (boost::shared_ptr<Route> route, bool connect_inputs
|
||||||
const ChanCount& output_offset)
|
const ChanCount& output_offset)
|
||||||
{
|
{
|
||||||
Glib::Threads::Mutex::Lock lx (_auto_connect_queue_lock);
|
Glib::Threads::Mutex::Lock lx (_auto_connect_queue_lock);
|
||||||
|
|
||||||
|
DEBUG_TRACE (DEBUG::PortConnectAuto,
|
||||||
|
string_compose ("Session::auto_connect_route '%1' ci: %2 is=(%3) os=(%4) io=(%5) oo=(%6)\n",
|
||||||
|
route->name(), connect_inputs,
|
||||||
|
input_start, output_start, input_offset, output_offset));
|
||||||
|
|
||||||
_auto_connect_queue.push (AutoConnectRequest (route, connect_inputs,
|
_auto_connect_queue.push (AutoConnectRequest (route, connect_inputs,
|
||||||
input_start, output_start,
|
input_start, output_start,
|
||||||
input_offset, output_offset));
|
input_offset, output_offset));
|
||||||
|
|
@ -6917,6 +6923,10 @@ Session::auto_connect (const AutoConnectRequest& ar)
|
||||||
? ChanCount::max(ar.input_offset, ar.output_offset)
|
? ChanCount::max(ar.input_offset, ar.output_offset)
|
||||||
: ar.output_offset;
|
: ar.output_offset;
|
||||||
|
|
||||||
|
DEBUG_TRACE (DEBUG::PortConnectAuto,
|
||||||
|
string_compose ("Session::auto_connect '%1' iop: %2 is=(%3) os=(%4) Eio=(%5) Eoo=(%6)\n",
|
||||||
|
route->name(), in_out_physical, ar.input_start, ar.output_start, in_offset, out_offset));
|
||||||
|
|
||||||
for (DataType::iterator t = DataType::begin(); t != DataType::end(); ++t) {
|
for (DataType::iterator t = DataType::begin(); t != DataType::end(); ++t) {
|
||||||
vector<string> physinputs;
|
vector<string> physinputs;
|
||||||
vector<string> physoutputs;
|
vector<string> physoutputs;
|
||||||
|
|
@ -6928,6 +6938,10 @@ Session::auto_connect (const AutoConnectRequest& ar)
|
||||||
|
|
||||||
get_physical_ports (physinputs, physoutputs, *t, MidiPortMusic);
|
get_physical_ports (physinputs, physoutputs, *t, MidiPortMusic);
|
||||||
|
|
||||||
|
DEBUG_TRACE (DEBUG::PortConnectAuto,
|
||||||
|
string_compose ("Physical MidiPortMusic %1 Ports count in: %2 out %3\n",
|
||||||
|
(*t).to_string(), physinputs.size(), physoutputs.size()));
|
||||||
|
|
||||||
if (!physinputs.empty() && ar.connect_inputs) {
|
if (!physinputs.empty() && ar.connect_inputs) {
|
||||||
uint32_t nphysical_in = physinputs.size();
|
uint32_t nphysical_in = physinputs.size();
|
||||||
|
|
||||||
|
|
@ -6939,12 +6953,17 @@ Session::auto_connect (const AutoConnectRequest& ar)
|
||||||
}
|
}
|
||||||
|
|
||||||
if (!port.empty() && route->input()->connect (route->input()->ports().port(*t, i), port, this)) {
|
if (!port.empty() && route->input()->connect (route->input()->ports().port(*t, i), port, this)) {
|
||||||
|
DEBUG_TRACE (DEBUG::PortConnectAuto, "Failed to auto-connect input.");
|
||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
if (!physoutputs.empty()) {
|
if (!physoutputs.empty()) {
|
||||||
|
DEBUG_TRACE (DEBUG::PortConnectAuto,
|
||||||
|
string_compose ("Connect %1 outputs # %2 .. %3\n",
|
||||||
|
(*t).to_string(), ar.output_start.get(*t), route->n_outputs().get(*t)));
|
||||||
|
|
||||||
uint32_t nphysical_out = physoutputs.size();
|
uint32_t nphysical_out = physoutputs.size();
|
||||||
for (uint32_t i = ar.output_start.get(*t); i < route->n_outputs().get(*t); ++i) {
|
for (uint32_t i = ar.output_start.get(*t); i < route->n_outputs().get(*t); ++i) {
|
||||||
string port;
|
string port;
|
||||||
|
|
@ -6960,6 +6979,7 @@ Session::auto_connect (const AutoConnectRequest& ar)
|
||||||
}
|
}
|
||||||
|
|
||||||
if (!port.empty() && route->output()->connect (route->output()->ports().port(*t, i), port, this)) {
|
if (!port.empty() && route->output()->connect (route->output()->ports().port(*t, i), port, this)) {
|
||||||
|
DEBUG_TRACE (DEBUG::PortConnectAuto, "Failed to auto-connect ouput.");
|
||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
|
||||||
Loading…
Add table
Add a link
Reference in a new issue