traverso-commit
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[Traverso-commit] traverso/src engine/AudioBus.cpp engine/AudioBu...


From: Remon Sijrier
Subject: [Traverso-commit] traverso/src engine/AudioBus.cpp engine/AudioBu...
Date: Mon, 07 May 2007 20:48:01 +0000

CVSROOT:        /sources/traverso
Module name:    traverso
Changes by:     Remon Sijrier <r_sijrier>       07/05/07 20:48:01

Modified files:
        src/engine     : AudioBus.cpp AudioBus.h 
        src/traverso   : BusMonitor.cpp BusMonitor.h VUMeter.cpp 
                         VUMeter.h 

Log message:
        * Only show first playback bus, since we only use the first one, even 
if 
        there are more playback buses available.
        * Only show capture buses if they are monitoring the input signal

CVSWeb URLs:
http://cvs.savannah.gnu.org/viewcvs/traverso/src/engine/AudioBus.cpp?cvsroot=traverso&r1=1.7&r2=1.8
http://cvs.savannah.gnu.org/viewcvs/traverso/src/engine/AudioBus.h?cvsroot=traverso&r1=1.5&r2=1.6
http://cvs.savannah.gnu.org/viewcvs/traverso/src/traverso/BusMonitor.cpp?cvsroot=traverso&r1=1.8&r2=1.9
http://cvs.savannah.gnu.org/viewcvs/traverso/src/traverso/BusMonitor.h?cvsroot=traverso&r1=1.5&r2=1.6
http://cvs.savannah.gnu.org/viewcvs/traverso/src/traverso/VUMeter.cpp?cvsroot=traverso&r1=1.19&r2=1.20
http://cvs.savannah.gnu.org/viewcvs/traverso/src/traverso/VUMeter.h?cvsroot=traverso&r1=1.12&r2=1.13

Patches:
Index: engine/AudioBus.cpp
===================================================================
RCS file: /sources/traverso/traverso/src/engine/AudioBus.cpp,v
retrieving revision 1.7
retrieving revision 1.8
diff -u -b -r1.7 -r1.8
--- engine/AudioBus.cpp 16 Oct 2006 23:58:31 -0000      1.7
+++ engine/AudioBus.cpp 7 May 2007 20:48:01 -0000       1.8
@@ -17,7 +17,7 @@
 along with this program; if not, write to the Free Software
 Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA  02110-1301  USA.
 
-$Id: AudioBus.cpp,v 1.7 2006/10/16 23:58:31 r_sijrier Exp $
+$Id: AudioBus.cpp,v 1.8 2007/05/07 20:48:01 r_sijrier Exp $
 */
 
 #include "AudioBus.h"
@@ -148,6 +148,19 @@
        for (int i=0; i<channels.size(); ++i) {
                channels.at(i)->set_monitor_peaks(m_monitors);
        }
+       
+       if (m_monitors) {
+               emit monitoringPeaksStarted();
+       } else {
+               emit monitoringPeaksStopped();
+       }
+}
+
+void AudioBus::reset_monitor_peaks()
+{
+       m_monitors = 0;
+       emit monitoringPeaksStopped();
 }
 
 //eof
+

Index: engine/AudioBus.h
===================================================================
RCS file: /sources/traverso/traverso/src/engine/AudioBus.h,v
retrieving revision 1.5
retrieving revision 1.6
diff -u -b -r1.5 -r1.6
--- engine/AudioBus.h   16 Oct 2006 23:58:31 -0000      1.5
+++ engine/AudioBus.h   7 May 2007 20:48:01 -0000       1.6
@@ -17,7 +17,7 @@
 along with this program; if not, write to the Free Software
 Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA  02110-1301  USA.
 
-$Id: AudioBus.h,v 1.5 2006/10/16 23:58:31 r_sijrier Exp $
+$Id: AudioBus.h,v 1.6 2007/05/07 20:48:01 r_sijrier Exp $
 */
 
 
@@ -65,6 +65,8 @@
 
        void set_buffer_size(nframes_t size);
        void set_monitor_peaks(bool monitor);
+       void reset_monitor_peaks();
+       bool is_monitoring_peaks() const {return m_monitors;}
        
        void monitor_peaks()
        {
@@ -98,6 +100,10 @@
 public slots:
        void resize_buffer();
        
+signals:
+       void monitoringPeaksStarted();
+       void monitoringPeaksStopped();
+       
 };
 
 #endif

Index: traverso/BusMonitor.cpp
===================================================================
RCS file: /sources/traverso/traverso/src/traverso/BusMonitor.cpp,v
retrieving revision 1.8
retrieving revision 1.9
diff -u -b -r1.8 -r1.9
--- traverso/BusMonitor.cpp     16 Mar 2007 00:10:26 -0000      1.8
+++ traverso/BusMonitor.cpp     7 May 2007 20:48:01 -0000       1.9
@@ -17,13 +17,15 @@
 along with this program; if not, write to the Free Software
 Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA  02110-1301  USA.
 
-$Id: BusMonitor.cpp,v 1.8 2007/03/16 00:10:26 r_sijrier Exp $
+$Id: BusMonitor.cpp,v 1.9 2007/05/07 20:48:01 r_sijrier Exp $
 */
 
 #include <libtraverso.h>
 
 #include "BusMonitor.h"
 #include "VUMeter.h"
