diff options
author | Robin Gareus <robin@gareus.org> | 2016-05-26 02:20:14 +0200 |
---|---|---|
committer | Robin Gareus <robin@gareus.org> | 2016-05-26 02:20:32 +0200 |
commit | d6d5903a24477f6a41d9501ffc80120b46b39553 (patch) | |
tree | c6e22982d8ed9fdc835a8284d9683d99d94e9db8 /libs/ardour/audio_unit.cc | |
parent | 9678be9b6a1a472b4563386b32eff6fc7fe5dce1 (diff) |
fix Audio Unit BBT
Diffstat (limited to 'libs/ardour/audio_unit.cc')
-rw-r--r-- | libs/ardour/audio_unit.cc | 5 |
1 files changed, 3 insertions, 2 deletions
diff --git a/libs/ardour/audio_unit.cc b/libs/ardour/audio_unit.cc index 9fc9416ac5..37c96a30ca 100644 --- a/libs/ardour/audio_unit.cc +++ b/libs/ardour/audio_unit.cc @@ -1765,9 +1765,10 @@ AUPlugin::get_beat_and_tempo_callback (Float64* outCurrentBeat, tmap.bbt_time (_session.transport_frame() + input_offset, bbt); if (outCurrentBeat) { + const double ppq_scaling = metric.meter().note_divisor() / 4.0; float beat; - beat = metric.meter().divisions_per_bar() * bbt.bars; - beat += bbt.beats; + beat = metric.meter().divisions_per_bar() * (bbt.bars - 1) * ppq_scaling; + beat += (bbt.beats - 1) * ppq_scaling;; beat += bbt.ticks / Timecode::BBT_Time::ticks_per_beat; *outCurrentBeat = beat; } |