traverso-commit
[Top][All Lists]
Advanced

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

[Traverso-commit] traverso/src/core FadeCurve.cpp


From: Remon Sijrier
Subject: [Traverso-commit] traverso/src/core FadeCurve.cpp
Date: Tue, 16 Oct 2007 13:15:08 +0000

CVSROOT:        /sources/traverso
Module name:    traverso
Changes by:     Remon Sijrier <r_sijrier>       07/10/16 13:15:08

Modified files:
        src/core       : FadeCurve.cpp 

Log message:
        * fix broken fadeout render position calculation 

CVSWeb URLs:
http://cvs.savannah.gnu.org/viewcvs/traverso/src/core/FadeCurve.cpp?cvsroot=traverso&r1=1.28&r2=1.29

Patches:
Index: FadeCurve.cpp
===================================================================
RCS file: /sources/traverso/traverso/src/core/FadeCurve.cpp,v
retrieving revision 1.28
retrieving revision 1.29
diff -u -b -r1.28 -r1.29
--- FadeCurve.cpp       28 Sep 2007 18:33:44 -0000      1.28
+++ FadeCurve.cpp       16 Oct 2007 13:15:07 -0000      1.29
@@ -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: FadeCurve.cpp,v 1.28 2007/09/28 18:33:44 r_sijrier Exp $
+$Id: FadeCurve.cpp,v 1.29 2007/10/16 13:15:07 r_sijrier Exp $
 */
  
 #include "FadeCurve.h"
@@ -172,29 +172,30 @@
        }
        
        
-       TimeRef range = TimeRef(qint64(get_range()));
+       TimeRef faderange = TimeRef(get_range());
        TimeRef fadepos;
        
        if (m_type == FadeIn) {
-               if( !( m_song->get_transport_location() < 
(m_clip->get_track_start_location() + range) ) ) {
+               if( !( m_song->get_transport_location() < 
(m_clip->get_track_start_location() + faderange) ) ) {
                        return;
                }
                
                fadepos = m_song->get_transport_location() - 
m_clip->get_track_start_location();
        } else {
-               if( !(m_song->get_transport_location() > 
(m_clip->get_track_end_location() - range)) ) {
+               if( !(m_song->get_transport_location() > 
(m_clip->get_track_end_location() - faderange)) ) {
                        return;
                }
                
-               fadepos = m_song->get_transport_location() - 
m_clip->get_track_end_location() - range;
+               fadepos = m_song->get_transport_location() - 
(m_clip->get_track_end_location() - faderange);
        }
 
-       TimeRef realframes(nframes, audiodevice().get_sample_rate());
-       TimeRef limit(std::min (realframes.universal_frame(), 
range.universal_frame()));
-       
-       get_vector(fadepos.universal_frame(), (fadepos + 
limit).universal_frame(), m_song->gainbuffer, 
limit.to_frame(audiodevice().get_sample_rate()));
+       TimeRef range(nframes, audiodevice().get_sample_rate());
+       TimeRef limit(std::min (range.universal_frame(), 
faderange.universal_frame()));
 
        nframes_t framerange = limit.to_frame(audiodevice().get_sample_rate());
+       
+       get_vector(fadepos.universal_frame(), (fadepos + 
limit).universal_frame(), m_song->gainbuffer, framerange);
+
        for (uint chan=0; chan<channels; ++chan) {
                for (nframes_t frame = 0; frame < framerange; ++frame) {
                        mixdown[chan][frame] *= m_song->gainbuffer[frame];




reply via email to

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