@@ -411,6 +411,10 @@ if __name__ == '__main__': | |||
# App initialization | |||
app = QApplication(sys.argv) | |||
app.setApplicationName("Cadence-Logs") | |||
app.setApplicationVersion(VERSION) | |||
app.setOrganizationName("Cadence") | |||
app.setWindowIcon(QIcon(":/scalable/cadence.svg")) | |||
# Show GUI | |||
gui = LogsW(None) | |||
@@ -16,20 +16,29 @@ | |||
# | |||
# For a full copy of the GNU General Public License see the COPYING file | |||
# ------------------------------------------------------------------------------------------------------------ | |||
# Imports (Global) | |||
from PyQt4.QtCore import pyqtSlot, QProcess, QTime, QTimer | |||
from PyQt4.QtGui import QDialog | |||
from time import sleep | |||
# ------------------------------------------------------------------------------------------------------------ | |||
# Imports (Custom Stuff) | |||
import ui_render | |||
from shared import * | |||
from jacklib_helpers import * | |||
global jack_client | |||
jack_client = None | |||
# ------------------------------------------------------------------------------------------------------------ | |||
# Global JACK client (used in standalone mode) | |||
global jackClient | |||
jackClient = None | |||
# ------------------------------------------------------------------------------------------------------------ | |||
# Render Window | |||
class RenderW(QDialog, ui_render.Ui_RenderW): | |||
def __init__(self, parent): | |||
QDialog.__init__(self, parent) | |||
@@ -38,30 +47,28 @@ class RenderW(QDialog, ui_render.Ui_RenderW): | |||
# ------------------------------------------------------------- | |||
# Get JACK client and base information | |||
global jack_client | |||
if jack_client: | |||
self.m_jack_client = jack_client | |||
self.m_closeClient = False | |||
global jackClient | |||
if jackClient: | |||
self.m_jackClient = jackClient | |||
else: | |||
self.m_jack_client = jacklib.client_open("Render-Dialog", jacklib.JackNoStartServer, None) | |||
self.m_closeClient = True | |||
self.m_jackClient = jacklib.client_open("Render-Dialog", jacklib.JackNoStartServer, None) | |||
self.m_buffer_size = int(jacklib.get_buffer_size(self.m_jack_client)) | |||
self.m_sample_rate = int(jacklib.get_sample_rate(self.m_jack_client)) | |||
self.m_bufferSize = int(jacklib.get_buffer_size(self.m_jackClient)) | |||
self.m_sampleRate = int(jacklib.get_sample_rate(self.m_jackClient)) | |||
for i in range(self.cb_buffer_size.count()): | |||
if int(self.cb_buffer_size.itemText(i)) == self.m_buffer_size: | |||
if int(self.cb_buffer_size.itemText(i)) == self.m_bufferSize: | |||
self.cb_buffer_size.setCurrentIndex(i) | |||
break | |||
else: | |||
self.cb_buffer_size.addItem(str(self.m_buffer_size)) | |||
self.cb_buffer_size.addItem(str(self.m_bufferSize)) | |||
self.cb_buffer_size.setCurrentIndex(self.cb_buffer_size.count() - 1) | |||
# ------------------------------------------------------------- | |||
# Internal stuff | |||
self.m_max_time = 180 | |||
self.m_last_time = 0 | |||
self.m_lastTime = 0 | |||
self.m_maxTime = 180 | |||
self.m_freewheel = False | |||
self.m_timer = QTimer(self) | |||
@@ -74,14 +81,17 @@ class RenderW(QDialog, ui_render.Ui_RenderW): | |||
self.m_process.start("jack_capture", ["-pf"]) | |||
self.m_process.waitForFinished() | |||
formats = str(self.m_process.readAllStandardOutput(), encoding="utf-8").split(" ") | |||
formats = str(self.m_process.readAllStandardOutput(), encoding="utf-8").split(" ") | |||
formatsList = [] | |||
for i in range(len(formats) - 1): | |||
formatsList.append(formats[i]) | |||
iFormat = formats[i].strip() | |||
if iFormat: | |||
formatsList.append(iFormat) | |||
formatsList.sort() | |||
# Put all formats in combo-box, select 'wav' option | |||
for i in range(len(formatsList)): | |||
self.cb_format.addItem(formatsList[i]) | |||
if formatsList[i] == "wav": | |||
@@ -127,18 +137,19 @@ class RenderW(QDialog, ui_render.Ui_RenderW): | |||
self.b_stop.setVisible(True) | |||
self.b_close.setEnabled(False) | |||
self.m_freewheel = bool(self.cb_render_mode.currentIndex() == 1) | |||
new_buffer_size = int(self.cb_buffer_size.currentText()) | |||
timeStart = self.te_start.time() | |||
timeEnd = self.te_end.time() | |||
minTime = (timeStart.hour() * 3600) + (timeStart.minute() * 60) + (timeStart.second()) | |||
maxTime = (timeEnd.hour() * 3600) + (timeEnd.minute() * 60) + (timeEnd.second()) | |||
time_start = self.te_start.time() | |||
time_end = self.te_end.time() | |||
min_time = (time_start.hour() * 3600) + (time_start.minute() * 60) + (time_start.second()) | |||
max_time = (time_end.hour() * 3600) + (time_end.minute() * 60) + (time_end.second()) | |||
self.m_max_time = max_time | |||
newBufferSize = int(self.cb_buffer_size.currentText()) | |||
self.progressBar.setMinimum(min_time) | |||
self.progressBar.setMaximum(max_time) | |||
self.progressBar.setValue(min_time) | |||
self.m_maxTime = maxTime | |||
self.m_freewheel = bool(self.cb_render_mode.currentIndex() == 1) | |||
self.progressBar.setMinimum(minTime) | |||
self.progressBar.setMaximum(maxTime) | |||
self.progressBar.setValue(minTime) | |||
self.progressBar.update() | |||
if self.m_freewheel: | |||
@@ -175,14 +186,14 @@ class RenderW(QDialog, ui_render.Ui_RenderW): | |||
# Change current directory | |||
os.chdir(self.le_folder.text()) | |||
if new_buffer_size != int(jacklib.get_buffer_size(self.m_jack_client)): | |||
if newBufferSize != int(jacklib.get_buffer_size(self.m_jackClient)): | |||
print("NOTICE: buffer size changed before render") | |||
jacklib.set_buffer_size(self.m_jack_client, new_buffer_size) | |||
jacklib.set_buffer_size(self.m_jackClient, newBufferSize) | |||
if jacklib.transport_query(self.m_jack_client, None) > jacklib.JackTransportStopped: # > JackTransportStopped is rolling|starting | |||
jacklib.transport_stop(self.m_jack_client) | |||
if jacklib.transport_query(self.m_jackClient, None) > jacklib.JackTransportStopped: # > JackTransportStopped is rolling|starting | |||
jacklib.transport_stop(self.m_jackClient) | |||
jacklib.transport_locate(self.m_jack_client, min_time * self.m_sample_rate) | |||
jacklib.transport_locate(self.m_jackClient, minTime * self.m_sampleRate) | |||
self.m_last_time = -1 | |||
self.m_process.start("jack_capture", arguments) | |||
@@ -191,17 +202,17 @@ class RenderW(QDialog, ui_render.Ui_RenderW): | |||
if self.m_freewheel: | |||
print("NOTICE: rendering in freewheel mode") | |||
sleep(1) | |||
jacklib.set_freewheel(self.m_jack_client, 1) | |||
jacklib.set_freewheel(self.m_jackClient, 1) | |||
self.m_timer.start() | |||
jacklib.transport_start(self.m_jack_client) | |||
jacklib.transport_start(self.m_jackClient) | |||
@pyqtSlot() | |||
def slot_renderStop(self): | |||
jacklib.transport_stop(self.m_jack_client) | |||
jacklib.transport_stop(self.m_jackClient) | |||
if self.m_freewheel: | |||
jacklib.set_freewheel(self.m_jack_client, 0) | |||
jacklib.set_freewheel(self.m_jackClient, 0) | |||
sleep(1) | |||
@@ -221,9 +232,9 @@ class RenderW(QDialog, ui_render.Ui_RenderW): | |||
self.progressBar.update() | |||
# Restore buffer size | |||
new_buffer_size = int(jacklib.get_buffer_size(self.m_jack_client)) | |||
if new_buffer_size != self.m_buffer_size: | |||
jacklib.set_buffer_size(self.m_jack_client, new_buffer_size) | |||
newBufferSize = int(jacklib.get_buffer_size(self.m_jackClient)) | |||
if newBufferSize != self.m_bufferSize: | |||
jacklib.set_buffer_size(self.m_jackClient, newBufferSize) | |||
@pyqtSlot() | |||
def slot_getAndSetPath(self): | |||
@@ -231,7 +242,7 @@ class RenderW(QDialog, ui_render.Ui_RenderW): | |||
@pyqtSlot() | |||
def slot_setStartNow(self): | |||
time = int(jacklib.get_current_transport_frame(self.m_jack_client) / self.m_sample_rate) | |||
time = int(jacklib.get_current_transport_frame(self.m_jackClient) / self.m_sampleRate) | |||
secs = time % 60 | |||
mins = int(time / 60) % 60 | |||
hrs = int(time / 3600) % 60 | |||
@@ -239,7 +250,7 @@ class RenderW(QDialog, ui_render.Ui_RenderW): | |||
@pyqtSlot() | |||
def slot_setEndNow(self): | |||
time = int(jacklib.get_current_transport_frame(self.m_jack_client) / self.m_sample_rate) | |||
time = int(jacklib.get_current_transport_frame(self.m_jackClient) / self.m_sampleRate) | |||
secs = time % 60 | |||
mins = int(time / 60) % 60 | |||
hrs = int(time / 3600) % 60 | |||
@@ -263,31 +274,36 @@ class RenderW(QDialog, ui_render.Ui_RenderW): | |||
@pyqtSlot() | |||
def slot_updateProgressbar(self): | |||
time = int(jacklib.get_current_transport_frame(self.m_jack_client)) / self.m_sample_rate | |||
time = int(jacklib.get_current_transport_frame(self.m_jackClient)) / self.m_sampleRate | |||
self.progressBar.setValue(time) | |||
if time > self.m_max_time or (self.m_last_time > time and not self.m_freewheel): | |||
if time > self.m_maxTime or (self.m_lastTime > time and not self.m_freewheel): | |||
self.slot_renderStop() | |||
self.m_last_time = time | |||
def closeEvent(self, event): | |||
if self.m_closeClient: | |||
jacklib.client_close(self.m_jack_client) | |||
if self.m_jackClient: | |||
jacklib.client_close(self.m_jackClient) | |||
QDialog.closeEvent(self, event) | |||
def done(self, r): | |||
QDialog.done(self, r) | |||
self.close() | |||
# ------------------------------------------------------------- | |||
# ------------------------------------------------------------------------------------------------------------ | |||
# Allow to use this as a standalone app | |||
if __name__ == '__main__': | |||
# Additional imports | |||
from PyQt4.QtGui import QApplication | |||
# App initialization | |||
app = QApplication(sys.argv) | |||
app.setApplicationName("Cadence-Render") | |||
app.setApplicationVersion(VERSION) | |||
app.setOrganizationName("Cadence") | |||
app.setWindowIcon(QIcon(":/scalable/cadence.svg")) | |||
for iPATH in PATH: | |||
if os.path.exists(os.path.join(iPATH, "jack_capture")): | |||
@@ -298,11 +314,11 @@ if __name__ == '__main__': | |||
"Is not possible to render without it!")) | |||
sys.exit(1) | |||
jack_status = jacklib.jack_status_t(0) | |||
jack_client = jacklib.client_open("Render", jacklib.JackNoStartServer, jacklib.pointer(jack_status)) | |||
jackStatus = jacklib.jack_status_t(0) | |||
jackClient = jacklib.client_open("Render", jacklib.JackNoStartServer, jacklib.pointer(jackStatus)) | |||
if not jack_client: | |||
errorString = get_jack_status_error_string(jack_status) | |||
if not jackClient: | |||
errorString = get_jack_status_error_string(jackStatus) | |||
QMessageBox.critical(None, app.translate("RenderW", "Error"), app.translate("RenderW", | |||
"Could not connect to JACK, possible reasons:\n" | |||
"%s" % errorString)) | |||
@@ -314,10 +330,4 @@ if __name__ == '__main__': | |||
gui.show() | |||
# App-Loop | |||
ret = app.exec_() | |||
if jack_client: | |||
jacklib.client_close(jack_client) | |||
# Exit properly | |||
sys.exit(ret) | |||
sys.exit(app.exec_()) |
@@ -58,7 +58,7 @@ else: | |||
WINDOWS = False | |||
# ------------------------------------------------------------------------------------------------------------ | |||
# Try import Signal | |||
# Try Import Signal | |||
try: | |||
from signal import signal, SIGINT, SIGTERM, SIGUSR1, SIGUSR2 | |||
@@ -1,15 +1,35 @@ | |||
#!/usr/bin/env python3 | |||
# -*- coding: utf-8 -*- | |||
# Common/Shared code for Cadence | |||
# Copyright (C) 2012 Filipe Coelho <falktx@falktx.com> | |||
# | |||
# This program is free software; you can redistribute it and/or modify | |||
# it under the terms of the GNU General Public License as published by | |||
# the Free Software Foundation; either version 2 of the License, or | |||
# any later version. | |||
# | |||
# This program is distributed in the hope that it will be useful, | |||
# but WITHOUT ANY WARRANTY; without even the implied warranty of | |||
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the | |||
# GNU General Public License for more details. | |||
# | |||
# For a full copy of the GNU General Public License see the COPYING file | |||
# ------------------------------------------------------------------------------------------------------------ | |||
# Imports (Global) | |||
import os | |||
from PyQt4.QtCore import QProcess, QSettings | |||
from time import sleep | |||
# ------------------------------------------------------------------------------------------------------------ | |||
# Imports (Custom Stuff) | |||
from shared import * | |||
# ------------------------------------------------------------------------------------------------------------ | |||
# Default Plugin PATHs | |||
DEFAULT_LADSPA_PATH = [ | |||
os.path.join(HOME, ".ladspa"), | |||
os.path.join("/", "usr", "lib", "ladspa"), | |||
@@ -34,36 +54,52 @@ DEFAULT_VST_PATH = [ | |||
os.path.join("/", "usr", "local", "lib", "vst") | |||
] | |||
# ------------------------------------------------------------------------------------------------------------ | |||
# ALSA file-type indexes | |||
iAlsaFileNone = 0 | |||
iAlsaFileLoop = 1 | |||
iAlsaFileJACK = 2 | |||
iAlsaFilePulse = 3 | |||
iAlsaFileMax = 4 | |||
# ------------------------------------------------------------------------------------------------------------ | |||
# Global Settings | |||
GlobalSettings = QSettings("Cadence", "GlobalSettings") | |||
# ------------------------------------------------------------------------------------------------------------ | |||
# Get Process list | |||
# TODO - Windows support, others | |||
def getProcList(): | |||
retProcs = [] | |||
process = QProcess() | |||
process.start("ps", ["-e"]) | |||
process.waitForFinished() | |||
if HAIKU or LINUX or MACOS: | |||
process = QProcess() | |||
process.start("ps", ["-e"]) | |||
process.waitForFinished() | |||
processDump = process.readAllStandardOutput().split("\n") | |||
processDump = process.readAllStandardOutput().split("\n") | |||
for i in range(len(processDump)): | |||
if (i == 0): continue | |||
dumpTest = str(processDump[i], encoding="utf-8").rsplit(":", 1)[-1].split(" ") | |||
if len(dumpTest) > 1 and dumpTest[1]: | |||
retProcs.append(dumpTest[1]) | |||
for i in range(len(processDump)): | |||
if (i == 0): continue | |||
dumpTest = str(processDump[i], encoding="utf-8").rsplit(":", 1)[-1].split(" ") | |||
if len(dumpTest) > 1 and dumpTest[1]: | |||
retProcs.append(dumpTest[1]) | |||
else: | |||
print("getProcList() - Not supported in this system") | |||
return retProcs | |||
# ------------------------------------------------------------------------------------------------------------ | |||
# Stop all audio processes, used for force-restart | |||
def stopAllAudioProcesses(): | |||
if not (HAIKU or LINUX or MACOS): | |||
print("stopAllAudioProcesses() - Not supported in this system") | |||
return | |||
process = QProcess() | |||
procsTerm = ["a2j", "a2jmidid", "artsd", "jackd", "jackdmp", "knotify4", "lash", "ladishd", "ladiappd", "ladiconfd", "jmcore"] | |||
@@ -16,8 +16,10 @@ | |||
# | |||
# For a full copy of the GNU General Public License see the COPYING file | |||
# ------------------------------------------------------------------------------------------------------------ | |||
# Imports (Global) | |||
import platform, sys | |||
import platform | |||
from copy import deepcopy | |||
from decimal import Decimal | |||
from sip import unwrapinstance | |||
@@ -31,25 +33,12 @@ try: | |||
except: | |||
GuiContainer = QWidget | |||
# ------------------------------------------------------------------------------------------------------------ | |||
# Imports (Custom) | |||
import ui_carla_about, ui_carla_edit, ui_carla_parameter, ui_carla_plugin | |||
from shared import * | |||
# Carla Host object | |||
class CarlaHostObject(object): | |||
__slots__ = [ | |||
'host', | |||
'gui', | |||
'isControl', | |||
'processMode', | |||
'maxParameters' | |||
] | |||
Carla = CarlaHostObject() | |||
Carla.host = None | |||
Carla.gui = None | |||
Carla.isControl = False | |||
is64bit = bool(platform.architecture()[0] == "64bit" and sys.maxsize > 2**32) | |||
# ------------------------------------------------------------------------------------------------ | |||
@@ -59,7 +48,7 @@ is64bit = bool(platform.architecture()[0] == "64bit" and sys.maxsize > 2**32) | |||
MAX_PLUGINS = 99 | |||
MAX_PARAMETERS = 200 | |||
# plugin hints | |||
# group plugin hints | |||
PLUGIN_IS_BRIDGE = 0x001 | |||
PLUGIN_IS_SYNTH = 0x002 | |||
PLUGIN_HAS_GUI = 0x004 | |||
@@ -70,7 +59,7 @@ PLUGIN_CAN_VOLUME = 0x040 | |||
PLUGIN_CAN_BALANCE = 0x080 | |||
PLUGIN_CAN_FORCE_STEREO = 0x100 | |||
# parameter hints | |||
# group parameter hints | |||
PARAMETER_IS_BOOLEAN = 0x01 | |||
PARAMETER_IS_INTEGER = 0x02 | |||
PARAMETER_IS_LOGARITHMIC = 0x04 | |||
@@ -200,13 +189,7 @@ PROCESS_MODE_MULTIPLE_CLIENTS = 1 | |||
PROCESS_MODE_CONTINUOUS_RACK = 2 | |||
PROCESS_MODE_PATCHBAY = 3 | |||
# ------------------------------------------------------------------------------------------------ | |||
# Carla GUI stuff | |||
Carla.processMode = PROCESS_MODE_CONTINUOUS_RACK | |||
Carla.maxParameters = MAX_PARAMETERS | |||
# set native binary type | |||
# TODO ... | |||
if HAIKU or LINUX or MACOS: | |||
BINARY_NATIVE = BINARY_POSIX64 if is64bit else BINARY_POSIX32 | |||
elif WINDOWS: | |||
@@ -214,6 +197,28 @@ elif WINDOWS: | |||
else: | |||
BINARY_NATIVE = BINARY_OTHER | |||
# ------------------------------------------------------------------------------------------------------------ | |||
# Carla Host object | |||
class CarlaHostObject(object): | |||
__slots__ = [ | |||
'host', | |||
'gui', | |||
'isControl', | |||
'processMode', | |||
'maxParameters' | |||
] | |||
Carla = CarlaHostObject() | |||
Carla.host = None | |||
Carla.gui = None | |||
Carla.isControl = False | |||
Carla.processMode = PROCESS_MODE_CONTINUOUS_RACK | |||
Carla.maxParameters = MAX_PARAMETERS | |||
# ------------------------------------------------------------------------------------------------------------ | |||
# Carla GUI stuff | |||
ICON_STATE_NULL = 0 | |||
ICON_STATE_WAIT = 1 | |||
ICON_STATE_OFF = 2 | |||
@@ -429,8 +434,8 @@ def xmlSafeString(string, toXml): | |||
else: | |||
return string.replace("&", "&").replace("<","<").replace(">",">").replace("'","'").replace(""","\"") | |||
# ------------------------------------------------------------------------------------------------ | |||
# carla_about.cpp | |||
# ------------------------------------------------------------------------------------------------------------ | |||
# CarlaAbout.cpp | |||
class CarlaAboutW(QDialog, ui_carla_about.Ui_CarlaAboutW): | |||
def __init__(self, parent): | |||
@@ -508,7 +513,7 @@ class CarlaAboutW(QDialog, ui_carla_about.Ui_CarlaAboutW): | |||
QDialog.done(self, r) | |||
self.close() | |||
# ------------------------------------------------------------------------------------------------ | |||
# ------------------------------------------------------------------------------------------------------------ | |||
# PluginParameter.cpp | |||
# Plugin Parameter | |||
@@ -16,20 +16,28 @@ | |||
# | |||
# For a full copy of the GNU General Public License see the COPYING file | |||
# ------------------------------------------------------------------------------------------------------------ | |||
# Imports (Global) | |||
from PyQt4.QtCore import pyqtSlot, QTimer | |||
from PyQt4.QtGui import QCursor, QFontMetrics, QMenu | |||
# ------------------------------------------------------------------------------------------------------------ | |||
# Imports (Custom Stuff) | |||
import jacksettings, logs, render | |||
from shared import * | |||
from jacklib_helpers import * | |||
# ------------------------------------------------------------------------------------------------------------ | |||
# Have JACK2 ? | |||
if jacklib.JACK2 and DEBUG: | |||
print("Using JACK2, version %s" % cString(jacklib.get_version_string())) | |||
# ------------------------------------------------------------------------------------------------------------ | |||
# Can Render ? | |||
for iPATH in PATH: | |||
if os.path.exists(os.path.join(iPATH, "jack_capture")): | |||
canRender = True | |||
@@ -37,7 +45,9 @@ for iPATH in PATH: | |||
else: | |||
canRender = False | |||
# Variables | |||
# ------------------------------------------------------------------------------------------------------------ | |||
# Global Variables | |||
TRANSPORT_VIEW_HMS = 0 | |||
TRANSPORT_VIEW_BBT = 1 | |||
TRANSPORT_VIEW_FRAMES = 2 | |||
@@ -45,7 +55,9 @@ TRANSPORT_VIEW_FRAMES = 2 | |||
buffer_sizes = (16, 32, 64, 128, 256, 512, 1024, 2048, 4096, 8192) | |||
sample_rates = (22050, 32000, 44100, 48000, 88200, 96000, 192000) | |||
# DBus object | |||
# ------------------------------------------------------------------------------------------------------------ | |||
# Global DBus object | |||
class DBusObject(object): | |||
__slots__ = [ | |||
'loop', | |||
@@ -63,16 +75,6 @@ class DBusObject(object): | |||
] | |||
DBus = DBusObject() | |||
# Jack object | |||
class JackObject(object): | |||
__slots__ = [ | |||
'client' | |||
] | |||
jack = JackObject() | |||
# Init objects | |||
DBus.loop = None | |||
DBus.bus = None | |||
DBus.a2j = None | |||
@@ -85,9 +87,18 @@ DBus.ladish_app_iface = None | |||
DBus.ladish_app_daemon = None | |||
DBus.patchbay = None | |||
# ------------------------------------------------------------------------------------------------------------ | |||
# Global JACK object | |||
class JackObject(object): | |||
__slots__ = [ | |||
'client' | |||
] | |||
jack = JackObject() | |||
jack.client = None | |||
# ------------------------------------------------------------- | |||
# ------------------------------------------------------------------------------------------------------------ | |||
# Property change calls | |||
def jack_buffer_size(self_, buffer_size): | |||
@@ -121,7 +132,7 @@ def slot_jackSampleRate_ComboBox(self_, text): | |||
if text and text.isdigit(): | |||
jack_sample_rate(self_, int(text)) | |||
# ------------------------------------------------------------- | |||
# ------------------------------------------------------------------------------------------------------------ | |||
# Transport calls | |||
def setTransportView(self_, view): | |||
@@ -194,7 +205,7 @@ def slot_transportViewMenu(self_): | |||
elif act_selected == act_t_fr: | |||
setTransportView(self_, TRANSPORT_VIEW_FRAMES) | |||
# ------------------------------------------------------------- | |||
# ------------------------------------------------------------------------------------------------------------ | |||
# Refresh GUI stuff | |||
def refreshDSPLoad(self_): | |||
@@ -262,7 +273,7 @@ def refreshTransport(self_): | |||
self_.m_last_transport_state = state | |||
# ------------------------------------------------------------- | |||
# ------------------------------------------------------------------------------------------------------------ | |||
# Set GUI stuff | |||
def setBufferSize(self_, buffer_size, forced=False): | |||
@@ -349,7 +360,7 @@ def setDSPLoad(self_, dsp_load): | |||
def setXruns(self_, xruns): | |||
self_.b_xruns.setText("%s Xrun%s" % (str(xruns) if (xruns >= 0) else "--", "" if (xruns == 1) else "s")) | |||
# ------------------------------------------------------------- | |||
# ------------------------------------------------------------------------------------------------------------ | |||
# External Dialogs | |||
global logsW | |||
@@ -378,7 +389,7 @@ def slot_showRender(self_): | |||
renderW.exec_() | |||
del renderW | |||
# ------------------------------------------------------------- | |||
# ------------------------------------------------------------------------------------------------------------ | |||
# Shared Connections | |||
def setJackConnections(self_, modes): | |||