Changeset 645

Show
Ignore:
Timestamp:
10/14/07 11:22:21 (16 years ago)
Author:
ppalmers
Message:

merge all mixers into one application

Files:

Legend:

Unmodified
Added
Removed
Modified
Copied
Moved
  • trunk/libffado/support/mixer/mixer.py

    r644 r645  
    33 
    44from qt import * 
    5 from mixer_phase88ui import * 
     5from mixer_phase88 import * 
     6from mixer_phase24 import * 
    67import sys 
     8import dbus 
    79 
    810SupportedDevices=[ 
    911    [(0x000aac, 0x00000003),'Phase88Control'], 
     12    [(0x000aac, 0x00000004),'PhaseX24Control'], 
     13    [(0x000aac, 0x00000007),'PhaseX24Control'], 
    1014    ] 
    1115 
     
    8286    nbDevices=devmgr.getNbDevices() 
    8387     
     88    forms=[]; 
    8489    for idx in range(nbDevices): 
    8590        path=devmgr.getDeviceName(idx) 
     
    97102            if dev[0]==thisdev: 
    98103                print dev[1] 
    99                 exec('f='+dev[1]+'()') 
    100                 f.hw=ControlInterface(server, basepath+'/DeviceManager/'+path) 
    101                 f.initValues() 
    102                 f.show() 
    103      
    104     app.setMainWidget(f) 
     104                exec('forms.append('+dev[1]+'())') 
     105                forms[idx].hw=ControlInterface(server, basepath+'/DeviceManager/'+path) 
     106                forms[idx].initValues() 
     107                forms[idx].show() 
     108                app.setMainWidget(forms[idx]) 
     109 
     110    QObject.connect(app,SIGNAL("lastWindowClosed()"),app,SLOT("quit()")) 
     111 
    105112    app.exec_loop() 
  • trunk/libffado/support/mixer/mixer_phase24.py

    r489 r645  
    11# -*- coding: utf-8 -*- 
    22 
    3 import sys 
    43from qt import * 
    54from mixer_phase24ui import * 
    65 
    7 import osc 
     6class PhaseX24Control(PhaseX24ControlUI): 
     7    def __init__(self,parent = None,name = None,modal = 0,fl = 0): 
     8        PhaseX24ControlUI.__init__(self,parent,name,modal,fl) 
    89 
    9 class mixer_phase24(mixer_phase24ui): 
    10     def __init__(self,parent = None,name = None,modal = 0,fl = 0): 
    11         mixer_phase24ui.__init__(self,parent,name,modal,fl) 
    12  
    13     def __set_volume(self, id, vol): 
    14         osc.Message("/devicemanager/dev0/GenericMixer/Feature/%i" % id, 
    15                     ["set", "volume", 0, vol]).sendlocal(17820) 
    16          
    17     def __set_selector(self, id, val): 
    18         osc.Message("/devicemanager/dev0/GenericMixer/Selector/%i" % id, 
    19                     ["set", "value", val]).sendlocal(17820) 
    20          
    2110    # public slot 
    2211    def setVolume12(self,a0): 
    23         self.__set_volume(3, -a0) 
     12        self.setVolume('out12', -a0) 
    2413 
    2514    # public slot 
    2615    def setVolume34(self,a0): 
    27         self.__set_volume(4, -a0) 
     16        self.setVolume('out34', -a0) 
    2817 
    2918    # public slot 
    3019    def setVolumeLineIn(self,a0): 
    31         self.__set_volume(6, -a0) 
     20        self.setVolume('analogin', -a0) 
    3221 
    3322    # public slot 
    3423    def setVolumeSPDIFOut(self,a0): 
    35         self.__set_volume(5, -a0) 
     24        self.setVolume('outspdif', -a0) 
    3625 
    3726    # public slot 
    3827    def setVolumeSPDIFIn(self,a0): 
    39         self.__set_volume(7, -a0) 
     28        self.setVolume('spdifin', -a0) 
    4029 
    4130    # public slot 
    4231    def setVolumeMaster(self,a0): 
    43         self.__set_volume(1, -a0) 
     32        self.setVolume('master', -a0) 
    4433 
    4534    # public slot 
    4635    def setLineLevel(self,a0): 
    47         self.__set_volume(2, a0 * -768) 
    48          
     36        print "setting line level to %d" % (a0 * -768) 
     37        self.hw.setContignuous('/Mixer/Feature_2', a0 * -768) 
     38 
    4939    # public slot 
    5040    def setFrontLevel(self,a0): 
    5141        if(a0 == 0): 
    52             self.__set_volume(8, 0) 
     42            print "setting front level to %d" % (0) 
     43            self.hw.setContignuous('/Mixer/Feature_8', 0) 
    5344        else: 
    54             self.__set_volume(8, 1536) 
     45            print "setting front level to %d" % (1536) 
     46            self.hw.setContignuous('/Mixer/Feature_8', 1536) 
    5547 
    5648    # public slot 
    5749    def setOutSource12(self,a0): 
    58         self.__set_selector(1, a0) 
     50        self.setSelector('outsource12', a0) 
    5951 
    6052    # public slot 
    6153    def setOutSource34(self,a0): 
    62         self.__set_selector(2, a0) 
     54        self.setSelector('outsource34', a0) 
    6355 
    6456    # public slot 
    6557    def setOutSourceSPDIF(self,a0): 
    66         self.__set_selector(3, a0) 
     58        self.setSelector('outsourcespdif', a0) 
    6759 
    6860    # public slot 
    6961    def setSyncSource(self,a0): 
    70         self.__set_selector(4, a0) 
     62        self.setSelector('syncsource', a0) 
    7163 
    7264 
    73 if __name__ == "__main__": 
    74     a = QApplication(sys.argv) 
    75     QObject.connect(a,SIGNAL("lastWindowClosed()"),a,SLOT("quit()")) 
    76     w = mixer_phase24() 
    77     a.setMainWidget(w) 
    78     w.show() 
    79     a.exec_loop() 
     65    def setVolume(self,a0,a1): 
     66            name=a0 
     67            vol = -a1 
     68            print "setting %s volume to %d" % (name, vol) 
     69            self.hw.setContignuous(self.VolumeControls[name][0], vol) 
     70 
     71    def setSelector(self,a0,a1): 
     72            name=a0 
     73            state = a1 
     74            print "setting %s state to %d" % (name, state) 
     75            self.hw.setDiscrete(self.SelectorControls[name][0], state) 
     76 
     77    def init(self): 
     78            print "Init PhaseX24 mixer window" 
     79 
     80            self.VolumeControls={ 
     81                'master':         ['/Mixer/Feature_1', self.sldMaster],  
     82                'analogin' :      ['/Mixer/Feature_6', self.sldLineIn], 
     83                'spdifin' :       ['/Mixer/Feature_7', self.sldSPDIFIn], 
     84                'out12' :         ['/Mixer/Feature_3', self.sldInput12], 
     85                'out34' :         ['/Mixer/Feature_4', self.sldInput34], 
     86                'outspdif' :      ['/Mixer/Feature_5', self.sldInputSPDIF], 
     87                } 
     88 
     89            self.SelectorControls={ 
     90                'outsource12':    ['/Mixer/Selector_1', self.cmbOutSource12],  
     91                'outsource34':    ['/Mixer/Selector_2', self.cmbOutSource34],  
     92                'outsourcespdif': ['/Mixer/Selector_3', self.cmbOutSourceSPDIF],  
     93                'syncsource':     ['/Mixer/Selector_4', self.cmbSetSyncSource],  
     94            } 
     95 
     96    def initValues(self): 
     97            for name, ctrl in self.VolumeControls.iteritems(): 
     98                vol = self.hw.getContignuous(ctrl[0]) 
     99                print "%s volume is %d" % (name , vol) 
     100                ctrl[1].setValue(-vol) 
     101 
     102            for name, ctrl in self.SelectorControls.iteritems(): 
     103                state = self.hw.getDiscrete(ctrl[0]) 
     104                print "%s state is %d" % (name , state) 
     105                ctrl[1].setCurrentItem(state)     
     106 
     107            val=self.hw.getContignuous('/Mixer/Feature_2')/-768 
     108            if val>4: 
     109                self.cmbFrontLevel.setCurrentItem(4) 
     110            else: 
     111                self.cmbFrontLevel.setCurrentItem(val) 
     112 
     113            val=self.hw.getContignuous('/Mixer/Feature_8') 
     114            if val>0: 
     115                self.cmbFrontLevel.setCurrentItem(1) 
     116            else: 
     117                self.cmbFrontLevel.setCurrentItem(0) 
     118            
  • trunk/libffado/support/mixer/mixer_phase24.ui

    r489 r645  
    11<!DOCTYPE UI><UI version="3.3" stdsetdef="1"> 
    2 <class>mixer_phase24ui</class> 
    3 <comment>Python: 
    4 Python:# Import the OSC module 
    5 Python:import osc 
     2<class>PhaseX24ControlUI</class> 
     3<comment> 
    64</comment> 
    75<widget class="QDialog"> 
    86    <property name="name"> 
    9         <cstring>mixer_phase24ui</cstring> 
     7        <cstring>PhaseX24ControlUI</cstring> 
    108    </property> 
    119    <property name="geometry"> 
     
    698696        <sender>sldInput12</sender> 
    699697        <signal>valueChanged(int)</signal> 
    700         <receiver>mixer_phase24ui</receiver> 
     698        <receiver>PhaseX24ControlUI</receiver> 
    701699        <slot>setVolume12(int)</slot> 
    702700    </connection> 
     
    704702        <sender>sldInput34</sender> 
    705703        <signal>valueChanged(int)</signal> 
    706         <receiver>mixer_phase24ui</receiver> 
     704        <receiver>PhaseX24ControlUI</receiver> 
    707705        <slot>setVolume34(int)</slot> 
    708706    </connection> 
     
    710708        <sender>sldLineIn</sender> 
    711709        <signal>valueChanged(int)</signal> 
    712         <receiver>mixer_phase24ui</receiver> 
     710        <receiver>PhaseX24ControlUI</receiver> 
    713711        <slot>setVolumeLineIn(int)</slot> 
    714712    </connection> 
     
    716714        <sender>sldSPDIFOut</sender> 
    717715        <signal>valueChanged(int)</signal> 
    718         <receiver>mixer_phase24ui</receiver> 
     716        <receiver>PhaseX24ControlUI</receiver> 
    719717        <slot>setVolumeSPDIFOut(int)</slot> 
    720718    </connection> 
     
    722720        <sender>sldSPDIFIn</sender> 
    723721        <signal>valueChanged(int)</signal> 
    724         <receiver>mixer_phase24ui</receiver> 
     722        <receiver>PhaseX24ControlUI</receiver> 
    725723        <slot>setVolumeSPDIFIn(int)</slot> 
    726724    </connection> 
     
    728726        <sender>sldMaster</sender> 
    729727        <signal>valueChanged(int)</signal> 
    730         <receiver>mixer_phase24ui</receiver> 
     728        <receiver>PhaseX24ControlUI</receiver> 
    731729        <slot>setVolumeMaster(int)</slot> 
    732730    </connection> 
     
    734732        <sender>cmbFrontLevel</sender> 
    735733        <signal>activated(int)</signal> 
    736         <receiver>mixer_phase24ui</receiver> 
     734        <receiver>PhaseX24ControlUI</receiver> 
    737735        <slot>setFrontLevel(int)</slot> 
    738736    </connection> 
     
    740738        <sender>cmbSetSyncSource</sender> 
    741739        <signal>activated(int)</signal> 
    742         <receiver>mixer_phase24ui</receiver> 
     740        <receiver>PhaseX24ControlUI</receiver> 
    743741        <slot>setSyncSource(int)</slot> 
    744742    </connection> 
     
    746744        <sender>cmbOutSourceSPDIF</sender> 
    747745        <signal>activated(int)</signal> 
    748         <receiver>mixer_phase24ui</receiver> 
     746        <receiver>PhaseX24ControlUI</receiver> 
    749747        <slot>setOutSourceSPDIF(int)</slot> 
    750748    </connection> 
     
    752750        <sender>cmbOutSource12</sender> 
    753751        <signal>activated(int)</signal> 
    754         <receiver>mixer_phase24ui</receiver> 
     752        <receiver>PhaseX24ControlUI</receiver> 
    755753        <slot>setOutSource12(int)</slot> 
    756754    </connection> 
     
    758756        <sender>cmbOutSource34</sender> 
    759757        <signal>activated(int)</signal> 
    760         <receiver>mixer_phase24ui</receiver> 
     758        <receiver>PhaseX24ControlUI</receiver> 
    761759        <slot>setOutSource34(int)</slot> 
    762760    </connection> 
     
    764762        <sender>cmbLineLevel</sender> 
    765763        <signal>activated(int)</signal> 
    766         <receiver>mixer_phase24ui</receiver> 
     764        <receiver>PhaseX24ControlUI</receiver> 
    767765        <slot>setLineLevel(int)</slot> 
    768766    </connection> 
  • trunk/libffado/support/mixer/mixer_phase88.ui

    r644 r645  
    11<!DOCTYPE UI><UI version="3.3" stdsetdef="1"> 
    2 <class>Phase88Control</class> 
    3 <comment>Python: 
    4 Python:# Import the DBUS module 
    5 Python:import dbus 
     2<class>Phase88ControlUI</class> 
     3<comment> 
    64</comment> 
    75<widget class="QDialog"> 
    86    <property name="name"> 
    9         <cstring>Phase88Control</cstring> 
     7        <cstring>Phase88ControlUI</cstring> 
    108    </property> 
    119    <property name="geometry"> 
     
    621619        <sender>comboOutAssign</sender> 
    622620        <signal>activated(int)</signal> 
    623         <receiver>Phase88Control</receiver> 
     621        <receiver>Phase88ControlUI</receiver> 
    624622        <slot>switchOutAssign(int)</slot> 
    625623    </connection> 
     
    627625        <sender>comboFrontBack</sender> 
    628626        <signal>activated(int)</signal> 
    629         <receiver>Phase88Control</receiver> 
     627        <receiver>Phase88ControlUI</receiver> 
    630628        <slot>switchFrontState(int)</slot> 
    631629    </connection> 
     
    633631        <sender>comboInAssign</sender> 
    634632        <signal>activated(int)</signal> 
    635         <receiver>Phase88Control</receiver> 
     633        <receiver>Phase88ControlUI</receiver> 
    636634        <slot>switchWaveInAssign(int)</slot> 
    637635    </connection> 
     
    639637        <sender>comboSyncSource</sender> 
    640638        <signal>activated(int)</signal> 
    641         <receiver>Phase88Control</receiver> 
     639        <receiver>Phase88ControlUI</receiver> 
    642640        <slot>switchSyncSource(int)</slot> 
    643641    </connection> 
     
    645643        <sender>comboExtSync</sender> 
    646644        <signal>activated(int)</signal> 
    647         <receiver>Phase88Control</receiver> 
     645        <receiver>Phase88ControlUI</receiver> 
    648646        <slot>switchExtSyncSource(int)</slot> 
    649647    </connection> 
     
    651649        <sender>sldInput12</sender> 
    652650        <signal>valueChanged(int)</signal> 
    653         <receiver>Phase88Control</receiver> 
     651        <receiver>Phase88ControlUI</receiver> 
    654652        <slot>setVolume12(int)</slot> 
    655653    </connection> 
     
    657655        <sender>sldInput34</sender> 
    658656        <signal>valueChanged(int)</signal> 
    659         <receiver>Phase88Control</receiver> 
     657        <receiver>Phase88ControlUI</receiver> 
    660658        <slot>setVolume34(int)</slot> 
    661659    </connection> 
     
    663661        <sender>sldInput56</sender> 
    664662        <signal>valueChanged(int)</signal> 
    665         <receiver>Phase88Control</receiver> 
     663        <receiver>Phase88ControlUI</receiver> 
    666664        <slot>setVolume56(int)</slot> 
    667665    </connection> 
     
    669667        <sender>sldInput78</sender> 
    670668        <signal>valueChanged(int)</signal> 
    671         <receiver>Phase88Control</receiver> 
     669        <receiver>Phase88ControlUI</receiver> 
    672670        <slot>setVolume78(int)</slot> 
    673671    </connection> 
     
    675673        <sender>sldInputMaster</sender> 
    676674        <signal>valueChanged(int)</signal> 
    677         <receiver>Phase88Control</receiver> 
     675        <receiver>Phase88ControlUI</receiver> 
    678676        <slot>setVolumeMaster(int)</slot> 
    679677    </connection> 
     
    681679        <sender>sldInputSPDIF</sender> 
    682680        <signal>valueChanged(int)</signal> 
    683         <receiver>Phase88Control</receiver> 
     681        <receiver>Phase88ControlUI</receiver> 
    684682        <slot>setVolumeSPDIF(int)</slot> 
    685683    </connection> 
     
    687685        <sender>sldInputWavePlay</sender> 
    688686        <signal>valueChanged(int)</signal> 
    689         <receiver>Phase88Control</receiver> 
     687        <receiver>Phase88ControlUI</receiver> 
    690688        <slot>setVolumeWavePlay(int)</slot> 
    691689    </connection>