traverso-commit
[Top][All Lists]
Advanced

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

[Traverso-commit] traverso/src/core MonoReader.cpp MonoReader.h


From: Ben Levitt
Subject: [Traverso-commit] traverso/src/core MonoReader.cpp MonoReader.h
Date: Sun, 15 Jul 2007 05:11:10 +0000

CVSROOT:        /sources/traverso
Module name:    traverso
Changes by:     Ben Levitt <benjie>     07/07/15 05:11:10

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

Log message:
        should have gone in with the last commit

CVSWeb URLs:
http://cvs.savannah.gnu.org/viewcvs/traverso/src/core/MonoReader.cpp?cvsroot=traverso&r1=1.20&r2=1.21
http://cvs.savannah.gnu.org/viewcvs/traverso/src/core/MonoReader.h?cvsroot=traverso&r1=1.6&r2=1.7

Patches:
Index: MonoReader.cpp
===================================================================
RCS file: /sources/traverso/traverso/src/core/MonoReader.cpp,v
retrieving revision 1.20
retrieving revision 1.21
diff -u -b -r1.20 -r1.21
--- MonoReader.cpp      13 Jul 2007 07:41:02 -0000      1.20
+++ MonoReader.cpp      15 Jul 2007 05:11:09 -0000      1.21
@@ -71,7 +71,7 @@
 }
 
 
-int MonoReader::init( )
+int MonoReader::init(bool forPeaks)
 {
        PENTER;
        
@@ -85,13 +85,25 @@
        m_clip = 0;
        m_bufferUnderRunDetected = m_wasActivated = 0;
 
+       bool useResampling = config().get_property("Conversion", 
"DynamicResampling", false).toBool();
 
-       //
-       // Uncomment the next line, and comment the one after that to try out 
dynamic resampling
-       //
+       if (useResampling) {
+               int converter_type;
+               if (forPeaks) {
+                       converter_type = 4;  // Very fast, and acurate enough 
for drawing
+               }
+               else {
+                       converter_type = config().get_property("Conversion", 
"RTResamplingConverterType", 0).toInt();
+                       // There should be another config option for 
ConverterType to use for export (higher quality)
+                       //converter_type = config().get_property("Conversion", 
"ExportResamplingConverterType", 0).toInt();
+               }
+               m_audioReader = 
AbstractAudioReader::create_resampled_audio_reader(m_fileName, converter_type);
+       }
+       else {
+               m_audioReader = 
AbstractAudioReader::create_audio_reader(m_fileName);
+       }
 
-       //if ((m_audioReader = 
AbstractAudioReader::create_resampled_audio_reader(m_fileName)) == 0) {
-       if ((m_audioReader = 
AbstractAudioReader::create_audio_reader(m_fileName)) == 0) {
+       if (m_audioReader == 0) {
                return ReadSource::COULD_NOT_OPEN_FILE;
        }
 
@@ -113,7 +125,12 @@
        m_length = m_audioReader->get_length();
        m_source->m_rate = m_audioReader->get_rate();
 
+       if (!forPeaks) {
        m_peak = new Peak(m_source, m_channelNumber);
+       }
+       else {
+               m_peak = 0;
+       }
        
        return 1;
 }

Index: MonoReader.h
===================================================================
RCS file: /sources/traverso/traverso/src/core/MonoReader.h,v
retrieving revision 1.6
retrieving revision 1.7
diff -u -b -r1.6 -r1.7
--- MonoReader.h        13 Jul 2007 07:41:02 -0000      1.6
+++ MonoReader.h        15 Jul 2007 05:11:10 -0000      1.7
@@ -46,7 +46,7 @@
 
        int file_read(audio_sample_t* dst, nframes_t start, nframes_t cnt, 
audio_sample_t* readbuffer) const;
 
-       int init();
+       int init(bool forPeaks);
        int ref();
        
        void sync(audio_sample_t* framebuffer, audio_sample_t* readbuffer);




reply via email to

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