Tempo ramps - first tempo is a ramp, fix extra meter recompute.
authornick_m <mainsbridge@gmail.com>
Mon, 23 May 2016 20:19:36 +0000 (06:19 +1000)
committernick_m <mainsbridge@gmail.com>
Fri, 27 May 2016 13:38:17 +0000 (23:38 +1000)
libs/ardour/tempo.cc

index 8599594b3ba451f8f8a9f91f6d97ae36c3aeebc7..9fa77a71a99c04eabbfef7143f43bf8b0a6633ec 100644 (file)
@@ -649,7 +649,7 @@ TempoMap::TempoMap (framecnt_t fr)
        _frame_rate = fr;
        BBT_Time start (1, 1, 0);
 
-       TempoSection *t = new TempoSection (0.0, 0, _default_tempo.beats_per_minute(), _default_tempo.note_type(), TempoSection::Constant, AudioTime);
+       TempoSection *t = new TempoSection (0.0, 0, _default_tempo.beats_per_minute(), _default_tempo.note_type(), TempoSection::Ramp, AudioTime);
        MeterSection *m = new MeterSection (0.0, 0, 0.0, start, _default_meter.divisions_per_bar(), _default_meter.note_divisor(), AudioTime);
 
        t->set_movable (false);
@@ -999,9 +999,10 @@ TempoMap::replace_meter (const MeterSection& ms, const Meter& meter, const BBT_T
                        first_t.set_frame (first.frame());
                        first_t.set_pulse (0.0);
                        first_t.set_position_lock_style (AudioTime);
+                       recompute_map (_metrics);
                }
-               recompute_map (_metrics);
        }
+
        PropertyChanged (PropertyChange ());
 }