Browse Source

Expose libjack midi out channel mixdown option in add-jack dialog

tags/v2.1-rc1
falkTX 5 years ago
parent
commit
41a0bf57af
3 changed files with 70 additions and 32 deletions
  1. +62
    -31
      resources/ui/carla_add_jack.ui
  2. +2
    -1
      source/backend/plugin/CarlaPluginJack.cpp
  3. +6
    -0
      source/frontend/carla_database.py

+ 62
- 31
resources/ui/carla_add_jack.ui View File

@@ -6,8 +6,8 @@
<rect> <rect>
<x>0</x> <x>0</x>
<y>0</y> <y>0</y>
<width>540</width>
<height>514</height>
<width>487</width>
<height>572</height>
</rect> </rect>
</property> </property>
<property name="windowTitle"> <property name="windowTitle">
@@ -180,6 +180,22 @@
<string>Setup</string> <string>Setup</string>
</property> </property>
<layout class="QGridLayout" name="gridLayout_2"> <layout class="QGridLayout" name="gridLayout_2">
<item row="2" column="0">
<spacer name="horizontalSpacer_5">
<property name="orientation">
<enum>Qt::Horizontal</enum>
</property>
<property name="sizeType">
<enum>QSizePolicy::Fixed</enum>
</property>
<property name="sizeHint" stdset="0">
<size>
<width>20</width>
<height>1</height>
</size>
</property>
</spacer>
</item>
<item row="0" column="1" colspan="8"> <item row="0" column="1" colspan="8">
<layout class="QHBoxLayout" name="horizontalLayout"> <layout class="QHBoxLayout" name="horizontalLayout">
<item> <item>
@@ -242,31 +258,14 @@
</item> </item>
</layout> </layout>
</item> </item>
<item row="1" column="1" colspan="3">
<widget class="QCheckBox" name="cb_manage_window">
<property name="text">
<string>Take control of main application window</string>
</property>
</widget>
</item>
<item row="2" column="0">
<spacer name="horizontalSpacer_5">
<property name="orientation">
<enum>Qt::Horizontal</enum>
</property>
<property name="sizeType">
<enum>QSizePolicy::Fixed</enum>
</property>
<property name="sizeHint" stdset="0">
<size>
<width>20</width>
<height>1</height>
</size>
</property>
</spacer>
</item>
<item row="2" column="1"> <item row="2" column="1">
<widget class="QLabel" name="label_3"> <widget class="QLabel" name="label_3">
<property name="sizePolicy">
<sizepolicy hsizetype="Expanding" vsizetype="Preferred">
<horstretch>0</horstretch>
<verstretch>0</verstretch>
</sizepolicy>
</property>
<property name="text"> <property name="text">
<string>Audio inputs:</string> <string>Audio inputs:</string>
</property> </property>
@@ -287,9 +286,12 @@
<property name="orientation"> <property name="orientation">
<enum>Qt::Horizontal</enum> <enum>Qt::Horizontal</enum>
</property> </property>
<property name="sizeType">
<enum>QSizePolicy::Fixed</enum>
</property>
<property name="sizeHint" stdset="0"> <property name="sizeHint" stdset="0">
<size> <size>
<width>1</width>
<width>20</width>
<height>1</height> <height>1</height>
</size> </size>
</property> </property>
@@ -313,9 +315,12 @@
<property name="orientation"> <property name="orientation">
<enum>Qt::Horizontal</enum> <enum>Qt::Horizontal</enum>
</property> </property>
<property name="sizeType">
<enum>QSizePolicy::Fixed</enum>
</property>
<property name="sizeHint" stdset="0"> <property name="sizeHint" stdset="0">
<size> <size>
<width>1</width>
<width>20</width>
<height>1</height> <height>1</height>
</size> </size>
</property> </property>
@@ -369,6 +374,12 @@
</item> </item>
<item row="3" column="1"> <item row="3" column="1">
<widget class="QLabel" name="label_4"> <widget class="QLabel" name="label_4">
<property name="sizePolicy">
<sizepolicy hsizetype="Expanding" vsizetype="Preferred">
<horstretch>0</horstretch>
<verstretch>0</verstretch>
</sizepolicy>
</property>
<property name="text"> <property name="text">
<string>Audio outputs:</string> <string>Audio outputs:</string>
</property> </property>
@@ -389,9 +400,12 @@
<property name="orientation"> <property name="orientation">
<enum>Qt::Horizontal</enum> <enum>Qt::Horizontal</enum>
</property> </property>
<property name="sizeType">
<enum>QSizePolicy::Fixed</enum>
</property>
<property name="sizeHint" stdset="0"> <property name="sizeHint" stdset="0">
<size> <size>
<width>1</width>
<width>20</width>
<height>1</height> <height>1</height>
</size> </size>
</property> </property>
@@ -402,9 +416,12 @@
<property name="orientation"> <property name="orientation">
<enum>Qt::Horizontal</enum> <enum>Qt::Horizontal</enum>
</property> </property>
<property name="sizeType">
<enum>QSizePolicy::Fixed</enum>
</property>
<property name="sizeHint" stdset="0"> <property name="sizeHint" stdset="0">
<size> <size>
<width>1</width>
<width>20</width>
<height>1</height> <height>1</height>
</size> </size>
</property> </property>
@@ -440,6 +457,13 @@
</property> </property>
</spacer> </spacer>
</item> </item>
<item row="1" column="2" colspan="7">
<widget class="QCheckBox" name="cb_manage_window">
<property name="text">
<string>Take control of main application window</string>
</property>
</widget>
</item>
</layout> </layout>
</widget> </widget>
</item> </item>
@@ -449,6 +473,13 @@
<string>Workarounds</string> <string>Workarounds</string>
</property> </property>
<layout class="QGridLayout" name="gridLayout_3"> <layout class="QGridLayout" name="gridLayout_3">
<item row="4" column="1">
<widget class="QCheckBox" name="cb_external_start">
<property name="text">
<string>Wait for external application start (Advanced)</string>
</property>
</widget>
</item>
<item row="0" column="1"> <item row="0" column="1">
<widget class="QCheckBox" name="cb_capture_first_window"> <widget class="QCheckBox" name="cb_capture_first_window">
<property name="enabled"> <property name="enabled">
@@ -496,9 +527,9 @@
</widget> </widget>
</item> </item>
<item row="3" column="1"> <item row="3" column="1">
<widget class="QCheckBox" name="cb_external_start">
<widget class="QCheckBox" name="cb_out_midi_mixdown">
<property name="text"> <property name="text">
<string>Wait for external application start (Advanced)</string>
<string>Use single MIDI output, setting MIDI channel as port index</string>
</property> </property>
</widget> </widget>
</item> </item>


