summaryrefslogtreecommitdiff
path: root/libs/ardour/ardour/session.h
diff options
context:
space:
mode:
authorHans Baier <hansfbaier@googlemail.com>2009-01-10 08:42:07 +0000
committerHans Baier <hansfbaier@googlemail.com>2009-01-10 08:42:07 +0000
commitb7715419f2ae85af70a0d78722798a5b0ea16263 (patch)
tree44b193e0870a7693dc5bd76ad79e0c6c178851c2 /libs/ardour/ardour/session.h
parentbfbae251be8b67b33ad1c95b56e30da0cb537ec5 (diff)
* wrong calculation of frames_moved in Session::process_*, resulting in drift against any Slaves when transport speed != 1.0
git-svn-id: svn://localhost/ardour2/branches/3.0@4397 d708f5d6-7413-0410-9779-e7cbd77b26cf
Diffstat (limited to 'libs/ardour/ardour/session.h')
-rw-r--r--libs/ardour/ardour/session.h6
1 files changed, 6 insertions, 0 deletions
diff --git a/libs/ardour/ardour/session.h b/libs/ardour/ardour/session.h
index 9d12aa79b8..8b45dad958 100644
--- a/libs/ardour/ardour/session.h
+++ b/libs/ardour/ardour/session.h
@@ -1025,6 +1025,12 @@ class Session : public PBD::StatefulDestructible
bool _silent;
volatile double _transport_speed;
double _last_transport_speed;
+ // fixed point transport speed for varispeed playback
+ uint64_t phi;
+ // fixed point target transport speed for varispeed playback when tempo changes
+ uint64_t target_phi;
+ // fixed point phase for varispeed playback
+ uint64_t phase;
bool auto_play_legal;
nframes_t _last_slave_transport_frame;
nframes_t maximum_output_latency;