summaryrefslogtreecommitdiff
path: root/libs/ardour/mtc_slave.cc
AgeCommit message (Collapse)Author
2018-09-18new transport slave/master implementation, libs/ editionPaul Davis
2017-09-18globally change all use of "frame" to refer to audio into "sample".Paul Davis
Generated by tools/f2s. Some hand-editing will be required in a few places to fix up comments related to timecode and video in order to keep the legible
2017-01-10Fix MTC slave implicit return on transport-stopRobin Gareus
MTC returns not-locked (no flywheel) when the signal is lost, in which case Session::follow_slave() jumps to no_roll and ignores the slave-position. The MTC slave does explicitly request a transport-locate and transport-stop. Yet, Session::realtime_stop() honors _requested_return_frame for whatever reason
2016-12-08Clarify "frames" (video, timecode) vs "samples" (audio)Robin Gareus
2016-07-14enough with umpteen "i18n.h" files. Consolidate on pbd/i18n.hPaul Davis
2015-10-04globally remove all trailing whitespace from ardour code base.Paul Davis
Paul Davis was responsible for introducing almost all of this.
2015-06-29Add some libardour support for indicating MTC active status.Paul Davis
The general design here is wrong, because it should be more general and cover all possible sync sources. But it does work, it is used in Tracks, and my attempt to do it correctly revealed the problem to be an EXTREMELY difficult design issue (as in: two weeks of work on it did not really solve the fundamental issues with slave design). So, here it is for now, c/o Grygorii
2013-12-02Use PBD::pthread_name in MTC_Slave for portabilityTim Mayberry
2013-09-18'libs/ardour' - Further compiler specific changesJohn Emmas
2013-09-12incomplete merge of master into windows (requires upcoming changes to master ↵Paul Davis
to be complete)
2013-08-13fixes to get MTC (and probably MIDI clock) slaving working againPaul Davis
incoming MIDI data has to be parsed EVERY process cycle, not just when Slave::speed_and_position() is called. The private MIDI::Parser owned by the MTC and MClck slaves was irrelevant, since the port has its own. See comments in midi_port.h on the strangled inheritance heirarchy.
2013-08-12assorted extra debug output for MTCPaul Davis
2013-08-09more purging of JACK as an explicit name from libardourPaul Davis
2013-08-07major redesign of MIDI port heirarchy and management (part 2)Paul Davis
2013-08-04'libs/ardour' - Main body of changes required for building with MSVCJohn Emmas
2013-07-24part-way through getting the audioengine changes to compilePaul Davis
2013-07-13Use pthread_name instead of pthread_self for portabilityPaul Davis
2013-07-11Remove non-portable and unnused header includesPaul Davis
2013-07-11Revert "Remove non-portable and unnused header includes"Paul Davis
This reverts commit 7ef79d3f4b02e3d2e71d6888fbedd9b3f9c325c7.
2013-07-11Remove non-portable and unnused header includesPaul Davis
2013-03-03clock info-box: fix alignment and spacingRobin Gareus
git-svn-id: svn://localhost/ardour2/branches/3.0@14123 d708f5d6-7413-0410-9779-e7cbd77b26cf
2013-03-03replace unicode dash with (monospace) minus.Robin Gareus
git-svn-id: svn://localhost/ardour2/branches/3.0@14122 d708f5d6-7413-0410-9779-e7cbd77b26cf
2013-03-02fix MTC slave+generator for non integer quarter_frame_durationRobin Gareus
e.g. 44.1k [SPS] / 30 [fps] / 4 [MTC-frames per timecode-frame] = 367.5 [samples per MTC-frame] git-svn-id: svn://localhost/ardour2/branches/3.0@14115 d708f5d6-7413-0410-9779-e7cbd77b26cf
2013-02-05replace final(?) incidences of program name (ardour, Ardour) with ↵Paul Davis
PROGRAM_NAME (thanks to edgar for tracking them all down) git-svn-id: svn://localhost/ardour2/branches/3.0@14050 d708f5d6-7413-0410-9779-e7cbd77b26cf
2013-01-09remove timecode subframe configurationRobin Gareus
There is no actual use-case to set it to anything else than 100. timecode subframes are only used for ruler marks and the snap to grid. libtimecode is still /aware/ of the subframe setting. git-svn-id: svn://localhost/ardour2/branches/3.0@13817 d708f5d6-7413-0410-9779-e7cbd77b26cf
2012-11-13implement TC offset for slave&generator.Robin Gareus
Many related changes that require atomic update, mostly because ClockOption slots changed: * change offset config format to std:string (backwards compat - reads 0) * make Timecode offset independent from fps * sample_to_timecode() handle negative sample-num * audio-clock fix entry and edit of negative numbers * option editor: - remove old global internal offset - add slave & generator TC entry - still needs UI cleanup, tooltops, maybe sep. tab.. * LTC & MTC slave& generator: - cache offset - subscribe to parameter changes git-svn-id: svn://localhost/ardour2/branches/3.0@13485 d708f5d6-7413-0410-9779-e7cbd77b26cf
2012-11-12slave delta: move sign next to the digitRobin Gareus
git-svn-id: svn://localhost/ardour2/branches/3.0@13457 d708f5d6-7413-0410-9779-e7cbd77b26cf
2012-11-11add slave and generator Timecode offset (no UI yet)Robin Gareus
So far only LTC slave, LTC generator and MTC slave. MTC generator remains to be done. git-svn-id: svn://localhost/ardour2/branches/3.0@13441 d708f5d6-7413-0410-9779-e7cbd77b26cf
2012-11-11reintroduce space before delta "sample" lableRobin Gareus
git-svn-id: svn://localhost/ardour2/branches/3.0@13435 d708f5d6-7413-0410-9779-e7cbd77b26cf
2012-11-11first round of audio-clock font rendering updateRobin Gareus
git-svn-id: svn://localhost/ardour2/branches/3.0@13425 d708f5d6-7413-0410-9779-e7cbd77b26cf
2012-11-10add a delta sign to the slave delta display.Robin Gareus
git-svn-id: svn://localhost/ardour2/branches/3.0@13423 d708f5d6-7413-0410-9779-e7cbd77b26cf
2012-11-10update slave clocks -- to use long minusRobin Gareus
git-svn-id: svn://localhost/ardour2/branches/3.0@13422 d708f5d6-7413-0410-9779-e7cbd77b26cf
2012-11-09make timecode offset workRobin Gareus
git-svn-id: svn://localhost/ardour2/branches/3.0@13418 d708f5d6-7413-0410-9779-e7cbd77b26cf
2012-11-09Don't notify user if fps changes only affect speed but not counting.Robin Gareus
also unify labels for 29..97XX and simplify fps display. git-svn-id: svn://localhost/ardour2/branches/3.0@13412 d708f5d6-7413-0410-9779-e7cbd77b26cf
2012-11-09MTC slave: 2997fudge optionRobin Gareus
git-svn-id: svn://localhost/ardour2/branches/3.0@13400 d708f5d6-7413-0410-9779-e7cbd77b26cf
2012-11-05MTC slave: set initial framerates to current value.Robin Gareus
git-svn-id: svn://localhost/ardour2/branches/3.0@13381 d708f5d6-7413-0410-9779-e7cbd77b26cf
2012-11-04MTC slave: disable seekahead, implement own sync-lockedRobin Gareus
git-svn-id: svn://localhost/ardour2/branches/3.0@13376 d708f5d6-7413-0410-9779-e7cbd77b26cf
2012-10-23MTC slave - resolve drift issueRobin Gareus
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-22MTC slave - fix jumps on initializationRobin Gareus
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-17disable LTC,MTC speed deadzone for now.Robin Gareus
wrong threshold causes jumps. git-svn-id: svn://localhost/ardour2/branches/3.0@13302 d708f5d6-7413-0410-9779-e7cbd77b26cf
2012-10-17Add a 1% speed deadzone around speed=1.0 for LTC, MTC slavesRobin Gareus
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-17slave delta displayRobin Gareus
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-16MTC Slave: allow >2 sec for re-sync, format deltaRobin Gareus
git-svn-id: svn://localhost/ardour2/branches/3.0@13289 d708f5d6-7413-0410-9779-e7cbd77b26cf
2012-10-15MTC slave: timcode and delta formattingRobin Gareus
git-svn-id: svn://localhost/ardour2/branches/3.0@13279 d708f5d6-7413-0410-9779-e7cbd77b26cf
2012-10-14MTC slave fix reporting approx positionRobin Gareus
git-svn-id: svn://localhost/ardour2/branches/3.0@13277 d708f5d6-7413-0410-9779-e7cbd77b26cf
2012-10-14prepare reporting slave delta & MTC slave implementationRobin Gareus
git-svn-id: svn://localhost/ardour2/branches/3.0@13276 d708f5d6-7413-0410-9779-e7cbd77b26cf
2012-10-14MTC,LTC print current timecodes in warningRobin Gareus
git-svn-id: svn://localhost/ardour2/branches/3.0@13274 d708f5d6-7413-0410-9779-e7cbd77b26cf
2012-10-14MTC Slave: MIDI 30df -> A3 29.97dfRobin Gareus
MIDI only specifies the frame-count, not the rate. in the vast majority of cases MIDI's "Count to 30 use drop-frame" is 29.97df fps. git-svn-id: svn://localhost/ardour2/branches/3.0@13271 d708f5d6-7413-0410-9779-e7cbd77b26cf
2012-10-14MTC Slave: fix return approx position.Robin Gareus
git-svn-id: svn://localhost/ardour2/branches/3.0@13270 d708f5d6-7413-0410-9779-e7cbd77b26cf
2012-10-13MTCslave - use new timecode APIRobin Gareus
git-svn-id: svn://localhost/ardour2/branches/3.0@13267 d708f5d6-7413-0410-9779-e7cbd77b26cf