Index: /trunk/libffado/support/mixer/SConscript
===================================================================
--- /trunk/libffado/support/mixer/SConscript (revision 772)
+++ /trunk/libffado/support/mixer/SConscript (revision 799)
@@ -29,5 +29,5 @@
e = env.Clone()
- e['MIXERAPPS'] = [ 'phase24', 'phase88', 'saffirepro', 'saffire', 'af2', 'aktest' ]
+ e['MIXERAPPS'] = [ 'phase24', 'phase88', 'saffirepro', 'saffire', 'af2', 'bcoaudio5', 'aktest' ]
e['PYTHONDIR'] = Template( os.path.join( e['SHAREDIR'], 'python' ) ).safe_substitute( e )
Index: /trunk/libffado/support/mixer/mixer_bcoaudio5.ui
===================================================================
--- /trunk/libffado/support/mixer/mixer_bcoaudio5.ui (revision 799)
+++ /trunk/libffado/support/mixer/mixer_bcoaudio5.ui (revision 799)
@@ -0,0 +1,546 @@
+
+BCoAudio5ControlUI
+Copyright (C) 2005-2007 by Daniel Wagner
+
+ 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 3 of the License, or
+ (at your option) any later version.
+
+ This program is distributed in the hope that it will be useful,
+ but WITHOUT ANY WARRANTY; without even the implied warranty of
+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ GNU General Public License for more details.
+
+
+
+ BCoAudio5ControlUI
+
+
+
+ 0
+ 0
+ 403
+ 257
+
+
+
+ BridgeCo Audio 5 Control
+
+
+
+ groupBox1
+
+
+
+ 10
+ 10
+ 160
+ 181
+
+
+
+ Input
+
+
+
+ textLabel2_2
+
+
+
+ 60
+ 20
+ 22
+ 21
+
+
+
+ 3/4
+
+
+
+
+ textLabel2_4_2
+
+
+
+ 100
+ 20
+ 41
+ 21
+
+
+
+ S/PDIF
+
+
+
+
+ sldInputSPDIF
+
+
+
+ 100
+ 50
+ 24
+ 120
+
+
+
+ 0
+
+
+ 32767
+
+
+ 10000
+
+
+ 1000
+
+
+ Vertical
+
+
+ Both
+
+
+ 10000
+
+
+
+
+ sldInput34
+
+
+
+ 60
+ 50
+ 24
+ 120
+
+
+
+ 0
+
+
+ 32767
+
+
+ 10000
+
+
+ 1000
+
+
+ Vertical
+
+
+ Both
+
+
+ 10000
+
+
+
+
+ textLabel2
+
+
+
+ 20
+ 20
+ 22
+ 21
+
+
+
+ 1/2
+
+
+
+
+ sldInput12
+
+
+
+ 20
+ 50
+ 24
+ 120
+
+
+
+ 0
+
+
+ 32767
+
+
+ 10000
+
+
+ 1000
+
+
+ Vertical
+
+
+ Both
+
+
+ 10000
+
+
+
+
+
+ groupBox1_2
+
+
+
+ 180
+ 10
+ 100
+ 181
+
+
+
+ Output
+
+
+
+ textLabel2_3
+
+
+
+ 20
+ 20
+ 22
+ 21
+
+
+
+ 1/2
+
+
+
+
+ sldOutput12
+
+
+
+ 20
+ 50
+ 24
+ 120
+
+
+
+ 0
+
+
+ 32767
+
+
+ 10000
+
+
+ 1000
+
+
+ Vertical
+
+
+ Both
+
+
+ 10000
+
+
+
+
+ sldOutput34
+
+
+
+ 60
+ 50
+ 24
+ 120
+
+
+
+ 0
+
+
+ 32767
+
+
+ 10000
+
+
+ 1000
+
+
+ Vertical
+
+
+ Both
+
+
+ 10000
+
+
+
+
+ textLabel2_2_2
+
+
+
+ 60
+ 20
+ 22
+ 21
+
+
+
+ 3/4
+
+
+
+
+
+ groupBox1_2_2
+
+
+
+ 290
+ 10
+ 100
+ 181
+
+
+
+ Cross
+
+
+
+ sldCrossA
+
+
+
+ 20
+ 50
+ 24
+ 120
+
+
+
+ 0
+
+
+ 32767
+
+
+ 10000
+
+
+ 1000
+
+
+ Vertical
+
+
+ Both
+
+
+ 10000
+
+
+
+
+ sldCrossB
+
+
+
+ 60
+ 50
+ 24
+ 120
+
+
+
+ 0
+
+
+ 32767
+
+
+ 10000
+
+
+ 1000
+
+
+ Vertical
+
+
+ Both
+
+
+ 10000
+
+
+
+
+ textLabel2_3_2
+
+
+
+ 20
+ 20
+ 22
+ 21
+
+
+
+ A
+
+
+
+
+ textLabel2_2_2_2
+
+
+
+ 60
+ 20
+ 22
+ 21
+
+
+
+ B
+
+
+
+
+
+ textLabel1_2_3_2
+
+
+
+ 10
+ 210
+ 190
+ 30
+
+
+
+ Output 3/4 Source
+
+
+
+ -
+
+ Line 3/4
+
+
+ -
+
+ Mix
+
+
+ -
+
+ SPDIF
+
+
+
+ comboMixSource
+
+
+
+ 200
+ 210
+ 100
+ 31
+
+
+
+
+
+
+ sldInput12
+ sliderMoved(int)
+ BCoAudio5ControlUI
+ setVolumeIn12(int)
+
+
+ sldInput34
+ sliderMoved(int)
+ BCoAudio5ControlUI
+ setVolumeIn34(int)
+
+
+ sldInputSPDIF
+ sliderMoved(int)
+ BCoAudio5ControlUI
+ setVolumeInSPDIF(int)
+
+
+ sldOutput12
+ sliderMoved(int)
+ BCoAudio5ControlUI
+ setVolumeOut12(int)
+
+
+ sldOutput34
+ sliderMoved(int)
+ BCoAudio5ControlUI
+ setVolumeOut34(int)
+
+
+ sldCrossA
+ sliderMoved(int)
+ BCoAudio5ControlUI
+ setCrossA(int)
+
+
+ sldCrossB
+ sliderMoved(int)
+ BCoAudio5ControlUI
+ setCrossB(int)
+
+
+ comboMixSource
+ activated(int)
+ BCoAudio5ControlUI
+ setComboMixSource(int)
+
+
+
+ mixer_bcoaudio5.ui.h
+
+
+ setVolumeIn12( int )
+ setVolumeIn34( int )
+ setVolumeInSPDIF( int )
+ setVolume( QString, int )
+ init()
+ initValues()
+ setSelector( QString, int )
+ setVolumeOut12( int )
+ setVolumeOut34( int )
+ setCrossA( int )
+ setCrossB( int )
+ setComboMixSource( int )
+
+
+
Index: /trunk/libffado/support/mixer/mixer_bcoaudio5.py
===================================================================
--- /trunk/libffado/support/mixer/mixer_bcoaudio5.py (revision 799)
+++ /trunk/libffado/support/mixer/mixer_bcoaudio5.py (revision 799)
@@ -0,0 +1,92 @@
+#
+# Copyright (C) 2005-2007 by Daniel Wagner
+#
+# 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 3 of the License, or
+# (at your option) any later version.
+#
+# This program is distributed in the hope that it will be useful,
+# but WITHOUT ANY WARRANTY; without even the implied warranty of
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+# GNU General Public License for more details.
+#
+# You should have received a copy of the GNU General Public License
+# along with this program. If not, see .
+#
+
+from qt import *
+from mixer_bcoaudio5ui import *
+
+class BCoAudio5Control(BCoAudio5ControlUI):
+ def __init__(self,parent = None,name = None,modal = 0,fl = 0):
+ BCoAudio5ControlUI.__init__(self,parent,name,modal,fl)
+
+ def setComboMixSource(self,a0):
+ self.setSelector('line34source', a0)
+
+ def setVolumeIn12(self,a0):
+ self.setVolume('in_line12', a0)
+
+ def setVolumeIn34(self,a0):
+ self.setVolume('in_line34', a0)
+
+ def setVolumeInSPDIF(self,a0):
+ self.setVolume('in_spdif', a0)
+
+ def setVolumeOut12(self,a0):
+ self.setVolume('out_line12', a0)
+
+ def setVolumeOut34(self,a0):
+ self.setVolume('out_line34', a0)
+
+ def setCrossA(self,a0):
+ self.setVolume('cross_a', a0)
+
+ def setCrossB(self,a0):
+ self.setVolume('cross_b', a0)
+
+ def setVolume(self,a0,a1):
+ name = a0
+ vol = -a1
+ print "setting %s volume to %d" % (name, vol)
+ self.hw.setContignuous(self.VolumeControls[name][0], vol)
+
+ def setSelector(self,a0,a1):
+ name = a0
+ state = a1
+ print "setting %s state to %d" % (name, state)
+ self.hw.setDiscrete(self.SelectorControls[name][0], state)
+
+ def init(self):
+ print "Init BridgeCo Audio 5 window"
+
+ self.VolumeControls={
+ 'in_line12' : ['/Mixer/Feature_1', self.sldInput12],
+ 'in_line34' : ['/Mixer/Feature_2', self.sldInput34],
+ 'in_spdif' : ['/Mixer/Feature_3', self.sldInputSPDIF],
+ 'out_line12' : ['/Mixer/Feature_6', self.sldOutput12],
+ 'out_line34' : ['/Mixer/Feature_7', self.sldOutput34],
+ 'cross_a' : ['/Mixer/Feature_4', self.sldCrossA],
+ 'cross_b' : ['/Mixer/Feature_5', self.sldCrossB],
+ }
+
+ self.SelectorControls={
+ 'line34source': ['/Mixer/Selector_1', self.comboMixSource],
+ }
+
+ def initValues(self):
+ for name, ctrl in self.VolumeControls.iteritems():
+ vol = self.hw.getContignuous(ctrl[0])
+ print "%s volume is %d" % (name , vol)
+ ctrl[1].setValue(-vol)
+
+ for name, ctrl in self.SelectorControls.iteritems():
+ state = self.hw.getDiscrete(ctrl[0])
+ print "%s state is %d" % (name , state)
+ ctrl[1].setCurrentItem(state)
Index: /trunk/libffado/support/mixer/mixer.py
===================================================================
--- /trunk/libffado/support/mixer/mixer.py (revision 742)
+++ /trunk/libffado/support/mixer/mixer.py (revision 799)
@@ -28,4 +28,5 @@
from mixer_saffire import *
from mixer_af2 import *
+from mixer_bcoaudio5 import *
import sys
import dbus
@@ -39,4 +40,5 @@
[(0x00130e, 0x00000000),'SaffireMixer'],
[(0x001486, 0x00000af2),'AudioFire2Mixer'],
+ [(0x0007f5, 0x00010049),'BCoAudio5Control'],
]