+ 2
- 1
source/backend/plugin/CarlaPluginJack.cpp View File

@@ -286,7 +286,8 @@ protected:
} }
#endif #endif


const bool externalProcess = (fSetupLabel[5] - '0') & LIBJACK_FLAG_EXTERNAL_START;
const bool externalProcess = ((fSetupLabel[5] - '0') & LIBJACK_FLAG_EXTERNAL_START)
&& ! kEngine->isLoadingProject();


if (! externalProcess) if (! externalProcess)
{ {


+ 6
- 0
source/frontend/carla_database.py View File

@@ -2017,6 +2017,8 @@ class JackApplicationW(QDialog):
flags |= self.FLAG_CAPTURE_FIRST_WINDOW flags |= self.FLAG_CAPTURE_FIRST_WINDOW
if self.ui.cb_buffers_addition_mode.isChecked(): if self.ui.cb_buffers_addition_mode.isChecked():
flags |= self.FLAG_BUFFERS_ADDITION_MODE flags |= self.FLAG_BUFFERS_ADDITION_MODE
if self.ui.cb_out_midi_mixdown.isChecked():
flags |= self.FLAG_MIDI_OUTPUT_CHANNEL_MIXDOWN
if self.ui.cb_external_start.isChecked(): if self.ui.cb_external_start.isChecked():
flags |= self.FLAG_EXTERNAL_START flags |= self.FLAG_EXTERNAL_START


@@ -2058,6 +2060,8 @@ class JackApplicationW(QDialog):
self.ui.sb_midi_ins.setValue(settings.value("NumMidiIns", 0, type=int)) self.ui.sb_midi_ins.setValue(settings.value("NumMidiIns", 0, type=int))
self.ui.sb_midi_outs.setValue(settings.value("NumMidiOuts", 0, type=int)) self.ui.sb_midi_outs.setValue(settings.value("NumMidiOuts", 0, type=int))
self.ui.cb_manage_window.setChecked(settings.value("ManageWindow", True, type=bool)) self.ui.cb_manage_window.setChecked(settings.value("ManageWindow", True, type=bool))
self.ui.cb_capture_first_window.setChecked(settings.value("CaptureFirstWindow", False, type=bool))
self.ui.cb_out_midi_mixdown.setChecked(settings.value("MidiOutMixdown", False, type=bool))


self.checkIfButtonBoxShouldBeEnabled(self.ui.cb_session_mgr.currentIndex(), self.checkIfButtonBoxShouldBeEnabled(self.ui.cb_session_mgr.currentIndex(),
self.ui.le_command.text()) self.ui.le_command.text())
@@ -2083,6 +2087,8 @@ class JackApplicationW(QDialog):
settings.setValue("NumMidiIns", self.ui.sb_midi_ins.value()) settings.setValue("NumMidiIns", self.ui.sb_midi_ins.value())
settings.setValue("NumMidiOuts", self.ui.sb_midi_outs.value()) settings.setValue("NumMidiOuts", self.ui.sb_midi_outs.value())
settings.setValue("ManageWindow", self.ui.cb_manage_window.isChecked()) settings.setValue("ManageWindow", self.ui.cb_manage_window.isChecked())
settings.setValue("CaptureFirstWindow", self.ui.cb_capture_first_window.isChecked())
settings.setValue("MidiOutMixdown", self.ui.cb_out_midi_mixdown.isChecked())


# ----------------------------------------------------------------------------------------------------------------- # -----------------------------------------------------------------------------------------------------------------




Loading…
Cancel
Save