Show
Ignore:
Timestamp:
02/07/12 04:11:19 (4 months ago)
Author:
jwoithe
Message:

rme: various information panes are now active in ffado-mixer: sync check, autosync reference, spdif freqency and system clock. The function of these in the presence of actual external sync sources is yet to be confirmed. The system clock information has been confirmed to update when the clock mode and/or sample rate controls are altered.

Files:

Legend:

Unmodified
Added
Removed
Modified
Copied
Moved
  • trunk/libffado/support/mixer-qt4/ffado/mixer/rme.py

    r2037 r2038  
    2323from PyQt4 import QtGui 
    2424 
    25 from PyQt4.QtCore import SIGNAL, SLOT, QObject, Qt 
     25from PyQt4.QtCore import SIGNAL, SLOT, QObject, Qt, QTimer 
    2626from PyQt4.QtGui import QWidget, QApplication 
    2727from ffado.config import * 
     
    127127        log.debug("gain %s[%d] set to %d" % (self.Gains[sender][0], self.Gains[sender][1], a0)) 
    128128        self.hw.setMatrixMixerValue(self.Gains[sender][0], 0, self.Gains[sender][1], a0) 
     129 
     130    def status_update(self): 
     131        # log.debug("timer event") 
     132        clk_mode = ['Master', 'Slave'] 
     133        src_str = ['None', 'ADAT 1', 'ADAT 2', 'SPDIF', 'Wordclock', 'TCO'] 
     134        sync_stat = ['No lock', 'Locked', 'Synced'] 
     135        sysclock_mode = self.hw.getDiscrete('/Control/sysclock_mode') 
     136        sysclock_freq = self.hw.getDiscrete('/Control/sysclock_freq') 
     137        autosync_freq = self.hw.getDiscrete('/Control/autosync_freq') 
     138        autosync_src = self.hw.getDiscrete('/Control/autosync_src') 
     139        sync_status = self.hw.getDiscrete('/Control/sync_status') 
     140        spdif_freq = self.hw.getDiscrete('/Control/spdif_freq') 
     141        self.sysclock_freq.setText("%d Hz" % (sysclock_freq)) 
     142        self.sysclock_mode.setText(clk_mode[sysclock_mode]) 
     143        self.autosync_freq.setText("%d Hz" % (autosync_freq)) 
     144        self.autosync_src.setText(src_str[autosync_src]) 
     145        self.sync_check_adat1_status.setText(sync_stat[sync_status & 0x03]) 
     146        self.sync_check_adat2_status.setText(sync_stat[(sync_status >> 2) & 0x03]) 
     147        self.sync_check_spdif_status.setText(sync_stat[(sync_status >> 4) & 0x03]) 
     148        self.sync_check_wclk_status.setText(sync_stat[(sync_status >> 6) & 0x03]) 
     149        self.sync_check_tco_status.setText(sync_stat[(sync_status >> 8) & 0x03]) 
     150        self.spdif_freq.setText("%d Hz" % (spdif_freq)) 
    129151 
    130152    # Hide and disable a control 
     
    193215            self.sync_check_adat2_label.setEnabled(False) 
    194216            self.sync_check_adat2_status.setEnabled(False) 
     217 
     218        if (not(self.tco_present)): 
     219            self.sync_check_tco_label.setEnabled(False) 
     220            self.sync_check_tco_status.setEnabled(False) 
    195221 
    196222        # Only the FF400 has specific channel 3/4 options, input gain 
     
    250276            QObject.connect(ctrl, SIGNAL('valueChanged(int)'), self.updateGain) 
    251277 
     278        self.update_timer = QTimer(self) 
     279        QObject.connect(self.update_timer, SIGNAL('timeout()'), self.status_update) 
     280        self.update_timer.start(1000) 
     281 
    252282# vim: et 
  • trunk/libffado/support/mixer-qt4/ffado/mixer/rme.ui

    r2037 r2038  
    763763             </item> 
    764764             <item row="0" column="1"> 
    765               <widget class="QLabel" name="label_6"> 
     765              <widget class="QLabel" name="sync_check_wclk_status"> 
    766766               <property name="text"> 
    767767                <string>No lock</string> 
     
    777777             </item> 
    778778             <item row="1" column="1"> 
    779               <widget class="QLabel" name="label_8"> 
     779              <widget class="QLabel" name="sync_check_adat1_status"> 
    780780               <property name="text"> 
    781781                <string>No lock</string> 
     
    805805             </item> 
    806806             <item row="3" column="1"> 
    807               <widget class="QLabel" name="label_12"> 
     807              <widget class="QLabel" name="sync_check_spdif_status"> 
    808808               <property name="text"> 
    809809                <string>No lock</string> 
     
    812812             </item> 
    813813             <item row="4" column="0"> 
     814              <widget class="QLabel" name="sync_check_tco_label"> 
     815               <property name="text"> 
     816                <string>TCO</string> 
     817               </property> 
     818              </widget> 
     819             </item> 
     820             <item row="4" column="1"> 
     821              <widget class="QLabel" name="sync_check_tco_status"> 
     822               <property name="text"> 
     823                <string>No lock</string> 
     824               </property> 
     825              </widget> 
     826             </item> 
     827             <item row="5" column="0"> 
    814828              <spacer name="verticalSpacer_16"> 
    815829               <property name="orientation"> 
     
    841855             </item> 
    842856             <item row="0" column="1"> 
    843               <widget class="QLabel" name="label_2"> 
     857              <widget class="QLabel" name="autosync_src"> 
    844858               <property name="text"> 
    845859                <string>[unset]</string> 
     
    855869             </item> 
    856870             <item row="1" column="1"> 
    857               <widget class="QLabel" name="label_4"> 
     871              <widget class="QLabel" name="autosync_freq"> 
    858872               <property name="text"> 
    859873                <string>[unset]</string> 
     
    908922            <layout class="QVBoxLayout" name="verticalLayout_7"> 
    909923             <item> 
    910               <widget class="QLabel" name="label_13"> 
     924              <widget class="QLabel" name="spdif_freq"> 
    911925               <property name="text"> 
    912926                <string>48 kHz</string> 
     
    9911005             </item> 
    9921006             <item row="0" column="1"> 
    993               <widget class="QLabel" name="label_15"> 
     1007              <widget class="QLabel" name="sysclock_mode"> 
    9941008               <property name="text"> 
    9951009                <string>Slave</string> 
     
    10051019             </item> 
    10061020             <item row="1" column="1"> 
    1007               <widget class="QLabel" name="label_17"> 
     1021              <widget class="QLabel" name="sysclock_freq"> 
    10081022               <property name="text"> 
    10091023                <string>44100 kHz</string>