13
0
Commit Graph

9495 Commits

Author SHA1 Message Date
0047b87e3d LTC Slave - re-init on xrun or graph change
git-svn-id: svn://localhost/ardour2/branches/3.0@13350 d708f5d6-7413-0410-9779-e7cbd77b26cf
2012-10-26 11:39:10 +00:00
23eba2f4e2 MTC generator: fix assert when trying to send fps > 30fps
git-svn-id: svn://localhost/ardour2/branches/3.0@13349 d708f5d6-7413-0410-9779-e7cbd77b26cf
2012-10-26 03:11:18 +00:00
2bf3cf2f8c LTC generator checks itself if to send LTC or not.
git-svn-id: svn://localhost/ardour2/branches/3.0@13348 d708f5d6-7413-0410-9779-e7cbd77b26cf
2012-10-26 03:11:16 +00:00
c8d9895c68 LTC slave; consolidate FPS detection
git-svn-id: svn://localhost/ardour2/branches/3.0@13347 d708f5d6-7413-0410-9779-e7cbd77b26cf
2012-10-26 03:11:14 +00:00
ccb64dc1df LTC generator - prevent assert when framerate changes midway
git-svn-id: svn://localhost/ardour2/branches/3.0@13346 d708f5d6-7413-0410-9779-e7cbd77b26cf
2012-10-26 03:11:12 +00:00
6f5384879c prevent raptor attacks on Ardour's lead developer.
https://xkcd.com/292/

git-svn-id: svn://localhost/ardour2/branches/3.0@13345 d708f5d6-7413-0410-9779-e7cbd77b26cf
2012-10-26 03:11:10 +00:00
4f698d6a54 add a preference dialog heading for the LTC generator
git-svn-id: svn://localhost/ardour2/branches/3.0@13344 d708f5d6-7413-0410-9779-e7cbd77b26cf
2012-10-26 03:11:07 +00:00
49b50d8e97 clean up consequences of using IO/Port/Buffer for LTC output, and in related work, move calls to Session::ltc_tx_send_time_code_for_cycle() into Session::no_roll() to cover most cases where we "do not roll"
git-svn-id: svn://localhost/ardour2/branches/3.0@13343 d708f5d6-7413-0410-9779-e7cbd77b26cf
2012-10-26 00:17:41 +00:00
974085807e fix some issues with previous commit that were not properly tested because HAVE_LTC was undefined in my test build
git-svn-id: svn://localhost/ardour2/branches/3.0@13342 d708f5d6-7413-0410-9779-e7cbd77b26cf
2012-10-25 20:21:17 +00:00
7b818e9a7f move ownership of LTC I/O ports to Session, and manage as IO objects
git-svn-id: svn://localhost/ardour2/branches/3.0@13341 d708f5d6-7413-0410-9779-e7cbd77b26cf
2012-10-25 19:46:23 +00:00
edc8a59355 add -g to the ardour3 executable to facilitate debugging of this version (similar to the bundle, but a different argument, just to keep things amazing)
git-svn-id: svn://localhost/ardour2/branches/3.0@13340 d708f5d6-7413-0410-9779-e7cbd77b26cf
2012-10-25 17:35:07 +00:00
5e4d2afbe8 don't both with LTC parameter changes if HAVE_LTC is not set
git-svn-id: svn://localhost/ardour2/branches/3.0@13339 d708f5d6-7413-0410-9779-e7cbd77b26cf
2012-10-25 17:34:00 +00:00
8cff3d0e60 LTC Slave: improve fps detection
and fix a few minor typos in the related doc

git-svn-id: svn://localhost/ardour2/branches/3.0@13338 d708f5d6-7413-0410-9779-e7cbd77b26cf
2012-10-25 17:07:59 +00:00
acb795980b mostly cosmetic changes to LTC generator
also enable latency compensation and disable LTC gen from MClk
(both of which should have been in prev commit, but commented here)

