@@ -1170,18 +1170,13 @@ float CarlaEngine::getOutputPeak(const uint pluginId, const bool isLeft) const n | |||
void CarlaEngine::callback(const EngineCallbackOpcode action, const uint pluginId, const int value1, const int value2, const float value3, const char* const valueStr) noexcept | |||
{ | |||
#ifdef DEBUG | |||
if (action != ENGINE_CALLBACK_IDLE && action != ENGINE_CALLBACK_NOTE_ON && action != ENGINE_CALLBACK_NOTE_OFF) | |||
carla_debug("CarlaEngine::callback(%i:%s, %i, %i, %i, %f, \"%s\")", action, EngineCallbackOpcode2Str(action), pluginId, value1, value2, value3, valueStr); | |||
#endif | |||
#ifdef BUILD_BRIDGE_ALTERNATIVE_ARCH | |||
if (pData->isIdling) | |||
#else | |||
if (pData->isIdling && action != ENGINE_CALLBACK_PATCHBAY_CLIENT_DATA_CHANGED) | |||
carla_stdout("CarlaEngine::callback [while idling] (%i:%s, %i, %i, %i, %f, \"%s\")", | |||
action, EngineCallbackOpcode2Str(action), pluginId, value1, value2, value3, valueStr); | |||
else if (action != ENGINE_CALLBACK_IDLE && action != ENGINE_CALLBACK_NOTE_ON && action != ENGINE_CALLBACK_NOTE_OFF) | |||
carla_debug("CarlaEngine::callback(%i:%s, %i, %i, %i, %f, \"%s\")", | |||
action, EngineCallbackOpcode2Str(action), pluginId, value1, value2, value3, valueStr); | |||
#endif | |||
{ | |||
carla_stdout("callback while idling (%i:%s, %i, %i, %i, %f, \"%s\")", action, EngineCallbackOpcode2Str(action), pluginId, value1, value2, value3, valueStr); | |||
} | |||
if (pData->callback != nullptr) | |||
{ | |||
@@ -682,8 +682,10 @@ ScopedActionLock::ScopedActionLock(CarlaEngine* const engine, | |||
if (pData->nextAction.needsPost) | |||
{ | |||
#if defined(DEBUG) || defined(BUILD_BRIDGE) | |||
// block wait for unlock on processing side | |||
carla_stdout(ACTION_MSG_PREFIX "ScopedPluginAction(%i) - blocking START", pluginId); | |||
#endif | |||
bool engineStoppedWhileWaiting = false; | |||
@@ -709,7 +711,9 @@ ScopedActionLock::ScopedActionLock(CarlaEngine* const engine, | |||
} | |||
} | |||
#if defined(DEBUG) || defined(BUILD_BRIDGE) | |||
carla_stdout(ACTION_MSG_PREFIX "ScopedPluginAction(%i) - blocking DONE", pluginId); | |||
#endif | |||
// check if anything went wrong... | |||
if (! pData->nextAction.postDone) | |||
@@ -5476,7 +5476,7 @@ public: | |||
if (const char* const bridgeBinary = getUiBridgeBinary(uiType)) | |||
{ | |||
carla_stdout("Will use UI-Bridge, binary: \"%s\"", bridgeBinary); | |||
carla_stdout("Will use UI-Bridge for '%s', binary: \"%s\"", pData->name, bridgeBinary); | |||
CarlaString guiTitle(pData->name); | |||
guiTitle += " (GUI)"; | |||
@@ -5491,7 +5491,7 @@ public: | |||
if (iFinal == eQt4 || iFinal == eQt5 || iFinal == eGtk2 || iFinal == eGtk3) | |||
{ | |||
carla_stderr2("Failed to find UI bridge binary, cannot use UI"); | |||
carla_stderr2("Failed to find UI bridge binary for '%s', cannot use UI", pData->name); | |||
fUI.rdfDescriptor = nullptr; | |||
return; | |||
} | |||
@@ -5550,44 +5550,44 @@ public: | |||
switch (uiType) | |||
{ | |||
case LV2_UI_QT4: | |||
carla_stdout("Will use LV2 Qt4 UI, NOT!"); | |||
carla_stdout("Will use LV2 Qt4 UI for '%s', NOT!", pData->name); | |||
fUI.type = UI::TYPE_EMBED; | |||
break; | |||
case LV2_UI_QT5: | |||
carla_stdout("Will use LV2 Qt5 UI, NOT!"); | |||
carla_stdout("Will use LV2 Qt5 UI for '%s', NOT!", pData->name); | |||
fUI.type = UI::TYPE_EMBED; | |||
break; | |||
case LV2_UI_GTK2: | |||
carla_stdout("Will use LV2 Gtk2 UI, NOT!"); | |||
carla_stdout("Will use LV2 Gtk2 UI for '%s', NOT!", pData->name); | |||
fUI.type = UI::TYPE_EMBED; | |||
break; | |||
case LV2_UI_GTK3: | |||
carla_stdout("Will use LV2 Gtk3 UI, NOT!"); | |||
carla_stdout("Will use LV2 Gtk3 UI for '%s', NOT!", pData->name); | |||
fUI.type = UI::TYPE_EMBED; | |||
break; | |||
#ifdef CARLA_OS_MAC | |||
case LV2_UI_COCOA: | |||
carla_stdout("Will use LV2 Cocoa UI"); | |||
carla_stdout("Will use LV2 Cocoa UI for '%s'", pData->name); | |||
fUI.type = UI::TYPE_EMBED; | |||
break; | |||
#endif | |||
#ifdef CARLA_OS_WIN | |||
case LV2_UI_WINDOWS: | |||
carla_stdout("Will use LV2 Windows UI"); | |||
carla_stdout("Will use LV2 Windows UI for '%s'", pData->name); | |||
fUI.type = UI::TYPE_EMBED; | |||
break; | |||
#endif | |||
case LV2_UI_X11: | |||
#ifdef HAVE_X11 | |||
carla_stdout("Will use LV2 X11 UI"); | |||
carla_stdout("Will use LV2 X11 UI for '%s'", pData->name); | |||
#else | |||
carla_stdout("Will use LV2 X11 UI, NOT!"); | |||
carla_stdout("Will use LV2 X11 UI for '%s', NOT!", pData->name); | |||
#endif | |||
fUI.type = UI::TYPE_EMBED; | |||
break; | |||
case LV2_UI_EXTERNAL: | |||
case LV2_UI_OLD_EXTERNAL: | |||
carla_stdout("Will use LV2 External UI"); | |||
carla_stdout("Will use LV2 External UI for '%s'", pData->name); | |||
fUI.type = UI::TYPE_EXTERNAL; | |||
break; | |||
} | |||
@@ -702,9 +702,7 @@ public: | |||
return false; | |||
} | |||
const String dump = sound->dump(); | |||
carla_stdout("SFZero sound information:"); | |||
std::puts(dump.toRawUTF8()); | |||
sound->dumpToConsole(); | |||
// --------------------------------------------------------------- | |||
@@ -897,7 +897,6 @@ class HostWindow(QMainWindow): | |||
self.ui.cb_transport_jack.setChecked(transportMode == ENGINE_TRANSPORT_MODE_JACK) | |||
self.ui.cb_transport_jack.setEnabled(driverName == "JACK" and processMode != ENGINE_PROCESS_MODE_MULTIPLE_CLIENTS) | |||
print("transport extra! ", self.host.transportExtra) | |||
if self.ui.cb_transport_link.isEnabled(): | |||
self.ui.cb_transport_link.setChecked(":link:" in self.host.transportExtra) | |||
@@ -177,4 +177,40 @@ water::String Sound::dump() | |||
return info; | |||
} | |||
void Sound::dumpToConsole() | |||
{ | |||
const water::String filename(file_.getFileNameWithoutExtension()); | |||
const water::StringArray& errors(getErrors()); | |||
const water::StringArray& warnings(getWarnings()); | |||
const int numErrors = errors.size(); | |||
const int numWarnings = warnings.size(); | |||
if (numErrors == 0 && numWarnings == 0) | |||
{ | |||
carla_stdout("SFZ '%s' loaded without errors or warnings, nice! :)", filename.toRawUTF8()); | |||
return; | |||
} | |||
if (numErrors != 0) | |||
{ | |||
carla_stdout("SFZ '%s' loaded with %i errors and %i warnings:", filename.toRawUTF8(), numErrors, numWarnings); | |||
if (numWarnings != 0) | |||
carla_stdout("Errors:"); | |||
carla_stdout("%s", errors.joinIntoString("\n").toRawUTF8()); | |||
if (numWarnings != 0) | |||
{ | |||
carla_stdout("Warnings:"); | |||
carla_stdout("%s", warnings.joinIntoString("\n").toRawUTF8()); | |||
} | |||
} | |||
carla_stdout("SFZ '%s' loaded without errors, but has %i warnings:", filename.toRawUTF8(), numWarnings); | |||
carla_stdout("%s", warnings.joinIntoString("\n").toRawUTF8()); | |||
} | |||
} |
@@ -52,6 +52,8 @@ public: | |||
const water::StringArray &getWarnings() { return warnings_; } | |||
water::String dump(); | |||
void dumpToConsole(); | |||
water::Array<Region *> &getRegions() { return regions_; } | |||
water::File &getFile() { return file_; } | |||