+#include "ProjectManager.h"
+#include "Project.h"
 #include <QHBoxLayout>
 
 // Always put me below _all_ includes, this is needed
@@ -41,6 +43,7 @@
        create_vu_meters();
 
        connect(&audiodevice(), SIGNAL(driverParamsChanged()), this, 
SLOT(create_vu_meters()));
+       connect(&pm(), SIGNAL(projectLoaded(Project*)), this, 
SLOT(set_project(Project*)));
 }
 
 
@@ -96,14 +99,17 @@
        {
                AudioBus* bus = audiodevice().get_capture_bus(name.toAscii());
                VUMeter* meter = new VUMeter( this, bus );
+               connect(bus, SIGNAL(monitoringPeaksStarted()), meter, 
SLOT(peak_monitoring_started()));
+               connect(bus, SIGNAL(monitoringPeaksStopped()), meter, 
SLOT(peak_monitoring_stopped()));
                layout->addWidget(meter);
                inMeters.append(meter);
+               meter->hide();
        }
 
        list = audiodevice().get_playback_buses_names();
-       foreach(QString name, list)
+       if (list.size())
        {
-               VUMeter* meter = new VUMeter( this, 
audiodevice().get_playback_bus(name.toAscii()) );
+               VUMeter* meter = new VUMeter( this, 
audiodevice().get_playback_bus(list.at(0).toAscii()) );
                layout->addWidget(meter);
                outMeters.append(meter);
        }
@@ -111,6 +117,15 @@
        layout->addSpacing(4);
 }
 
+void BusMonitor::set_project(Project * project)
+{
+       QStringList list = audiodevice().get_capture_buses_names();
+       foreach(QString name, list)
+       {
+               AudioBus* bus = audiodevice().get_capture_bus(name.toAscii());
+               bus->reset_monitor_peaks();
+       }
+}
 
 //eof
 

Index: traverso/BusMonitor.h
===================================================================
RCS file: /sources/traverso/traverso/src/traverso/BusMonitor.h,v
retrieving revision 1.5
retrieving revision 1.6
diff -u -b -r1.5 -r1.6
--- traverso/BusMonitor.h       16 Mar 2007 00:10:26 -0000      1.5
+++ traverso/BusMonitor.h       7 May 2007 20:48:01 -0000       1.6
@@ -17,7 +17,7 @@
 along with this program; if not, write to the Free Software
 Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA  02110-1301  USA.
 
-$Id: BusMonitor.h,v 1.5 2007/03/16 00:10:26 r_sijrier Exp $
+$Id: BusMonitor.h,v 1.6 2007/05/07 20:48:01 r_sijrier Exp $
 */
 
 #ifndef BUSMONITOR_H
@@ -27,6 +27,7 @@
 #include <QList>
 
 class VUMeter;
+class Project;
 
 class BusMonitor :  public QWidget
 {
@@ -47,6 +48,7 @@
 
 private slots:
        void create_vu_meters();
+       void set_project(Project* project);
 };
 
 #endif

Index: traverso/VUMeter.cpp
===================================================================
RCS file: /sources/traverso/traverso/src/traverso/VUMeter.cpp,v
retrieving revision 1.19
retrieving revision 1.20
diff -u -b -r1.19 -r1.20
--- traverso/VUMeter.cpp        7 May 2007 18:14:38 -0000       1.19
+++ traverso/VUMeter.cpp        7 May 2007 20:48:01 -0000       1.20
@@ -17,7 +17,7 @@
     along with this program; if not, write to the Free Software
     Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA  02110-1301  USA.
 
-    $Id: VUMeter.cpp,v 1.19 2007/05/07 18:14:38 n_doebelin Exp $
+    $Id: VUMeter.cpp,v 1.20 2007/05/07 20:48:01 r_sijrier Exp $
 */
 
 #include "VUMeter.h"
@@ -200,6 +200,16 @@
        }
 }
 
+void VUMeter::peak_monitoring_stopped()
+{
+       hide();
+}
+
+void VUMeter::peak_monitoring_started()
+{
+       show();
+}
+
 
 /**********************************************************************/
 /*                      VUMeterRuler                                  */

Index: traverso/VUMeter.h
===================================================================
RCS file: /sources/traverso/traverso/src/traverso/VUMeter.h,v
retrieving revision 1.12
retrieving revision 1.13
diff -u -b -r1.12 -r1.13
--- traverso/VUMeter.h  7 May 2007 18:14:38 -0000       1.12
+++ traverso/VUMeter.h  7 May 2007 20:48:01 -0000       1.13
@@ -17,7 +17,7 @@
     along with this program; if not, write to the Free Software
     Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA  02110-1301  USA.
  
-    $Id: VUMeter.h,v 1.12 2007/05/07 18:14:38 n_doebelin Exp $
+    $Id: VUMeter.h,v 1.13 2007/05/07 20:48:01 r_sijrier Exp $
 */
 
 #ifndef VUMETER_H
@@ -54,6 +54,7 @@
 
 class VUMeter : public QWidget
 {
+       Q_OBJECT
 
 public:
         VUMeter(QWidget* parent, AudioBus* bus);
@@ -77,6 +78,10 @@
        static QVector<float>   lut;
 
        static void calculate_lut_data();
+       
+private slots:
+       void peak_monitoring_stopped();
+       void peak_monitoring_started();
 };
 
 /**




reply via email to

[Prev in Thread] Current Thread [Next in Thread]