git-svn-id: svn://localhost/ardour2/branches/3.0@13335 d708f5d6-7413-0410-9779-e7cbd77b26cf
2012-10-24 18:33:30 +00:00
ead6e3ade9 more LTC config message tweaks
git-svn-id: svn://localhost/ardour2/branches/3.0@13330 d708f5d6-7413-0410-9779-e7cbd77b26cf
2012-10-24 00:51:15 +00:00
3d4bbcd65c save + restore OSC active+feedback state (#5023)
git-svn-id: svn://localhost/ardour2/branches/3.0@13329 d708f5d6-7413-0410-9779-e7cbd77b26cf
2012-10-24 00:29:11 +00:00
956261b36d conform LTC config tooltip text
git-svn-id: svn://localhost/ardour2/branches/3.0@13328 d708f5d6-7413-0410-9779-e7cbd77b26cf
2012-10-24 00:04:52 +00:00
b7075c0989 fix sending static LTC
git-svn-id: svn://localhost/ardour2/branches/3.0@13327 d708f5d6-7413-0410-9779-e7cbd77b26cf
2012-10-24 00:04:49 +00:00
098e2c28d7 update audio-clock design
git-svn-id: svn://localhost/ardour2/branches/3.0@13326 d708f5d6-7413-0410-9779-e7cbd77b26cf
2012-10-23 23:32:41 +00:00
05b1f0c196 LTC generator update
git-svn-id: svn://localhost/ardour2/branches/3.0@13325 d708f5d6-7413-0410-9779-e7cbd77b26cf
2012-10-23 23:32:39 +00:00
6f15ec9618 LTC generator config
git-svn-id: svn://localhost/ardour2/branches/3.0@13324 d708f5d6-7413-0410-9779-e7cbd77b26cf
2012-10-23 23:32:36 +00:00
4600530d50 MTC slave - resolve drift issue
Close loop of quarter-frame DLL and
also re-enable the deadzone around speed 1.0.
DLL bandwidth have been slightly adjusted empirically.

git-svn-id: svn://localhost/ardour2/branches/3.0@13323 d708f5d6-7413-0410-9779-e7cbd77b26cf
2012-10-23 17:10:31 +00:00
93b13251fa fix backwards playback position calculation
git-svn-id: svn://localhost/ardour2/branches/3.0@13322 d708f5d6-7413-0410-9779-e7cbd77b26cf
2012-10-23 17:10:25 +00:00
35c6b52c36 probable fix for not being able to find audio files in a 2.X session that had "illegal" characters in the session name - adds the 2.X version of the search path to the audio file search path, if it exists
git-svn-id: svn://localhost/ardour2/branches/3.0@13321 d708f5d6-7413-0410-9779-e7cbd77b26cf
2012-10-23 14:52:26 +00:00
506adcb7a2 more markup-escaping
git-svn-id: svn://localhost/ardour2/branches/3.0@13320 d708f5d6-7413-0410-9779-e7cbd77b26cf
2012-10-23 14:51:35 +00:00
d257c13060 use Gtk::Label::set_text() rather than Gtk::Label::set_markup() where no markup is involved
git-svn-id: svn://localhost/ardour2/branches/3.0@13319 d708f5d6-7413-0410-9779-e7cbd77b26cf
2012-10-23 14:45:45 +00:00
a541e4e811 escape markup text that may contain non-legal characters (for GMarkup). this may need to be done more widely
git-svn-id: svn://localhost/ardour2/branches/3.0@13318 d708f5d6-7413-0410-9779-e7cbd77b26cf
2012-10-23 14:45:09 +00:00
948fd683cd MTC slave - fix jumps on initialization
Do not re-position transport before first full frame has arrived.

git-svn-id: svn://localhost/ardour2/branches/3.0@13317 d708f5d6-7413-0410-9779-e7cbd77b26cf
2012-10-22 17:34:15 +00:00
a64a79b72c change packing/design/sizing/labels at bottom of import dialog (should fix #5062 and looks a bit prettier even in english)
git-svn-id: svn://localhost/ardour2/branches/3.0@13316 d708f5d6-7413-0410-9779-e7cbd77b26cf
2012-10-22 15:31:42 +00:00
ec94210a4d add LTC generator
git-svn-id: svn://localhost/ardour2/branches/3.0@13315 d708f5d6-7413-0410-9779-e7cbd77b26cf
2012-10-21 14:07:10 +00:00
4c13d205d4 LTC Slave cleanup
initialize audioengine's ltc_port - if HAVE_LTC is not set
trying to connect it would segfault.

LTC frameno is < 40 by (two bit frame-ten's)

git-svn-id: svn://localhost/ardour2/branches/3.0@13314 d708f5d6-7413-0410-9779-e7cbd77b26cf
2012-10-21 14:07:07 +00:00
7f8d2e32da LTC slave rewrite #2
git-svn-id: svn://localhost/ardour2/branches/3.0@13313 d708f5d6-7413-0410-9779-e7cbd77b26cf
2012-10-20 18:14:13 +00:00
2d9ed69fe2 change input/output button context menus for mixer strip to be non-additive: when selecting a new IO bundle, disconnect from any existing connections before connecting to the new one (fixes #5087)
git-svn-id: svn://localhost/ardour2/branches/3.0@13308 d708f5d6-7413-0410-9779-e7cbd77b26cf
2012-10-18 16:15:11 +00:00
3e59452fa0 fix computation of fixed ruler scales done before canvas width is set by allocation handler (fixes #5065 and #5095)
git-svn-id: svn://localhost/ardour2/branches/3.0@13307 d708f5d6-7413-0410-9779-e7cbd77b26cf
2012-10-18 15:38:04 +00:00
37f2f8981f if a session is altered, ask about saving it BEFORE moving on to the new session dialog (fixes #5086)
git-svn-id: svn://localhost/ardour2/branches/3.0@13306 d708f5d6-7413-0410-9779-e7cbd77b26cf
2012-10-18 13:43:25 +00:00
aa3fe77d7f patch from robin to fix where the transport start occurs when exporting (#4098)
git-svn-id: svn://localhost/ardour2/branches/3.0@13305 d708f5d6-7413-0410-9779-e7cbd77b26cf
2012-10-17 22:33:02 +00:00
97eb00274f patch to take snapshots into account in the recent-session display of teh startup dialog, etc (from melvin ray herr)
git-svn-id: svn://localhost/ardour2/branches/3.0@13304 d708f5d6-7413-0410-9779-e7cbd77b26cf
2012-10-17 22:22:03 +00:00
bb9f8aabc4 second half of forward-port of recent a2/mb control protocol changes, this time enabling the GUI to track protocol-active changes
git-svn-id: svn://localhost/ardour2/branches/3.0@13303 d708f5d6-7413-0410-9779-e7cbd77b26cf
2012-10-17 22:01:02 +00:00
fbc5571133 disable LTC,MTC speed deadzone for now.
wrong threshold causes jumps.

git-svn-id: svn://localhost/ardour2/branches/3.0@13302 d708f5d6-7413-0410-9779-e7cbd77b26cf
2012-10-17 17:11:32 +00:00
cf23bf29e7 decrease LTC flywheel time and adjust DLL settings
git-svn-id: svn://localhost/ardour2/branches/3.0@13301 d708f5d6-7413-0410-9779-e7cbd77b26cf
2012-10-17 15:57:55 +00:00
f6eeb47482 Add a 1% speed deadzone around speed=1.0 for LTC, MTC slaves
trade-off constant re-sampling to achieve sample-delta ~0,
with trying to avoid resampling if the delta is within
1% of the sample-rate.

git-svn-id: svn://localhost/ardour2/branches/3.0@13300 d708f5d6-7413-0410-9779-e7cbd77b26cf
2012-10-17 15:57:53 +00:00
c4cb4fa141 slave delta display
impl MClk slave, update format for LTC, MTC

negative delta: Ardour is behind,
positive delta: Ardour is ahead of ext clock.

git-svn-id: svn://localhost/ardour2/branches/3.0@13299 d708f5d6-7413-0410-9779-e7cbd77b26cf
2012-10-17 15:57:51 +00:00
501d870b3c fix delta display of MClk slave.
git-svn-id: svn://localhost/ardour2/branches/3.0@13298 d708f5d6-7413-0410-9779-e7cbd77b26cf
2012-10-17 15:57:48 +00:00
cff8a65db2 forward part the backend part of the generic MIDI control fixes from mb2/a2
git-svn-id: svn://localhost/ardour2/branches/3.0@13297 d708f5d6-7413-0410-9779-e7cbd77b26cf
2012-10-17 14:36:40 +00:00
f4ae7cc709 LTC remove debug out, delta-time: flywheel display
git-svn-id: svn://localhost/ardour2/branches/3.0@13294 d708f5d6-7413-0410-9779-e7cbd77b26cf
2012-10-16 23:04:02 +00:00
8427901b6a enable sync genlock & setFPS option for both MTC & LTC
git-svn-id: svn://localhost/ardour2/branches/3.0@13293 d708f5d6-7413-0410-9779-e7cbd77b26cf
2012-10-16 23:04:00 +00:00
99a177da84 LTC slave reworked
* detect LTC framerate
* detect LTC discontinuities
* use a DLL for flywheel sync (engine rate)
* don't use seekahead - internal resync

git-svn-id: svn://localhost/ardour2/branches/3.0@13291 d708f5d6-7413-0410-9779-e7cbd77b26cf
2012-10-16 20:53:15 +00:00
b40b353264 prepare for non-seekahead [LTC] slave. fix state machine
locate() will call realtime_stop which will reset the slave-state.

git-svn-id: svn://localhost/ardour2/branches/3.0@13290 d708f5d6-7413-0410-9779-e7cbd77b26cf
2012-10-16 20:53:12 +00:00
64b0efdf9f MTC Slave: allow >2 sec for re-sync, format delta
git-svn-id: svn://localhost/ardour2/branches/3.0@13289 d708f5d6-7413-0410-9779-e7cbd77b26cf
2012-10-16 20:53:10 +00:00
625ee55df0 don't do a pending save if slave is syncing.
13:00 < rgareus> When a slave does initial sync, it sets speed=0, pos=XXX (required by session_process.cc state-machine to init)
13:01 < rgareus> This triggers a locate(roll=false) which in turn triggers a realtime_stop() which in turn triggers a non_realtime_stop().
[..]
13:06 < rgareus> las: the problem I have with non_realtime_stop() is that it does save a pending state IFF  get_record_enabled() is true.
13:06 < rgareus> The save can take ages (seconds), which will void the initial sync of the slave.
13:07 < rgareus> The slave enters a live-lock: sync, save, re-sync, save...
13:07 < las> rgareus: understood
13:07 < rgareus> las: I propose to workaround this: only save pending state if there is no slave or the slave is not locked.
13:07 < las> rgareus: another reason why recording + slave == bad idea :(
13:07 < las> rgareus: but yes, that sounds fine to me
13:07 < rgareus> AFICT this is not harmful. It only affects pre-record settings.
13:07 < rgareus> 'did_record' is used to save a full state after each recording.

git-svn-id: svn://localhost/ardour2/branches/3.0@13288 d708f5d6-7413-0410-9779-e7cbd77b26cf
2012-10-16 20:53:08 +00:00