diff --git a/source/backend/CarlaBackend.h b/source/backend/CarlaBackend.h index cafa55864..33d9a51c4 100644 --- a/source/backend/CarlaBackend.h +++ b/source/backend/CarlaBackend.h @@ -210,11 +210,6 @@ static constexpr const uint PLUGIN_HAS_CUSTOM_UI_USING_FILE_OPEN = 0x2000; */ static constexpr const uint PLUGIN_NEEDS_MAIN_THREAD_IDLE = 0x4000; -/*! - * Plugin can use internal Front-Rear balance for Quadro (or > 2 channels in General). - */ -static constexpr const uint PLUGIN_CAN_FORTH = 0x8000; - /** @} */ /* ------------------------------------------------------------------------------------------------------------ @@ -838,19 +833,12 @@ typedef enum { * Range -1...15 (-1 = off). */ PARAMETER_CTRL_CHANNEL = -8, - - /*! - * Experimental Front-Rear parameter for Quadro (or > 2 channels in General). - * Range -1.0...1.0; default is 0.0. - */ - PARAMETER_FORTH = -9, - #endif /*! * Max value, defined only for convenience. */ - PARAMETER_MAX = -10 + PARAMETER_MAX = -9 } InternalParameterIndex; diff --git a/source/backend/CarlaHost.h b/source/backend/CarlaHost.h index bbd412df1..240ba0c29 100644 --- a/source/backend/CarlaHost.h +++ b/source/backend/CarlaHost.h @@ -966,13 +966,6 @@ CARLA_API_EXPORT void carla_set_balance_right(CarlaHostHandle handle, uint plugi */ CARLA_API_EXPORT void carla_set_panning(CarlaHostHandle handle, uint pluginId, float value); -/*! - * Change a plugin's internal experimental front-rear (forth) value. - * @param pluginId Plugin - * @param value New value - */ -CARLA_API_EXPORT void carla_set_forth(CarlaHostHandle handle, uint pluginId, float value); - /*! * Change a plugin's internal control channel. * @param pluginId Plugin diff --git a/source/backend/CarlaPlugin.hpp b/source/backend/CarlaPlugin.hpp index 48e1ae47f..5ae7f50f7 100644 --- a/source/backend/CarlaPlugin.hpp +++ b/source/backend/CarlaPlugin.hpp @@ -542,15 +542,6 @@ public: */ void setPanning(float value, bool sendOsc, bool sendCallback) noexcept; - /*! - * Set the plugin's output forth (front-rear) value to @a value. - * @a value must be between -1.0 and 1.0. - * - * @param sendOsc Send message change over OSC - * @param sendCallback Send message change to registered callback - */ - void setForth(float value, bool sendOsc, bool sendCallback) noexcept; - /*! * Overloaded functions, to be called from within RT context only. */ @@ -559,7 +550,6 @@ public: void setBalanceLeftRT(float value, bool sendCallbackLater) noexcept; void setBalanceRightRT(float value, bool sendCallbackLater) noexcept; void setPanningRT(float value, bool sendCallbackLater) noexcept; - void setForthRT(float value, bool sendCallbackLater) noexcept; #endif // ! BUILD_BRIDGE_ALTERNATIVE_ARCH /*! diff --git a/source/backend/CarlaStandalone.cpp b/source/backend/CarlaStandalone.cpp index 9dee9b705..6a96894e1 100644 --- a/source/backend/CarlaStandalone.cpp +++ b/source/backend/CarlaStandalone.cpp @@ -2091,14 +2091,6 @@ void carla_set_panning(CarlaHostHandle handle, uint pluginId, float value) plugin->setPanning(value, true, false); } -void carla_set_forth(CarlaHostHandle handle, uint pluginId, float value) -{ - CARLA_SAFE_ASSERT_RETURN(handle->engine != nullptr,); - - if (const CarlaPluginPtr plugin = handle->engine->getPlugin(pluginId)) - plugin->setForth(value, true, false); -} - void carla_set_ctrl_channel(CarlaHostHandle handle, uint pluginId, int8_t channel) { CARLA_SAFE_ASSERT_RETURN(handle->engine != nullptr,); diff --git a/source/backend/engine/CarlaEngine.cpp b/source/backend/engine/CarlaEngine.cpp index ad4d61c92..1731cd45e 100644 --- a/source/backend/engine/CarlaEngine.cpp +++ b/source/backend/engine/CarlaEngine.cpp @@ -2921,7 +2921,6 @@ bool CarlaEngine::loadProjectInternal(water::XmlDocument& xmlDoc, const bool alw plugin->setBalanceLeft(stateSave.balanceLeft, true, true); plugin->setBalanceRight(stateSave.balanceRight, true, true); plugin->setPanning(stateSave.panning, true, true); - plugin->setForth(stateSave.forth, true, true); plugin->setCtrlChannel(stateSave.ctrlChannel, true, true); plugin->setActive(stateSave.active, true, true); plugin->setEnabled(true); @@ -2977,7 +2976,6 @@ bool CarlaEngine::loadProjectInternal(water::XmlDocument& xmlDoc, const bool alw plugin->setBalanceLeft(stateSave.balanceLeft, true, true); plugin->setBalanceRight(stateSave.balanceRight, true, true); plugin->setPanning(stateSave.panning, true, true); - plugin->setForth(stateSave.forth, true, true); plugin->setCtrlChannel(stateSave.ctrlChannel, true, true); plugin->setActive(stateSave.active, true, true); plugin->setEnabled(true); diff --git a/source/backend/engine/CarlaEngineNative.cpp b/source/backend/engine/CarlaEngineNative.cpp index ec34896db..0534b82a6 100644 --- a/source/backend/engine/CarlaEngineNative.cpp +++ b/source/backend/engine/CarlaEngineNative.cpp @@ -2115,17 +2115,6 @@ bool CarlaEngineNativeUI::msgReceived(const char* const msg) noexcept if (const CarlaPluginPtr plugin = fEngine->getPlugin(pluginId)) plugin->setPanning(value, true, false); } - else if (std::strcmp(msg, "set_forth") == 0) - { - uint32_t pluginId; - float value; - - CARLA_SAFE_ASSERT_RETURN(readNextLineAsUInt(pluginId), true); - CARLA_SAFE_ASSERT_RETURN(readNextLineAsFloat(value), true); - - if (const CarlaPluginPtr plugin = fEngine->getPlugin(pluginId)) - plugin->setForth(value, true, false); - } else if (std::strcmp(msg, "set_ctrl_channel") == 0) { uint32_t pluginId; diff --git a/source/backend/engine/CarlaEngineOsc.hpp b/source/backend/engine/CarlaEngineOsc.hpp index d20a3b18b..4677f1ec3 100644 --- a/source/backend/engine/CarlaEngineOsc.hpp +++ b/source/backend/engine/CarlaEngineOsc.hpp @@ -137,7 +137,6 @@ private: int handleMsgSetBalanceLeft(CARLA_ENGINE_OSC_HANDLE_ARGS); int handleMsgSetBalanceRight(CARLA_ENGINE_OSC_HANDLE_ARGS); int handleMsgSetPanning(CARLA_ENGINE_OSC_HANDLE_ARGS); - int handleMsgSetForth(CARLA_ENGINE_OSC_HANDLE_ARGS); int handleMsgSetParameterValue(CARLA_ENGINE_OSC_HANDLE_ARGS); int handleMsgSetParameterMappedControlIndex(CARLA_ENGINE_OSC_HANDLE_ARGS); int handleMsgSetParameterMappedRange(CARLA_ENGINE_OSC_HANDLE_ARGS); diff --git a/source/backend/engine/CarlaEngineOscHandlers.cpp b/source/backend/engine/CarlaEngineOscHandlers.cpp index 3a98485fd..1258c302c 100644 --- a/source/backend/engine/CarlaEngineOscHandlers.cpp +++ b/source/backend/engine/CarlaEngineOscHandlers.cpp @@ -179,8 +179,6 @@ int CarlaEngineOsc::handleMessage(const bool isTCP, const char* const path, return handleMsgSetBalanceRight(plugin, argc, argv, types); if (std::strcmp(method, "set_panning") == 0) return handleMsgSetPanning(plugin, argc, argv, types); - if (std::strcmp(method, "set_forth") == 0) - return handleMsgSetForth(plugin, argc, argv, types); if (std::strcmp(method, "set_ctrl_channel") == 0) return 0; //handleMsgSetControlChannel(plugin, argc, argv, types); // TODO if (std::strcmp(method, "set_parameter_value") == 0) @@ -680,17 +678,6 @@ int CarlaEngineOsc::handleMsgSetPanning(CARLA_ENGINE_OSC_HANDLE_ARGS) return 0; } -int CarlaEngineOsc::handleMsgSetForth(CARLA_ENGINE_OSC_HANDLE_ARGS) -{ - carla_debug("CarlaEngineOsc::handleMsgSetForth()"); - CARLA_ENGINE_OSC_CHECK_OSC_TYPES(1, "f"); - - const float value = argv[0]->f; - - plugin->setForth(value, false, true); - return 0; -} - int CarlaEngineOsc::handleMsgSetParameterValue(CARLA_ENGINE_OSC_HANDLE_ARGS) { carla_debug("CarlaEngineOsc::handleMsgSetParameterValue()"); diff --git a/source/backend/engine/CarlaEngineOscSend.cpp b/source/backend/engine/CarlaEngineOscSend.cpp index 9fd1dd7c3..00207e99f 100644 --- a/source/backend/engine/CarlaEngineOscSend.cpp +++ b/source/backend/engine/CarlaEngineOscSend.cpp @@ -287,18 +287,18 @@ void CarlaEngineOsc::sendPluginInternalParameterValues(const CarlaPluginPtr& plu carla_debug("CarlaEngineOsc::sendPluginInternalParameterValues(%p)", plugin.get()); #ifdef CARLA_PROPER_CPP11_SUPPORT - static_assert(PARAMETER_ACTIVE == -2 && PARAMETER_MAX == -10, "Incorrect data"); + static_assert(PARAMETER_ACTIVE == -2 && PARAMETER_MAX == -9, "Incorrect data"); #endif - double iparams[8]; + double iparams[7]; - for (int32_t i = 0; i < 8; ++i) + for (int32_t i = 0; i < 7; ++i) iparams[i] = plugin->getInternalParameterValue(PARAMETER_ACTIVE - i); char targetPath[std::strlen(fControlDataTCP.path)+9]; std::strcpy(targetPath, fControlDataTCP.path); std::strcat(targetPath, "/iparams"); - try_lo_send(fControlDataTCP.target, targetPath, "iffffffff", + try_lo_send(fControlDataTCP.target, targetPath, "ifffffff", static_cast(plugin->getId()), iparams[0], // PARAMETER_ACTIVE iparams[1], // PARAMETER_DRYWET @@ -306,8 +306,7 @@ void CarlaEngineOsc::sendPluginInternalParameterValues(const CarlaPluginPtr& plu iparams[3], // PARAMETER_BALANCE_LEFT iparams[4], // PARAMETER_BALANCE_RIGHT iparams[5], // PARAMETER_PANNING - iparams[6], // PARAMETER_CTRL_CHANNEL - iparams[7] // PARAMETER_FORTH + iparams[6] // PARAMETER_CTRL_CHANNEL ); } diff --git a/source/backend/plugin/CarlaPlugin.cpp b/source/backend/plugin/CarlaPlugin.cpp index 592fb25d5..afc7d108b 100644 --- a/source/backend/plugin/CarlaPlugin.cpp +++ b/source/backend/plugin/CarlaPlugin.cpp @@ -392,8 +392,6 @@ float CarlaPlugin::getInternalParameterValue(const int32_t parameterId) const no return pData->postProc.balanceRight; case PARAMETER_PANNING: return pData->postProc.panning; - case PARAMETER_FORTH: - return pData->postProc.forth; }; #endif CARLA_SAFE_ASSERT_RETURN(parameterId >= 0, 0.0f); @@ -542,7 +540,6 @@ const CarlaStateSave& CarlaPlugin::getStateSave(const bool callPrepareForSave) pData->stateSave.balanceLeft = pData->postProc.balanceLeft; pData->stateSave.balanceRight = pData->postProc.balanceRight; pData->stateSave.panning = pData->postProc.panning; - pData->stateSave.forth = pData->postProc.forth; pData->stateSave.ctrlChannel = pData->ctrlChannel; #endif @@ -956,7 +953,6 @@ void CarlaPlugin::loadStateSave(const CarlaStateSave& stateSave) setBalanceLeft(stateSave.balanceLeft, true, true); setBalanceRight(stateSave.balanceRight, true, true); setPanning(stateSave.panning, true, true); - setForth(stateSave.forth, true, true); setCtrlChannel(stateSave.ctrlChannel, true, true); setActive(stateSave.active, true, true); @@ -1554,31 +1550,6 @@ void CarlaPlugin::setPanning(const float value, const bool sendOsc, const bool s nullptr); } -void CarlaPlugin::setForth(const float value, const bool sendOsc, const bool sendCallback) noexcept -{ - if (pData->engineBridged) { - CARLA_SAFE_ASSERT_RETURN(!sendOsc && !sendCallback,); - } else { - CARLA_SAFE_ASSERT_RETURN(sendOsc || sendCallback,); // never call this from RT - } - CARLA_SAFE_ASSERT(value >= -1.0f && value <= 1.0f); - - const float fixedValue(carla_fixedValue(-1.0f, 1.0f, value)); - - if (carla_isEqual(pData->postProc.forth, fixedValue)) - return; - - pData->postProc.forth = fixedValue; - - pData->engine->callback(sendCallback, sendOsc, - ENGINE_CALLBACK_PARAMETER_VALUE_CHANGED, - pData->id, - PARAMETER_FORTH, - 0, 0, - fixedValue, - nullptr); -} - void CarlaPlugin::setDryWetRT(const float value, const bool sendCallbackLater) noexcept { CARLA_SAFE_ASSERT(value >= 0.0f && value <= 1.0f); @@ -1643,19 +1614,6 @@ void CarlaPlugin::setPanningRT(const float value, const bool sendCallbackLater) pData->postProc.panning = fixedValue; pData->postponeParameterChangeRtEvent(sendCallbackLater, PARAMETER_PANNING, fixedValue); } - -void CarlaPlugin::setForthRT(const float value, const bool sendCallbackLater) noexcept -{ - CARLA_SAFE_ASSERT(value >= -1.0f && value <= 1.0f); - - const float fixedValue(carla_fixedValue(-1.0f, 1.0f, value)); - - if (carla_isEqual(pData->postProc.forth, fixedValue)) - return; - - pData->postProc.forth = fixedValue; - pData->postponeParameterChangeRtEvent(sendCallbackLater, PARAMETER_FORTH, fixedValue); -} #endif // ! BUILD_BRIDGE_ALTERNATIVE_ARCH void CarlaPlugin::setCtrlChannel(const int8_t channel, const bool sendOsc, const bool sendCallback) noexcept @@ -1737,8 +1695,6 @@ void CarlaPlugin::setParameterValueByRealIndex(const int32_t rindex, const float return setBalanceRight(value, sendOsc, sendCallback); case PARAMETER_PANNING: return setPanning(value, sendOsc, sendCallback); - case PARAMETER_FORTH: - return setForth(value, sendOsc, sendCallback); } #endif CARLA_SAFE_ASSERT_RETURN(rindex >= 0,); diff --git a/source/backend/plugin/CarlaPluginInternal.cpp b/source/backend/plugin/CarlaPluginInternal.cpp index 53307b9db..3f7bbd2e9 100644 --- a/source/backend/plugin/CarlaPluginInternal.cpp +++ b/source/backend/plugin/CarlaPluginInternal.cpp @@ -710,7 +710,6 @@ CarlaPlugin::ProtectedData::PostProc::PostProc() noexcept balanceLeft(-1.0f), balanceRight(1.0f), panning(0.0f), - forth(0.0f), extraBuffer(nullptr) {} #endif diff --git a/source/backend/plugin/CarlaPluginInternal.hpp b/source/backend/plugin/CarlaPluginInternal.hpp index eb576cafc..8a420caf3 100644 --- a/source/backend/plugin/CarlaPluginInternal.hpp +++ b/source/backend/plugin/CarlaPluginInternal.hpp @@ -379,7 +379,6 @@ struct CarlaPlugin::ProtectedData { float balanceLeft; float balanceRight; float panning; - float forth; float* extraBuffer; PostProc() noexcept; diff --git a/source/backend/plugin/CarlaPluginLADSPADSSI.cpp b/source/backend/plugin/CarlaPluginLADSPADSSI.cpp index 9816d3da0..8f2ff46bb 100644 --- a/source/backend/plugin/CarlaPluginLADSPADSSI.cpp +++ b/source/backend/plugin/CarlaPluginLADSPADSSI.cpp @@ -1273,9 +1273,6 @@ public: if (aOuts >= 2) pData->hints |= PLUGIN_CAN_PANNING; - - if (aOuts >= 3) - pData->hints |= PLUGIN_CAN_FORTH; #endif // extra plugin hints @@ -2124,13 +2121,12 @@ public: } } - // Panning and Front-Rear ("Forth"). + // Panning // Only decrease of levels, but never increase, unlike 'L, R'. - // Note: no any pan/forth processing for Mono. + // Note: no pan processing for Mono. uint32_t q = pData->audioOut.count; float pan = pData->postProc.panning; - float forth = pData->postProc.forth; float vol = pData->postProc.volume; // Pan: Stereo, 3 ch (extra rear/bass), or Quadro. @@ -2149,22 +2145,6 @@ public: } } - // Front-Rear: 3 ch (extra rear/bass), or Quadro. - if ((forth != 0.0) && ((q == 3) || (q == 4))) - { - // rear channel(s) reduce when moving forth to front - if ((forth > 0) && ((i == 2) || (i == 3))) - { - vol = vol * (1.0 - forth); - } - - // front channels reduce when moving back to rear - else if ((forth < 0) && ((i == 0) || (i == 1))) - { - vol = vol * (1.0 + forth); - } - } - // Volume (and buffer copy) { for (uint32_t k=0; k < frames; ++k) diff --git a/source/backend/plugin/CarlaPluginLV2.cpp b/source/backend/plugin/CarlaPluginLV2.cpp index eea0f794c..c26dc2d8a 100644 --- a/source/backend/plugin/CarlaPluginLV2.cpp +++ b/source/backend/plugin/CarlaPluginLV2.cpp @@ -3341,9 +3341,6 @@ public: if (aOuts >= 2) pData->hints |= PLUGIN_CAN_PANNING; - if (aOuts >= 3) - pData->hints |= PLUGIN_CAN_FORTH; - // extra plugin hints pData->extraHints = 0x0; @@ -4715,13 +4712,12 @@ public: } } - // Panning and Front-Rear ("Forth"). + // Panning // Only decrease of levels, but never increase, unlike 'L, R'. - // Note: no any pan/forth processing for Mono. + // Note: no pan processing for Mono. uint32_t q = pData->audioOut.count; float pan = pData->postProc.panning; - float forth = pData->postProc.forth; float vol = pData->postProc.volume; // Pan: Stereo, 3 ch (extra rear/bass), or Quadro. @@ -4740,22 +4736,6 @@ public: } } - // Front-Rear: 3 ch (extra rear/bass), or Quadro. - if ((forth != 0.0) && ((q == 3) || (q == 4))) - { - // rear channel(s) reduce when moving forth to front - if ((forth > 0) && ((i == 2) || (i == 3))) - { - vol = vol * (1.0 - forth); - } - - // front channels reduce when moving back to rear - else if ((forth < 0) && ((i == 0) || (i == 1))) - { - vol = vol * (1.0 + forth); - } - } - // Volume (and buffer copy) { for (uint32_t k=0; k < frames; ++k) diff --git a/source/backend/plugin/CarlaPluginNative.cpp b/source/backend/plugin/CarlaPluginNative.cpp index 80574501f..dc4550e27 100644 --- a/source/backend/plugin/CarlaPluginNative.cpp +++ b/source/backend/plugin/CarlaPluginNative.cpp @@ -1408,9 +1408,6 @@ public: if (aOuts >= 2) pData->hints |= PLUGIN_CAN_PANNING; - if (aOuts >= 3) - pData->hints |= PLUGIN_CAN_FORTH; - // native plugin hints if (fDescriptor->hints & NATIVE_PLUGIN_IS_RTSAFE) pData->hints |= PLUGIN_IS_RTSAFE; @@ -2422,13 +2419,12 @@ public: } } - // Panning and Front-Rear ("Forth"). + // Panning // Only decrease of levels, but never increase, unlike 'L, R'. - // Note: no any pan/forth processing for Mono. + // Note: no pan processing for Mono. uint32_t q = pData->audioOut.count; float pan = pData->postProc.panning; - float forth = pData->postProc.forth; float vol = pData->postProc.volume; // Pan: Stereo, 3 ch (extra rear/bass), or Quadro. @@ -2447,22 +2443,6 @@ public: } } - // Front-Rear: 3 ch (extra rear/bass), or Quadro. - if ((forth != 0.0) && ((q == 3) || (q == 4))) - { - // rear channel(s) reduce when moving forth to front - if ((forth > 0) && ((i == 2) || (i == 3))) - { - vol = vol * (1.0 - forth); - } - - // front channels reduce when moving back to rear - else if ((forth < 0) && ((i == 0) || (i == 1))) - { - vol = vol * (1.0 + forth); - } - } - // Volume (and buffer copy) { for (uint32_t k=0; k < frames; ++k) diff --git a/source/frontend/carla_backend.py b/source/frontend/carla_backend.py index 4d1a440f0..e6c1072d5 100644 --- a/source/frontend/carla_backend.py +++ b/source/frontend/carla_backend.py @@ -207,9 +207,6 @@ PLUGIN_USES_MULTI_PROGS = 0x400 # Plugin can make use of inline display API. PLUGIN_HAS_INLINE_DISPLAY = 0x800 -# Plugin can use internal control of Front-Rear balance for Quadro (or > 2 channels in General). -PLUGIN_CAN_FORTH = 0x8000 - # --------------------------------------------------------------------------------------------------------------------- # Plugin Options # Various plugin options. @@ -556,12 +553,8 @@ PARAMETER_PANNING = -7 # Range -1...15 (-1 = off). PARAMETER_CTRL_CHANNEL = -8 -# Experimental Front-Rear (Forth) parameter. -# Range -1.0...1.0; default is 0.0. -PARAMETER_FORTH = -9 - # Max value, defined only for convenience. -PARAMETER_MAX = -10 +PARAMETER_MAX = -9 # --------------------------------------------------------------------------------------------------------------------- # Special Mapped Control Index @@ -2119,13 +2112,6 @@ class CarlaHostMeta(): def set_panning(self, pluginId, value): raise NotImplementedError - # Change a plugin's internal front-rear (forth) value. - # @param pluginId Plugin - # @param value New value - @abstractmethod - def set_forth(self, pluginId, value): - raise NotImplementedError - # Change a plugin's internal control channel. # @param pluginId Plugin # @param channel New channel @@ -2544,9 +2530,6 @@ class CarlaHostNull(CarlaHostMeta): def set_panning(self, pluginId, value): return - def set_forth(self, pluginId, value): - return - def set_ctrl_channel(self, pluginId, channel): return @@ -2869,9 +2852,6 @@ class CarlaHostDLL(CarlaHostMeta): self.lib.carla_set_panning.argtypes = (c_void_p, c_uint, c_float) self.lib.carla_set_panning.restype = None - self.lib.carla_set_forth.argtypes = (c_void_p, c_uint, c_float) - self.lib.carla_set_forth.restype = None - self.lib.carla_set_ctrl_channel.argtypes = (c_void_p, c_uint, c_int8) self.lib.carla_set_ctrl_channel.restype = None @@ -3213,9 +3193,6 @@ class CarlaHostDLL(CarlaHostMeta): def set_panning(self, pluginId, value): self.lib.carla_set_panning(self.handle, pluginId, value) - def set_forth(self, pluginId, value): - self.lib.carla_set_forth(self.handle, pluginId, value) - def set_ctrl_channel(self, pluginId, channel): self.lib.carla_set_ctrl_channel(self.handle, pluginId, channel) @@ -3296,7 +3273,7 @@ class PluginStoreInfo(): def clear(self): self.pluginInfo = PyCarlaPluginInfo.copy() self.pluginRealName = "" - self.internalValues = [0.0, 1.0, 1.0, -1.0, 1.0, 0.0, -1.0, 0.0] + self.internalValues = [0.0, 1.0, 1.0, -1.0, 1.0, 0.0, -1.0] self.audioCountInfo = PyCarlaPortCountInfo.copy() self.midiCountInfo = PyCarlaPortCountInfo.copy() self.parameterCount = 0 @@ -3623,10 +3600,6 @@ class CarlaHostPlugin(CarlaHostMeta): self.sendMsg(["set_panning", pluginId, value]) self.fPluginsInfo[pluginId].internalValues[5] = value - def set_forth(self, pluginId, value): - self.sendMsg(["set_forth", pluginId, value]) - self.fPluginsInfo[pluginId].internalValues[7] = value - def set_ctrl_channel(self, pluginId, channel): self.sendMsg(["set_ctrl_channel", pluginId, channel]) self.fPluginsInfo[pluginId].internalValues[6] = float(channel) diff --git a/source/frontend/carla_backend_qtweb.py b/source/frontend/carla_backend_qtweb.py index 90a6888ee..c10f0e214 100644 --- a/source/frontend/carla_backend_qtweb.py +++ b/source/frontend/carla_backend_qtweb.py @@ -468,12 +468,6 @@ class CarlaHostQtWeb(CarlaHostQtNull): 'value': value, }) - def set_forth(self, pluginId, value): - requests.get("{}/set_forth".format(self.baseurl), params={ - 'pluginId': pluginId, - 'value': value, - }) - def set_ctrl_channel(self, pluginId, channel): requests.get("{}/set_ctrl_channel".format(self.baseurl), params={ 'pluginId': pluginId, diff --git a/source/frontend/carla_host.py b/source/frontend/carla_host.py index 78bc9d3f7..2b15f29f3 100644 --- a/source/frontend/carla_host.py +++ b/source/frontend/carla_host.py @@ -1546,7 +1546,6 @@ class HostWindow(QMainWindow): pitem.getWidget().setInternalParameter(PARAMETER_BALANCE_LEFT, -1.0) pitem.getWidget().setInternalParameter(PARAMETER_BALANCE_RIGHT, 1.0) pitem.getWidget().setInternalParameter(PARAMETER_PANNING, 0.0) - pitem.getWidget().setInternalParameter(PARAMETER_FORTH, 0.0) @pyqtSlot() def slot_pluginsChangeSkin(self): diff --git a/source/frontend/carla_host_control.py b/source/frontend/carla_host_control.py index 95f4d2123..8df839d3a 100755 --- a/source/frontend/carla_host_control.py +++ b/source/frontend/carla_host_control.py @@ -189,7 +189,6 @@ class CarlaHostOSC(CarlaHostQtPlugin): "set_balance_left", "set_balance_right", "set_panning", - "set_forth", #"set_ctrl_channel", "set_parameter_value", "set_parameter_midi_channel", @@ -427,18 +426,17 @@ class CarlaControlServerTCP(Server): pluginId, index, type_, key, value = args self.host._set_customData(pluginId, index, { 'type': type_, 'key': key, 'value': value }) - @make_method('/ctrl/iparams', 'iffffffff') + @make_method('/ctrl/iparams', 'ifffffff') def carla_iparams(self, path, args): if DEBUG: print(path, args) self.fReceivedMsgs = True - pluginId, active, drywet, volume, balLeft, balRight, pan, ctrlChan, forth = args + pluginId, active, drywet, volume, balLeft, balRight, pan, ctrlChan = args self.host._set_internalValue(pluginId, PARAMETER_ACTIVE, active) self.host._set_internalValue(pluginId, PARAMETER_DRYWET, drywet) self.host._set_internalValue(pluginId, PARAMETER_VOLUME, volume) self.host._set_internalValue(pluginId, PARAMETER_BALANCE_LEFT, balLeft) self.host._set_internalValue(pluginId, PARAMETER_BALANCE_RIGHT, balRight) self.host._set_internalValue(pluginId, PARAMETER_PANNING, pan) - self.host._set_internalValue(pluginId, PARAMETER_FORTH, forth) self.host._set_internalValue(pluginId, PARAMETER_CTRL_CHANNEL, ctrlChan) @make_method('/ctrl/resp', 'is') diff --git a/source/frontend/carla_skin.py b/source/frontend/carla_skin.py index 82f59df64..bc4a79a14 100644 --- a/source/frontend/carla_skin.py +++ b/source/frontend/carla_skin.py @@ -798,14 +798,6 @@ class AbstractPluginSlot(QFrame, PluginEditParentMeta): self.fParameterList.append([PARAMETER_PANNING, widget]) self.w_knobs_right.layout().addWidget(widget) - if (self.fPluginInfo['hints'] & PLUGIN_CAN_FORTH) != 0: - if widget.getTweak('ShowForth', 0): - widget = ScalableDial(self, PARAMETER_FORTH, 100, 0.0, -1.0, 1.0, "Forth", skinNum * 16 + ScalableDial.CUSTOM_PAINT_MODE_CARLA_FORTH, -1, "%", self.fSkinStyle, whiteLabels, self.fTweaks) - - self.fParameterList.append([PARAMETER_FORTH, widget]) - self.w_knobs_right.layout().addWidget(widget) - - for paramIndex, paramWidget in self.fParameterList: if not paramWidget.fIsOutput: paramWidget.customContextMenuRequested.connect(self.slot_knobCustomMenu) @@ -901,10 +893,6 @@ class AbstractPluginSlot(QFrame, PluginEditParentMeta): if (self.fPluginInfo['hints'] & PLUGIN_CAN_PANNING) == 0: return self.host.set_panning(self.fPluginId, value) - elif parameterId == PARAMETER_FORTH: - if (self.fPluginInfo['hints'] & PLUGIN_CAN_FORTH) == 0: return - self.host.set_forth(self.fPluginId, value) - elif parameterId == PARAMETER_CTRL_CHANNEL: self.host.set_ctrl_channel(self.fPluginId, value) diff --git a/source/frontend/carla_widgets.py b/source/frontend/carla_widgets.py index 9fddbb6aa..3a8e2e1ee 100755 --- a/source/frontend/carla_widgets.py +++ b/source/frontend/carla_widgets.py @@ -76,7 +76,6 @@ from carla_backend import ( PLUGIN_CAN_VOLUME, PLUGIN_CAN_BALANCE, PLUGIN_CAN_PANNING, - PLUGIN_CAN_FORTH, PLUGIN_CATEGORY_SYNTH, PLUGIN_OPTION_FIXED_BUFFERS, PLUGIN_OPTION_FORCE_STEREO, @@ -95,7 +94,6 @@ from carla_backend import ( PARAMETER_BALANCE_LEFT, PARAMETER_BALANCE_RIGHT, PARAMETER_PANNING, - PARAMETER_FORTH, PARAMETER_CTRL_CHANNEL, PARAMETER_IS_ENABLED, PARAMETER_IS_AUTOMATABLE, @@ -579,9 +577,6 @@ class PluginEdit(QDialog): self.ui.dial_pan = ScalableDial(self.ui.dial_pan, PARAMETER_PANNING, 100, 0, -1.0, 1.0, "Pan", ScalableDial.CUSTOM_PAINT_MODE_CARLA_PAN) self.ui.dial_pan.setValue(host.get_internal_parameter_value(pluginId, PARAMETER_PANNING)) - self.ui.dial_forth = ScalableDial(self.ui.dial_forth, PARAMETER_FORTH, 100, 0, -1.0, 1.0, "Forth", ScalableDial.CUSTOM_PAINT_MODE_CARLA_FORTH) - self.ui.dial_forth.setValue(host.get_internal_parameter_value(pluginId, PARAMETER_FORTH)) - self.ui.sb_ctrl_channel.setValue(self.fControlChannel+1) self.ui.scrollArea = PixmapKeyboardHArea(self) @@ -628,7 +623,6 @@ class PluginEdit(QDialog): self.ui.dial_b_left.realValueChanged.connect(self.slot_balanceLeftChanged) self.ui.dial_b_right.realValueChanged.connect(self.slot_balanceRightChanged) self.ui.dial_pan.realValueChanged.connect(self.slot_panChanged) - self.ui.dial_forth.realValueChanged.connect(self.slot_forthChanged) self.ui.sb_ctrl_channel.valueChanged.connect(self.slot_ctrlChannelChanged) self.ui.dial_drywet.customContextMenuRequested.connect(self.slot_knobCustomMenu) @@ -763,10 +757,6 @@ class PluginEdit(QDialog): self.ui.dial_pan.setValue(self.host.get_internal_parameter_value(self.fPluginId, PARAMETER_PANNING)) self.ui.dial_pan.blockSignals(False) - self.ui.dial_forth.blockSignals(True) - self.ui.dial_forth.setValue(self.host.get_internal_parameter_value(self.fPluginId, PARAMETER_FORTH)) - self.ui.dial_forth.blockSignals(False) - self.fControlChannel = round(self.host.get_internal_parameter_value(self.fPluginId, PARAMETER_CTRL_CHANNEL)) self.ui.sb_ctrl_channel.blockSignals(True) self.ui.sb_ctrl_channel.setValue(self.fControlChannel+1) @@ -836,7 +826,6 @@ class PluginEdit(QDialog): self.ui.dial_b_left.setEnabled(pluginHints & PLUGIN_CAN_BALANCE) self.ui.dial_b_right.setEnabled(pluginHints & PLUGIN_CAN_BALANCE) self.ui.dial_pan.setEnabled(pluginHints & PLUGIN_CAN_PANNING) - self.ui.dial_forth.setEnabled(pluginHints & PLUGIN_CAN_FORTH) optsAvailable = self.fPluginInfo['optionsAvailable'] optsEnabled = self.fPluginInfo['optionsEnabled'] @@ -1219,11 +1208,6 @@ class PluginEdit(QDialog): self.ui.dial_pan.setValue(value) self.ui.dial_pan.blockSignals(False) - elif index == PARAMETER_FORTH: - self.ui.dial_forth.blockSignals(True) - self.ui.dial_forth.setValue(value) - self.ui.dial_forth.blockSignals(False) - elif index == PARAMETER_CTRL_CHANNEL: self.fControlChannel = round(value) self.ui.sb_ctrl_channel.blockSignals(True) @@ -1423,13 +1407,6 @@ class PluginEdit(QDialog): if self.fParent is not None: self.fParent.editDialogParameterValueChanged(self.fPluginId, PARAMETER_PANNING, value) - @pyqtSlot(float) - def slot_forthChanged(self, value): - self.host.set_forth(self.fPluginId, value) - - if self.fParent is not None: - self.fParent.editDialogParameterValueChanged(self.fPluginId, PARAMETER_FORTH, value) - @pyqtSlot(int) def slot_ctrlChannelChanged(self, value): self.fControlChannel = value-1 @@ -1542,7 +1519,7 @@ class PluginEdit(QDialog): menu.addSeparator() actSet = menu.addAction(self.tr("Set value...\t" + editHotKey)) - if index > PARAMETER_NULL or index not in (PARAMETER_BALANCE_LEFT, PARAMETER_BALANCE_RIGHT, PARAMETER_PANNING, PARAMETER_FORTH): + if index > PARAMETER_NULL or index not in (PARAMETER_BALANCE_LEFT, PARAMETER_BALANCE_RIGHT, PARAMETER_PANNING): menu.removeAction(actCenter) actSelected = menu.exec_(QCursor.pos()) diff --git a/source/frontend/dialogs/aboutdialog.cpp b/source/frontend/dialogs/aboutdialog.cpp index 31c7f1d00..0174472f6 100644 --- a/source/frontend/dialogs/aboutdialog.cpp +++ b/source/frontend/dialogs/aboutdialog.cpp @@ -61,7 +61,6 @@ AboutDialog::AboutDialog(QWidget* const parent, "" "/set_volume" " <f-value>" "" "/set_balance_left" " <f-value>" "" "/set_balance_right" " <f-value>" - "" "/set_forth" " <f-value>" "" "/set_panning" " <f-value>" "" "/set_parameter_value" " <i-index> <f-value>" "" "/set_parameter_midi_cc" " <i-index> <i-cc>" diff --git a/source/frontend/widgets/commondial.py b/source/frontend/widgets/commondial.py index b6d3c4010..d24e6dc92 100644 --- a/source/frontend/widgets/commondial.py +++ b/source/frontend/widgets/commondial.py @@ -20,7 +20,7 @@ elif qt_config == 6: from carla_shared import strLim from widgets.paramspinbox import CustomInputDialog -from carla_backend import PARAMETER_NULL, PARAMETER_DRYWET, PARAMETER_VOLUME, PARAMETER_BALANCE_LEFT, PARAMETER_BALANCE_RIGHT, PARAMETER_PANNING, PARAMETER_FORTH +from carla_backend import PARAMETER_NULL, PARAMETER_DRYWET, PARAMETER_VOLUME, PARAMETER_BALANCE_LEFT, PARAMETER_BALANCE_RIGHT, PARAMETER_PANNING # --------------------------------------------------------------------------------------------------------------------- # Widget Class @@ -289,7 +289,7 @@ class CommonDial(QWidget): def mouseDoubleClickEvent(self, event): - if self.knobPusheable and self.fIndex in (PARAMETER_DRYWET, PARAMETER_VOLUME, PARAMETER_PANNING, PARAMETER_FORTH): # -3, -4, -7, -9 + if self.knobPusheable and self.fIndex in (PARAMETER_DRYWET, PARAMETER_VOLUME, PARAMETER_PANNING): # -3, -4, -7 return # Mutex with special Single Click if event.button() == Qt.LeftButton: @@ -336,7 +336,7 @@ class CommonDial(QWidget): # NOTE: fLastLabel state managed @ scalabledial def knobPush(self): - if self.knobPusheable and self.fIndex in (PARAMETER_DRYWET, PARAMETER_VOLUME, PARAMETER_PANNING, PARAMETER_FORTH): # -3, -4, -7, -9 + if self.knobPusheable and self.fIndex in (PARAMETER_DRYWET, PARAMETER_VOLUME, PARAMETER_PANNING): # -3, -4, -7 if self.fLastLabel == "": # push value self.fLastValue = self.fRealValue @@ -549,8 +549,6 @@ class CommonDial(QWidget): tip = "MUTE" elif self.fRealValue == 0 and self.fIndex == PARAMETER_PANNING: tip = "Center" - elif self.fRealValue == 0 and self.fIndex == PARAMETER_FORTH: - tip = "Midway" else: if self.fIndex < PARAMETER_NULL: percent = 100.0 diff --git a/source/frontend/widgets/scalabledial.py b/source/frontend/widgets/scalabledial.py index fdf795f84..33f1c83ae 100644 --- a/source/frontend/widgets/scalabledial.py +++ b/source/frontend/widgets/scalabledial.py @@ -28,7 +28,6 @@ from carla_backend import ( PARAMETER_BALANCE_LEFT, PARAMETER_BALANCE_RIGHT, PARAMETER_PANNING, - PARAMETER_FORTH, PARAMETER_MAX ) # --------------------------------------------------------------------------------------------------------------------- @@ -306,7 +305,7 @@ class ScalableDial(CommonDial): haveLed = self.getTweak('WetVolPushLed', 1) and self.fCustomPaintMode in (1, 2, 5, 6, 9, 10,) - if self.fIndex in (PARAMETER_DRYWET, PARAMETER_VOLUME, PARAMETER_PANNING, PARAMETER_FORTH): # -3, -4, -7, -9 + if self.fIndex in (PARAMETER_DRYWET, PARAMETER_VOLUME, PARAMETER_PANNING): # -3, -4, -7 if knobMuted: if self.fIndex == PARAMETER_DRYWET: self.pushLabel("Thru") diff --git a/source/rest/carla-host.cpp b/source/rest/carla-host.cpp index 7c88e37c2..d22c7d49a 100644 --- a/source/rest/carla-host.cpp +++ b/source/rest/carla-host.cpp @@ -994,20 +994,6 @@ void handle_carla_set_panning(const std::shared_ptr session) session->close(OK); } -void handle_carla_set_forth(const std::shared_ptr session) -{ - const std::shared_ptr request = session->get_request(); - - const int pluginId = std::atoi(request->get_query_parameter("pluginId").c_str()); - CARLA_SAFE_ASSERT_RETURN(pluginId >= 0,) - - const double value = std::atof(request->get_query_parameter("value").c_str()); - CARLA_SAFE_ASSERT_RETURN(value >= -1.0 && value <= 1.0,) - - carla_set_forth(pluginId, value); - session->close(OK); -} - void handle_carla_set_ctrl_channel(const std::shared_ptr session) { const std::shared_ptr request = session->get_request(); diff --git a/source/rest/rest-server.cpp b/source/rest/rest-server.cpp index 1773e4a39..8778bfc96 100644 --- a/source/rest/rest-server.cpp +++ b/source/rest/rest-server.cpp @@ -407,7 +407,6 @@ int main(int, const char**) make_resource(service, "/set_balance_left", handle_carla_set_balance_left); make_resource(service, "/set_balance_right", handle_carla_set_balance_right); make_resource(service, "/set_panning", handle_carla_set_panning); - make_resource(service, "/set_forth", handle_carla_set_forth); make_resource(service, "/set_ctrl_channel", handle_carla_set_ctrl_channel); make_resource(service, "/set_option", handle_carla_set_option); diff --git a/source/utils/CarlaBackendUtils.hpp b/source/utils/CarlaBackendUtils.hpp index 08a5b8322..59d0c3325 100644 --- a/source/utils/CarlaBackendUtils.hpp +++ b/source/utils/CarlaBackendUtils.hpp @@ -196,8 +196,6 @@ const char* InternalParameterIndex2Str(const InternalParameterIndex index) noexc return "PARAMETER_BALANCE_RIGHT"; case PARAMETER_PANNING: return "PARAMETER_PANNING"; - case PARAMETER_FORTH: - return "PARAMETER_FORTH"; case PARAMETER_CTRL_CHANNEL: return "PARAMETER_CTRL_CHANNEL"; #endif diff --git a/source/utils/CarlaStateUtils.cpp b/source/utils/CarlaStateUtils.cpp index ea0cc86d4..39b98cfaa 100644 --- a/source/utils/CarlaStateUtils.cpp +++ b/source/utils/CarlaStateUtils.cpp @@ -185,7 +185,6 @@ CarlaStateSave::CarlaStateSave() noexcept balanceLeft(-1.0f), balanceRight(1.0f), panning(0.0f), - forth(0.0f), ctrlChannel(-1), #endif currentProgramIndex(-1), @@ -244,7 +243,6 @@ void CarlaStateSave::clear() noexcept balanceLeft = -1.0f; balanceRight = 1.0f; panning = 0.0f; - forth = 0.0f; ctrlChannel = -1; #endif @@ -348,10 +346,6 @@ bool CarlaStateSave::fillFromXmlElement(const XmlElement* const xmlElement) { panning = carla_fixedValue(-1.0f, 1.0f, text.getFloatValue()); } - else if (tag == "Forth") - { - forth = carla_fixedValue(-1.0f, 1.0f, text.getFloatValue()); - } else if (tag == "ControlChannel") { if (! text.startsWithIgnoreCase("n")) @@ -633,8 +627,6 @@ void CarlaStateSave::dumpToMemoryStream(MemoryOutputStream& content) const dataXml << " " << water::String(balanceRight, 7) << "\n"; if (carla_isNotEqual(panning, 0.0f)) dataXml << " " << water::String(panning, 7) << "\n"; - if (carla_isNotEqual(forth, 0.0f)) - dataXml << " " << water::String(forth, 7) << "\n"; if (ctrlChannel < 0) dataXml << " N\n"; diff --git a/source/utils/CarlaStateUtils.hpp b/source/utils/CarlaStateUtils.hpp index a55ca7580..a420635ac 100644 --- a/source/utils/CarlaStateUtils.hpp +++ b/source/utils/CarlaStateUtils.hpp @@ -69,7 +69,6 @@ struct CarlaStateSave { float balanceLeft; float balanceRight; float panning; - float forth; int8_t ctrlChannel; #endif