traverso-commit
[Top][All Lists]
Advanced

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

[Traverso-commit] traverso/src/core AbstractAudioReader.cpp Abstr...


From: Ben Levitt
Subject: [Traverso-commit] traverso/src/core AbstractAudioReader.cpp Abstr...
Date: Mon, 09 Jul 2007 20:24:21 +0000

CVSROOT:        /sources/traverso
Module name:    traverso
Changes by:     Ben Levitt <benjie>     07/07/09 20:24:21

Modified files:
        src/core       : AbstractAudioReader.cpp AbstractAudioReader.h 

Log message:
        temp fix for multithreaded audio reading bug

CVSWeb URLs:
http://cvs.savannah.gnu.org/viewcvs/traverso/src/core/AbstractAudioReader.cpp?cvsroot=traverso&r1=1.2&r2=1.3
http://cvs.savannah.gnu.org/viewcvs/traverso/src/core/AbstractAudioReader.h?cvsroot=traverso&r1=1.3&r2=1.4

Patches:
Index: AbstractAudioReader.cpp
===================================================================
RCS file: /sources/traverso/traverso/src/core/AbstractAudioReader.cpp,v
retrieving revision 1.2
retrieving revision 1.3
diff -u -b -r1.2 -r1.3
--- AbstractAudioReader.cpp     8 Jul 2007 23:16:56 -0000       1.2
+++ AbstractAudioReader.cpp     9 Jul 2007 20:24:21 -0000       1.3
@@ -49,6 +49,8 @@
 // uses seek() and read() from AudioReader subclass
 int AbstractAudioReader::read_from(audio_sample_t* dst, nframes_t start, 
nframes_t cnt)
 {
+       m_mutex.lock();
+       
        if (m_nextFrame != start) {
                if (!seek(start)) {
                        return 0;
@@ -57,6 +59,7 @@
        
        int samplesRead = read(dst, cnt);
        
+       m_mutex.unlock();
        return samplesRead;
 }
 

Index: AbstractAudioReader.h
===================================================================
RCS file: /sources/traverso/traverso/src/core/AbstractAudioReader.h,v
retrieving revision 1.3
retrieving revision 1.4
diff -u -b -r1.3 -r1.4
--- AbstractAudioReader.h       8 Jul 2007 23:16:56 -0000       1.3
+++ AbstractAudioReader.h       9 Jul 2007 20:24:21 -0000       1.4
@@ -23,6 +23,7 @@
 #define ABSTRACTAUDIOREADER_H
 
 #include <QObject>
+#include <QMutex>
 
 #include "defines.h"
 
@@ -49,6 +50,7 @@
 
 protected:
        QString         m_fileName;
+       QMutex          m_mutex;
        nframes_t       m_nextFrame;
 
 };




reply via email to

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