Index: branches/libffado-2.0/support/mixer/mixer_saffirelelarge.ui =================================================================== --- branches/libffado-2.0/support/mixer/mixer_saffirelelarge.ui (revision 1216) +++ branches/libffado-2.0/support/mixer/mixer_saffirelelarge.ui (revision 1216) @@ -0,0 +1,2600 @@ + +SaffireLEMixerLargeUI +Copyright (C) 2005-2008 by Pieter Palmers + + This file is part of FFADO + FFADO = Free Firewire (pro-)audio drivers for linux + + FFADO is based upon FreeBoB. + + 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 + (at your option) version 3 of the License. + + 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. + + + + SaffireLEMixerUI + + + + 0 + 0 + 779 + 381 + + + + Focusrite Saffire LE Mixer + + + + groupBox13 + + + + 11 + 310 + 250 + 60 + + + + Mute + + + + unnamed + + + + chkOut56Mute + + + CH5/&6 + + + + + chkOut34Mute + + + CH3/4 + + + + + chkOut12Mute + + + CH1/2 + + + + + + + groupBox13_2 + + + + 267 + 310 + 238 + 60 + + + + High Gain + + + + unnamed + + + + chkHighGain3 + + + Input 3 + + + + + chkHighGain4 + + + Input 4 + + + + + + + layout54 + + + + 510 + 310 + 160 + 56 + + + + + unnamed + + + + chkSPDIFTransparent + + + S/PDIF Transp + + + + + chkMIDITru + + + &MIDI Tru + + + Alt+M + + + + + + + layout3 + + + + 11 + 11 + 762 + 290 + + + + + unnamed + + + + tabWidget4 + + + + tab + + + Out&1 + + + + unnamed + + + + groupOut14_2 + + + Input Mix + + + + sldIN3Out1 + + + + 81 + 25 + 29 + 175 + + + + 0 + + + 32767 + + + 10000 + + + 1000 + + + Vertical + + + Above + + + 10000 + + + + + sldSPDIF2Out1 + + + + 186 + 25 + 29 + 175 + + + + 0 + + + 32767 + + + 10000 + + + 1000 + + + Vertical + + + Below + + + 10000 + + + + + txtOut14In34_2 + + + + 151 + 206 + 64 + 19 + + + + SPDIF + + + AlignCenter + + + + + txtOut14In34 + + + + 81 + 206 + 64 + 19 + + + + IN3/4 + + + AlignCenter + + + + + sldSPDIF1Out1 + + + + 151 + 25 + 29 + 175 + + + + 0 + + + 32767 + + + 10000 + + + 1000 + + + Vertical + + + Above + + + 10000 + + + + + sldIN4Out1 + + + + 116 + 25 + 29 + 175 + + + + 0 + + + 32767 + + + 10000 + + + 1000 + + + Vertical + + + Below + + + 10000 + + + + + sldIN1Out1 + + + + 11 + 25 + 29 + 175 + + + + 0 + + + 32767 + + + 10000 + + + 1000 + + + Vertical + + + Above + + + 10000 + + + + + sldIN2Out1 + + + + 46 + 25 + 29 + 175 + + + + 0 + + + 32767 + + + 10000 + + + 1000 + + + Vertical + + + Below + + + 10000 + + + + + txtOut14In12 + + + + 11 + 206 + 64 + 19 + + + + IN1/2 + + + AlignCenter + + + + + + groupOut14_3 + + + DAW Return Channel Mix + + + + unnamed + + + + txtOut14PC78 + + + 4 + + + AlignCenter + + + + + txtOut14PC56 + + + 3 + + + AlignCenter + + + + + txtOut14PC34 + + + 2 + + + AlignCenter + + + + + txtOut14PC12 + + + 1 + + + AlignCenter + + + + + txtOut14PC12_2 + + + 5 + + + AlignCenter + + + + + txtOut14PC34_2 + + + 6 + + + AlignCenter + + + + + txtOut14PC56_2 + + + 7 + + + AlignCenter + + + + + txtOut14PC78_2 + + + 8 + + + AlignCenter + + + + + sldPC2Out1 + + + 0 + + + 32767 + + + 10000 + + + 1000 + + + Vertical + + + Both + + + 10000 + + + + + sldPC7Out1 + + + 0 + + + 32767 + + + 10000 + + + 1000 + + + Vertical + + + Both + + + 10000 + + + + + sldPC5Out1 + + + 0 + + + 32767 + + + 10000 + + + 1000 + + + Vertical + + + Both + + + 10000 + + + + + sldPC3Out1 + + + 0 + + + 32767 + + + 10000 + + + 1000 + + + Vertical + + + Both + + + 10000 + + + + + sldPC1Out1 + + + 0 + + + 32767 + + + 10000 + + + 1000 + + + Vertical + + + Both + + + 10000 + + + + + sldPC6Out1 + + + 0 + + + 32767 + + + 10000 + + + 1000 + + + Vertical + + + Both + + + 10000 + + + + + sldPC8Out1 + + + 0 + + + 32767 + + + 10000 + + + 1000 + + + Vertical + + + Both + + + 10000 + + + + + sldPC4Out1 + + + 0 + + + 32767 + + + 10000 + + + 1000 + + + Vertical + + + Both + + + 10000 + + + + + + + + + tab + + + Out&2 + + + + unnamed + + + + groupOut24_2 + + + Input Mix + + + + unnamed + + + + txtOut24In12 + + + IN1/2 + + + AlignCenter + + + + + sldIN3Out2 + + + 0 + + + 32767 + + + 10000 + + + 1000 + + + Vertical + + + Above + + + 10000 + + + + + sldSPDIF2Out2 + + + 0 + + + 32767 + + + 10000 + + + 1000 + + + Vertical + + + Below + + + 10000 + + + + + txtOut24In34_2 + + + SPDIF + + + AlignCenter + + + + + txtOut24In34 + + + IN3/4 + + + AlignCenter + + + + + sldSPDIF1Out2 + + + 0 + + + 32767 + + + 10000 + + + 1000 + + + Vertical + + + Above + + + 10000 + + + + + sldIN4Out2 + + + 0 + + + 32767 + + + 10000 + + + 1000 + + + Vertical + + + Below + + + 10000 + + + + + sldIN1Out2 + + + 0 + + + 32767 + + + 10000 + + + 1000 + + + Vertical + + + Above + + + 10000 + + + + + sldIN2Out2 + + + 0 + + + 32767 + + + 10000 + + + 1000 + + + Vertical + + + Below + + + 10000 + + + + + + + groupOut24_3 + + + DAW Return Channel Mix + + + + unnamed + + + + txtOut24PC78 + + + 4 + + + AlignCenter + + + + + txtOut24PC56 + + + 3 + + + AlignCenter + + + + + txtOut24PC34 + + + 2 + + + AlignCenter + + + + + txtOut24PC12 + + + 1 + + + AlignCenter + + + + + txtOut24PC12_2 + + + 5 + + + AlignCenter + + + + + txtOut24PC34_2 + + + 6 + + + AlignCenter + + + + + txtOut24PC56_2 + + + 7 + + + AlignCenter + + + + + txtOut24PC78_2 + + + 8 + + + AlignCenter + + + + + sldPC2Out2 + + + 0 + + + 32767 + + + 10000 + + + 1000 + + + Vertical + + + Both + + + 10000 + + + + + sldPC7Out2 + + + 0 + + + 32767 + + + 10000 + + + 1000 + + + Vertical + + + Both + + + 10000 + + + + + sldPC5Out2 + + + 0 + + + 32767 + + + 10000 + + + 1000 + + + Vertical + + + Both + + + 10000 + + + + + sldPC3Out2 + + + 0 + + + 32767 + + + 10000 + + + 1000 + + + Vertical + + + Both + + + 10000 + + + + + sldPC1Out2 + + + 0 + + + 32767 + + + 10000 + + + 1000 + + + Vertical + + + Both + + + 10000 + + + + + sldPC6Out2 + + + 0 + + + 32767 + + + 10000 + + + 1000 + + + Vertical + + + Both + + + 10000 + + + + + sldPC8Out2 + + + 0 + + + 32767 + + + 10000 + + + 1000 + + + Vertical + + + Both + + + 10000 + + + + + sldPC4Out2 + + + 0 + + + 32767 + + + 10000 + + + 1000 + + + Vertical + + + Both + + + 10000 + + + + + + + + + tab + + + Out&3 + + + + unnamed + + + + groupOut34_2 + + + Input Mix + + + + unnamed + + + + txtOut34In12 + + + IN1/2 + + + AlignCenter + + + + + sldIN3Out3 + + + 0 + + + 32767 + + + 10000 + + + 1000 + + + Vertical + + + Above + + + 10000 + + + + + sldSPDIF2Out3 + + + 0 + + + 32767 + + + 10000 + + + 1000 + + + Vertical + + + Below + + + 10000 + + + + + txtOut34In34_2 + + + SPDIF + + + AlignCenter + + + + + txtOut34In34 + + + IN3/4 + + + AlignCenter + + + + + sldSPDIF1Out3 + + + 0 + + + 32767 + + + 10000 + + + 1000 + + + Vertical + + + Above + + + 10000 + + + + + sldIN4Out3 + + + 0 + + + 32767 + + + 10000 + + + 1000 + + + Vertical + + + Below + + + 10000 + + + + + sldIN1Out3 + + + 0 + + + 32767 + + + 10000 + + + 1000 + + + Vertical + + + Above + + + 10000 + + + + + sldIN2Out3 + + + 0 + + + 32767 + + + 10000 + + + 1000 + + + Vertical + + + Below + + + 10000 + + + + + + + groupOut34_3 + + + DAW Return Channel Mix + + + + unnamed + + + + txtOut34PC78 + + + 4 + + + AlignCenter + + + + + txtOut34PC56 + + + 3 + + + AlignCenter + + + + + txtOut34PC34 + + + 2 + + + AlignCenter + + + + + txtOut34PC12 + + + 1 + + + AlignCenter + + + + + txtOut34PC12_2 + + + 5 + + + AlignCenter + + + + + txtOut34PC34_2 + + + 6 + + + AlignCenter + + + + + txtOut34PC56_2 + + + 7 + + + AlignCenter + + + + + txtOut34PC78_2 + + + 8 + + + AlignCenter + + + + + sldPC2Out3 + + + 0 + + + 32767 + + + 10000 + + + 1000 + + + Vertical + + + Both + + + 10000 + + + + + sldPC7Out3 + + + 0 + + + 32767 + + + 10000 + + + 1000 + + + Vertical + + + Both + + + 10000 + + + + + sldPC5Out3 + + + 0 + + + 32767 + + + 10000 + + + 1000 + + + Vertical + + + Both + + + 10000 + + + + + sldPC3Out3 + + + 0 + + + 32767 + + + 10000 + + + 1000 + + + Vertical + + + Both + + + 10000 + + + + + sldPC1Out3 + + + 0 + + + 32767 + + + 10000 + + + 1000 + + + Vertical + + + Both + + + 10000 + + + + + sldPC6Out3 + + + 0 + + + 32767 + + + 10000 + + + 1000 + + + Vertical + + + Both + + + 10000 + + + + + sldPC8Out3 + + + 0 + + + 32767 + + + 10000 + + + 1000 + + + Vertical + + + Both + + + 10000 + + + + + sldPC4Out3 + + + 0 + + + 32767 + + + 10000 + + + 1000 + + + Vertical + + + Both + + + 10000 + + + + + + + + + tab + + + Out&4 + + + + unnamed + + + + groupOut44_2 + + + Input Mix + + + + unnamed + + + + txtOut44In12 + + + IN1/2 + + + AlignCenter + + + + + sldIN3Out4 + + + 0 + + + 32767 + + + 10000 + + + 1000 + + + Vertical + + + Above + + + 10000 + + + + + sldSPDIF2Out4 + + + 0 + + + 32767 + + + 10000 + + + 1000 + + + Vertical + + + Below + + + 10000 + + + + + txtOut44In34_2 + + + SPDIF + + + AlignCenter + + + + + txtOut44In34 + + + IN3/4 + + + AlignCenter + + + + + sldSPDIF1Out4 + + + 0 + + + 32767 + + + 10000 + + + 1000 + + + Vertical + + + Above + + + 10000 + + + + + sldIN4Out4 + + + 0 + + + 32767 + + + 10000 + + + 1000 + + + Vertical + + + Below + + + 10000 + + + + + sldIN2Out4 + + + 0 + + + 32767 + + + 10000 + + + 1000 + + + Vertical + + + Below + + + 10000 + + + + + sldIN1Out4 + + + 0 + + + 32767 + + + 10000 + + + 1000 + + + Vertical + + + Above + + + 10000 + + + + + + + groupOut44_3 + + + DAW Return Channel Mix + + + + unnamed + + + + txtOut44PC78 + + + 4 + + + AlignCenter + + + + + txtOut44PC56 + + + 3 + + + AlignCenter + + + + + txtOut44PC34 + + + 2 + + + AlignCenter + + + + + txtOut44PC12 + + + 1 + + + AlignCenter + + + + + txtOut44PC12_2 + + + 5 + + + AlignCenter + + + + + txtOut44PC34_2 + + + 6 + + + AlignCenter + + + + + txtOut44PC56_2 + + + 7 + + + AlignCenter + + + + + txtOut44PC78_2 + + + 8 + + + AlignCenter + + + + + sldPC2Out4 + + + 0 + + + 32767 + + + 10000 + + + 1000 + + + Vertical + + + Both + + + 10000 + + + + + sldPC7Out4 + + + 0 + + + 32767 + + + 10000 + + + 1000 + + + Vertical + + + Both + + + 10000 + + + + + sldPC5Out4 + + + 0 + + + 32767 + + + 10000 + + + 1000 + + + Vertical + + + Both + + + 10000 + + + + + sldPC3Out4 + + + 0 + + + 32767 + + + 10000 + + + 1000 + + + Vertical + + + Both + + + 10000 + + + + + sldPC1Out4 + + + 0 + + + 32767 + + + 10000 + + + 1000 + + + Vertical + + + Both + + + 10000 + + + + + sldPC6Out4 + + + 0 + + + 32767 + + + 10000 + + + 1000 + + + Vertical + + + Both + + + 10000 + + + + + sldPC8Out4 + + + 0 + + + 32767 + + + 10000 + + + 1000 + + + Vertical + + + Both + + + 10000 + + + + + sldPC4Out4 + + + 0 + + + 32767 + + + 10000 + + + 1000 + + + Vertical + + + Both + + + 10000 + + + + + + + + + + groupBox11 + + + Output Level + + + + txtOut14In12_2_2_2 + + + + 110 + 190 + 40 + 20 + + + + 5/6 + + + AlignCenter + + + + + txtOut14In12_2_2 + + + + 60 + 190 + 40 + 20 + + + + 3/4 + + + AlignCenter + + + + + txtOut14In12_2 + + + + 10 + 190 + 40 + 20 + + + + 1/2 + + + AlignCenter + + + + + sldOut12Level + + + + 10 + 30 + 34 + 150 + + + + 0 + + + 255 + + + 1 + + + 4 + + + Vertical + + + Both + + + 32 + + + + + sldOut34Level + + + + 60 + 30 + 34 + 150 + + + + 0 + + + 255 + + + 1 + + + 4 + + + Vertical + + + Both + + + 32 + + + + + sldOut56Level + + + + 110 + 30 + 34 + 150 + + + + 0 + + + 255 + + + 1 + + + 4 + + + Vertical + + + Both + + + 32 + + + + + chkOut56HwCtrl + + + + 120 + 240 + 20 + 21 + + + + + + + + + chkOut34HwCtrl + + + + 70 + 240 + 20 + 21 + + + + + + + + + chkOut12HwCtrl + + + + 20 + 240 + 20 + 21 + + + + + + + + + textLabel1 + + + + 10 + 219 + 140 + 21 + + + + Ignore slider + + + AlignCenter + + + + + + + + btnSaveSettings + + + + 680 + 330 + 90 + 31 + + + + Save + + + Save settings to device + + + + + updateMatrixVolume(int) + updateSelector(int) + init() + + + Index: branches/libffado-2.0/support/mixer/mixer_saffireprolarge.ui =================================================================== --- branches/libffado-2.0/support/mixer/mixer_saffireprolarge.ui (revision 1216) +++ branches/libffado-2.0/support/mixer/mixer_saffireprolarge.ui (revision 1216) @@ -0,0 +1,4431 @@ + +SaffireProMixerLargeUI +Copyright (C) 2005-2008 by Pieter Palmers + + This file is part of FFADO + FFADO = Free Firewire (pro-)audio drivers for linux + + FFADO is based upon FreeBoB. + + 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 + (at your option) version 3 of the License. + + 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. + + + + SaffireProMixerUI + + + + 0 + 0 + 840 + 637 + + + + Focusrite Saffire Pro (10/26) Mixer + + + + unnamed + + + + layout22 + + + + unnamed + + + + groupBox1 + + + GroupBoxPanel + + + Sunken + + + Input Mix + + + Vertical + + + + unnamed + + + + tabInputMix + + + + analog + + + A&nalog + + + + unnamed + + + + sldIMixAnalog10R + + + 0 + + + 32767 + + + 10000 + + + 1000 + + + Vertical + + + Below + + + 10000 + + + + + txtIMixAnalog1R + + + R + + + AlignCenter + + + + + sldIMixAnalog5R + + + 0 + + + 32767 + + + 10000 + + + 1000 + + + Vertical + + + Below + + + 10000 + + + + + txtIMixAnalog3 + + + 3 + + + AlignCenter + + + + + sldIMixAnalog10L + + + 0 + + + 32767 + + + 10000 + + + 1000 + + + Vertical + + + Above + + + 10000 + + + + + txtIMixAnalog2 + + + 2 + + + AlignCenter + + + + + sldIMixAnalog5L + + + 0 + + + 32767 + + + 10000 + + + 1000 + + + Vertical + + + Above + + + 10000 + + + + + sldIMixAnalog7L + + + 0 + + + 32767 + + + 10000 + + + 1000 + + + Vertical + + + Above + + + 10000 + + + + + sldIMixAnalog9R + + + 0 + + + 32767 + + + 10000 + + + 1000 + + + Vertical + + + Below + + + 10000 + + + + + sldIMixAnalog3L + + + 0 + + + 32767 + + + 10000 + + + 1000 + + + Vertical + + + Above + + + 10000 + + + + + sldIMixAnalog1R + + + 0 + + + 32767 + + + 10000 + + + 1000 + + + Vertical + + + Below + + + 10000 + + + + + txtIMixAnalog10R + + + R + + + AlignCenter + + + + + txtIMixAnalog2L + + + L + + + AlignCenter + + + + + txtIMixAnalog1L + + + L + + + AlignCenter + + + + + txtIMixAnalog8R + + + R + + + AlignCenter + + + + + sldIMixAnalog6L + + + 0 + + + 32767 + + + 10000 + + + 1000 + + + Vertical + + + Above + + + 10000 + + + + + txtIMixAnalog6R + + + R + + + AlignCenter + + + + + sldIMixAnalog3R + + + 0 + + + 32767 + + + 10000 + + + 1000 + + + Vertical + + + Below + + + 10000 + + + + + txtIMixAnalog9L + + + L + + + AlignCenter + + + + + txtIMixAnalog5L + + + L + + + AlignCenter + + + + + sldIMixAnalog8R + + + 0 + + + 32767 + + + 10000 + + + 1000 + + + Vertical + + + Below + + + 10000 + + + + + txtIMixAnalog6 + + + 6 + + + AlignCenter + + + + + txtIMixAnalog10L + + + L + + + AlignCenter + + + + + txtIMixAnalog7R + + + R + + + AlignCenter + + + + + txtIMixAnalog3R + + + R + + + AlignCenter + + + + + sldIMixAnalog4L + + + 0 + + + 32767 + + + 10000 + + + 1000 + + + Vertical + + + Above + + + 10000 + + + + + sldIMixAnalog7R + + + 0 + + + 32767 + + + 10000 + + + 1000 + + + Vertical + + + Below + + + 10000 + + + + + sldIMixAnalog2L + + + 0 + + + 32767 + + + 10000 + + + 1000 + + + Vertical + + + Above + + + 10000 + + + + + txtIMixAnalog4 + + + 4 + + + AlignCenter + + + + + txtIMixAnalog9R + + + R + + + AlignCenter + + + + + txtIMixAnalog4R + + + R + + + AlignCenter + + + + + txtIMixAnalog7 + + + 7 + + + AlignCenter + + + + + txtIMixAnalog6L + + + L + + + AlignCenter + + + + + sldIMixAnalog8L + + + 0 + + + 32767 + + + 10000 + + + 1000 + + + Vertical + + + Above + + + 10000 + + + + + sldIMixAnalog4R + + + 0 + + + 32767 + + + 10000 + + + 1000 + + + Vertical + + + Below + + + 10000 + + + + + txtIMixAnalog3L + + + L + + + AlignCenter + + + + + sldIMixAnalog9L + + + 0 + + + 32767 + + + 10000 + + + 1000 + + + Vertical + + + Above + + + 10000 + + + + + sldIMixAnalog6R + + + 0 + + + 32767 + + + 10000 + + + 1000 + + + Vertical + + + Below + + + 10000 + + + + + txtIMixAnalog4L + + + L + + + AlignCenter + + + + + txtIMixAnalog8 + + + 8 + + + AlignCenter + + + + + txtIMixAnalog10 + + + 10 + + + AlignCenter + + + + + txtIMixAnalog7L + + + L + + + AlignCenter + + + + + txtIMixAnalog5R + + + R + + + AlignCenter + + + + + sldIMixAnalog2R + + + 0 + + + 32767 + + + 10000 + + + 1000 + + + Vertical + + + Below + + + 10000 + + + + + txtIMixAnalog5 + + + 5 + + + AlignCenter + + + + + txtIMixAnalog8L + + + L + + + AlignCenter + + + + + txtIMixAnalog9 + + + 9 + + + AlignCenter + + + + + txtIMixAnalog2R + + + R + + + AlignCenter + + + + + sldIMixAnalog1L + + + 0 + + + 32767 + + + 10000 + + + 1000 + + + Vertical + + + Above + + + 10000 + + + + + txtIMixAnalog1 + + + 1 + + + AlignCenter + + + + + + + adat1 + + + &ADAT1 + + + + unnamed + + + + sldIMixADAT12L + + + 0 + + + 32767 + + + 10000 + + + 1000 + + + Vertical + + + Above + + + 10000 + + + + + txtIMixADAT12 + + + 2 + + + AlignCenter + + + + + sldIMixADAT18L + + + 0 + + + 32767 + + + 10000 + + + 1000 + + + Vertical + + + Above + + + 10000 + + + + + txtIMixADAT18L + + + L + + + AlignCenter + + + + + txtIMixADAT15R + + + R + + + AlignCenter + + + + + txtIMixADAT14L + + + L + + + AlignCenter + + + + + sldIMixADAT18R + + + 0 + + + 32767 + + + 10000 + + + 1000 + + + Vertical + + + Below + + + 10000 + + + + + txtIMixADAT17R + + + R + + + AlignCenter + + + + + txtIMixADAT18R + + + R + + + AlignCenter + + + + + txtIMixADAT17 + + + 7 + + + AlignCenter + + + + + txtIMixADAT11L + + + L + + + AlignCenter + + + + + txtIMixADAT16 + + + 6 + + + AlignCenter + + + + + txtIMixADAT14 + + + 4 + + + AlignCenter + + + + + txtIMixADAT13L + + + L + + + AlignCenter + + + + + txtIMixADAT16R + + + R + + + AlignCenter + + + + + txtIMixADAT15 + + + 5 + + + AlignCenter + + + + + sldIMixADAT13R + + + 0 + + + 32767 + + + 10000 + + + 1000 + + + Vertical + + + Below + + + 10000 + + + + + sldIMixADAT17R + + + 0 + + + 32767 + + + 10000 + + + 1000 + + + Vertical + + + Below + + + 10000 + + + + + sldIMixADAT17L + + + 0 + + + 32767 + + + 10000 + + + 1000 + + + Vertical + + + Above + + + 10000 + + + + + sldIMixADAT15L + + + 0 + + + 32767 + + + 10000 + + + 1000 + + + Vertical + + + Above + + + 10000 + + + + + sldIMixADAT12R + + + 0 + + + 32767 + + + 10000 + + + 1000 + + + Vertical + + + Below + + + 10000 + + + + + txtIMixADAT12R + + + R + + + AlignCenter + + + + + sldIMixADAT15R + + + 0 + + + 32767 + + + 10000 + + + 1000 + + + Vertical + + + Below + + + 10000 + + + + + txtIMixADAT14R + + + R + + + AlignCenter + + + + + sldIMixADAT14L + + + 0 + + + 32767 + + + 10000 + + + 1000 + + + Vertical + + + Above + + + 10000 + + + + + txtIMixADAT13R + + + R + + + AlignCenter + + + + + txtIMixADAT18 + + + 8 + + + AlignCenter + + + + + sldIMixADAT13L + + + 0 + + + 32767 + + + 10000 + + + 1000 + + + Vertical + + + Above + + + 10000 + + + + + sldIMixADAT11R + + + 0 + + + 32767 + + + 10000 + + + 1000 + + + Vertical + + + Below + + + 10000 + + + + + txtIMixADAT16L + + + L + + + AlignCenter + + + + + sldIMixADAT14R + + + 0 + + + 32767 + + + 10000 + + + 1000 + + + Vertical + + + Below + + + 10000 + + + + + txtIMixADAT12L + + + L + + + AlignCenter + + + + + txtIMixADAT11R + + + R + + + AlignCenter + + + + + sldIMixADAT16L + + + 0 + + + 32767 + + + 10000 + + + 1000 + + + Vertical + + + Above + + + 10000 + + + + + txtIMixADAT15L + + + L + + + AlignCenter + + + + + sldIMixADAT11L + + + 0 + + + 32767 + + + 10000 + + + 1000 + + + Vertical + + + Above + + + 10000 + + + + + txtIMixADAT11 + + + 1 + + + AlignCenter + + + + + txtIMixADAT17L + + + L + + + AlignCenter + + + + + txtIMixADAT13 + + + 3 + + + AlignCenter + + + + + sldIMixADAT16R + + + 0 + + + 32767 + + + 10000 + + + 1000 + + + Vertical + + + Below + + + 10000 + + + + + + + adat2 + + + ADAT2 + + + + unnamed + + + + sldIMixADAT26L + + + 0 + + + 32767 + + + 10000 + + + 1000 + + + Vertical + + + Above + + + 10000 + + + + + sldIMixADAT24R + + + 0 + + + 32767 + + + 10000 + + + 1000 + + + Vertical + + + Below + + + 10000 + + + + + txtIMixADAT21R + + + R + + + AlignCenter + + + + + sldIMixADAT28R + + + 0 + + + 32767 + + + 10000 + + + 1000 + + + Vertical + + + Below + + + 10000 + + + + + txtIMixADAT25R + + + R + + + AlignCenter + + + + + txtIMixADAT23 + + + 3 + + + AlignCenter + + + + + txtIMixADAT23L + + + L + + + AlignCenter + + + + + txtIMixADAT27 + + + 7 + + + AlignCenter + + + + + txtIMixADAT27L + + + L + + + AlignCenter + + + + + sldIMixADAT21L + + + + 0 + 100 + + + + 0 + + + 32767 + + + 10000 + + + 1000 + + + Vertical + + + Above + + + 10000 + + + + + sldIMixADAT25L + + + 0 + + + 32767 + + + 10000 + + + 1000 + + + Vertical + + + Above + + + 10000 + + + + + sldIMixADAT23R + + + 0 + + + 32767 + + + 10000 + + + 1000 + + + Vertical + + + Below + + + 10000 + + + + + sldIMixADAT27R + + + 0 + + + 32767 + + + 10000 + + + 1000 + + + Vertical + + + Below + + + 10000 + + + + + txtIMixADAT24R + + + R + + + AlignCenter + + + + + txtIMixADAT28R + + + R + + + AlignCenter + + + + + txtIMixADAT22 + + + 2 + + + AlignCenter + + + + + txtIMixADAT22L + + + L + + + AlignCenter + + + + + txtIMixADAT21L + + + L + + + AlignCenter + + + + + txtIMixADAT26 + + + 6 + + + AlignCenter + + + + + txtIMixADAT26L + + + L + + + AlignCenter + + + + + sldIMixADAT24L + + + 0 + + + 32767 + + + 10000 + + + 1000 + + + Vertical + + + Above + + + 10000 + + + + + sldIMixADAT22R + + + 0 + + + 32767 + + + 10000 + + + 1000 + + + Vertical + + + Below + + + 10000 + + + + + sldIMixADAT28L + + + 0 + + + 32767 + + + 10000 + + + 1000 + + + Vertical + + + Above + + + 10000 + + + + + sldIMixADAT26R + + + 0 + + + 32767 + + + 10000 + + + 1000 + + + Vertical + + + Below + + + 10000 + + + + + txtIMixADAT23R + + + R + + + AlignCenter + + + + + txtIMixADAT27R + + + R + + + AlignCenter + + + + + txtIMixADAT21 + + + 1 + + + AlignCenter + + + + + txtIMixADAT25 + + + 5 + + + AlignCenter + + + + + txtIMixADAT25L + + + L + + + AlignCenter + + + + + sldIMixADAT23L + + + 0 + + + 32767 + + + 10000 + + + 1000 + + + Vertical + + + Above + + + 10000 + + + + + sldIMixADAT21R + + + 0 + + + 32767 + + + 10000 + + + 1000 + + + Vertical + + + Below + + + 10000 + + + + + sldIMixADAT27L + + + 0 + + + 32767 + + + 10000 + + + 1000 + + + Vertical + + + Above + + + 10000 + + + + + sldIMixADAT25R + + + 0 + + + 32767 + + + 10000 + + + 1000 + + + Vertical + + + Below + + + 10000 + + + + + txtIMixADAT22R + + + R + + + AlignCenter + + + + + txtIMixADAT26R + + + R + + + AlignCenter + + + + + txtIMixADAT24 + + + 4 + + + AlignCenter + + + + + txtIMixADAT24L + + + L + + + AlignCenter + + + + + txtIMixADAT28 + + + 8 + + + AlignCenter + + + + + txtIMixADAT28L + + + L + + + AlignCenter + + + + + sldIMixADAT22L + + + 0 + + + 32767 + + + 10000 + + + 1000 + + + Vertical + + + Above + + + 10000 + + + + + + + + + + layout21 + + + + unnamed + + + + groupBox14 + + + Output Mix + + + + unnamed + + + + tabWidget14 + + + + tab + + + Out1/&2 + + + + unnamed + + + + layout58 + + + + unnamed + + + + chkMute12 + + + Mute + + + + + + + + chkMonitor2 + + + CH2 Direct Mon + + + + + + + + chkDim12 + + + &Level Dim + + + Alt+L + + + + + chkMonitor1 + + + CH1 Direct Mon + + + + + + + + chkHwCtrl12 + + + Front dial control + + + + + + + + chkPad12 + + + &Monitor Pad + + + Alt+M + + + + + + + layout55 + + + + unnamed + + + + txtOmixO1 + + + Out1 + + + AlignCenter + + + + + txtOMixPC1O1 + + + PC1 + + + AlignCenter + + + + + sldOMixPC1O1 + + + 0 + + + 32767 + + + 10000 + + + 1000 + + + Vertical + + + Both + + + 10000 + + + + + sldOMixIMixO1 + + + 0 + + + 32767 + + + 10000 + + + 1000 + + + Vertical + + + Both + + + 10000 + + + + + txtOMixIMixO1 + + + IMixL + + + AlignCenter + + + + + + + layout56 + + + + unnamed + + + + txtOMixIMixO2 + + + IMixL + + + AlignCenter + + + + + txtOmixO2 + + + Out2 + + + AlignCenter + + + + + txtOMixPC2O2 + + + PC2 + + + AlignCenter + + + + + sldOMixPC2O2 + + + 0 + + + 32767 + + + 10000 + + + 1000 + + + Vertical + + + Both + + + 10000 + + + + + sldOMixIMixO2 + + + 0 + + + 32767 + + + 10000 + + + 1000 + + + Vertical + + + Both + + + 10000 + + + + + + + groupLevel12 + + + Level + + + AlignHCenter + + + + unnamed + + + + sldOut12Level + + + + 0 + 80 + + + + 0 + + + 255 + + + 2 + + + 16 + + + Vertical + + + Both + + + 32 + + + + + + + spacer3 + + + Horizontal + + + Expanding + + + + 71 + 31 + + + + + + + + TabPage + + + Out3/&4 + + + + unnamed + + + + layout62 + + + + unnamed + + + + chkMonitor3 + + + CH3 Direct Mon + + + + + + + + chkHwCtrl34 + + + Front dial control + + + + + chkMonitor4 + + + CH4 Direct Mon + + + + + + + + chkMute34 + + + Mute + + + + + chkPad34 + + + Monitor Pad + + + + + chkDim34 + + + Level Dim + + + + + + + layout60 + + + + unnamed + + + + txtOMixIMixO3 + + + IMixL + + + AlignCenter + + + + + sldOMixPC1O3 + + + 0 + + + 32767 + + + 10000 + + + 1000 + + + Vertical + + + Both + + + 10000 + + + + + txtOmixO3 + + + Out3 + + + AlignCenter + + + + + txtOMixPC3O3 + + + PC3 + + + AlignCenter + + + + + txtOMixPC1O3 + + + PC1 + + + AlignCenter + + + + + sldOMixPC3O3 + + + 0 + + + 32767 + + + 10000 + + + 1000 + + + Vertical + + + Both + + + 10000 + + + + + sldOMixIMixO3 + + + 0 + + + 32767 + + + 10000 + + + 1000 + + + Vertical + + + Both + + + 10000 + + + + + + + layout38 + + + + unnamed + + + + sldOMixPC4O4 + + + 0 + + + 32767 + + + 10000 + + + 1000 + + + Vertical + + + Both + + + 10000 + + + + + txtOMixPC4O4 + + + PC4 + + + AlignCenter + + + + + sldOMixIMixO4 + + + 0 + + + 32767 + + + 10000 + + + 1000 + + + Vertical + + + Both + + + 10000 + + + + + txtOMixIMixO4 + + + IMixL + + + AlignCenter + + + + + sldOMixPC2O4 + + + 0 + + + 32767 + + + 10000 + + + 1000 + + + Vertical + + + Both + + + 10000 + + + + + txtOMixPC2O4 + + + PC2 + + + AlignCenter + + + + + txtOmixO4 + + + Out4 + + + AlignCenter + + + + + + + groupLevel34 + + + Level + + + AlignHCenter + + + + unnamed + + + + sldOut34Level + + + 0 + + + 255 + + + 2 + + + 16 + + + Vertical + + + Both + + + 32 + + + + + + + spacer4 + + + Horizontal + + + Expanding + + + + 101 + 21 + + + + + + + + TabPage + + + Out5/&6 + + + + unnamed + + + + layout63 + + + + unnamed + + + + chkMonitor6 + + + CH6 Direct Mon + + + + + + + + chkMonitor5 + + + CH5 Direct Mon + + + + + + + + chkDim56 + + + Level Dim + + + + + + + + chkHwCtrl56 + + + Front dial control + + + + + + + + chkPad56 + + + &Monitor Pad + + + Alt+M + + + + + chkMute56 + + + Mute + + + + + + + layout65 + + + + unnamed + + + + txtOMixPC1O5 + + + PC1 + + + AlignCenter + + + + + txtOMixIMixO5 + + + IMixL + + + AlignCenter + + + + + sldOMixPC1O5 + + + 0 + + + 32767 + + + 10000 + + + 1000 + + + Vertical + + + Both + + + 10000 + + + + + txtOMixPC5O5 + + + PC5 + + + AlignCenter + + + + + sldOMixPC5O5 + + + 0 + + + 32767 + + + 10000 + + + 1000 + + + Vertical + + + Both + + + 10000 + + + + + sldOMixIMixO5 + + + 0 + + + 32767 + + + 10000 + + + 1000 + + + Vertical + + + Both + + + 10000 + + + + + txtOmixO5 + + + Out5 + + + AlignCenter + + + + + + + layout64 + + + + unnamed + + + + txtOMixPC6O6 + + + PC6 + + + AlignCenter + + + + + sldOMixPC2O6 + + + 0 + + + 32767 + + + 10000 + + + 1000 + + + Vertical + + + Both + + + 10000 + + + + + txtOMixIMixO6 + + + IMixL + + + AlignCenter + + + + + txtOMixPC2O6 + + + PC2 + + + AlignCenter + + + + + txtOmixO6 + + + Out6 + + + AlignCenter + + + + + sldOMixIMixO6 + + + 0 + + + 32767 + + + 10000 + + + 1000 + + + Vertical + + + Both + + + 10000 + + + + + sldOMixPC6O6 + + + 0 + + + 32767 + + + 10000 + + + 1000 + + + Vertical + + + Both + + + 10000 + + + + + + + groupLevel56 + + + Level + + + AlignHCenter + + + + unnamed + + + + sldOut56Level + + + 0 + + + 255 + + + 2 + + + 16 + + + Vertical + + + Both + + + 32 + + + + + + + spacer5 + + + Horizontal + + + Expanding + + + + 61 + 21 + + + + + + + + TabPage + + + Out7/&8 + + + + unnamed + + + + layout67 + + + + unnamed + + + + chkMonitor8 + + + CH8 Direct Mon + + + + + + + + chkDim78 + + + Level Dim + + + + + + + + chkMute78 + + + Mute + + + + + chkPad78 + + + &Monitor Pad + + + Alt+M + + + + + chkMonitor7 + + + CH7 Direct Mon + + + + + + + + chkHwCtrl78 + + + Front dial control + + + + + + + + + + layout69 + + + + unnamed + + + + txtOMixPC1O7 + + + PC1 + + + AlignCenter + + + + + sldOMixIMixO7 + + + 0 + + + 32767 + + + 10000 + + + 1000 + + + Vertical + + + Both + + + 10000 + + + + + txtOMixPC7O7 + + + PC7 + + + AlignCenter + + + + + sldOMixPC7O7 + + + 0 + + + 32767 + + + 10000 + + + 1000 + + + Vertical + + + Both + + + 10000 + + + + + txtOmixO7 + + + Out7 + + + AlignCenter + + + + + txtOMixIMixO7 + + + IMixL + + + AlignCenter + + + + + sldOMixPC1O7 + + + 0 + + + 32767 + + + 10000 + + + 1000 + + + Vertical + + + Both + + + 10000 + + + + + + + layout68 + + + + unnamed + + + + txtOMixIMixO8 + + + IMixL + + + AlignCenter + + + + + txtOmixO8 + + + Out8 + + + AlignCenter + + + + + sldOMixIMixO8 + + + 0 + + + 32767 + + + 10000 + + + 1000 + + + Vertical + + + Both + + + 10000 + + + + + sldOMixPC8O8 + + + 0 + + + 32767 + + + 10000 + + + 1000 + + + Vertical + + + Both + + + 10000 + + + + + txtOMixPC2O8 + + + PC2 + + + AlignCenter + + + + + txtOMixPC8O8 + + + PC8 + + + AlignCenter + + + + + sldOMixPC2O8 + + + 0 + + + 32767 + + + 10000 + + + 1000 + + + Vertical + + + Both + + + 10000 + + + + + + + groupLevel78 + + + Level + + + AlignHCenter + + + + unnamed + + + + sldOut78Level + + + 0 + + + 255 + + + 2 + + + 16 + + + Vertical + + + Both + + + 32 + + + + + + + spacer6 + + + Horizontal + + + Expanding + + + + 81 + 21 + + + + + + + + TabPage + + + Out9/&10 + + + + unnamed + + + + layout72 + + + + unnamed + + + + sldOMixIMixO9 + + + 0 + + + 32767 + + + 10000 + + + 1000 + + + Vertical + + + Both + + + 10000 + + + + + txtOMixPC1O9 + + + PC1 + + + AlignCenter + + + + + sldOMixPC9O9 + + + 0 + + + 32767 + + + 10000 + + + 1000 + + + Vertical + + + Both + + + 10000 + + + + + txtOMixIMixO9 + + + IMixL + + + AlignCenter + + + + + txtOmixO9 + + + Out9 + + + AlignCenter + + + + + txtOMixPC9O9 + + + PC9 + + + AlignCenter + + + + + sldOMixPC1O9 + + + 0 + + + 32767 + + + 10000 + + + 1000 + + + Vertical + + + Both + + + 10000 + + + + + + + layout71 + + + + unnamed + + + + sldOMixIMixO10 + + + 0 + + + 32767 + + + 10000 + + + 1000 + + + Vertical + + + Both + + + 10000 + + + + + txtOmixO10 + + + Out10 + + + AlignCenter + + + + + txtOMixPC2O10 + + + PC2 + + + AlignCenter + + + + + sldOMixPC10O10 + + + 0 + + + 32767 + + + 10000 + + + 1000 + + + Vertical + + + Both + + + 10000 + + + + + txtOMixPC10O10 + + + PC10 + + + AlignCenter + + + + + txtOMixIMixO10 + + + IMixL + + + AlignCenter + + + + + sldOMixPC2O10 + + + 0 + + + 32767 + + + 10000 + + + 1000 + + + Vertical + + + Both + + + 10000 + + + + + + + + + + + + groupBox21 + + + Device Control + + + + unnamed + + + + layout16 + + + + unnamed + + + + textLabel1 + + + Phantom: + + + + + chkPhantom14 + + + IN 1-4 + + + + + chkPhantom58 + + + IN &5-8 + + + Alt+5 + + + + + + + layout17 + + + + unnamed + + + + textLabel2 + + + Insert: + + + + + chkInsert1 + + + CH1 + + + + + chkInsert2 + + + CH2 + + + + + + + chkAdatDisable + + + Disable ADAT I/O + + + + + + + + chkMidiEnable + + + Enable MIDI + + + + + + + + comboStandalone + + + + + chkAC3 + + + false + + + AC&3 Passthrough + + + Alt+3 + + + + + chkMidiThru + + + &MIDI Thru + + + Alt+M + + + + + chkHighVoltage + + + &Use high voltage supply + + + Alt+U + + + + + spacer8 + + + Vertical + + + Expanding + + + + 20 + 21 + + + + + + layout20 + + + + unnamed + + + + btnSaveSettings + + + &Save Settings + + + Alt+S + + + + + btnIdentify + + + Identif&y Device + + + Alt+Y + + + + + btnReboot + + + Re&boot Device + + + Alt+B + + + + + btnRefresh + + + Refresh + + + + + + + + + + + + + + + + + + btnRefresh + clicked() + SaffireProMixerUI + updateValues() + + + + init() + updateValues() + + + Index: branches/libffado-2.0/support/mixer/mixer_saffire.ui =================================================================== --- branches/libffado-2.0/support/mixer/mixer_saffire.ui (revision 1127) +++ branches/libffado-2.0/support/mixer/mixer_saffire.ui (revision 1216) @@ -2473,22 +2473,4 @@ - - - groupBox1_3 - - - Clock Source - - - - unnamed - - - - comboClockSelect - - - - Index: branches/libffado-2.0/support/mixer/mixer_saffire_base.py =================================================================== --- branches/libffado-2.0/support/mixer/mixer_saffire_base.py (revision 1216) +++ branches/libffado-2.0/support/mixer/mixer_saffire_base.py (revision 1216) @@ -0,0 +1,139 @@ +# +# Copyright (C) 2005-2008 by Pieter Palmers +# +# This file is part of FFADO +# FFADO = Free Firewire (pro-)audio drivers for linux +# +# FFADO is based upon FreeBoB. +# +# 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 +# (at your option) version 3 of the License. +# +# 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. +# +# You should have received a copy of the GNU General Public License +# along with this program. If not, see . +# + +from qt import * + +# the class that holds all actual control code +class SaffireMixerBase(): + def __init__(self): + pass + + def updateMatrixVolume(self,a0): + sender = self.sender() + vol = 0x7FFF-a0 + print "set %s %d %d to %d" % ( + self.VolumeControls[sender][0], + self.VolumeControls[sender][1], + self.VolumeControls[sender][2], + vol) + self.hw.setMatrixMixerValue(self.VolumeControls[sender][0], + self.VolumeControls[sender][1], + self.VolumeControls[sender][2], + vol) + def updateLowResVolume(self,a0): + sender = self.sender() + vol = a0 + print "set %s to %d" % ( + self.VolumeControlsLowRes[sender][0], + vol) + self.hw.setDiscrete(self.VolumeControlsLowRes[sender][0], vol) + + def updateSelector(self,a0): + sender = self.sender() + if a0: + state = 1 + else: + state = 0 + print "set %s to %d" % ( + self.SelectorControls[sender][0], + state) + self.hw.setDiscrete(self.SelectorControls[sender][0], state) + + def triggerButton(self): + sender = self.sender() + print "trigger %s" % ( + self.TriggerButtonControls[sender][0]) + self.hw.setDiscrete(self.TriggerButtonControls[sender][0], 1) + + def saveText(self): + sender = self.sender() + textbox = self.saveTextControls[sender][0] + print "save %s" % ( + textbox.text().ascii()) + self.hw.setText(self.TextControls[textbox][0], textbox.text().ascii()) + + def initCombo(self, combo): + path = self.ComboControls[combo][0] + combo.clear() + for i in range( self.hw.enumCount(path) ): + combo.insertItem( self.hw.enumGetLabel(path, i) ) + combo.setCurrentItem( self.hw.enumSelected(path) ) + + def selectCombo(self, mode): + sender = self.sender() + path = self.ComboControls[sender][0] + self.hw.enumSelect(path, mode) + sender.setCurrentItem( self.hw.enumSelected(path) ) + + def updateValues(self): + for ctrl, info in self.VolumeControls.iteritems(): + vol = self.hw.getMatrixMixerValue(self.VolumeControls[ctrl][0], + self.VolumeControls[ctrl][1], + self.VolumeControls[ctrl][2]) + + print "%s volume is %d" % (ctrl.name() , 0x7FFF-vol) + ctrl.setValue(0x7FFF-vol) + + for ctrl, info in self.VolumeControlsLowRes.iteritems(): + vol = self.hw.getDiscrete(self.VolumeControlsLowRes[ctrl][0]) + + print "%s volume is %d" % (ctrl.name() , vol) + ctrl.setValue(vol) + + for ctrl, info in self.SelectorControls.iteritems(): + state = self.hw.getDiscrete(self.SelectorControls[ctrl][0]) + print "%s state is %d" % (ctrl.name() , state) + if state: + ctrl.setChecked(True) + else: + ctrl.setChecked(False) + + for ctrl, info in self.TriggerButtonControls.iteritems(): + pass + + for ctrl, info in self.TextControls.iteritems(): + text = self.hw.getText(self.TextControls[ctrl][0]) + print "%s text is %s" % (ctrl.name() , text) + ctrl.setText(text) + + for ctrl, info in self.ComboControls.iteritems(): + self.initCombo(ctrl) + + def initValues(self): + self.updateValues() + for ctrl, info in self.VolumeControls.iteritems(): + QObject.connect(ctrl,SIGNAL('valueChanged(int)'),self.updateMatrixVolume) + + for ctrl, info in self.VolumeControlsLowRes.iteritems(): + QObject.connect(ctrl,SIGNAL('valueChanged(int)'),self.updateLowResVolume) + + for ctrl, info in self.SelectorControls.iteritems(): + QObject.connect(ctrl,SIGNAL('stateChanged(int)'),self.updateSelector) + + for ctrl, info in self.TriggerButtonControls.iteritems(): + QObject.connect(ctrl,SIGNAL('clicked()'),self.triggerButton) + + for ctrl, info in self.saveTextControls.iteritems(): + QObject.connect(ctrl,SIGNAL('clicked()'), self.saveText) + + for ctrl, info in self.ComboControls.iteritems(): + QObject.connect(ctrl, SIGNAL('activated(int)'), self.selectCombo) Index: branches/libffado-2.0/support/mixer/SConscript =================================================================== --- branches/libffado-2.0/support/mixer/SConscript (revision 1093) +++ branches/libffado-2.0/support/mixer/SConscript (revision 1216) @@ -30,6 +30,9 @@ e = env.Clone() - e['MIXERAPPS'] = [ 'phase24', 'phase88', 'saffirepro', 'saffire', - 'saffirele', 'af2', 'bcoaudio5', 'edirolfa66', + e['MIXERAPPS'] = [ 'phase24', 'phase88', + 'saffire', + 'saffireprolarge', 'saffireprosmall', + 'saffirelelarge', 'saffirelesmall', + 'af2', 'bcoaudio5', 'edirolfa66', 'mackie_generic', 'quatafire', 'motu', 'global', 'dummy' Index: branches/libffado-2.0/support/mixer/ffadomixer.in =================================================================== --- branches/libffado-2.0/support/mixer/ffadomixer.in (revision 1187) +++ branches/libffado-2.0/support/mixer/ffadomixer.in (revision 1216) @@ -40,7 +40,7 @@ from mixer_phase88 import * from mixer_phase24 import * -from mixer_saffirepro import * from mixer_saffire import * from mixer_saffirele import * +from mixer_saffirepro import * from mixer_af2 import * from mixer_bcoaudio5 import * @@ -368,11 +368,14 @@ l = QVBoxLayout( w ) + # create a control object + hw = ControlInterface(server, basepath+'/DeviceManager/'+path) + # # Generic elements for all mixers follow here: # - tmp = GlobalMixer( w ) tmp.clockselect = ClockSelectInterface( server, basepath+"/DeviceManager/"+path ) tmp.nickname = TextInterface( server, basepath+"/DeviceManager/"+path+"/Generic/Nickname" ) + tmp.hw = hw tmp.initValues() l.addWidget( tmp, 1 ) @@ -388,12 +391,55 @@ if dev != None: mixerapp = dev[1] - # hack for the focusrite devices - # Saffire: 0x130e010001???? - # SaffireLE: 0x130e010004???? - if thisdev == (0x00130e, 0x00000000): - if int(GUID, 16) < 0x130e0100040000: + if vendorId == 0x00130e: + is_saffirele = False + is_saffirepro = False + + # hack for the focusrite devices + # Saffire: 0x130e010001???? + # SaffireLE: 0x130e010004???? + if modelId == 0x00000000: + if int(GUID, 16) >= 0x130e0100040000: + is_saffirele = True + print "Found SaffireLE GUID" + else: + is_saffirele = False + print "Found Saffire GUID" + + # different panel for different clock frequency + samplerate = hw.getDiscrete('/Generic/SamplerateSelect') + + # adat on PRO26 makes a difference + have_adat = False + if modelId == 0x00000003: # PRO26 + is_saffirepro = True + state = hw.getDiscrete('/Control/ADATDisable') + if state: + have_adat = False + print "detected PRO26, ADAT disabled" + else: + have_adat = True + print "detected PRO26, ADAT enabled" + elif modelId == 0x00000006: # PRO10 + is_saffirepro = True + + suffix = '' + if samplerate <= 48000: + suffix = "Large" + # on the saffire pro 26, the large panel can be used + # at 96k when adat is disabled. pro10 = pro26 w/o ADAT + elif samplerate <= 96000 and is_saffirepro and have_adat: + suffix = "Small" + elif samplerate <= 96000 and is_saffirepro: + suffix = "Large" + # higher samplerates need the small panel + else: + suffix = "Small" + + if is_saffirepro: + mixerapp = "SaffireProMixer" + suffix + elif is_saffirele: + mixerapp = "SaffireLEMixer" + suffix + else: mixerapp = "SaffireMixer" - else: - mixerapp = "SaffireLEMixer" exec( "mixerwidget = "+mixerapp+"( w )" ) @@ -407,5 +453,5 @@ # l.addWidget( mixerwidget, 10 ) - mixerwidget.hw = ControlInterface(server, basepath+'/DeviceManager/'+path) + mixerwidget.hw = hw mixerwidget.configrom = cfgrom mixerwidget.clockselect = ClockSelectInterface(server, basepath+'/DeviceManager/'+path) Index: branches/libffado-2.0/support/mixer/mixer_saffirele.py =================================================================== --- branches/libffado-2.0/support/mixer/mixer_saffirele.py (revision 1171) +++ branches/libffado-2.0/support/mixer/mixer_saffirele.py (revision 1216) @@ -22,166 +22,199 @@ from qt import * -from mixer_saffireleui import * - -class SaffireLEMixer(SaffireLEMixerUI): +from mixer_saffire_base import SaffireMixerBase +from mixer_saffirelelargeui import SaffireLEMixerLargeUI +from mixer_saffirelesmallui import SaffireLEMixerSmallUI + +class SaffireLEMixerLarge(SaffireLEMixerLargeUI, SaffireMixerBase): def __init__(self,parent = None,name = None,fl = 0): - SaffireLEMixerUI.__init__(self,parent,name,fl) + SaffireLEMixerLargeUI.__init__(self,parent,name,fl) + SaffireMixerBase.__init__(self) def init(self): - print "Init Saffire LE mixer window" - - self.VolumeControls={ - self.sldIN1Out1: ['/Mixer/LEMix48', 0, 0], - self.sldIN1Out2: ['/Mixer/LEMix48', 0, 1], - self.sldIN1Out3: ['/Mixer/LEMix48', 0, 2], - self.sldIN1Out4: ['/Mixer/LEMix48', 0, 3], - self.sldIN2Out1: ['/Mixer/LEMix48', 1, 0], - self.sldIN2Out2: ['/Mixer/LEMix48', 1, 1], - self.sldIN2Out3: ['/Mixer/LEMix48', 1, 2], - self.sldIN2Out4: ['/Mixer/LEMix48', 1, 3], - self.sldIN3Out1: ['/Mixer/LEMix48', 2, 0], - self.sldIN3Out2: ['/Mixer/LEMix48', 2, 1], - self.sldIN3Out3: ['/Mixer/LEMix48', 2, 2], - self.sldIN3Out4: ['/Mixer/LEMix48', 2, 3], - self.sldIN4Out1: ['/Mixer/LEMix48', 3, 0], - self.sldIN4Out2: ['/Mixer/LEMix48', 3, 1], - self.sldIN4Out3: ['/Mixer/LEMix48', 3, 2], - self.sldIN4Out4: ['/Mixer/LEMix48', 3, 3], - self.sldSPDIF1Out1: ['/Mixer/LEMix48', 4, 0], - self.sldSPDIF1Out2: ['/Mixer/LEMix48', 4, 1], - self.sldSPDIF1Out3: ['/Mixer/LEMix48', 4, 2], - self.sldSPDIF1Out4: ['/Mixer/LEMix48', 4, 3], - self.sldSPDIF2Out1: ['/Mixer/LEMix48', 5, 0], - self.sldSPDIF2Out2: ['/Mixer/LEMix48', 5, 1], - self.sldSPDIF2Out3: ['/Mixer/LEMix48', 5, 2], - self.sldSPDIF2Out4: ['/Mixer/LEMix48', 5, 3], - - self.sldPC1Out1: ['/Mixer/LEMix48', 6, 0], - self.sldPC1Out2: ['/Mixer/LEMix48', 6, 1], - self.sldPC1Out3: ['/Mixer/LEMix48', 6, 2], - self.sldPC1Out4: ['/Mixer/LEMix48', 6, 3], - self.sldPC2Out1: ['/Mixer/LEMix48', 7, 0], - self.sldPC2Out2: ['/Mixer/LEMix48', 7, 1], - self.sldPC2Out3: ['/Mixer/LEMix48', 7, 2], - self.sldPC2Out4: ['/Mixer/LEMix48', 7, 3], - self.sldPC3Out1: ['/Mixer/LEMix48', 8, 0], - self.sldPC3Out2: ['/Mixer/LEMix48', 8, 1], - self.sldPC3Out3: ['/Mixer/LEMix48', 8, 2], - self.sldPC3Out4: ['/Mixer/LEMix48', 8, 3], - self.sldPC4Out1: ['/Mixer/LEMix48', 9, 0], - self.sldPC4Out2: ['/Mixer/LEMix48', 9, 1], - self.sldPC4Out3: ['/Mixer/LEMix48', 9, 2], - self.sldPC4Out4: ['/Mixer/LEMix48', 9, 3], - self.sldPC5Out1: ['/Mixer/LEMix48', 10, 0], - self.sldPC5Out2: ['/Mixer/LEMix48', 10, 1], - self.sldPC5Out3: ['/Mixer/LEMix48', 10, 2], - self.sldPC5Out4: ['/Mixer/LEMix48', 10, 3], - self.sldPC6Out1: ['/Mixer/LEMix48', 11, 0], - self.sldPC6Out2: ['/Mixer/LEMix48', 11, 1], - self.sldPC6Out3: ['/Mixer/LEMix48', 11, 2], - self.sldPC6Out4: ['/Mixer/LEMix48', 11, 3], - self.sldPC7Out1: ['/Mixer/LEMix48', 12, 0], - self.sldPC7Out2: ['/Mixer/LEMix48', 12, 1], - self.sldPC7Out3: ['/Mixer/LEMix48', 12, 2], - self.sldPC7Out4: ['/Mixer/LEMix48', 12, 3], - self.sldPC8Out1: ['/Mixer/LEMix48', 13, 0], - self.sldPC8Out2: ['/Mixer/LEMix48', 13, 1], - self.sldPC8Out3: ['/Mixer/LEMix48', 13, 2], - self.sldPC8Out4: ['/Mixer/LEMix48', 13, 3], - } - - self.SelectorControls={ - self.chkOut12Mute: ['/Mixer/Out12Mute'], - self.chkOut12HwCtrl: ['/Mixer/Out12HwCtrl'], - self.chkOut34Mute: ['/Mixer/Out34Mute'], - self.chkOut34HwCtrl: ['/Mixer/Out34HwCtrl'], - self.chkOut56Mute: ['/Mixer/Out56Mute'], - self.chkOut56HwCtrl: ['/Mixer/Out56HwCtrl'], - self.chkSPDIFTransparent: ['/Mixer/SpdifTransparent'], - self.chkMIDITru: ['/Mixer/MidiThru'], - self.chkHighGain3: ['/Mixer/HighGainLine3'], - self.chkHighGain4: ['/Mixer/HighGainLine4'], - } - - self.VolumeControlsLowRes={ - self.sldOut12Level: ['/Mixer/Out12Level'], - self.sldOut34Level: ['/Mixer/Out34Level'], - self.sldOut56Level: ['/Mixer/Out56Level'], - } - - self.TriggerButtonControls={ - self.btnSaveSettings: ['/Mixer/SaveSettings'], - } + print "Init large Saffire LE mixer window" + + self.VolumeControls={ + self.sldIN1Out1: ['/Mixer/LEMix48', 0, 0], + self.sldIN1Out2: ['/Mixer/LEMix48', 0, 1], + self.sldIN1Out3: ['/Mixer/LEMix48', 0, 2], + self.sldIN1Out4: ['/Mixer/LEMix48', 0, 3], + self.sldIN2Out1: ['/Mixer/LEMix48', 1, 0], + self.sldIN2Out2: ['/Mixer/LEMix48', 1, 1], + self.sldIN2Out3: ['/Mixer/LEMix48', 1, 2], + self.sldIN2Out4: ['/Mixer/LEMix48', 1, 3], + self.sldIN3Out1: ['/Mixer/LEMix48', 2, 0], + self.sldIN3Out2: ['/Mixer/LEMix48', 2, 1], + self.sldIN3Out3: ['/Mixer/LEMix48', 2, 2], + self.sldIN3Out4: ['/Mixer/LEMix48', 2, 3], + self.sldIN4Out1: ['/Mixer/LEMix48', 3, 0], + self.sldIN4Out2: ['/Mixer/LEMix48', 3, 1], + self.sldIN4Out3: ['/Mixer/LEMix48', 3, 2], + self.sldIN4Out4: ['/Mixer/LEMix48', 3, 3], + self.sldSPDIF1Out1: ['/Mixer/LEMix48', 4, 0], + self.sldSPDIF1Out2: ['/Mixer/LEMix48', 4, 1], + self.sldSPDIF1Out3: ['/Mixer/LEMix48', 4, 2], + self.sldSPDIF1Out4: ['/Mixer/LEMix48', 4, 3], + self.sldSPDIF2Out1: ['/Mixer/LEMix48', 5, 0], + self.sldSPDIF2Out2: ['/Mixer/LEMix48', 5, 1], + self.sldSPDIF2Out3: ['/Mixer/LEMix48', 5, 2], + self.sldSPDIF2Out4: ['/Mixer/LEMix48', 5, 3], + + self.sldPC1Out1: ['/Mixer/LEMix48', 6, 0], + self.sldPC1Out2: ['/Mixer/LEMix48', 6, 1], + self.sldPC1Out3: ['/Mixer/LEMix48', 6, 2], + self.sldPC1Out4: ['/Mixer/LEMix48', 6, 3], + self.sldPC2Out1: ['/Mixer/LEMix48', 7, 0], + self.sldPC2Out2: ['/Mixer/LEMix48', 7, 1], + self.sldPC2Out3: ['/Mixer/LEMix48', 7, 2], + self.sldPC2Out4: ['/Mixer/LEMix48', 7, 3], + self.sldPC3Out1: ['/Mixer/LEMix48', 8, 0], + self.sldPC3Out2: ['/Mixer/LEMix48', 8, 1], + self.sldPC3Out3: ['/Mixer/LEMix48', 8, 2], + self.sldPC3Out4: ['/Mixer/LEMix48', 8, 3], + self.sldPC4Out1: ['/Mixer/LEMix48', 9, 0], + self.sldPC4Out2: ['/Mixer/LEMix48', 9, 1], + self.sldPC4Out3: ['/Mixer/LEMix48', 9, 2], + self.sldPC4Out4: ['/Mixer/LEMix48', 9, 3], + self.sldPC5Out1: ['/Mixer/LEMix48', 10, 0], + self.sldPC5Out2: ['/Mixer/LEMix48', 10, 1], + self.sldPC5Out3: ['/Mixer/LEMix48', 10, 2], + self.sldPC5Out4: ['/Mixer/LEMix48', 10, 3], + self.sldPC6Out1: ['/Mixer/LEMix48', 11, 0], + self.sldPC6Out2: ['/Mixer/LEMix48', 11, 1], + self.sldPC6Out3: ['/Mixer/LEMix48', 11, 2], + self.sldPC6Out4: ['/Mixer/LEMix48', 11, 3], + self.sldPC7Out1: ['/Mixer/LEMix48', 12, 0], + self.sldPC7Out2: ['/Mixer/LEMix48', 12, 1], + self.sldPC7Out3: ['/Mixer/LEMix48', 12, 2], + self.sldPC7Out4: ['/Mixer/LEMix48', 12, 3], + self.sldPC8Out1: ['/Mixer/LEMix48', 13, 0], + self.sldPC8Out2: ['/Mixer/LEMix48', 13, 1], + self.sldPC8Out3: ['/Mixer/LEMix48', 13, 2], + self.sldPC8Out4: ['/Mixer/LEMix48', 13, 3], + } + + self.SelectorControls={ + self.chkOut12Mute: ['/Mixer/Out12Mute'], + self.chkOut12HwCtrl: ['/Mixer/Out12HwCtrl'], + self.chkOut34Mute: ['/Mixer/Out34Mute'], + self.chkOut34HwCtrl: ['/Mixer/Out34HwCtrl'], + self.chkOut56Mute: ['/Mixer/Out56Mute'], + self.chkOut56HwCtrl: ['/Mixer/Out56HwCtrl'], + self.chkSPDIFTransparent: ['/Mixer/SpdifTransparent'], + self.chkMIDITru: ['/Mixer/MidiThru'], + self.chkHighGain3: ['/Mixer/HighGainLine3'], + self.chkHighGain4: ['/Mixer/HighGainLine4'], + } + + self.VolumeControlsLowRes={ + self.sldOut12Level: ['/Mixer/Out12Level'], + self.sldOut34Level: ['/Mixer/Out34Level'], + self.sldOut56Level: ['/Mixer/Out56Level'], + } + + self.TriggerButtonControls={ + self.btnSaveSettings: ['/Mixer/SaveSettings'], + } + + self.TextControls={ + } + + self.saveTextControls={ + } + + self.ComboControls={ + } def updateMatrixVolume(self,a0): - sender = self.sender() - vol = 0x7FFF-a0 - print "set %s %d %d to %d" % ( - self.VolumeControls[sender][0], - self.VolumeControls[sender][1], - self.VolumeControls[sender][2], - vol) - self.hw.setMatrixMixerValue(self.VolumeControls[sender][0], - self.VolumeControls[sender][1], - self.VolumeControls[sender][2], - vol) + SaffireMixerBase.updateMatrixVolume(self,a0) def updateLowResVolume(self,a0): - sender = self.sender() - vol = a0 - print "set %s to %d" % ( - self.VolumeControlsLowRes[sender][0], - vol) - self.hw.setDiscrete(self.VolumeControlsLowRes[sender][0], vol) - + SaffireMixerBase.updateLowResVolume(self,a0) def updateSelector(self,a0): - sender = self.sender() - if a0: - state = 1 - else: - state = 0 - print "set %s to %d" % ( - self.SelectorControls[sender][0], - state) - self.hw.setDiscrete(self.SelectorControls[sender][0], state) - + SaffireMixerBase.updateSelector(self,a0) def triggerButton(self): - sender = self.sender() - print "trigger %s" % ( - self.TriggerButtonControls[sender][0]) - self.hw.setDiscrete(self.TriggerButtonControls[sender][0], 1) - - def initValues(self): - for ctrl, info in self.VolumeControls.iteritems(): - vol = self.hw.getMatrixMixerValue(self.VolumeControls[ctrl][0], - self.VolumeControls[ctrl][1], - self.VolumeControls[ctrl][2]) - - print "%s volume is %d" % (ctrl.name() , 0x7FFF-vol) - ctrl.setValue(0x7FFF-vol) - - # connect the UI element - QObject.connect(ctrl,SIGNAL('valueChanged(int)'),self.updateMatrixVolume) - - for ctrl, info in self.VolumeControlsLowRes.iteritems(): - vol = self.hw.getDiscrete(self.VolumeControlsLowRes[ctrl][0]) - - print "%s volume is %d" % (ctrl.name() , vol) - ctrl.setValue(vol) - - # connect the UI element - QObject.connect(ctrl,SIGNAL('valueChanged(int)'),self.updateLowResVolume) - - for ctrl, info in self.SelectorControls.iteritems(): - state = self.hw.getDiscrete(self.SelectorControls[ctrl][0]) - print "%s state is %d" % (ctrl.name() , state) - if state: - ctrl.setChecked(True) - else: - ctrl.setChecked(False) - - # connect the UI element - QObject.connect(ctrl,SIGNAL('stateChanged(int)'),self.updateSelector) - - for ctrl, info in self.TriggerButtonControls.iteritems(): - # connect the UI element - QObject.connect(ctrl,SIGNAL('clicked()'),self.triggerButton) + SaffireMixerBase.triggerButton(self) + def saveText(self): + SaffireMixerBase.saveText(self) + def initCombo(self, combo): + SaffireMixerBase.initCombo(self,combo) + def selectCombo(self, mode): + SaffireMixerBase.selectCombo(self,mode) + + def updateValues(self): + SaffireMixerBase.updateValues(self) + +class SaffireLEMixerSmall(SaffireLEMixerSmallUI, SaffireMixerBase): + def __init__(self,parent = None,name = None,fl = 0): + SaffireLEMixerSmallUI.__init__(self,parent,name,fl) + SaffireMixerBase.__init__(self) + + def init(self): + print "Init small Saffire LE mixer window" + + self.VolumeControls={ + self.sldIN1RecMix: ['/Mixer/LEMix96', 0, 4], + self.sldIN2RecMix: ['/Mixer/LEMix96', 1, 4], + self.sldIN3RecMix: ['/Mixer/LEMix96', 2, 4], + self.sldIN4RecMix: ['/Mixer/LEMix96', 3, 4], + self.sldSPDIF1RecMix: ['/Mixer/LEMix96', 4, 4], + self.sldSPDIF2RecMix: ['/Mixer/LEMix96', 5, 4], + + self.sldPC1Out1: ['/Mixer/LEMix96', 6, 0], + self.sldPC1Out2: ['/Mixer/LEMix96', 6, 1], + self.sldPC1Out3: ['/Mixer/LEMix96', 6, 2], + self.sldPC1Out4: ['/Mixer/LEMix96', 6, 3], + self.sldPC2Out1: ['/Mixer/LEMix96', 7, 0], + self.sldPC2Out2: ['/Mixer/LEMix96', 7, 1], + self.sldPC2Out3: ['/Mixer/LEMix96', 7, 2], + self.sldPC2Out4: ['/Mixer/LEMix96', 7, 3], + } + + self.SelectorControls={ + self.chkOut12Mute: ['/Mixer/Out12Mute'], + self.chkOut12HwCtrl: ['/Mixer/Out12HwCtrl'], + self.chkOut34Mute: ['/Mixer/Out34Mute'], + self.chkOut34HwCtrl: ['/Mixer/Out34HwCtrl'], + self.chkOut56Mute: ['/Mixer/Out56Mute'], + self.chkOut56HwCtrl: ['/Mixer/Out56HwCtrl'], + self.chkSPDIFTransparent: ['/Mixer/SpdifTransparent'], + self.chkMIDITru: ['/Mixer/MidiThru'], + self.chkHighGain3: ['/Mixer/HighGainLine3'], + self.chkHighGain4: ['/Mixer/HighGainLine4'], + } + + self.VolumeControlsLowRes={ + self.sldOut12Level: ['/Mixer/Out12Level'], + self.sldOut34Level: ['/Mixer/Out34Level'], + self.sldOut56Level: ['/Mixer/Out56Level'], + } + + self.TriggerButtonControls={ + self.btnSaveSettings: ['/Mixer/SaveSettings'], + } + + self.TextControls={ + } + + self.saveTextControls={ + } + + self.ComboControls={ + } + + def updateMatrixVolume(self,a0): + SaffireMixerBase.updateMatrixVolume(self,a0) + def updateLowResVolume(self,a0): + SaffireMixerBase.updateLowResVolume(self,a0) + def updateSelector(self,a0): + SaffireMixerBase.updateSelector(self,a0) + def triggerButton(self): + SaffireMixerBase.triggerButton(self) + def saveText(self): + SaffireMixerBase.saveText(self) + def initCombo(self, combo): + SaffireMixerBase.initCombo(self,combo) + def selectCombo(self, mode): + SaffireMixerBase.selectCombo(self,mode) + + def updateValues(self): + SaffireMixerBase.updateValues(self) Index: branches/libffado-2.0/support/mixer/mixer_saffirepro.py =================================================================== --- branches/libffado-2.0/support/mixer/mixer_saffirepro.py (revision 1184) +++ branches/libffado-2.0/support/mixer/mixer_saffirepro.py (revision 1216) @@ -22,60 +22,16 @@ from qt import * -from mixer_saffireproui import * - -class SaffireProMixer(SaffireProMixerUI): +from mixer_saffire_base import SaffireMixerBase +from mixer_saffireprolargeui import SaffireProMixerLargeUI +from mixer_saffireprosmallui import SaffireProMixerSmallUI + +class SaffireProMixerLarge(SaffireProMixerLargeUI, SaffireMixerBase): def __init__(self,parent = None,name = None,fl = 0): - SaffireProMixerUI.__init__(self,parent,name,fl) - - def updateMatrixVolume(self,a0): - sender = self.sender() - vol = 0x7FFF-a0 - print "set %s %d %d to %d" % ( - self.VolumeControls[sender][0], - self.VolumeControls[sender][1], - self.VolumeControls[sender][2], - vol) - self.hw.setMatrixMixerValue(self.VolumeControls[sender][0], - self.VolumeControls[sender][1], - self.VolumeControls[sender][2], - vol) - def updateLowResVolume(self,a0): - sender = self.sender() - vol = a0 - print "set %s to %d" % ( - self.VolumeControlsLowRes[sender][0], - vol) - self.hw.setDiscrete(self.VolumeControlsLowRes[sender][0], vol) - - def updateSelector(self,a0): - sender = self.sender() - if a0: - state = 1 - else: - state = 0 - print "set %s to %d" % ( - self.SelectorControls[sender][0], - state) - self.hw.setDiscrete(self.SelectorControls[sender][0], state) - - def triggerButton(self): - sender = self.sender() - print "trigger %s" % ( - self.TriggerButtonControls[sender][0]) - self.hw.setDiscrete(self.TriggerButtonControls[sender][0], 1) - - def saveText(self): - sender = self.sender() - textbox = self.saveTextControls[sender][0] - print "save %s" % ( - textbox.text().ascii()) - self.hw.setText(self.TextControls[textbox][0], textbox.text().ascii()) - - def selectStandaloneMode(self, mode): - self.hw.enumSelect('/Control/StandaloneConfig', mode) - self.comboStandalone.setCurrentItem( self.hw.enumSelected('/Control/StandaloneConfig') ) + SaffireProMixerLargeUI.__init__(self,parent,name,fl) + SaffireMixerBase.__init__(self) + self.have_adat = False def init(self): - print "Init Saffire Pro mixer window" + print "Init large Saffire Pro mixer window" self.VolumeControls={ @@ -223,64 +179,180 @@ self.TextControls={ } + self.saveTextControls={ } + self.ComboControls={ + self.comboStandalone: ['/Control/StandaloneConfig'], + } + + def updateMatrixVolume(self,a0): + SaffireMixerBase.updateMatrixVolume(self,a0) + def updateLowResVolume(self,a0): + SaffireMixerBase.updateLowResVolume(self,a0) + def updateSelector(self,a0): + SaffireMixerBase.updateSelector(self,a0) + def triggerButton(self): + SaffireMixerBase.triggerButton(self) + def saveText(self): + SaffireMixerBase.saveText(self) + def initCombo(self, combo): + SaffireMixerBase.initCombo(self,combo) + def selectCombo(self, mode): + SaffireMixerBase.selectCombo(self,mode) + def updateValues(self): - for ctrl, info in self.VolumeControls.iteritems(): - vol = self.hw.getMatrixMixerValue(self.VolumeControls[ctrl][0], - self.VolumeControls[ctrl][1], - self.VolumeControls[ctrl][2]) - - print "%s volume is %d" % (ctrl.name() , 0x7FFF-vol) - ctrl.setValue(0x7FFF-vol) - - for ctrl, info in self.VolumeControlsLowRes.iteritems(): - vol = self.hw.getDiscrete(self.VolumeControlsLowRes[ctrl][0]) - - print "%s volume is %d" % (ctrl.name() , vol) - ctrl.setValue(vol) - - for ctrl, info in self.SelectorControls.iteritems(): - state = self.hw.getDiscrete(self.SelectorControls[ctrl][0]) - print "%s state is %d" % (ctrl.name() , state) + self.samplerate = self.hw.getDiscrete('/Generic/SamplerateSelect') + self.modelId = self.configrom.getModelId() + if self.modelId == 0x00000003: + state = self.hw.getDiscrete('/Control/ADATDisable') if state: - ctrl.setChecked(True) + self.have_adat = False + print "detected PRO26 at %d, ADAT disabled" % self.samplerate else: - ctrl.setChecked(False) - - for ctrl, info in self.TriggerButtonControls.iteritems(): - pass - - for ctrl, info in self.TextControls.iteritems(): - text = self.hw.getText(self.TextControls[ctrl][0]) - print "%s text is %s" % (ctrl.name() , text) - ctrl.setText(text) - - self.comboStandalone.clear() - for i in range( self.hw.enumCount('/Control/StandaloneConfig') ): - self.comboStandalone.insertItem( self.hw.enumGetLabel('/Control/StandaloneConfig', i) ) - self.comboStandalone.setCurrentItem( self.hw.enumSelected('/Control/StandaloneConfig') ) - - def initValues(self): - self.updateValues() - for ctrl, info in self.VolumeControls.iteritems(): - # connect the UI element - QObject.connect(ctrl,SIGNAL('valueChanged(int)'),self.updateMatrixVolume) - - for ctrl, info in self.VolumeControlsLowRes.iteritems(): - # connect the UI element - QObject.connect(ctrl,SIGNAL('valueChanged(int)'),self.updateLowResVolume) - - for ctrl, info in self.SelectorControls.iteritems(): - # connect the UI element - QObject.connect(ctrl,SIGNAL('stateChanged(int)'),self.updateSelector) - - for ctrl, info in self.TriggerButtonControls.iteritems(): - # connect the UI element - QObject.connect(ctrl,SIGNAL('clicked()'),self.triggerButton) - - for ctrl, info in self.saveTextControls.iteritems(): - # connect the UI element - QObject.connect(ctrl,SIGNAL('clicked()'), self.saveText) - - QObject.connect(self.comboStandalone, SIGNAL('activated(int)'), self.selectStandaloneMode) + self.have_adat = True + print "detected PRO26 at %d, ADAT enabled" % self.samplerate + else: + self.have_adat = False + print "detected PRO10 at %d, ADAT not available" % self.samplerate + + for i in range(self.tabInputMix.count()): + self.tabInputMix.setTabEnabled(self.tabInputMix.page(i), True) + + if not self.have_adat: + for i in range(self.tabInputMix.count()): + page = self.tabInputMix.page(i) + name = page.name() + if name[0:4] == "adat": + self.tabInputMix.setTabEnabled(page, False) + else: + self.tabInputMix.setTabEnabled(page, True) + + self.tabInputMix.setCurrentPage(0) + SaffireMixerBase.updateValues(self) + +class SaffireProMixerSmall(SaffireProMixerSmallUI, SaffireMixerBase): + def __init__(self,parent = None,name = None,fl = 0): + SaffireProMixerSmallUI.__init__(self,parent,name,fl) + SaffireMixerBase.__init__(self) + + def init(self): + print "Init small Saffire Pro mixer window" + + self.VolumeControls={ + + self.sldOMixPC1O1: ['/Mixer/OutputMix', 0, 0], + self.sldOMixPC2O2: ['/Mixer/OutputMix', 1, 1], + self.sldOMixPC3O3: ['/Mixer/OutputMix', 2, 2], + self.sldOMixPC4O4: ['/Mixer/OutputMix', 3, 3], + self.sldOMixPC5O5: ['/Mixer/OutputMix', 4, 4], + self.sldOMixPC6O6: ['/Mixer/OutputMix', 5, 5], + self.sldOMixPC7O7: ['/Mixer/OutputMix', 6, 6], + self.sldOMixPC8O8: ['/Mixer/OutputMix', 7, 7], + self.sldOMixPC9O9: ['/Mixer/OutputMix', 8, 8], + self.sldOMixPC10O10: ['/Mixer/OutputMix', 9, 9], + + self.sldOMixPC1O3: ['/Mixer/OutputMix', 0, 2], + self.sldOMixPC2O4: ['/Mixer/OutputMix', 1, 3], + self.sldOMixPC1O5: ['/Mixer/OutputMix', 0, 4], + self.sldOMixPC2O6: ['/Mixer/OutputMix', 1, 5], + self.sldOMixPC1O7: ['/Mixer/OutputMix', 0, 6], + self.sldOMixPC2O8: ['/Mixer/OutputMix', 1, 7], + self.sldOMixPC1O9: ['/Mixer/OutputMix', 0, 8], + self.sldOMixPC2O10: ['/Mixer/OutputMix', 1, 9], + + self.sldOMixIMixO1: ['/Mixer/OutputMix', 10, 0], + self.sldOMixIMixO2: ['/Mixer/OutputMix', 11, 1], + self.sldOMixIMixO3: ['/Mixer/OutputMix', 10, 2], + self.sldOMixIMixO4: ['/Mixer/OutputMix', 11, 3], + self.sldOMixIMixO5: ['/Mixer/OutputMix', 10, 4], + self.sldOMixIMixO6: ['/Mixer/OutputMix', 11, 5], + self.sldOMixIMixO7: ['/Mixer/OutputMix', 10, 6], + self.sldOMixIMixO8: ['/Mixer/OutputMix', 11, 7], + self.sldOMixIMixO9: ['/Mixer/OutputMix', 10, 8], + self.sldOMixIMixO10: ['/Mixer/OutputMix', 11, 9], + } + + + self.SelectorControls={ + # control elements + self.chkInsert1: ['/Control/Insert1'], + self.chkInsert2: ['/Control/Insert2'], + self.chkPhantom14: ['/Control/Phantom_1to4'], + self.chkPhantom58: ['/Control/Phantom_5to8'], + self.chkAC3: ['/Control/AC3pass'], + self.chkMidiThru: ['/Control/MidiTru'], + self.chkHighVoltage: ['/Control/UseHighVoltageRail'], + #self.chkEnableADAT1: ['/Control/EnableAdat1'], + #self.chkEnableADAT2: ['/Control/EnableAdat2'], + #self.chkEnableSPDIF1: ['/Control/EnableSPDIF1'], + self.chkMidiEnable: ['/Control/MIDIEnable'], + self.chkAdatDisable: ['/Control/ADATDisable'], + # Mixer switches + self.chkMute12: ['/Mixer/Out12Mute'], + self.chkHwCtrl12: ['/Mixer/Out12HwCtrl'], + self.chkPad12: ['/Mixer/Out12Pad'], + self.chkDim12: ['/Mixer/Out12Dim'], + self.chkMute34: ['/Mixer/Out34Mute'], + self.chkHwCtrl34: ['/Mixer/Out34HwCtrl'], + self.chkPad34: ['/Mixer/Out34Pad'], + self.chkDim34: ['/Mixer/Out34Dim'], + self.chkMute56: ['/Mixer/Out56Mute'], + self.chkHwCtrl56: ['/Mixer/Out56HwCtrl'], + self.chkPad56: ['/Mixer/Out56Pad'], + self.chkDim56: ['/Mixer/Out56Dim'], + self.chkMute78: ['/Mixer/Out78Mute'], + self.chkHwCtrl78: ['/Mixer/Out78HwCtrl'], + self.chkPad78: ['/Mixer/Out78Pad'], + self.chkDim78: ['/Mixer/Out78Dim'], + # direct monitoring + self.chkMonitor1: ['/Mixer/DirectMonitorCH1'], + self.chkMonitor2: ['/Mixer/DirectMonitorCH2'], + self.chkMonitor3: ['/Mixer/DirectMonitorCH3'], + self.chkMonitor4: ['/Mixer/DirectMonitorCH4'], + self.chkMonitor5: ['/Mixer/DirectMonitorCH5'], + self.chkMonitor6: ['/Mixer/DirectMonitorCH6'], + self.chkMonitor7: ['/Mixer/DirectMonitorCH7'], + self.chkMonitor8: ['/Mixer/DirectMonitorCH8'], + } + + self.VolumeControlsLowRes={ + self.sldOut12Level: ['/Mixer/Out12Level'], + self.sldOut34Level: ['/Mixer/Out34Level'], + self.sldOut56Level: ['/Mixer/Out56Level'], + self.sldOut78Level: ['/Mixer/Out78Level'], + } + + self.TriggerButtonControls={ + self.btnReboot: ['/Control/Reboot'], + self.btnIdentify: ['/Control/FlashLed'], + self.btnSaveSettings: ['/Control/SaveSettings'], + } + + self.TextControls={ + } + + self.saveTextControls={ + } + + self.ComboControls={ + self.comboStandalone: ['/Control/StandaloneConfig'], + } + + def updateMatrixVolume(self,a0): + SaffireMixerBase.updateMatrixVolume(self,a0) + def updateLowResVolume(self,a0): + SaffireMixerBase.updateLowResVolume(self,a0) + def updateSelector(self,a0): + SaffireMixerBase.updateSelector(self,a0) + def triggerButton(self): + SaffireMixerBase.triggerButton(self) + def saveText(self): + SaffireMixerBase.saveText(self) + def initCombo(self, combo): + SaffireMixerBase.initCombo(self,combo) + def selectCombo(self, mode): + SaffireMixerBase.selectCombo(self,mode) + + def updateValues(self): + SaffireMixerBase.updateValues(self) Index: branches/libffado-2.0/support/mixer/mixer_saffirelesmall.ui =================================================================== --- branches/libffado-2.0/support/mixer/mixer_saffirelesmall.ui (revision 1216) +++ branches/libffado-2.0/support/mixer/mixer_saffirelesmall.ui (revision 1216) @@ -0,0 +1,1135 @@ + +SaffireLEMixerSmallUI +Copyright (C) 2005-2008 by Pieter Palmers + + This file is part of FFADO + FFADO = Free Firewire (pro-)audio drivers for linux + + FFADO is based upon FreeBoB. + + 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 + (at your option) version 3 of the License. + + 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. + + + + SaffireLEMixerUI + + + + 0 + 0 + 688 + 381 + + + + Focusrite Saffire LE Mixer + + + + unnamed + + + + layout15 + + + + unnamed + + + + layout13 + + + + unnamed + + + + groupOut14_2 + + + Record Mix + + + + unnamed + + + + layout8 + + + + unnamed + + + + sldSPDIF2RecMix + + + 0 + + + 32767 + + + 10000 + + + 1000 + + + Vertical + + + Below + + + 10000 + + + + + txtOut14In12 + + + IN1/2 + + + AlignCenter + + + + + sldIN1RecMix + + + 0 + + + 32767 + + + 10000 + + + 1000 + + + Vertical + + + Above + + + 10000 + + + + + sldIN2RecMix + + + 0 + + + 32767 + + + 10000 + + + 1000 + + + Vertical + + + Below + + + 10000 + + + + + txtOut14In34_2 + + + SPDIF + + + AlignCenter + + + + + sldIN3RecMix + + + 0 + + + 32767 + + + 10000 + + + 1000 + + + Vertical + + + Above + + + 10000 + + + + + sldIN4RecMix + + + 0 + + + 32767 + + + 10000 + + + 1000 + + + Vertical + + + Below + + + 10000 + + + + + txtOut14In34 + + + IN3/4 + + + AlignCenter + + + + + sldSPDIF1RecMix + + + 0 + + + 32767 + + + 10000 + + + 1000 + + + Vertical + + + Above + + + 10000 + + + + + + + + + tabWidget4 + + + + tab + + + Out&1 + + + + unnamed + + + + layout7 + + + + unnamed + + + + sldRecMixOut1 + + + 0 + + + 32767 + + + 10000 + + + 1000 + + + Vertical + + + Both + + + 10000 + + + + + txtOut14PC78_2 + + + REC + + + AlignCenter + + + + + txtOut14PC12 + + + 1 + + + AlignCenter + + + + + txtOut14PC34 + + + 2 + + + AlignCenter + + + + + sldPC1Out1 + + + 0 + + + 32767 + + + 10000 + + + 1000 + + + Vertical + + + Both + + + 10000 + + + + + sldPC2Out1 + + + 0 + + + 32767 + + + 10000 + + + 1000 + + + Vertical + + + Both + + + 10000 + + + + + + + + + tab + + + Out&2 + + + + unnamed + + + + layout6 + + + + unnamed + + + + sldPC2Out2 + + + 0 + + + 32767 + + + 10000 + + + 1000 + + + Vertical + + + Both + + + 10000 + + + + + sldRecMixOut2 + + + 0 + + + 32767 + + + 10000 + + + 1000 + + + Vertical + + + Both + + + 10000 + + + + + txtOut24PC34 + + + 2 + + + AlignCenter + + + + + sldPC1Out2 + + + 0 + + + 32767 + + + 10000 + + + 1000 + + + Vertical + + + Both + + + 10000 + + + + + txtOut24PC78_2 + + + REC + + + AlignCenter + + + + + txtOut24PC12 + + + 1 + + + AlignCenter + + + + + + + + + tab + + + Out&3 + + + + unnamed + + + + layout5 + + + + unnamed + + + + sldPC2Out3 + + + 0 + + + 32767 + + + 10000 + + + 1000 + + + Vertical + + + Both + + + 10000 + + + + + txtOut34PC34 + + + 2 + + + AlignCenter + + + + + sldPC1Out3 + + + 0 + + + 32767 + + + 10000 + + + 1000 + + + Vertical + + + Both + + + 10000 + + + + + sldRecMixOut3 + + + 0 + + + 32767 + + + 10000 + + + 1000 + + + Vertical + + + Both + + + 10000 + + + + + txtOut34PC12 + + + 1 + + + AlignCenter + + + + + txtOut34PC56 + + + REC + + + AlignCenter + + + + + + + + + tab + + + Out&4 + + + + unnamed + + + + layout4 + + + + unnamed + + + + sldRecMixOut4 + + + 0 + + + 32767 + + + 10000 + + + 1000 + + + Vertical + + + Both + + + 10000 + + + + + txtOut44PC34 + + + 2 + + + AlignCenter + + + + + txtOut44PC12 + + + 1 + + + AlignCenter + + + + + sldPC2Out4 + + + 0 + + + 32767 + + + 10000 + + + 1000 + + + Vertical + + + Both + + + 10000 + + + + + sldPC1Out4 + + + 0 + + + 32767 + + + 10000 + + + 1000 + + + Vertical + + + Both + + + 10000 + + + + + txtOut44PC56 + + + REC + + + AlignCenter + + + + + + + + + + groupBox11 + + + Output Level + + + + unnamed + + + + layout12 + + + + unnamed + + + + layout11 + + + + unnamed + + + + txtOut14In12_2_2 + + + 3/4 + + + AlignCenter + + + + + txtOut14In12_2 + + + 1/2 + + + AlignCenter + + + + + sldOut56Level + + + 0 + + + 255 + + + 1 + + + 4 + + + Vertical + + + Both + + + 32 + + + + + sldOut34Level + + + 0 + + + 255 + + + 1 + + + 4 + + + Vertical + + + Both + + + 32 + + + + + sldOut12Level + + + 0 + + + 255 + + + 1 + + + 4 + + + Vertical + + + Both + + + 32 + + + + + txtOut14In12_2_2_2 + + + 5/6 + + + AlignCenter + + + + + + + layout10 + + + + unnamed + + + + textLabel1 + + + Ignore slider + + + AlignCenter + + + + + layout9 + + + + unnamed + + + + chkOut12HwCtrl + + + + + + + + chkOut34HwCtrl + + + + + + + + chkOut56HwCtrl + + + + + + + + + + + + + + + + + + layout14 + + + + unnamed + + + + groupBox13 + + + Mute + + + + unnamed + + + + chkOut56Mute + + + CH5/&6 + + + + + chkOut34Mute + + + CH3/4 + + + + + chkOut12Mute + + + CH1/2 + + + + + + + groupBox13_2 + + + High Gain + + + + unnamed + + + + chkHighGain3 + + + Input 3 + + + + + chkHighGain4 + + + Input 4 + + + + + + + layout54 + + + + unnamed + + + + chkSPDIFTransparent + + + S/PDIF Transp + + + + + chkMIDITru + + + &MIDI Tru + + + Alt+M + + + + + + + btnSaveSettings + + + Save + + + Save settings to device + + + + + + + + + + updateMatrixVolume(int) + updateSelector(int) + init() + + + Index: branches/libffado-2.0/support/mixer/mixer_saffireprosmall.ui =================================================================== --- branches/libffado-2.0/support/mixer/mixer_saffireprosmall.ui (revision 1216) +++ branches/libffado-2.0/support/mixer/mixer_saffireprosmall.ui (revision 1216) @@ -0,0 +1,2149 @@ + +SaffireProMixerSmallUI +Copyright (C) 2005-2008 by Pieter Palmers + + This file is part of FFADO + FFADO = Free Firewire (pro-)audio drivers for linux + + FFADO is based upon FreeBoB. + + 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 + (at your option) version 3 of the License. + + 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. + + + + SaffireProMixerUI + + + + 0 + 0 + 840 + 379 + + + + Focusrite Saffire Pro (10/26) Mixer + + + + unnamed + + + + layout22 + + + + unnamed + + + + layout21 + + + + unnamed + + + + groupBox14 + + + Output Mix + + + + unnamed + + + + tabWidget14 + + + + tab + + + Out1/&2 + + + + unnamed + + + + layout58 + + + + unnamed + + + + chkMute12 + + + Mute + + + + + + + + chkMonitor2 + + + CH2 Direct Mon + + + + + + + + chkDim12 + + + &Level Dim + + + Alt+L + + + + + chkMonitor1 + + + CH1 Direct Mon + + + + + + + + chkHwCtrl12 + + + Front dial control + + + + + + + + chkPad12 + + + &Monitor Pad + + + Alt+M + + + + + + + layout55 + + + + unnamed + + + + txtOmixO1 + + + Out1 + + + AlignCenter + + + + + txtOMixPC1O1 + + + PC1 + + + AlignCenter + + + + + sldOMixPC1O1 + + + 0 + + + 32767 + + + 10000 + + + 1000 + + + Vertical + + + Both + + + 10000 + + + + + sldOMixIMixO1 + + + 0 + + + 32767 + + + 10000 + + + 1000 + + + Vertical + + + Both + + + 10000 + + + + + txtOMixIMixO1 + + + IMixL + + + AlignCenter + + + + + + + layout56 + + + + unnamed + + + + txtOMixIMixO2 + + + IMixL + + + AlignCenter + + + + + txtOmixO2 + + + Out2 + + + AlignCenter + + + + + txtOMixPC2O2 + + + PC2 + + + AlignCenter + + + + + sldOMixPC2O2 + + + 0 + + + 32767 + + + 10000 + + + 1000 + + + Vertical + + + Both + + + 10000 + + + + + sldOMixIMixO2 + + + 0 + + + 32767 + + + 10000 + + + 1000 + + + Vertical + + + Both + + + 10000 + + + + + + + groupLevel12 + + + Level + + + AlignHCenter + + + + unnamed + + + + sldOut12Level + + + + 0 + 80 + + + + 0 + + + 255 + + + 2 + + + 16 + + + Vertical + + + Both + + + 32 + + + + + + + spacer3 + + + Horizontal + + + Expanding + + + + 71 + 31 + + + + + + + + TabPage + + + Out3/&4 + + + + unnamed + + + + layout62 + + + + unnamed + + + + chkMonitor3 + + + CH3 Direct Mon + + + + + + + + chkHwCtrl34 + + + Front dial control + + + + + chkMonitor4 + + + CH4 Direct Mon + + + + + + + + chkMute34 + + + Mute + + + + + chkPad34 + + + Monitor Pad + + + + + chkDim34 + + + Level Dim + + + + + + + layout60 + + + + unnamed + + + + txtOMixIMixO3 + + + IMixL + + + AlignCenter + + + + + sldOMixPC1O3 + + + 0 + + + 32767 + + + 10000 + + + 1000 + + + Vertical + + + Both + + + 10000 + + + + + txtOmixO3 + + + Out3 + + + AlignCenter + + + + + txtOMixPC3O3 + + + PC3 + + + AlignCenter + + + + + txtOMixPC1O3 + + + PC1 + + + AlignCenter + + + + + sldOMixPC3O3 + + + 0 + + + 32767 + + + 10000 + + + 1000 + + + Vertical + + + Both + + + 10000 + + + + + sldOMixIMixO3 + + + 0 + + + 32767 + + + 10000 + + + 1000 + + + Vertical + + + Both + + + 10000 + + + + + + + layout38 + + + + unnamed + + + + sldOMixPC4O4 + + + 0 + + + 32767 + + + 10000 + + + 1000 + + + Vertical + + + Both + + + 10000 + + + + + txtOMixPC4O4 + + + PC4 + + + AlignCenter + + + + + sldOMixIMixO4 + + + 0 + + + 32767 + + + 10000 + + + 1000 + + + Vertical + + + Both + + + 10000 + + + + + txtOMixIMixO4 + + + IMixL + + + AlignCenter + + + + + sldOMixPC2O4 + + + 0 + + + 32767 + + + 10000 + + + 1000 + + + Vertical + + + Both + + + 10000 + + + + + txtOMixPC2O4 + + + PC2 + + + AlignCenter + + + + + txtOmixO4 + + + Out4 + + + AlignCenter + + + + + + + groupLevel34 + + + Level + + + AlignHCenter + + + + unnamed + + + + sldOut34Level + + + 0 + + + 255 + + + 2 + + + 16 + + + Vertical + + + Both + + + 32 + + + + + + + spacer4 + + + Horizontal + + + Expanding + + + + 101 + 21 + + + + + + + + TabPage + + + Out5/&6 + + + + unnamed + + + + layout63 + + + + unnamed + + + + chkMonitor6 + + + CH6 Direct Mon + + + + + + + + chkMonitor5 + + + CH5 Direct Mon + + + + + + + + chkDim56 + + + Level Dim + + + + + + + + chkHwCtrl56 + + + Front dial control + + + + + + + + chkPad56 + + + &Monitor Pad + + + Alt+M + + + + + chkMute56 + + + Mute + + + + + + + layout65 + + + + unnamed + + + + txtOMixPC1O5 + + + PC1 + + + AlignCenter + + + + + txtOMixIMixO5 + + + IMixL + + + AlignCenter + + + + + sldOMixPC1O5 + + + 0 + + + 32767 + + + 10000 + + + 1000 + + + Vertical + + + Both + + + 10000 + + + + + txtOMixPC5O5 + + + PC5 + + + AlignCenter + + + + + sldOMixPC5O5 + + + 0 + + + 32767 + + + 10000 + + + 1000 + + + Vertical + + + Both + + + 10000 + + + + + sldOMixIMixO5 + + + 0 + + + 32767 + + + 10000 + + + 1000 + + + Vertical + + + Both + + + 10000 + + + + + txtOmixO5 + + + Out5 + + + AlignCenter + + + + + + + layout64 + + + + unnamed + + + + txtOMixPC6O6 + + + PC6 + + + AlignCenter + + + + + sldOMixPC2O6 + + + 0 + + + 32767 + + + 10000 + + + 1000 + + + Vertical + + + Both + + + 10000 + + + + + txtOMixIMixO6 + + + IMixL + + + AlignCenter + + + + + txtOMixPC2O6 + + + PC2 + + + AlignCenter + + + + + txtOmixO6 + + + Out6 + + + AlignCenter + + + + + sldOMixIMixO6 + + + 0 + + + 32767 + + + 10000 + + + 1000 + + + Vertical + + + Both + + + 10000 + + + + + sldOMixPC6O6 + + + 0 + + + 32767 + + + 10000 + + + 1000 + + + Vertical + + + Both + + + 10000 + + + + + + + groupLevel56 + + + Level + + + AlignHCenter + + + + unnamed + + + + sldOut56Level + + + 0 + + + 255 + + + 2 + + + 16 + + + Vertical + + + Both + + + 32 + + + + + + + spacer5 + + + Horizontal + + + Expanding + + + + 61 + 21 + + + + + + + + TabPage + + + Out7/&8 + + + + unnamed + + + + layout67 + + + + unnamed + + + + chkMonitor8 + + + CH8 Direct Mon + + + + + + + + chkDim78 + + + Level Dim + + + + + + + + chkMute78 + + + Mute + + + + + chkPad78 + + + &Monitor Pad + + + Alt+M + + + + + chkMonitor7 + + + CH7 Direct Mon + + + + + + + + chkHwCtrl78 + + + Front dial control + + + + + + + + + + layout69 + + + + unnamed + + + + txtOMixPC1O7 + + + PC1 + + + AlignCenter + + + + + sldOMixIMixO7 + + + 0 + + + 32767 + + + 10000 + + + 1000 + + + Vertical + + + Both + + + 10000 + + + + + txtOMixPC7O7 + + + PC7 + + + AlignCenter + + + + + sldOMixPC7O7 + + + 0 + + + 32767 + + + 10000 + + + 1000 + + + Vertical + + + Both + + + 10000 + + + + + txtOmixO7 + + + Out7 + + + AlignCenter + + + + + txtOMixIMixO7 + + + IMixL + + + AlignCenter + + + + + sldOMixPC1O7 + + + 0 + + + 32767 + + + 10000 + + + 1000 + + + Vertical + + + Both + + + 10000 + + + + + + + layout68 + + + + unnamed + + + + txtOMixIMixO8 + + + IMixL + + + AlignCenter + + + + + txtOmixO8 + + + Out8 + + + AlignCenter + + + + + sldOMixIMixO8 + + + 0 + + + 32767 + + + 10000 + + + 1000 + + + Vertical + + + Both + + + 10000 + + + + + sldOMixPC8O8 + + + 0 + + + 32767 + + + 10000 + + + 1000 + + + Vertical + + + Both + + + 10000 + + + + + txtOMixPC2O8 + + + PC2 + + + AlignCenter + + + + + txtOMixPC8O8 + + + PC8 + + + AlignCenter + + + + + sldOMixPC2O8 + + + 0 + + + 32767 + + + 10000 + + + 1000 + + + Vertical + + + Both + + + 10000 + + + + + + + groupLevel78 + + + Level + + + AlignHCenter + + + + unnamed + + + + sldOut78Level + + + 0 + + + 255 + + + 2 + + + 16 + + + Vertical + + + Both + + + 32 + + + + + + + spacer6 + + + Horizontal + + + Expanding + + + + 81 + 21 + + + + + + + + TabPage + + + Out9/&10 + + + + unnamed + + + + layout72 + + + + unnamed + + + + sldOMixIMixO9 + + + 0 + + + 32767 + + + 10000 + + + 1000 + + + Vertical + + + Both + + + 10000 + + + + + txtOMixPC1O9 + + + PC1 + + + AlignCenter + + + + + sldOMixPC9O9 + + + 0 + + + 32767 + + + 10000 + + + 1000 + + + Vertical + + + Both + + + 10000 + + + + + txtOMixIMixO9 + + + IMixL + + + AlignCenter + + + + + txtOmixO9 + + + Out9 + + + AlignCenter + + + + + txtOMixPC9O9 + + + PC9 + + + AlignCenter + + + + + sldOMixPC1O9 + + + 0 + + + 32767 + + + 10000 + + + 1000 + + + Vertical + + + Both + + + 10000 + + + + + + + layout71 + + + + unnamed + + + + sldOMixIMixO10 + + + 0 + + + 32767 + + + 10000 + + + 1000 + + + Vertical + + + Both + + + 10000 + + + + + txtOmixO10 + + + Out10 + + + AlignCenter + + + + + txtOMixPC2O10 + + + PC2 + + + AlignCenter + + + + + sldOMixPC10O10 + + + 0 + + + 32767 + + + 10000 + + + 1000 + + + Vertical + + + Both + + + 10000 + + + + + txtOMixPC10O10 + + + PC10 + + + AlignCenter + + + + + txtOMixIMixO10 + + + IMixL + + + AlignCenter + + + + + sldOMixPC2O10 + + + 0 + + + 32767 + + + 10000 + + + 1000 + + + Vertical + + + Both + + + 10000 + + + + + + + + + + + + groupBox21 + + + Device Control + + + + unnamed + + + + layout16 + + + + unnamed + + + + textLabel1 + + + Phantom: + + + + + chkPhantom14 + + + IN 1-4 + + + + + chkPhantom58 + + + IN 5-8 + + + + + + + + + + layout17 + + + + unnamed + + + + textLabel2 + + + Insert: + + + + + chkInsert1 + + + CH1 + + + + + chkInsert2 + + + CH2 + + + + + + + chkAdatDisable + + + Disable ADAT I/O + + + + + + + + chkMidiEnable + + + Enable MIDI + + + + + + + + comboStandalone + + + + + chkAC3 + + + false + + + AC&3 Passthrough + + + Alt+3 + + + + + chkMidiThru + + + &MIDI Thru + + + Alt+M + + + + + chkHighVoltage + + + Use high voltage supply + + + + + + + + spacer8 + + + Vertical + + + Expanding + + + + 20 + 21 + + + + + + layout20 + + + + unnamed + + + + btnSaveSettings + + + &Save Settings + + + Alt+S + + + + + btnIdentify + + + Identif&y Device + + + Alt+Y + + + + + btnReboot + + + Re&boot Device + + + Alt+B + + + + + btnRefresh + + + Refresh + + + + + + + + + + + + + + + + + + btnRefresh + clicked() + SaffireProMixerUI + updateValues() + + + + init() + updateValues() + + + Index: branches/libffado-2.0/support/mixer/mixer_saffire.py =================================================================== --- branches/libffado-2.0/support/mixer/mixer_saffire.py (revision 1106) +++ branches/libffado-2.0/support/mixer/mixer_saffire.py (revision 1216) @@ -22,177 +22,105 @@ from qt import * -from mixer_saffireui import * +from mixer_saffire_base import SaffireMixerBase +from mixer_saffireui import SaffireMixerUI -class SaffireMixer(SaffireMixerUI): +class SaffireMixer(SaffireMixerUI, SaffireMixerBase): def __init__(self,parent = None,name = None,fl = 0): SaffireMixerUI.__init__(self,parent,name,fl) + SaffireMixerBase.__init__(self) def init(self): - print "Init Saffire mixer window" + print "Init large Saffire mixer window" - self.VolumeControls={ - self.sldPC12Out12: ['/Mixer/PCMix', 0, 0], - self.sldPC12Out34: ['/Mixer/PCMix', 0, 1], - self.sldPC12Out56: ['/Mixer/PCMix', 0, 2], - self.sldPC12Out78: ['/Mixer/PCMix', 0, 3], - self.sldPC12Out910: ['/Mixer/PCMix', 0, 4], - self.sldPC34Out12: ['/Mixer/PCMix', 1, 0], - self.sldPC34Out34: ['/Mixer/PCMix', 1, 1], - self.sldPC34Out56: ['/Mixer/PCMix', 1, 2], - self.sldPC34Out78: ['/Mixer/PCMix', 1, 3], - self.sldPC34Out910: ['/Mixer/PCMix', 1, 4], - self.sldPC56Out12: ['/Mixer/PCMix', 2, 0], - self.sldPC56Out34: ['/Mixer/PCMix', 2, 1], - self.sldPC56Out56: ['/Mixer/PCMix', 2, 2], - self.sldPC56Out78: ['/Mixer/PCMix', 2, 3], - self.sldPC56Out910: ['/Mixer/PCMix', 2, 4], - self.sldPC78Out12: ['/Mixer/PCMix', 3, 0], - self.sldPC78Out34: ['/Mixer/PCMix', 3, 1], - self.sldPC78Out56: ['/Mixer/PCMix', 3, 2], - self.sldPC78Out78: ['/Mixer/PCMix', 3, 3], - self.sldPC78Out910: ['/Mixer/PCMix', 3, 4], - self.sldPC910Out12: ['/Mixer/PCMix', 4, 0], - self.sldPC910Out34: ['/Mixer/PCMix', 4, 1], - self.sldPC910Out56: ['/Mixer/PCMix', 4, 2], - self.sldPC910Out78: ['/Mixer/PCMix', 4, 3], - self.sldPC910Out910: ['/Mixer/PCMix', 4, 4], - self.sldIN1Out1: ['/Mixer/InputMix', 0, 0], - self.sldIN1Out3: ['/Mixer/InputMix', 0, 2], - self.sldIN1Out5: ['/Mixer/InputMix', 0, 4], - self.sldIN1Out7: ['/Mixer/InputMix', 0, 6], - self.sldIN1Out9: ['/Mixer/InputMix', 0, 8], - self.sldIN2Out2: ['/Mixer/InputMix', 1, 1], - self.sldIN2Out4: ['/Mixer/InputMix', 1, 3], - self.sldIN2Out6: ['/Mixer/InputMix', 1, 5], - self.sldIN2Out8: ['/Mixer/InputMix', 1, 7], - self.sldIN2Out10: ['/Mixer/InputMix', 1, 9], - self.sldIN3Out1: ['/Mixer/InputMix', 2, 0], - self.sldIN3Out3: ['/Mixer/InputMix', 2, 2], - self.sldIN3Out5: ['/Mixer/InputMix', 2, 4], - self.sldIN3Out7: ['/Mixer/InputMix', 2, 6], - self.sldIN3Out9: ['/Mixer/InputMix', 2, 8], - self.sldIN4Out2: ['/Mixer/InputMix', 3, 1], - self.sldIN4Out4: ['/Mixer/InputMix', 3, 3], - self.sldIN4Out6: ['/Mixer/InputMix', 3, 5], - self.sldIN4Out8: ['/Mixer/InputMix', 3, 7], - self.sldIN4Out10: ['/Mixer/InputMix', 3, 9], - self.sldREV1Out1: ['/Mixer/InputMix', 4, 0], - self.sldREV1Out3: ['/Mixer/InputMix', 4, 2], - self.sldREV1Out5: ['/Mixer/InputMix', 4, 4], - self.sldREV1Out7: ['/Mixer/InputMix', 4, 6], - self.sldREV1Out9: ['/Mixer/InputMix', 4, 8], - self.sldREV2Out2: ['/Mixer/InputMix', 5, 1], - self.sldREV2Out4: ['/Mixer/InputMix', 5, 3], - self.sldREV2Out6: ['/Mixer/InputMix', 5, 5], - self.sldREV2Out8: ['/Mixer/InputMix', 5, 7], - self.sldREV2Out10: ['/Mixer/InputMix', 5, 9], - } + self.VolumeControls={ + self.sldPC12Out12: ['/Mixer/PCMix', 0, 0], + self.sldPC12Out34: ['/Mixer/PCMix', 0, 1], + self.sldPC12Out56: ['/Mixer/PCMix', 0, 2], + self.sldPC12Out78: ['/Mixer/PCMix', 0, 3], + self.sldPC12Out910: ['/Mixer/PCMix', 0, 4], + self.sldPC34Out12: ['/Mixer/PCMix', 1, 0], + self.sldPC34Out34: ['/Mixer/PCMix', 1, 1], + self.sldPC34Out56: ['/Mixer/PCMix', 1, 2], + self.sldPC34Out78: ['/Mixer/PCMix', 1, 3], + self.sldPC34Out910: ['/Mixer/PCMix', 1, 4], + self.sldPC56Out12: ['/Mixer/PCMix', 2, 0], + self.sldPC56Out34: ['/Mixer/PCMix', 2, 1], + self.sldPC56Out56: ['/Mixer/PCMix', 2, 2], + self.sldPC56Out78: ['/Mixer/PCMix', 2, 3], + self.sldPC56Out910: ['/Mixer/PCMix', 2, 4], + self.sldPC78Out12: ['/Mixer/PCMix', 3, 0], + self.sldPC78Out34: ['/Mixer/PCMix', 3, 1], + self.sldPC78Out56: ['/Mixer/PCMix', 3, 2], + self.sldPC78Out78: ['/Mixer/PCMix', 3, 3], + self.sldPC78Out910: ['/Mixer/PCMix', 3, 4], + self.sldPC910Out12: ['/Mixer/PCMix', 4, 0], + self.sldPC910Out34: ['/Mixer/PCMix', 4, 1], + self.sldPC910Out56: ['/Mixer/PCMix', 4, 2], + self.sldPC910Out78: ['/Mixer/PCMix', 4, 3], + self.sldPC910Out910: ['/Mixer/PCMix', 4, 4], + self.sldIN1Out1: ['/Mixer/InputMix', 0, 0], + self.sldIN1Out3: ['/Mixer/InputMix', 0, 2], + self.sldIN1Out5: ['/Mixer/InputMix', 0, 4], + self.sldIN1Out7: ['/Mixer/InputMix', 0, 6], + self.sldIN1Out9: ['/Mixer/InputMix', 0, 8], + self.sldIN2Out2: ['/Mixer/InputMix', 1, 1], + self.sldIN2Out4: ['/Mixer/InputMix', 1, 3], + self.sldIN2Out6: ['/Mixer/InputMix', 1, 5], + self.sldIN2Out8: ['/Mixer/InputMix', 1, 7], + self.sldIN2Out10: ['/Mixer/InputMix', 1, 9], + self.sldIN3Out1: ['/Mixer/InputMix', 2, 0], + self.sldIN3Out3: ['/Mixer/InputMix', 2, 2], + self.sldIN3Out5: ['/Mixer/InputMix', 2, 4], + self.sldIN3Out7: ['/Mixer/InputMix', 2, 6], + self.sldIN3Out9: ['/Mixer/InputMix', 2, 8], + self.sldIN4Out2: ['/Mixer/InputMix', 3, 1], + self.sldIN4Out4: ['/Mixer/InputMix', 3, 3], + self.sldIN4Out6: ['/Mixer/InputMix', 3, 5], + self.sldIN4Out8: ['/Mixer/InputMix', 3, 7], + self.sldIN4Out10: ['/Mixer/InputMix', 3, 9], + self.sldREV1Out1: ['/Mixer/InputMix', 4, 0], + self.sldREV1Out3: ['/Mixer/InputMix', 4, 2], + self.sldREV1Out5: ['/Mixer/InputMix', 4, 4], + self.sldREV1Out7: ['/Mixer/InputMix', 4, 6], + self.sldREV1Out9: ['/Mixer/InputMix', 4, 8], + self.sldREV2Out2: ['/Mixer/InputMix', 5, 1], + self.sldREV2Out4: ['/Mixer/InputMix', 5, 3], + self.sldREV2Out6: ['/Mixer/InputMix', 5, 5], + self.sldREV2Out8: ['/Mixer/InputMix', 5, 7], + self.sldREV2Out10: ['/Mixer/InputMix', 5, 9], + } - self.SelectorControls={ - self.chkSpdifSwitch: ['/Mixer/SpdifSwitch'], - self.chkOut12Mute: ['/Mixer/Out12Mute'], - self.chkOut12HwCtrl: ['/Mixer/Out12HwCtrl'], - self.chkOut12Dim: ['/Mixer/Out12Dim'], - self.chkOut34Mute: ['/Mixer/Out34Mute'], - self.chkOut34HwCtrl: ['/Mixer/Out34HwCtrl'], - self.chkOut56Mute: ['/Mixer/Out56Mute'], - self.chkOut56HwCtrl: ['/Mixer/Out56HwCtrl'], - self.chkOut78Mute: ['/Mixer/Out78Mute'], - self.chkOut78HwCtrl: ['/Mixer/Out78HwCtrl'], - self.chkOut910Mute: ['/Mixer/Out910Mute'], - } + self.SelectorControls={ + self.chkSpdifSwitch: ['/Mixer/SpdifSwitch'], + self.chkOut12Mute: ['/Mixer/Out12Mute'], + self.chkOut12HwCtrl: ['/Mixer/Out12HwCtrl'], + self.chkOut12Dim: ['/Mixer/Out12Dim'], + self.chkOut34Mute: ['/Mixer/Out34Mute'], + self.chkOut34HwCtrl: ['/Mixer/Out34HwCtrl'], + self.chkOut56Mute: ['/Mixer/Out56Mute'], + self.chkOut56HwCtrl: ['/Mixer/Out56HwCtrl'], + self.chkOut78Mute: ['/Mixer/Out78Mute'], + self.chkOut78HwCtrl: ['/Mixer/Out78HwCtrl'], + self.chkOut910Mute: ['/Mixer/Out910Mute'], + } - self.VolumeControlsLowRes={ - self.sldOut12Level: ['/Mixer/Out12Level'], - self.sldOut34Level: ['/Mixer/Out34Level'], - self.sldOut56Level: ['/Mixer/Out56Level'], - self.sldOut78Level: ['/Mixer/Out78Level'], - } + self.VolumeControlsLowRes={ + self.sldOut12Level: ['/Mixer/Out12Level'], + self.sldOut34Level: ['/Mixer/Out34Level'], + self.sldOut56Level: ['/Mixer/Out56Level'], + self.sldOut78Level: ['/Mixer/Out78Level'], + } - def updateMatrixVolume(self,a0): - sender = self.sender() - vol = 0x7FFF-a0 - print "set %s %d %d to %d" % ( - self.VolumeControls[sender][0], - self.VolumeControls[sender][1], - self.VolumeControls[sender][2], - vol) - self.hw.setMatrixMixerValue(self.VolumeControls[sender][0], - self.VolumeControls[sender][1], - self.VolumeControls[sender][2], - vol) - def updateLowResVolume(self,a0): - sender = self.sender() - vol = a0 - print "set %s to %d" % ( - self.VolumeControlsLowRes[sender][0], - vol) - self.hw.setDiscrete(self.VolumeControlsLowRes[sender][0], vol) + self.TriggerButtonControls={ + } - def updateSelector(self,a0): - sender = self.sender() - if a0: - state = 1 - else: - state = 0 - print "set %s to %d" % ( - self.SelectorControls[sender][0], - state) - self.hw.setDiscrete(self.SelectorControls[sender][0], state) + self.TextControls={ + } - def updateClockSelection(self,a0): - #disable the combobox - self.comboClockSelect.setEnabled(False) - #change the clock source - self.clockselect.select(a0) - #refresh the clock source selection box - self.initClockSelector() - #make the box available again - self.comboClockSelect.setEnabled(True) + self.saveTextControls={ + } - def initClockSelector(self): - self.comboClockSelect.clear() - nbsources = self.clockselect.count() - for idx in range(nbsources): - desc = self.clockselect.getEnumLabel(idx) - self.comboClockSelect.insertItem(desc) - active_idx = self.clockselect.selected(); - if active_idx >= 0: - self.comboClockSelect.setCurrentItem(active_idx) + self.ComboControls={ + } - def initValues(self): - for ctrl, info in self.VolumeControls.iteritems(): - vol = self.hw.getMatrixMixerValue(self.VolumeControls[ctrl][0], - self.VolumeControls[ctrl][1], - self.VolumeControls[ctrl][2]) - - print "%s volume is %d" % (ctrl.name() , 0x7FFF-vol) - ctrl.setValue(0x7FFF-vol) - - # connect the UI element - QObject.connect(ctrl,SIGNAL('valueChanged(int)'),self.updateMatrixVolume) - - for ctrl, info in self.VolumeControlsLowRes.iteritems(): - vol = self.hw.getDiscrete(self.VolumeControlsLowRes[ctrl][0]) - - print "%s volume is %d" % (ctrl.name() , vol) - ctrl.setValue(vol) - - # connect the UI element - QObject.connect(ctrl,SIGNAL('valueChanged(int)'),self.updateLowResVolume) - - for ctrl, info in self.SelectorControls.iteritems(): - state = self.hw.getDiscrete(self.SelectorControls[ctrl][0]) - print "%s state is %d" % (ctrl.name() , state) - if state: - ctrl.setChecked(True) - else: - ctrl.setChecked(False) - - # connect the UI element - QObject.connect(ctrl,SIGNAL('stateChanged(int)'),self.updateSelector) - - self.initClockSelector() - # connect the clock selector UI element - QObject.connect(self.comboClockSelect, SIGNAL('activated(int)'), self.updateClockSelection) Index: branches/libffado-2.0/support/mixer/mixer_saffirele.ui =================================================================== --- branches/libffado-2.0/support/mixer/mixer_saffirele.ui (revision 1171) +++ (revision ) @@ -1,2600 +1,0 @@ - -SaffireLEMixerUI -Copyright (C) 2005-2008 by Pieter Palmers - - This file is part of FFADO - FFADO = Free Firewire (pro-)audio drivers for linux - - FFADO is based upon FreeBoB. - - 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 - (at your option) version 3 of the License. - - 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. - - - - SaffireLEMixerUI - - - - 0 - 0 - 779 - 381 - - - - Focusrite Saffire LE Mixer - - - - groupBox13 - - - - 11 - 310 - 250 - 60 - - - - Mute - - - - unnamed - - - - chkOut56Mute - - - CH5/&6 - - - - - chkOut34Mute - - - CH3/4 - - - - - chkOut12Mute - - - CH1/2 - - - - - - - groupBox13_2 - - - - 267 - 310 - 238 - 60 - - - - High Gain - - - - unnamed - - - - chkHighGain3 - - - Input 3 - - - - - chkHighGain4 - - - Input 4 - - - - - - - layout54 - - - - 510 - 310 - 160 - 56 - - - - - unnamed - - - - chkSPDIFTransparent - - - S/PDIF Transp - - - - - chkMIDITru - - - &MIDI Tru - - - Alt+M - - - - - - - layout3 - - - - 11 - 11 - 762 - 290 - - - - - unnamed - - - - tabWidget4 - - - - tab - - - Out&1 - - - - unnamed - - - - groupOut14_2 - - - Input Mix - - - - sldIN3Out1 - - - - 81 - 25 - 29 - 175 - - - - 0 - - - 32767 - - - 10000 - - - 1000 - - - Vertical - - - Above - - - 10000 - - - - - sldSPDIF2Out1 - - - - 186 - 25 - 29 - 175 - - - - 0 - - - 32767 - - - 10000 - - - 1000 - - - Vertical - - - Below - - - 10000 - - - - - txtOut14In34_2 - - - - 151 - 206 - 64 - 19 - - - - SPDIF - - - AlignCenter - - - - - txtOut14In34 - - - - 81 - 206 - 64 - 19 - - - - IN3/4 - - - AlignCenter - - - - - sldSPDIF1Out1 - - - - 151 - 25 - 29 - 175 - - - - 0 - - - 32767 - - - 10000 - - - 1000 - - - Vertical - - - Above - - - 10000 - - - - - sldIN4Out1 - - - - 116 - 25 - 29 - 175 - - - - 0 - - - 32767 - - - 10000 - - - 1000 - - - Vertical - - - Below - - - 10000 - - - - - sldIN1Out1 - - - - 11 - 25 - 29 - 175 - - - - 0 - - - 32767 - - - 10000 - - - 1000 - - - Vertical - - - Above - - - 10000 - - - - - sldIN2Out1 - - - - 46 - 25 - 29 - 175 - - - - 0 - - - 32767 - - - 10000 - - - 1000 - - - Vertical - - - Below - - - 10000 - - - - - txtOut14In12 - - - - 11 - 206 - 64 - 19 - - - - IN1/2 - - - AlignCenter - - - - - - groupOut14_3 - - - DAW Return Channel Mix - - - - unnamed - - - - txtOut14PC78 - - - 4 - - - AlignCenter - - - - - txtOut14PC56 - - - 3 - - - AlignCenter - - - - - txtOut14PC34 - - - 2 - - - AlignCenter - - - - - txtOut14PC12 - - - 1 - - - AlignCenter - - - - - txtOut14PC12_2 - - - 5 - - - AlignCenter - - - - - txtOut14PC34_2 - - - 6 - - - AlignCenter - - - - - txtOut14PC56_2 - - - 7 - - - AlignCenter - - - - - txtOut14PC78_2 - - - 8 - - - AlignCenter - - - - - sldPC2Out1 - - - 0 - - - 32767 - - - 10000 - - - 1000 - - - Vertical - - - Both - - - 10000 - - - - - sldPC7Out1 - - - 0 - - - 32767 - - - 10000 - - - 1000 - - - Vertical - - - Both - - - 10000 - - - - - sldPC5Out1 - - - 0 - - - 32767 - - - 10000 - - - 1000 - - - Vertical - - - Both - - - 10000 - - - - - sldPC3Out1 - - - 0 - - - 32767 - - - 10000 - - - 1000 - - - Vertical - - - Both - - - 10000 - - - - - sldPC1Out1 - - - 0 - - - 32767 - - - 10000 - - - 1000 - - - Vertical - - - Both - - - 10000 - - - - - sldPC6Out1 - - - 0 - - - 32767 - - - 10000 - - - 1000 - - - Vertical - - - Both - - - 10000 - - - - - sldPC8Out1 - - - 0 - - - 32767 - - - 10000 - - - 1000 - - - Vertical - - - Both - - - 10000 - - - - - sldPC4Out1 - - - 0 - - - 32767 - - - 10000 - - - 1000 - - - Vertical - - - Both - - - 10000 - - - - - - - - - tab - - - Out&2 - - - - unnamed - - - - groupOut24_2 - - - Input Mix - - - - unnamed - - - - txtOut24In12 - - - IN1/2 - - - AlignCenter - - - - - sldIN3Out2 - - - 0 - - - 32767 - - - 10000 - - - 1000 - - - Vertical - - - Above - - - 10000 - - - - - sldSPDIF2Out2 - - - 0 - - - 32767 - - - 10000 - - - 1000 - - - Vertical - - - Below - - - 10000 - - - - - txtOut24In34_2 - - - SPDIF - - - AlignCenter - - - - - txtOut24In34 - - - IN3/4 - - - AlignCenter - - - - - sldSPDIF1Out2 - - - 0 - - - 32767 - - - 10000 - - - 1000 - - - Vertical - - - Above - - - 10000 - - - - - sldIN4Out2 - - - 0 - - - 32767 - - - 10000 - - - 1000 - - - Vertical - - - Below - - - 10000 - - - - - sldIN1Out2 - - - 0 - - - 32767 - - - 10000 - - - 1000 - - - Vertical - - - Above - - - 10000 - - - - - sldIN2Out2 - - - 0 - - - 32767 - - - 10000 - - - 1000 - - - Vertical - - - Below - - - 10000 - - - - - - - groupOut24_3 - - - DAW Return Channel Mix - - - - unnamed - - - - txtOut24PC78 - - - 4 - - - AlignCenter - - - - - txtOut24PC56 - - - 3 - - - AlignCenter - - - - - txtOut24PC34 - - - 2 - - - AlignCenter - - - - - txtOut24PC12 - - - 1 - - - AlignCenter - - - - - txtOut24PC12_2 - - - 5 - - - AlignCenter - - - - - txtOut24PC34_2 - - - 6 - - - AlignCenter - - - - - txtOut24PC56_2 - - - 7 - - - AlignCenter - - - - - txtOut24PC78_2 - - - 8 - - - AlignCenter - - - - - sldPC2Out2 - - - 0 - - - 32767 - - - 10000 - - - 1000 - - - Vertical - - - Both - - - 10000 - - - - - sldPC7Out2 - - - 0 - - - 32767 - - - 10000 - - - 1000 - - - Vertical - - - Both - - - 10000 - - - - - sldPC5Out2 - - - 0 - - - 32767 - - - 10000 - - - 1000 - - - Vertical - - - Both - - - 10000 - - - - - sldPC3Out2 - - - 0 - - - 32767 - - - 10000 - - - 1000 - - - Vertical - - - Both - - - 10000 - - - - - sldPC1Out2 - - - 0 - - - 32767 - - - 10000 - - - 1000 - - - Vertical - - - Both - - - 10000 - - - - - sldPC6Out2 - - - 0 - - - 32767 - - - 10000 - - - 1000 - - - Vertical - - - Both - - - 10000 - - - - - sldPC8Out2 - - - 0 - - - 32767 - - - 10000 - - - 1000 - - - Vertical - - - Both - - - 10000 - - - - - sldPC4Out2 - - - 0 - - - 32767 - - - 10000 - - - 1000 - - - Vertical - - - Both - - - 10000 - - - - - - - - - tab - - - Out&3 - - - - unnamed - - - - groupOut34_2 - - - Input Mix - - - - unnamed - - - - txtOut34In12 - - - IN1/2 - - - AlignCenter - - - - - sldIN3Out3 - - - 0 - - - 32767 - - - 10000 - - - 1000 - - - Vertical - - - Above - - - 10000 - - - - - sldSPDIF2Out3 - - - 0 - - - 32767 - - - 10000 - - - 1000 - - - Vertical - - - Below - - - 10000 - - - - - txtOut34In34_2 - - - SPDIF - - - AlignCenter - - - - - txtOut34In34 - - - IN3/4 - - - AlignCenter - - - - - sldSPDIF1Out3 - - - 0 - - - 32767 - - - 10000 - - - 1000 - - - Vertical - - - Above - - - 10000 - - - - - sldIN4Out3 - - - 0 - - - 32767 - - - 10000 - - - 1000 - - - Vertical - - - Below - - - 10000 - - - - - sldIN1Out3 - - - 0 - - - 32767 - - - 10000 - - - 1000 - - - Vertical - - - Above - - - 10000 - - - - - sldIN2Out3 - - - 0 - - - 32767 - - - 10000 - - - 1000 - - - Vertical - - - Below - - - 10000 - - - - - - - groupOut34_3 - - - DAW Return Channel Mix - - - - unnamed - - - - txtOut34PC78 - - - 4 - - - AlignCenter - - - - - txtOut34PC56 - - - 3 - - - AlignCenter - - - - - txtOut34PC34 - - - 2 - - - AlignCenter - - - - - txtOut34PC12 - - - 1 - - - AlignCenter - - - - - txtOut34PC12_2 - - - 5 - - - AlignCenter - - - - - txtOut34PC34_2 - - - 6 - - - AlignCenter - - - - - txtOut34PC56_2 - - - 7 - - - AlignCenter - - - - - txtOut34PC78_2 - - - 8 - - - AlignCenter - - - - - sldPC2Out3 - - - 0 - - - 32767 - - - 10000 - - - 1000 - - - Vertical - - - Both - - - 10000 - - - - - sldPC7Out3 - - - 0 - - - 32767 - - - 10000 - - - 1000 - - - Vertical - - - Both - - - 10000 - - - - - sldPC5Out3 - - - 0 - - - 32767 - - - 10000 - - - 1000 - - - Vertical - - - Both - - - 10000 - - - - - sldPC3Out3 - - - 0 - - - 32767 - - - 10000 - - - 1000 - - - Vertical - - - Both - - - 10000 - - - - - sldPC1Out3 - - - 0 - - - 32767 - - - 10000 - - - 1000 - - - Vertical - - - Both - - - 10000 - - - - - sldPC6Out3 - - - 0 - - - 32767 - - - 10000 - - - 1000 - - - Vertical - - - Both - - - 10000 - - - - - sldPC8Out3 - - - 0 - - - 32767 - - - 10000 - - - 1000 - - - Vertical - - - Both - - - 10000 - - - - - sldPC4Out3 - - - 0 - - - 32767 - - - 10000 - - - 1000 - - - Vertical - - - Both - - - 10000 - - - - - - - - - tab - - - Out&4 - - - - unnamed - - - - groupOut44_2 - - - Input Mix - - - - unnamed - - - - txtOut44In12 - - - IN1/2 - - - AlignCenter - - - - - sldIN3Out4 - - - 0 - - - 32767 - - - 10000 - - - 1000 - - - Vertical - - - Above - - - 10000 - - - - - sldSPDIF2Out4 - - - 0 - - - 32767 - - - 10000 - - - 1000 - - - Vertical - - - Below - - - 10000 - - - - - txtOut44In34_2 - - - SPDIF - - - AlignCenter - - - - - txtOut44In34 - - - IN3/4 - - - AlignCenter - - - - - sldSPDIF1Out4 - - - 0 - - - 32767 - - - 10000 - - - 1000 - - - Vertical - - - Above - - - 10000 - - - - - sldIN4Out4 - - - 0 - - - 32767 - - - 10000 - - - 1000 - - - Vertical - - - Below - - - 10000 - - - - - sldIN2Out4 - - - 0 - - - 32767 - - - 10000 - - - 1000 - - - Vertical - - - Below - - - 10000 - - - - - sldIN1Out4 - - - 0 - - - 32767 - - - 10000 - - - 1000 - - - Vertical - - - Above - - - 10000 - - - - - - - groupOut44_3 - - - DAW Return Channel Mix - - - - unnamed - - - - txtOut44PC78 - - - 4 - - - AlignCenter - - - - - txtOut44PC56 - - - 3 - - - AlignCenter - - - - - txtOut44PC34 - - - 2 - - - AlignCenter - - - - - txtOut44PC12 - - - 1 - - - AlignCenter - - - - - txtOut44PC12_2 - - - 5 - - - AlignCenter - - - - - txtOut44PC34_2 - - - 6 - - - AlignCenter - - - - - txtOut44PC56_2 - - - 7 - - - AlignCenter - - - - - txtOut44PC78_2 - - - 8 - - - AlignCenter - - - - - sldPC2Out4 - - - 0 - - - 32767 - - - 10000 - - - 1000 - - - Vertical - - - Both - - - 10000 - - - - - sldPC7Out4 - - - 0 - - - 32767 - - - 10000 - - - 1000 - - - Vertical - - - Both - - - 10000 - - - - - sldPC5Out4 - - - 0 - - - 32767 - - - 10000 - - - 1000 - - - Vertical - - - Both - - - 10000 - - - - - sldPC3Out4 - - - 0 - - - 32767 - - - 10000 - - - 1000 - - - Vertical - - - Both - - - 10000 - - - - - sldPC1Out4 - - - 0 - - - 32767 - - - 10000 - - - 1000 - - - Vertical - - - Both - - - 10000 - - - - - sldPC6Out4 - - - 0 - - - 32767 - - - 10000 - - - 1000 - - - Vertical - - - Both - - - 10000 - - - - - sldPC8Out4 - - - 0 - - - 32767 - - - 10000 - - - 1000 - - - Vertical - - - Both - - - 10000 - - - - - sldPC4Out4 - - - 0 - - - 32767 - - - 10000 - - - 1000 - - - Vertical - - - Both - - - 10000 - - - - - - - - - - groupBox11 - - - Output Level - - - - txtOut14In12_2_2_2 - - - - 110 - 190 - 40 - 20 - - - - 5/6 - - - AlignCenter - - - - - txtOut14In12_2_2 - - - - 60 - 190 - 40 - 20 - - - - 3/4 - - - AlignCenter - - - - - txtOut14In12_2 - - - - 10 - 190 - 40 - 20 - - - - 1/2 - - - AlignCenter - - - - - sldOut12Level - - - - 10 - 30 - 34 - 150 - - - - 0 - - - 255 - - - 1 - - - 4 - - - Vertical - - - Both - - - 32 - - - - - sldOut34Level - - - - 60 - 30 - 34 - 150 - - - - 0 - - - 255 - - - 1 - - - 4 - - - Vertical - - - Both - - - 32 - - - - - sldOut56Level - - - - 110 - 30 - 34 - 150 - - - - 0 - - - 255 - - - 1 - - - 4 - - - Vertical - - - Both - - - 32 - - - - - chkOut56HwCtrl - - - - 120 - 240 - 20 - 21 - - - - - - - - - chkOut34HwCtrl - - - - 70 - 240 - 20 - 21 - - - - - - - - - chkOut12HwCtrl - - - - 20 - 240 - 20 - 21 - - - - - - - - - textLabel1 - - - - 10 - 219 - 140 - 21 - - - - Ignore slider - - - AlignCenter - - - - - - - - btnSaveSettings - - - - 680 - 330 - 90 - 31 - - - - Save - - - Save settings to device - - - - - updateMatrixVolume(int) - updateSelector(int) - init() - - - Index: branches/libffado-2.0/support/mixer/mixer_saffirepro.ui =================================================================== --- branches/libffado-2.0/support/mixer/mixer_saffirepro.ui (revision 1184) +++ (revision ) @@ -1,4431 +1,0 @@ - -SaffireProMixerUI -Copyright (C) 2005-2008 by Pieter Palmers - - This file is part of FFADO - FFADO = Free Firewire (pro-)audio drivers for linux - - FFADO is based upon FreeBoB. - - 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 - (at your option) version 3 of the License. - - 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. - - - - SaffireProMixerUI - - - - 0 - 0 - 840 - 637 - - - - Focusrite Saffire Pro (10/26) Mixer - - - - unnamed - - - - layout22 - - - - unnamed - - - - groupBox1 - - - GroupBoxPanel - - - Sunken - - - Input Mix - - - Vertical - - - - unnamed - - - - tabWidget2 - - - - tab - - - A&nalog - - - - unnamed - - - - sldIMixAnalog10R - - - 0 - - - 32767 - - - 10000 - - - 1000 - - - Vertical - - - Below - - - 10000 - - - - - txtIMixAnalog1R - - - R - - - AlignCenter - - - - - sldIMixAnalog5R - - - 0 - - - 32767 - - - 10000 - - - 1000 - - - Vertical - - - Below - - - 10000 - - - - - txtIMixAnalog3 - - - 3 - - - AlignCenter - - - - - sldIMixAnalog10L - - - 0 - - - 32767 - - - 10000 - - - 1000 - - - Vertical - - - Above - - - 10000 - - - - - txtIMixAnalog2 - - - 2 - - - AlignCenter - - - - - sldIMixAnalog5L - - - 0 - - - 32767 - - - 10000 - - - 1000 - - - Vertical - - - Above - - - 10000 - - - - - sldIMixAnalog7L - - - 0 - - - 32767 - - - 10000 - - - 1000 - - - Vertical - - - Above - - - 10000 - - - - - sldIMixAnalog9R - - - 0 - - - 32767 - - - 10000 - - - 1000 - - - Vertical - - - Below - - - 10000 - - - - - sldIMixAnalog3L - - - 0 - - - 32767 - - - 10000 - - - 1000 - - - Vertical - - - Above - - - 10000 - - - - - sldIMixAnalog1R - - - 0 - - - 32767 - - - 10000 - - - 1000 - - - Vertical - - - Below - - - 10000 - - - - - txtIMixAnalog10R - - - R - - - AlignCenter - - - - - txtIMixAnalog2L - - - L - - - AlignCenter - - - - - txtIMixAnalog1L - - - L - - - AlignCenter - - - - - txtIMixAnalog8R - - - R - - - AlignCenter - - - - - sldIMixAnalog6L - - - 0 - - - 32767 - - - 10000 - - - 1000 - - - Vertical - - - Above - - - 10000 - - - - - txtIMixAnalog6R - - - R - - - AlignCenter - - - - - sldIMixAnalog3R - - - 0 - - - 32767 - - - 10000 - - - 1000 - - - Vertical - - - Below - - - 10000 - - - - - txtIMixAnalog9L - - - L - - - AlignCenter - - - - - txtIMixAnalog5L - - - L - - - AlignCenter - - - - - sldIMixAnalog8R - - - 0 - - - 32767 - - - 10000 - - - 1000 - - - Vertical - - - Below - - - 10000 - - - - - txtIMixAnalog6 - - - 6 - - - AlignCenter - - - - - txtIMixAnalog10L - - - L - - - AlignCenter - - - - - txtIMixAnalog7R - - - R - - - AlignCenter - - - - - txtIMixAnalog3R - - - R - - - AlignCenter - - - - - sldIMixAnalog4L - - - 0 - - - 32767 - - - 10000 - - - 1000 - - - Vertical - - - Above - - - 10000 - - - - - sldIMixAnalog7R - - - 0 - - - 32767 - - - 10000 - - - 1000 - - - Vertical - - - Below - - - 10000 - - - - - sldIMixAnalog2L - - - 0 - - - 32767 - - - 10000 - - - 1000 - - - Vertical - - - Above - - - 10000 - - - - - txtIMixAnalog4 - - - 4 - - - AlignCenter - - - - - txtIMixAnalog9R - - - R - - - AlignCenter - - - - - txtIMixAnalog4R - - - R - - - AlignCenter - - - - - txtIMixAnalog7 - - - 7 - - - AlignCenter - - - - - txtIMixAnalog6L - - - L - - - AlignCenter - - - - - sldIMixAnalog8L - - - 0 - - - 32767 - - - 10000 - - - 1000 - - - Vertical - - - Above - - - 10000 - - - - - sldIMixAnalog4R - - - 0 - - - 32767 - - - 10000 - - - 1000 - - - Vertical - - - Below - - - 10000 - - - - - txtIMixAnalog3L - - - L - - - AlignCenter - - - - - sldIMixAnalog9L - - - 0 - - - 32767 - - - 10000 - - - 1000 - - - Vertical - - - Above - - - 10000 - - - - - sldIMixAnalog6R - - - 0 - - - 32767 - - - 10000 - - - 1000 - - - Vertical - - - Below - - - 10000 - - - - - txtIMixAnalog4L - - - L - - - AlignCenter - - - - - txtIMixAnalog8 - - - 8 - - - AlignCenter - - - - - txtIMixAnalog10 - - - 10 - - - AlignCenter - - - - - txtIMixAnalog7L - - - L - - - AlignCenter - - - - - txtIMixAnalog5R - - - R - - - AlignCenter - - - - - sldIMixAnalog2R - - - 0 - - - 32767 - - - 10000 - - - 1000 - - - Vertical - - - Below - - - 10000 - - - - - txtIMixAnalog5 - - - 5 - - - AlignCenter - - - - - txtIMixAnalog8L - - - L - - - AlignCenter - - - - - txtIMixAnalog9 - - - 9 - - - AlignCenter - - - - - txtIMixAnalog2R - - - R - - - AlignCenter - - - - - sldIMixAnalog1L - - - 0 - - - 32767 - - - 10000 - - - 1000 - - - Vertical - - - Above - - - 10000 - - - - - txtIMixAnalog1 - - - 1 - - - AlignCenter - - - - - - - TabPage - - - ADAT2 - - - - unnamed - - - - sldIMixADAT26L - - - 0 - - - 32767 - - - 10000 - - - 1000 - - - Vertical - - - Above - - - 10000 - - - - - sldIMixADAT24R - - - 0 - - - 32767 - - - 10000 - - - 1000 - - - Vertical - - - Below - - - 10000 - - - - - txtIMixADAT21R - - - R - - - AlignCenter - - - - - sldIMixADAT28R - - - 0 - - - 32767 - - - 10000 - - - 1000 - - - Vertical - - - Below - - - 10000 - - - - - txtIMixADAT25R - - - R - - - AlignCenter - - - - - txtIMixADAT23 - - - 3 - - - AlignCenter - - - - - txtIMixADAT23L - - - L - - - AlignCenter - - - - - txtIMixADAT27 - - - 7 - - - AlignCenter - - - - - txtIMixADAT27L - - - L - - - AlignCenter - - - - - sldIMixADAT21L - - - - 0 - 100 - - - - 0 - - - 32767 - - - 10000 - - - 1000 - - - Vertical - - - Above - - - 10000 - - - - - sldIMixADAT25L - - - 0 - - - 32767 - - - 10000 - - - 1000 - - - Vertical - - - Above - - - 10000 - - - - - sldIMixADAT23R - - - 0 - - - 32767 - - - 10000 - - - 1000 - - - Vertical - - - Below - - - 10000 - - - - - sldIMixADAT27R - - - 0 - - - 32767 - - - 10000 - - - 1000 - - - Vertical - - - Below - - - 10000 - - - - - txtIMixADAT24R - - - R - - - AlignCenter - - - - - txtIMixADAT28R - - - R - - - AlignCenter - - - - - txtIMixADAT22 - - - 2 - - - AlignCenter - - - - - txtIMixADAT22L - - - L - - - AlignCenter - - - - - txtIMixADAT21L - - - L - - - AlignCenter - - - - - txtIMixADAT26 - - - 6 - - - AlignCenter - - - - - txtIMixADAT26L - - - L - - - AlignCenter - - - - - sldIMixADAT24L - - - 0 - - - 32767 - - - 10000 - - - 1000 - - - Vertical - - - Above - - - 10000 - - - - - sldIMixADAT22R - - - 0 - - - 32767 - - - 10000 - - - 1000 - - - Vertical - - - Below - - - 10000 - - - - - sldIMixADAT28L - - - 0 - - - 32767 - - - 10000 - - - 1000 - - - Vertical - - - Above - - - 10000 - - - - - sldIMixADAT26R - - - 0 - - - 32767 - - - 10000 - - - 1000 - - - Vertical - - - Below - - - 10000 - - - - - txtIMixADAT23R - - - R - - - AlignCenter - - - - - txtIMixADAT27R - - - R - - - AlignCenter - - - - - txtIMixADAT21 - - - 1 - - - AlignCenter - - - - - txtIMixADAT25 - - - 5 - - - AlignCenter - - - - - txtIMixADAT25L - - - L - - - AlignCenter - - - - - sldIMixADAT23L - - - 0 - - - 32767 - - - 10000 - - - 1000 - - - Vertical - - - Above - - - 10000 - - - - - sldIMixADAT21R - - - 0 - - - 32767 - - - 10000 - - - 1000 - - - Vertical - - - Below - - - 10000 - - - - - sldIMixADAT27L - - - 0 - - - 32767 - - - 10000 - - - 1000 - - - Vertical - - - Above - - - 10000 - - - - - sldIMixADAT25R - - - 0 - - - 32767 - - - 10000 - - - 1000 - - - Vertical - - - Below - - - 10000 - - - - - txtIMixADAT22R - - - R - - - AlignCenter - - - - - txtIMixADAT26R - - - R - - - AlignCenter - - - - - txtIMixADAT24 - - - 4 - - - AlignCenter - - - - - txtIMixADAT24L - - - L - - - AlignCenter - - - - - txtIMixADAT28 - - - 8 - - - AlignCenter - - - - - txtIMixADAT28L - - - L - - - AlignCenter - - - - - sldIMixADAT22L - - - 0 - - - 32767 - - - 10000 - - - 1000 - - - Vertical - - - Above - - - 10000 - - - - - - - tab - - - &ADAT1 - - - - unnamed - - - - sldIMixADAT12L - - - 0 - - - 32767 - - - 10000 - - - 1000 - - - Vertical - - - Above - - - 10000 - - - - - txtIMixADAT12 - - - 2 - - - AlignCenter - - - - - sldIMixADAT18L - - - 0 - - - 32767 - - - 10000 - - - 1000 - - - Vertical - - - Above - - - 10000 - - - - - txtIMixADAT18L - - - L - - - AlignCenter - - - - - txtIMixADAT15R - - - R - - - AlignCenter - - - - - txtIMixADAT14L - - - L - - - AlignCenter - - - - - sldIMixADAT18R - - - 0 - - - 32767 - - - 10000 - - - 1000 - - - Vertical - - - Below - - - 10000 - - - - - txtIMixADAT17R - - - R - - - AlignCenter - - - - - txtIMixADAT18R - - - R - - - AlignCenter - - - - - txtIMixADAT17 - - - 7 - - - AlignCenter - - - - - txtIMixADAT11L - - - L - - - AlignCenter - - - - - txtIMixADAT16 - - - 6 - - - AlignCenter - - - - - txtIMixADAT14 - - - 4 - - - AlignCenter - - - - - txtIMixADAT13L - - - L - - - AlignCenter - - - - - txtIMixADAT16R - - - R - - - AlignCenter - - - - - txtIMixADAT15 - - - 5 - - - AlignCenter - - - - - sldIMixADAT13R - - - 0 - - - 32767 - - - 10000 - - - 1000 - - - Vertical - - - Below - - - 10000 - - - - - sldIMixADAT17R - - - 0 - - - 32767 - - - 10000 - - - 1000 - - - Vertical - - - Below - - - 10000 - - - - - sldIMixADAT17L - - - 0 - - - 32767 - - - 10000 - - - 1000 - - - Vertical - - - Above - - - 10000 - - - - - sldIMixADAT15L - - - 0 - - - 32767 - - - 10000 - - - 1000 - - - Vertical - - - Above - - - 10000 - - - - - sldIMixADAT12R - - - 0 - - - 32767 - - - 10000 - - - 1000 - - - Vertical - - - Below - - - 10000 - - - - - txtIMixADAT12R - - - R - - - AlignCenter - - - - - sldIMixADAT15R - - - 0 - - - 32767 - - - 10000 - - - 1000 - - - Vertical - - - Below - - - 10000 - - - - - txtIMixADAT14R - - - R - - - AlignCenter - - - - - sldIMixADAT14L - - - 0 - - - 32767 - - - 10000 - - - 1000 - - - Vertical - - - Above - - - 10000 - - - - - txtIMixADAT13R - - - R - - - AlignCenter - - - - - txtIMixADAT18 - - - 8 - - - AlignCenter - - - - - sldIMixADAT13L - - - 0 - - - 32767 - - - 10000 - - - 1000 - - - Vertical - - - Above - - - 10000 - - - - - sldIMixADAT11R - - - 0 - - - 32767 - - - 10000 - - - 1000 - - - Vertical - - - Below - - - 10000 - - - - - txtIMixADAT16L - - - L - - - AlignCenter - - - - - sldIMixADAT14R - - - 0 - - - 32767 - - - 10000 - - - 1000 - - - Vertical - - - Below - - - 10000 - - - - - txtIMixADAT12L - - - L - - - AlignCenter - - - - - txtIMixADAT11R - - - R - - - AlignCenter - - - - - sldIMixADAT16L - - - 0 - - - 32767 - - - 10000 - - - 1000 - - - Vertical - - - Above - - - 10000 - - - - - txtIMixADAT15L - - - L - - - AlignCenter - - - - - sldIMixADAT11L - - - 0 - - - 32767 - - - 10000 - - - 1000 - - - Vertical - - - Above - - - 10000 - - - - - txtIMixADAT11 - - - 1 - - - AlignCenter - - - - - txtIMixADAT17L - - - L - - - AlignCenter - - - - - txtIMixADAT13 - - - 3 - - - AlignCenter - - - - - sldIMixADAT16R - - - 0 - - - 32767 - - - 10000 - - - 1000 - - - Vertical - - - Below - - - 10000 - - - - - - - - - - layout21 - - - - unnamed - - - - groupBox14 - - - Output Mix - - - - unnamed - - - - tabWidget14 - - - - tab - - - Out1/&2 - - - - unnamed - - - - layout58 - - - - unnamed - - - - chkMute12 - - - Mute - - - - - - - - chkMonitor2 - - - CH2 Direct Mon - - - - - - - - chkDim12 - - - &Level Dim - - - Alt+L - - - - - chkMonitor1 - - - CH1 Direct Mon - - - - - - - - chkHwCtrl12 - - - Front dial control - - - - - - - - chkPad12 - - - &Monitor Pad - - - Alt+M - - - - - - - layout55 - - - - unnamed - - - - txtOmixO1 - - - Out1 - - - AlignCenter - - - - - txtOMixPC1O1 - - - PC1 - - - AlignCenter - - - - - sldOMixPC1O1 - - - 0 - - - 32767 - -