s->bbt_time (this->frame, *this);
const TempoMap& tempo = s->tempo_map();
+ const Meter& meter = tempo.meter_at_frame (frame);
- const double divisions = tempo.meter_at(frame).divisions_per_bar();
- const double divisor = tempo.meter_at(frame).note_divisor();
+ const double divisions = meter.divisions_per_bar();
+ const double divisor = meter.note_divisor();
const double qnote_scale = divisor * 0.25f;
double mb;
double
MidiClockTicker::one_ppqn_in_frames (framepos_t transport_position)
{
- const Tempo& current_tempo = _session->tempo_map().tempo_at_frame (transport_position);
- double frames_per_beat = _session->tempo_map().frames_per_beat_at (transport_position, _session->nominal_frame_rate());
-
- double quarter_notes_per_beat = 4.0 / current_tempo.note_type();
- double frames_per_quarter_note = frames_per_beat / quarter_notes_per_beat;
+ const double frames_per_quarter_note = _session->tempo_map().frames_per_quarter_note_at (transport_position, _session->nominal_frame_rate());
return frames_per_quarter_note / double (_ppqn);
}