Browse Source

Continue last commit, implement needed UI changes

tags/v0.9.0
falkTX 13 years ago
parent
commit
48714be32b
5 changed files with 26 additions and 11 deletions
  1. +1
    -1
      c++/carla-backend/carla_engine.cpp
  2. +1
    -1
      c++/carla-bridge/carla_bridge_osc.cpp
  3. +4
    -2
      src/carla.py
  4. +7
    -4
      src/shared_settings.py
  5. +13
    -3
      src/ui/settings_app.ui

+ 1
- 1
c++/carla-backend/carla_engine.cpp View File

@@ -263,7 +263,7 @@ short CarlaEngine::addPlugin(const BinaryType btype, const PluginType ptype, con
CarlaPlugin* plugin = nullptr; CarlaPlugin* plugin = nullptr;


#ifndef BUILD_BRIDGE #ifndef BUILD_BRIDGE
if (btype != BINARY_NATIVE || carlaOptions.preferPluginBridges)
if (btype != BINARY_NATIVE || (carlaOptions.preferPluginBridges && getBinaryBidgePath(btype) && type == CarlaEngineTypeJack))
{ {
# ifdef CARLA_ENGINE_JACK # ifdef CARLA_ENGINE_JACK
if (carlaOptions.processMode != CarlaBackend::PROCESS_MODE_MULTIPLE_CLIENTS) if (carlaOptions.processMode != CarlaBackend::PROCESS_MODE_MULTIPLE_CLIENTS)


+ 1
- 1
c++/carla-bridge/carla_bridge_osc.cpp View File

@@ -256,7 +256,7 @@ int CarlaBridgeOsc::handleMsgMidiProgram(CARLA_BRIDGE_OSC_HANDLE_ARGS)


#ifdef BUILD_BRIDGE_PLUGIN #ifdef BUILD_BRIDGE_PLUGIN
const int32_t index = argv[0]->i; const int32_t index = argv[0]->i;
client->setProgram(index);
client->setMidiProgram(index);
#else #else
const int32_t bank = argv[0]->i; const int32_t bank = argv[0]->i;
const int32_t program = argv[1]->i; const int32_t program = argv[1]->i;


+ 4
- 2
src/carla.py View File

@@ -1246,8 +1246,9 @@ class CarlaMainW(QMainWindow, ui_carla.Ui_CarlaMainW):
preferredBufferSize = self.settings.value("Engine/PreferredBufferSize", 512, type=int) preferredBufferSize = self.settings.value("Engine/PreferredBufferSize", 512, type=int)
preferredSampleRate = self.settings.value("Engine/PreferredSampleRate", 44100, type=int) preferredSampleRate = self.settings.value("Engine/PreferredSampleRate", 44100, type=int)


forceStereo = self.settings.value("Engine/ForceStereo", False, type=bool)
useDssiVstChunks = self.settings.value("Engine/UseDssiVstChunks", False, type=bool)
forceStereo = self.settings.value("Engine/ForceStereo", False, type=bool)
useDssiVstChunks = self.settings.value("Engine/UseDssiVstChunks", False, type=bool)
preferPluginBridges = self.settings.value("Engine/PreferPluginBridges", False, type=bool)


preferUiBridges = self.settings.value("Engine/PreferUiBridges", True, type=bool) preferUiBridges = self.settings.value("Engine/PreferUiBridges", True, type=bool)
oscUiTimeout = self.settings.value("Engine/OscUiTimeout", 40, type=int) oscUiTimeout = self.settings.value("Engine/OscUiTimeout", 40, type=int)
@@ -1267,6 +1268,7 @@ class CarlaMainW(QMainWindow, ui_carla.Ui_CarlaMainW):


Carla.Host.set_option(OPTION_FORCE_STEREO, forceStereo, "") Carla.Host.set_option(OPTION_FORCE_STEREO, forceStereo, "")
Carla.Host.set_option(OPTION_USE_DSSI_VST_CHUNKS, useDssiVstChunks, "") Carla.Host.set_option(OPTION_USE_DSSI_VST_CHUNKS, useDssiVstChunks, "")
Carla.Host.set_option(OPTION_PREFER_PLUGIN_BRIDGES, preferPluginBridges, "")


Carla.Host.set_option(OPTION_PREFER_UI_BRIDGES, preferUiBridges, "") Carla.Host.set_option(OPTION_PREFER_UI_BRIDGES, preferUiBridges, "")
Carla.Host.set_option(OPTION_OSC_UI_TIMEOUT, oscUiTimeout, "") Carla.Host.set_option(OPTION_OSC_UI_TIMEOUT, oscUiTimeout, "")


+ 7
- 4
src/shared_settings.py View File

@@ -220,10 +220,11 @@ class SettingsW(QDialog, ui_settings_app.Ui_SettingsW):


self.cb_engine_process_mode.setCurrentIndex(self.settings.value("Engine/ProcessMode", PROCESS_MODE_MULTIPLE_CLIENTS, type=int)) self.cb_engine_process_mode.setCurrentIndex(self.settings.value("Engine/ProcessMode", PROCESS_MODE_MULTIPLE_CLIENTS, type=int))
self.sb_engine_max_params.setValue(self.settings.value("Engine/MaxParameters", 200, type=int)) self.sb_engine_max_params.setValue(self.settings.value("Engine/MaxParameters", 200, type=int))
self.ch_engine_prefer_bridges.setChecked(self.settings.value("Engine/PreferUiBridges", True, type=bool))
self.ch_engine_prefer_ui_bridges.setChecked(self.settings.value("Engine/PreferUiBridges", True, type=bool))
self.sb_engine_oscgui_timeout.setValue(self.settings.value("Engine/OscUiTimeout", 4000, type=int)) self.sb_engine_oscgui_timeout.setValue(self.settings.value("Engine/OscUiTimeout", 4000, type=int))
self.ch_engine_disable_checks.setChecked(self.settings.value("Engine/DisableChecks", bool(not WINDOWS), type=bool)) self.ch_engine_disable_checks.setChecked(self.settings.value("Engine/DisableChecks", bool(not WINDOWS), type=bool))
self.ch_engine_dssi_chunks.setChecked(self.settings.value("Engine/UseDssiVstChunks", False, type=bool)) self.ch_engine_dssi_chunks.setChecked(self.settings.value("Engine/UseDssiVstChunks", False, type=bool))
self.ch_engine_prefer_plugin_bridges.setChecked(self.settings.value("Engine/PreferPluginBridges", False, type=bool))
self.ch_engine_force_stereo.setChecked(self.settings.value("Engine/ForceStereo", False, type=bool)) self.ch_engine_force_stereo.setChecked(self.settings.value("Engine/ForceStereo", False, type=bool))
self.ch_engine_process_hp.setChecked(self.settings.value("Engine/ProcessHighPrecision", False, type=bool)) self.ch_engine_process_hp.setChecked(self.settings.value("Engine/ProcessHighPrecision", False, type=bool))


@@ -415,10 +416,11 @@ class SettingsW(QDialog, ui_settings_app.Ui_SettingsW):
self.settings.setValue("Engine/AudioDriver", self.cb_engine_audio_driver.currentText()) self.settings.setValue("Engine/AudioDriver", self.cb_engine_audio_driver.currentText())
self.settings.setValue("Engine/ProcessMode", self.cb_engine_process_mode.currentIndex()) self.settings.setValue("Engine/ProcessMode", self.cb_engine_process_mode.currentIndex())
self.settings.setValue("Engine/MaxParameters", self.sb_engine_max_params.value()) self.settings.setValue("Engine/MaxParameters", self.sb_engine_max_params.value())
self.settings.setValue("Engine/PreferUiBridges", self.ch_engine_prefer_bridges.isChecked())
self.settings.setValue("Engine/PreferUiBridges", self.ch_engine_prefer_ui_bridges.isChecked())
self.settings.setValue("Engine/OscUiTimeout", self.sb_engine_oscgui_timeout.value()) self.settings.setValue("Engine/OscUiTimeout", self.sb_engine_oscgui_timeout.value())
self.settings.setValue("Engine/DisableChecks", self.ch_engine_disable_checks.isChecked()) self.settings.setValue("Engine/DisableChecks", self.ch_engine_disable_checks.isChecked())
self.settings.setValue("Engine/UseDssiVstChunks", self.ch_engine_dssi_chunks.isChecked()) self.settings.setValue("Engine/UseDssiVstChunks", self.ch_engine_dssi_chunks.isChecked())
self.settings.setValue("Engine/PreferPluginBridges", self.ch_engine_prefer_plugin_bridges.isChecked())
self.settings.setValue("Engine/ForceStereo", self.ch_engine_force_stereo.isChecked()) self.settings.setValue("Engine/ForceStereo", self.ch_engine_force_stereo.isChecked())
self.settings.setValue("Engine/ProcessHighPrecision", self.ch_engine_process_hp.isChecked()) self.settings.setValue("Engine/ProcessHighPrecision", self.ch_engine_process_hp.isChecked())


@@ -490,10 +492,11 @@ class SettingsW(QDialog, ui_settings_app.Ui_SettingsW):
self.cb_engine_audio_driver.setCurrentIndex(0) self.cb_engine_audio_driver.setCurrentIndex(0)
self.cb_engine_process_mode.setCurrentIndex(PROCESS_MODE_MULTIPLE_CLIENTS) self.cb_engine_process_mode.setCurrentIndex(PROCESS_MODE_MULTIPLE_CLIENTS)
self.sb_engine_max_params.setValue(200) self.sb_engine_max_params.setValue(200)
self.ch_engine_prefer_bridges.setChecked(True)
self.ch_engine_prefer_ui_bridges.setChecked(True)
self.sb_engine_oscgui_timeout.setValue(4000) self.sb_engine_oscgui_timeout.setValue(4000)
self.ch_engine_disable_checks.setChecked(bool(not WINDOWS)) # pre-enable checks for Windows only
self.ch_engine_disable_checks.setChecked(False)
self.ch_engine_dssi_chunks.setChecked(False) self.ch_engine_dssi_chunks.setChecked(False)
self.ch_engine_prefer_plugin_bridges.setChecked(False)
self.ch_engine_force_stereo.setChecked(False) self.ch_engine_force_stereo.setChecked(False)
self.ch_engine_process_hp.setChecked(False) self.ch_engine_process_hp.setChecked(False)




+ 13
- 3
src/ui/settings_app.ui View File

@@ -203,7 +203,7 @@
<number>0</number> <number>0</number>
</property> </property>
<property name="currentIndex"> <property name="currentIndex">
<number>3</number>
<number>0</number>
</property> </property>
<widget class="QWidget" name="page_main"> <widget class="QWidget" name="page_main">
<layout class="QVBoxLayout" name="verticalLayout_5"> <layout class="QVBoxLayout" name="verticalLayout_5">
@@ -931,7 +931,7 @@
</spacer> </spacer>
</item> </item>
<item row="0" column="0" colspan="3"> <item row="0" column="0" colspan="3">
<widget class="QCheckBox" name="ch_engine_prefer_bridges">
<widget class="QCheckBox" name="ch_engine_prefer_ui_bridges">
<property name="toolTip"> <property name="toolTip">
<string>Use OSC-GUI bridges when possible, this way separating the UI from DSP code</string> <string>Use OSC-GUI bridges when possible, this way separating the UI from DSP code</string>
</property> </property>
@@ -967,6 +967,16 @@ You can disable these checks to get a faster scanning time (at your own risk).</
</property> </property>
</widget> </widget>
</item> </item>
<item>
<widget class="QCheckBox" name="ch_engine_prefer_plugin_bridges">
<property name="toolTip">
<string>Whenever possible, run the plugins in bridge mode.</string>
</property>
<property name="text">
<string>Run plugins in bridge mode when possible (EXPERIMENTAL)</string>
</property>
</widget>
</item>
<item> <item>
<widget class="QCheckBox" name="ch_engine_force_stereo"> <widget class="QCheckBox" name="ch_engine_force_stereo">
<property name="toolTip"> <property name="toolTip">
@@ -981,7 +991,7 @@ This mode is not available for VST plugins.</string>
<item> <item>
<widget class="QCheckBox" name="ch_engine_process_hp"> <widget class="QCheckBox" name="ch_engine_process_hp">
<property name="toolTip"> <property name="toolTip">
<string>Process audio in blocks of 8 samples, allowing &quot;per-sample&quot; automation.
<string>Process audio in blocks of 8 samples, allowing a higher precision automation.
Recommended to use when 'rendering' a project. Recommended to use when 'rendering' a project.
Some plugins might not work properly under this mode.</string> Some plugins might not work properly under this mode.</string>
</property> </property>


Loading…
Cancel
Save