Läuft die Voice Acoustic VA-Remotecontrol (AllDSP AllControl) nativ unter Linux auf echtem wxGTK 3.0 — ohne Wine und ohne dekompilierten App-Code. Ausgeführt wird das unveränderte Python-2.7-Bytecode aus dem macOS-.app; C-Extensions (wxGTK/numpy/ scipy/PortAudio) kommen nativ aus Debian stretch. Enthält: va/ (Original-.pyc + pure-Python-Libs + Assets + launch.py mit den drei Linux-Fixes), Dockerfile/run.sh/entrypoint.sh, reference/ (dekompilierter Quellcode zum Debuggen) und README/STATUS. img.cache (378 MB, regenerierbar) ist per .gitignore ausgeschlossen. Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
648 lines
14 KiB
INI
Executable File
648 lines
14 KiB
INI
Executable File
[DEFAULT]
|
|
views = in_panel
|
|
title = AllDSP AllControl DSP Software
|
|
|
|
show_impedance=False
|
|
|
|
# structure IDs for AllDSP products
|
|
STRUCT_ID_VU = -1
|
|
STRUCT_ID_GR = -2
|
|
STRUCT_ID_GAIN = 0
|
|
STRUCT_ID_MIXER = 1
|
|
STRUCT_ID_DELAY = 2
|
|
STRUCT_ID_LPF = 3
|
|
STRUCT_ID_HPF = 4
|
|
STRUCT_ID_PEQ = 5
|
|
STRUCT_ID_LIMITER = 6
|
|
STRUCT_ID_MUTE = 7
|
|
STRUCT_ID_INVERT = 8
|
|
STRUCT_ID_PRESET_GLOBAL = 9
|
|
STRUCT_ID_LINK = 10
|
|
STRUCT_ID_COMMAND = 11
|
|
STRUCT_ID_COMPRESSOR = 12
|
|
STRUCT_ID_GLOBAL = 13
|
|
STRUCT_ID_CHANNEL = 14
|
|
STRUCT_ID_INTERNAL = 255
|
|
|
|
# member IDs for AllDSP products
|
|
MEMBER_ID_GAIN = 0
|
|
MEMBER_ID_FREQ = 1
|
|
MEMBER_ID_Q = 2
|
|
MEMBER_ID_TYPE = 3
|
|
MEMBER_ID_THRESHOLD = 4
|
|
MEMBER_ID_ATTACK = 5
|
|
MEMBER_ID_RELEASE = 6
|
|
MEMBER_ID_HOLD = 7
|
|
MEMBER_ID_DELAY = 8
|
|
MEMBER_ID_STATUS = 9
|
|
MEMBER_ID_VU_IN = 10
|
|
MEMBER_ID_VU_OUT = 11
|
|
MEMBER_ID_GR_IN = 12
|
|
MEMBER_ID_GR_OUT = 13
|
|
MEMBER_ID_MUTE = 14
|
|
MEMBER_ID_INVERT = 15
|
|
MEMBER_ID_SHORT_NAME = 16
|
|
MEMBER_ID_LONG_NAME = 17
|
|
MEMBER_ID_PRESET_NUMBER = 18
|
|
MEMBER_ID_PRESET_VERSION = 19
|
|
MEMBER_ID_NUMBER_OF_GROUPS = 20
|
|
MEMBER_ID_NUMBER_OF_WAYS = 21
|
|
MEMBER_ID_GNDLIFT = 22
|
|
MEMBER_ID_LANGUAGE = 23
|
|
MEMBER_ID_ON = 24
|
|
MEMBER_ID_LINK = 25
|
|
MEMBER_ID_COMMAND = 26
|
|
MEMBER_ID_RATIO=27
|
|
MEMBER_ID_Q_BW = 1000
|
|
|
|
delay_unit_type=delay_unit
|
|
|
|
status_indicator_type=indicator
|
|
#remember: list is "or"
|
|
status_indicator_condition = (hardware_status_flags&0x00000020) != 0 temperature >= 90
|
|
|
|
#impedance_0 > 200 impedance_1 > 200 impedance_2 > 200
|
|
|
|
status_details_type=button
|
|
|
|
vu_style=leds
|
|
|
|
#led shapes: square, rounded, circle
|
|
vu_led_shape=square
|
|
vu_led_size=2
|
|
vu_led_spacing=3
|
|
vu_grey_on_mute=yes
|
|
|
|
#values for input VU
|
|
vu_in_yellow=0
|
|
vu_in_red=10
|
|
|
|
#values for output VU
|
|
vu_out_yellow=0
|
|
vu_out_red=10
|
|
|
|
# Many switches have the same function in every view, so we describe them in the DEFAULT section
|
|
|
|
available_units_type=available_units
|
|
|
|
# presets
|
|
preset_load_type = button
|
|
|
|
preset_store_type = button
|
|
|
|
recall_preset_list_type = choice
|
|
recall_preset_list_value = recall_preset
|
|
|
|
preset_no_text_type = text
|
|
preset_no_text_value = preset_no
|
|
|
|
load_unit_preset_type = toggle-button
|
|
load_unit_preset_value = cmd_load_unit_preset
|
|
|
|
store_unit_preset_type = toggle-button
|
|
store_unit_preset_value = cmd_store_unit_preset
|
|
|
|
preset_name_text_type=text
|
|
preset_name_text_value=preset_name
|
|
|
|
unit_name_text_type=text
|
|
unit_name_text_value=unit_name
|
|
|
|
#link status indicator
|
|
link_status_type = toggle-button
|
|
|
|
|
|
|
|
|
|
mute_in0_type = toggle-button
|
|
mute_in0_value = mute_in0
|
|
|
|
mute_in1_type = toggle-button
|
|
mute_in1_value = mute_in1
|
|
|
|
mute_out0_type = toggle-button
|
|
mute_out0_value = mute_out0
|
|
|
|
mute_out1_type = toggle-button
|
|
mute_out1_value = mute_out1
|
|
|
|
mute_out2_type = toggle-button
|
|
mute_out2_value = mute_out2
|
|
|
|
|
|
link_ab_type=toggle-button
|
|
link_ab_value=link_ab
|
|
|
|
#link
|
|
out_link_0_type = toggle-button
|
|
out_link_0_value=out_link_0
|
|
|
|
|
|
peq_reset_0_type=button
|
|
peq_reset_1_type=button
|
|
peq_reset_2_type=button
|
|
peq_reset_3_type=button
|
|
peq_reset_4_type=button
|
|
peq_reset_5_type=button
|
|
peq_reset_6_type=button
|
|
peq_reset_7_type=button
|
|
peq_reset_8_type=button
|
|
peq_reset_9_type=button
|
|
|
|
|
|
|
|
|
|
Q_Bw_1_type=toggle-button
|
|
Q_Bw_1_value = Q_Bw
|
|
|
|
Q_Bw_2_type=toggle-button
|
|
Q_Bw_2_value = Q_Bw
|
|
|
|
cs_main_type = toggle-button
|
|
cs_xover_type = toggle-button
|
|
cs_in1_type = toggle-button
|
|
cs_in2_type = toggle-button
|
|
cs_out1_type = toggle-button
|
|
cs_out2_type = toggle-button
|
|
cs_out3_type = toggle-button
|
|
cs_dyn_type = toggle-button
|
|
cs_back_type=toggle-button
|
|
|
|
lpf_on_type = toggle-button
|
|
lpf_on_value = lpf_onoff
|
|
|
|
hpf_on_type = toggle-button
|
|
hpf_on_value = hpf_onoff
|
|
|
|
|
|
peq_sw_0_type=toggle-button
|
|
peq_sw_0_value=peq_0_on
|
|
|
|
peq_sw_1_type=toggle-button
|
|
peq_sw_1_value=peq_1_on
|
|
|
|
peq_sw_2_type=toggle-button
|
|
peq_sw_2_value=peq_2_on
|
|
|
|
peq_sw_3_type=toggle-button
|
|
peq_sw_3_value=peq_3_on
|
|
|
|
peq_sw_4_type=toggle-button
|
|
peq_sw_4_value=peq_4_on
|
|
|
|
peq_sw_5_type=toggle-button
|
|
peq_sw_5_value=peq_5_on
|
|
|
|
peq_sw_6_type=toggle-button
|
|
peq_sw_6_value=peq_6_on
|
|
|
|
peq_sw_7_type=toggle-button
|
|
peq_sw_7_value=peq_7_on
|
|
|
|
peq_sw_8_type=toggle-button
|
|
peq_sw_8_value=peq_8_on
|
|
|
|
peq_sw_9_type=toggle-button
|
|
peq_sw_9_value=peq_9_on
|
|
|
|
# PEQs, all 10 of them
|
|
|
|
peq_type_0_type=choice
|
|
peq_type_0_value=peq_type_0
|
|
peq_type_1_type=choice
|
|
peq_type_1_value=peq_type_1
|
|
peq_type_2_type=choice
|
|
peq_type_2_value=peq_type_2
|
|
peq_type_3_type=choice
|
|
peq_type_3_value=peq_type_3
|
|
peq_type_4_type=choice
|
|
peq_type_4_value=peq_type_4
|
|
peq_type_5_type=choice
|
|
peq_type_5_value=peq_type_5
|
|
peq_type_6_type=choice
|
|
peq_type_6_value=peq_type_6
|
|
peq_type_7_type=choice
|
|
peq_type_7_value=peq_type_7
|
|
peq_type_8_type=choice
|
|
peq_type_8_value=peq_type_8
|
|
peq_type_9_type=choice
|
|
peq_type_9_value=peq_type_9
|
|
|
|
|
|
peq_freq_0_type = text
|
|
peq_freq_0_value = peq_freq_0
|
|
peq_q_0_type = text
|
|
peq_q_0_value = peq_q_0
|
|
peq_gain_0_type = text
|
|
peq_gain_0_value = peq_gain_0
|
|
|
|
peq_freq_1_type = text
|
|
peq_freq_1_value = peq_freq_1
|
|
peq_q_1_type = text
|
|
peq_q_1_value = peq_q_1
|
|
peq_gain_1_type = text
|
|
peq_gain_1_value = peq_gain_1
|
|
|
|
peq_freq_2_type = text
|
|
peq_freq_2_value = peq_freq_2
|
|
peq_q_2_type = text
|
|
peq_q_2_value = peq_q_2
|
|
peq_gain_2_type = text
|
|
peq_gain_2_value = peq_gain_2
|
|
|
|
peq_freq_3_type = text
|
|
peq_freq_3_value = peq_freq_3
|
|
peq_q_3_type = text
|
|
peq_q_3_value = peq_q_3
|
|
peq_gain_3_type = text
|
|
peq_gain_3_value = peq_gain_3
|
|
|
|
peq_freq_4_type = text
|
|
peq_freq_4_value = peq_freq_4
|
|
peq_q_4_type = text
|
|
peq_q_4_value = peq_q_4
|
|
peq_gain_4_type = text
|
|
peq_gain_4_value = peq_gain_4
|
|
|
|
peq_freq_5_type = text
|
|
peq_freq_5_value = peq_freq_5
|
|
peq_q_5_type = text
|
|
peq_q_5_value = peq_q_5
|
|
peq_gain_5_type = text
|
|
peq_gain_5_value = peq_gain_5
|
|
|
|
peq_freq_6_type = text
|
|
peq_freq_6_value = peq_freq_6
|
|
peq_q_6_type = text
|
|
peq_q_6_value = peq_q_6
|
|
peq_gain_6_type = text
|
|
peq_gain_6_value = peq_gain_6
|
|
|
|
peq_freq_7_type = text
|
|
peq_freq_7_value = peq_freq_7
|
|
peq_q_7_type = text
|
|
peq_q_7_value = peq_q_7
|
|
peq_gain_7_type = text
|
|
peq_gain_7_value = peq_gain_7
|
|
|
|
peq_freq_8_type = text
|
|
peq_freq_8_value = peq_freq_8
|
|
peq_q_8_type = text
|
|
peq_q_8_value = peq_q_8
|
|
peq_gain_8_type = text
|
|
peq_gain_8_value = peq_gain_8
|
|
|
|
peq_freq_9_type = text
|
|
peq_freq_9_value = peq_freq_9
|
|
peq_q_9_type = text
|
|
peq_q_9_value = peq_q_9
|
|
peq_gain_9_type = text
|
|
peq_gain_9_value = peq_gain_9
|
|
|
|
# Hi- and low-pass filters
|
|
# The channel is the current channel selected
|
|
hpf_text_type = text
|
|
hpf_text_value = hpf
|
|
|
|
hpf_shape_type = choice
|
|
hpf_shape_value = hpf_shape
|
|
|
|
lpf_text_type = text
|
|
lpf_text_value = lpf
|
|
|
|
lpf_shape_type = choice
|
|
lpf_shape_value = lpf_shape
|
|
|
|
|
|
|
|
out_release_text_type=text
|
|
out_release_text_value=limiter_release
|
|
out_release_text_unit=dB/s
|
|
|
|
out_release_knob_type=knob
|
|
out_release_knob_value=limiter_release
|
|
|
|
# Output gain, the channel is not specified and depends on the current
|
|
# channel selected
|
|
out_gain_slider_type = slider
|
|
out_gain_slider_value = out_gain
|
|
out_gain_slider_min_label = out_gain_min
|
|
out_gain_slider_max_label = out_gain_max
|
|
|
|
out_gain_text_type = text
|
|
out_gain_text_value = out_gain
|
|
out_gain_text_unit=dB
|
|
|
|
mute_out_type = toggle-button
|
|
mute_out_value = mute_out
|
|
|
|
|
|
|
|
[in_panel]
|
|
svg_file = in_panel.svg
|
|
controls = peq_type_0, peq_type_1, peq_type_2, peq_type_3, peq_type_4, peq_freq_0, peq_q_0, peq_gain_0,
|
|
peq_freq_1, peq_q_1, peq_gain_1, peq_freq_2, peq_q_2, peq_gain_2, peq_freq_3, peq_q_3, peq_gain_3,
|
|
peq_freq_4, peq_q_4, peq_gain_4, diagram,peq_sw_0, peq_sw_1, peq_sw_2, peq_sw_3, peq_sw_4, Q_Bw_1,
|
|
memberList, groupList
|
|
|
|
default_channel=0
|
|
cs_button_value = cs_in
|
|
|
|
# Animated diagram for PEQ control
|
|
diagram_type = PEQ_diagram
|
|
diagram_values = peq_freq_0, peq_q_0, peq_gain_0, peq_freq_1, peq_q_1, peq_gain_1, peq_freq_2, peq_q_2, peq_gain_2,
|
|
peq_freq_3, peq_q_3, peq_gain_3, peq_freq_4, peq_q_4, peq_gain_4
|
|
diagram_group_eq_enabled = True
|
|
|
|
peq_colours = ('white','white','black','black','black','black','black','black','black','black','red', 'yellow', 'green','cyan', 'magenta')
|
|
|
|
groupList_settings = {
|
|
"filter":["Group EQ (MK2 Only)",],
|
|
"border":[10,10],
|
|
'align':'center',
|
|
"scroll":False,
|
|
'childSize':[145,40],
|
|
'backgroundColour':[14,14,14],
|
|
'textBackgroundColour':[14,14,14],
|
|
'textForegroundColour':[255,255,255],
|
|
'namePos':[60,10],
|
|
'nameSize':[85,20],
|
|
'showID':['1',[4,65,91],[255,255,255],[5,5],[40,30],[0,158,226],30]
|
|
}
|
|
memberList_settings = {
|
|
"filter":None,
|
|
"border":[10,10],
|
|
'align':'center',
|
|
"scroll":True,
|
|
'childSize':[145,20],
|
|
'backgroundColour':[70,70,70],
|
|
'textBackgroundColour':[70,70,70],
|
|
'textForegroundColour':[235,235,235],
|
|
'namePos':[40,0],
|
|
'nameSize':[120,20],
|
|
'launch':['nww/Unit_launch',[130,1]],
|
|
'showID':['1',[70,70,70],[235,235,235],[7,0],[20,20],[70,70,70],18]
|
|
}
|
|
|
|
[peq_type_0]
|
|
struct_id=%(STRUCT_ID_PEQ)s
|
|
member_id = %(MEMBER_ID_TYPE)s
|
|
channel = 0
|
|
num = 10
|
|
values = 128,129,130,131,132,133,134,136
|
|
labels = Bell, Notch, AllPass, Low Shelf, High Shelf,Band Pass, High Pass, Low Pass
|
|
default_value = 128
|
|
|
|
[peq_type_1]
|
|
struct_id=%(STRUCT_ID_PEQ)s
|
|
member_id = %(MEMBER_ID_TYPE)s
|
|
channel = 0
|
|
num = 11
|
|
values = 128,129,130,131,132,133,134,136
|
|
labels = Bell, Notch, AllPass, Low Shelf, High Shelf,Band Pass, High Pass, Low Pass
|
|
default_value = 128
|
|
|
|
[peq_type_2]
|
|
struct_id=%(STRUCT_ID_PEQ)s
|
|
member_id = %(MEMBER_ID_TYPE)s
|
|
channel = 0
|
|
num = 12
|
|
values = 128,129,130,131,132,133,134,136
|
|
labels = Bell, Notch, AllPass, Low Shelf, High Shelf,Band Pass, High Pass, Low Pass
|
|
default_value = 128
|
|
|
|
[peq_type_3]
|
|
struct_id=%(STRUCT_ID_PEQ)s
|
|
member_id = %(MEMBER_ID_TYPE)s
|
|
channel = 0
|
|
num = 13
|
|
values = 128,129,130,131,132,133,134,136
|
|
labels = Bell, Notch, AllPass, Low Shelf, High Shelf,Band Pass, High Pass, Low Pass
|
|
default_value = 128
|
|
|
|
[peq_type_4]
|
|
struct_id=%(STRUCT_ID_PEQ)s
|
|
member_id = %(MEMBER_ID_TYPE)s
|
|
channel = 0
|
|
num = 14
|
|
values = 128,129,130,131,132,133,134,136
|
|
labels = Bell, Notch, AllPass, Low Shelf, High Shelf,Band Pass, High Pass, Low Pass
|
|
default_value = 128
|
|
|
|
|
|
# PEQ frequencies. Note that the channel number is missing, it comes
|
|
# from the context
|
|
[peq_freq_0]
|
|
struct_id=%(STRUCT_ID_PEQ)s
|
|
member_id = %(MEMBER_ID_FREQ)s
|
|
channel = 0
|
|
num = 10
|
|
min_value=20
|
|
max_value = 20000
|
|
default_value = 67
|
|
units = Hz
|
|
|
|
[peq_freq_1]
|
|
struct_id=%(STRUCT_ID_PEQ)s
|
|
member_id = %(MEMBER_ID_FREQ)s
|
|
channel = 0
|
|
num = 11
|
|
min_value=20
|
|
max_value = 20000
|
|
default_value = 200
|
|
units = Hz
|
|
|
|
[peq_freq_2]
|
|
struct_id=%(STRUCT_ID_PEQ)s
|
|
member_id = %(MEMBER_ID_FREQ)s
|
|
channel = 0
|
|
num = 12
|
|
min_value=20
|
|
max_value = 20000
|
|
default_value = 600
|
|
units = Hz
|
|
|
|
[peq_freq_3]
|
|
struct_id=%(STRUCT_ID_PEQ)s
|
|
member_id = %(MEMBER_ID_FREQ)s
|
|
channel = 0
|
|
num = 13
|
|
min_value=20
|
|
max_value = 20000
|
|
default_value = 1800
|
|
units = Hz
|
|
|
|
[peq_freq_4]
|
|
struct_id=%(STRUCT_ID_PEQ)s
|
|
member_id = %(MEMBER_ID_FREQ)s
|
|
channel = 0
|
|
num = 14
|
|
min_value=20
|
|
max_value = 20000
|
|
default_value = 5400
|
|
units = Hz
|
|
|
|
|
|
# PEQ Q factors
|
|
[peq_q_0]
|
|
struct_id=%(STRUCT_ID_PEQ)s
|
|
member_id = %(MEMBER_ID_Q)s
|
|
channel = 0
|
|
num = 10
|
|
min_value = 0.2
|
|
max_value = 25.0
|
|
default_value = 1.0
|
|
units = float
|
|
scale = 10
|
|
|
|
[peq_q_1]
|
|
struct_id=%(STRUCT_ID_PEQ)s
|
|
member_id = %(MEMBER_ID_Q)s
|
|
channel = 0
|
|
num = 11
|
|
min_value = 0.2
|
|
max_value = 25.0
|
|
default_value = 1.0
|
|
units = float
|
|
scale = 10
|
|
|
|
[peq_q_2]
|
|
struct_id=%(STRUCT_ID_PEQ)s
|
|
member_id = %(MEMBER_ID_Q)s
|
|
channel = 0
|
|
num = 12
|
|
min_value = 0.2
|
|
max_value = 25.0
|
|
default_value = 1.0
|
|
units = float
|
|
scale = 10
|
|
|
|
[peq_q_3]
|
|
struct_id=%(STRUCT_ID_PEQ)s
|
|
member_id = %(MEMBER_ID_Q)s
|
|
channel = 0
|
|
num = 13
|
|
min_value = 0.2
|
|
max_value = 25.0
|
|
default_value = 1.0
|
|
units = float
|
|
scale = 10
|
|
|
|
[peq_q_4]
|
|
struct_id=%(STRUCT_ID_PEQ)s
|
|
member_id = %(MEMBER_ID_Q)s
|
|
channel = 0
|
|
num = 14
|
|
min_value = 0.2
|
|
max_value = 25.0
|
|
default_value = 1.0
|
|
units = float
|
|
scale = 10
|
|
|
|
|
|
|
|
# PEQ gains
|
|
[peq_gain_0]
|
|
struct_id=%(STRUCT_ID_PEQ)s
|
|
member_id = %(MEMBER_ID_GAIN)s
|
|
channel = 0
|
|
num = 10
|
|
min_value = -12
|
|
max_value = 12
|
|
default_value = 0.0
|
|
units = dB
|
|
scale = 100
|
|
|
|
[peq_gain_1]
|
|
struct_id=%(STRUCT_ID_PEQ)s
|
|
member_id = %(MEMBER_ID_GAIN)s
|
|
channel = 0
|
|
num = 11
|
|
min_value = -12.0
|
|
max_value = 12.0
|
|
default_value = 0.0
|
|
units = dB
|
|
scale = 100
|
|
|
|
[peq_gain_2]
|
|
struct_id=%(STRUCT_ID_PEQ)s
|
|
member_id = %(MEMBER_ID_GAIN)s
|
|
channel = 0
|
|
num = 12
|
|
min_value = -12.0
|
|
max_value = 12.0
|
|
default_value = 0.0
|
|
units = dB
|
|
scale = 100
|
|
|
|
[peq_gain_3]
|
|
struct_id=%(STRUCT_ID_PEQ)s
|
|
member_id = %(MEMBER_ID_GAIN)s
|
|
channel = 0
|
|
num = 13
|
|
min_value = -12.0
|
|
max_value = 12.0
|
|
default_value = 0.0
|
|
units = dB
|
|
scale = 100
|
|
|
|
[peq_gain_4]
|
|
struct_id=%(STRUCT_ID_PEQ)s
|
|
member_id = %(MEMBER_ID_GAIN)s
|
|
channel = 0
|
|
num = 14
|
|
min_value = -12.0
|
|
max_value = 12.0
|
|
default_value = 0.0
|
|
units = dB
|
|
scale = 100
|
|
|
|
[Q_Bw]
|
|
struct_id=255
|
|
member_id = 1000
|
|
channel = 0
|
|
num = 0
|
|
default_value = 0
|
|
|
|
|
|
[peq_0_on]
|
|
struct_id=%(STRUCT_ID_PEQ)s
|
|
member_id = %(MEMBER_ID_ON)s
|
|
channel = 0
|
|
num = 10
|
|
default_value = 0
|
|
|
|
[peq_1_on]
|
|
struct_id=%(STRUCT_ID_PEQ)s
|
|
member_id = %(MEMBER_ID_ON)s
|
|
channel = 0
|
|
num = 11
|
|
default_value = 0
|
|
|
|
[peq_2_on]
|
|
struct_id=%(STRUCT_ID_PEQ)s
|
|
member_id = %(MEMBER_ID_ON)s
|
|
channel = 0
|
|
num = 12
|
|
default_value = 0
|
|
|
|
[peq_3_on]
|
|
struct_id=%(STRUCT_ID_PEQ)s
|
|
member_id = %(MEMBER_ID_ON)s
|
|
channel = 0
|
|
num = 13
|
|
default_value = 0
|
|
|
|
[peq_4_on]
|
|
struct_id=%(STRUCT_ID_PEQ)s
|
|
member_id = %(MEMBER_ID_ON)s
|
|
channel = 0
|
|
num = 14
|
|
default_value = 0
|
|
|
|
|
|
|
|
|
|
|
|
|