Changeset 2011

Show
Ignore:
Timestamp:
12/05/11 04:19:21 (9 years ago)
Author:
jwoithe
Message:

rme: implement the output fader controls in ffado-mixer. There's still some work to do on sizing and labelling but the basic fader functionality is there.

Files:

Legend:

Unmodified
Added
Removed
Modified
Copied
Moved
  • trunk/libffado/src/motu/motu_avdevice.cpp

    r2009 r2011  
    16841684         * iso tx settings while bit 31 enables iso rx changes. 
    16851685         * 
    1686          * At this point also make sure that two additional bits,k which 
     1686         * At this point also make sure that two additional bits, which 
    16871687         * appear to be I/O enable bits, are set. 
    16881688         */ 
  • trunk/libffado/src/rme/fireface_settings_ctrls.cpp

    r2008 r2011  
    184184 
    185185 
     186static std::string getOutputName(const signed int model, const int idx) 
     187{ 
     188    char buf[64]; 
     189    if (model == RME_MODEL_FIREFACE400) { 
     190        if (idx >= 10) 
     191            snprintf(buf, sizeof(buf), "ADAT out %d", idx-9); 
     192        else 
     193        if (idx >= 8) 
     194            snprintf(buf, sizeof(buf), "SPDIF out %d", idx-7); 
     195        else 
     196        if (idx >= 6) 
     197            snprintf(buf, sizeof(buf), "Mon out %d", idx+1); 
     198        else 
     199            snprintf(buf, sizeof(buf), "Line out %d", idx+1); 
     200    } else { 
     201        snprintf(buf, sizeof(buf), "out %d", idx); 
     202    } 
     203    return buf; 
     204} 
     205 
     206static std::string getInputName(const signed int model, const int idx) 
     207{ 
     208    char buf[64]; 
     209    if (model == RME_MODEL_FIREFACE400) { 
     210        if (idx >= 10) 
     211            snprintf(buf, sizeof(buf), "ADAT in %d", idx-9); 
     212        else 
     213        if (idx >= 8) 
     214            snprintf(buf, sizeof(buf), "SPDIF in %d", idx-7); 
     215        else 
     216        if (idx >= 4) 
     217            snprintf(buf, sizeof(buf), "Line in %d", idx+1); 
     218        else 
     219        if (idx >= 2) 
     220            snprintf(buf, sizeof(buf), "Inst/line %d", idx+1); 
     221        else 
     222            snprintf(buf, sizeof(buf), "Mic/line %d", idx+1); 
     223    } else { 
     224        snprintf(buf, sizeof(buf), "in %d", idx); 
     225    } 
     226    return buf; 
     227} 
     228 
    186229RmeSettingsMatrixCtrl::RmeSettingsMatrixCtrl(Device &parent, unsigned int type) 
    187230: Control::MatrixMixer(&parent) 
     
    207250std::string RmeSettingsMatrixCtrl::getRowName(const int row) 
    208251{ 
    209     char buf[64]; 
    210     if (m_parent.getRmeModel() == RME_MODEL_FIREFACE400) { 
    211         if (row >= 10) 
    212             snprintf(buf, sizeof(buf), "ADAT out %d", row-9); 
    213         else 
    214         if (row >= 8) 
    215             snprintf(buf, sizeof(buf), "SPDIF out %d", row-7); 
    216         else 
    217         if (row >= 6) 
    218             snprintf(buf, sizeof(buf), "Mon out %d", row+1); 
    219         else 
    220             snprintf(buf, sizeof(buf), "Line out %d", row+1); 
    221     } else { 
    222         snprintf(buf, sizeof(buf), "row %d", row); 
    223     } 
    224     return buf; 
     252    if (m_type == RME_MATRIXCTRL_OUTPUT_FADER) 
     253        return ""; 
     254    return getOutputName(m_parent.getRmeModel(), row); 
    225255} 
    226256 
    227257std::string RmeSettingsMatrixCtrl::getColName(const int col) 
    228258{ 
    229     char buf[64]; 
    230259    if (m_type == RME_MATRIXCTRL_PLAYBACK_FADER) 
    231260        return ""; 
    232     if (m_parent.getRmeModel() == RME_MODEL_FIREFACE400) { 
    233         if (col >= 10) 
    234             snprintf(buf, sizeof(buf), "ADAT in %d", col-9); 
    235         else 
    236         if (col >= 8) 
    237             snprintf(buf, sizeof(buf), "SPDIF in %d", col-7); 
    238         else 
    239         if (col >= 4) 
    240             snprintf(buf, sizeof(buf), "Line in %d", col+1); 
    241         else 
    242         if (col >= 2) 
    243             snprintf(buf, sizeof(buf), "Inst/line %d", col+1); 
    244         else 
    245             snprintf(buf, sizeof(buf), "Mic/line %d", col+1); 
    246     } else { 
    247         snprintf(buf, sizeof(buf), "col %d", col); 
    248     } 
    249     return buf; 
     261    if (m_type == RME_MATRIXCTRL_OUTPUT_FADER) 
     262        return getOutputName(m_parent.getRmeModel(), col); 
     263 
     264    return getInputName(m_parent.getRmeModel(), col); 
    250265} 
    251266 
  • trunk/libffado/support/mixer-qt4/ffado/mixer/rme.py

    r2008 r2011  
    141141        layout.addWidget(scrollarea) 
    142142        self.playbackmixer.setLayout(layout) 
     143 
     144        self.outputmatrix = MatrixMixer(self.hw.servername, self.hw.basepath+"/Mixer/OutputFaders", self, 0x8000) 
     145        layout = QtGui.QVBoxLayout() 
     146        scrollarea = QtGui.QScrollArea() 
     147        scrollarea.setWidgetResizable(True) 
     148        scrollarea.setWidget(self.outputmatrix) 
     149        layout.addWidget(scrollarea) 
     150        self.outputmixer.setLayout(layout) 
    143151 
    144152        # Is the device streaming? 
  • trunk/libffado/support/mixer-qt4/ffado/mixer/rme.ui

    r2008 r2011  
    11001100      </attribute> 
    11011101     </widget> 
     1102     <widget class="QWidget" name="outputmixer"> 
     1103      <attribute name="title"> 
     1104       <string>Output levels</string> 
     1105      </attribute> 
     1106     </widget> 
    11021107    </widget> 
    11031108   </item>