Create Freesound working directory a little more lazily so
[ardour.git] / libs / ardour / smf_source.cc
index b33fb16f482e272c5a0aa20373807be9640d8f72..52377ee9154c74a5af959af2499ef4443b7201f4 100644 (file)
@@ -369,9 +369,9 @@ SMFSource::append_event_unlocked_frames (const Evoral::Event<framepos_t>& ev, fr
 
        _length_beats = max(_length_beats, ev_time_beats);
 
-       const framepos_t delta_time_frames = ev.time() - _last_ev_time_frames;
-       const double     delta_time_beats  = converter.from(delta_time_frames);
-       const uint32_t   delta_time_ticks  = (uint32_t)(lrint(delta_time_beats * (double)ppqn()));
+       const Evoral::MusicalTime last_time_beats  = converter.from (_last_ev_time_frames);
+       const Evoral::MusicalTime delta_time_beats = ev_time_beats - last_time_beats;
+       const uint32_t            delta_time_ticks = (uint32_t)(lrint(delta_time_beats * (double)ppqn()));
 
        Evoral::SMF::append_event_delta(delta_time_ticks, ev.size(), ev.buffer(), event_id);
        _last_ev_time_frames = ev.time();