Commit graph

3517 commits

Author SHA1 Message Date
Robin Gareus
bdcd6dba69 MTC,LTC print current timecodes in warning
git-svn-id: svn://localhost/ardour2/branches/3.0@13274 d708f5d6-7413-0410-9779-e7cbd77b26cf
2012-10-14 16:17:47 +00:00
Robin Gareus
f6b9572bfd LTC Slave, add support for variable framerates
git-svn-id: svn://localhost/ardour2/branches/3.0@13273 d708f5d6-7413-0410-9779-e7cbd77b26cf
2012-10-14 16:17:42 +00:00
Robin Gareus
a9c9d5072c MTC Slave: MIDI 30df -> A3 29.97df
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-14 16:17:37 +00:00
Robin Gareus
0e7654255c MTC Slave: fix return approx position.
git-svn-id: svn://localhost/ardour2/branches/3.0@13270 d708f5d6-7413-0410-9779-e7cbd77b26cf
2012-10-14 16:17:35 +00:00
Robin Gareus
f66d3f9b13 MTCslave - use new timecode API
git-svn-id: svn://localhost/ardour2/branches/3.0@13267 d708f5d6-7413-0410-9779-e7cbd77b26cf
2012-10-13 23:27:43 +00:00
Robin Gareus
4a17dd8fb6 move sample/timecode conversion to libtimecode.
git-svn-id: svn://localhost/ardour2/branches/3.0@13266 d708f5d6-7413-0410-9779-e7cbd77b26cf
2012-10-13 23:27:40 +00:00
Paul Davis
13d23f15aa provide forgotten case for restoring Windows VST plugins
git-svn-id: svn://localhost/ardour2/branches/3.0@13265 d708f5d6-7413-0410-9779-e7cbd77b26cf
2012-10-13 00:31:46 +00:00
Paul Davis
eaaca760c9 tweaks to be ready for more information timecode display in Timecode clock mode
git-svn-id: svn://localhost/ardour2/branches/3.0@13264 d708f5d6-7413-0410-9779-e7cbd77b26cf
2012-10-12 22:04:21 +00:00
Robin Gareus
5eeecf82a0 LTC slave - basic working version (hardcoded 25fps)
git-svn-id: svn://localhost/ardour2/branches/3.0@13263 d708f5d6-7413-0410-9779-e7cbd77b26cf
2012-10-12 21:28:08 +00:00
Robin Gareus
6de548bd7f MTC slave - return apparent_timecode_format
git-svn-id: svn://localhost/ardour2/branches/3.0@13262 d708f5d6-7413-0410-9779-e7cbd77b26cf
2012-10-12 21:28:05 +00:00
Robin Gareus
fd1ab7ad40 MTC Slave: handle locates (quick re-sync)
git-svn-id: svn://localhost/ardour2/branches/3.0@13259 d708f5d6-7413-0410-9779-e7cbd77b26cf
2012-10-12 17:04:20 +00:00
Paul Davis
76eb2f23d6 basics for a TimecodeSlave parent class for MTC and LTC
git-svn-id: svn://localhost/ardour2/branches/3.0@13258 d708f5d6-7413-0410-9779-e7cbd77b26cf
2012-10-12 16:48:53 +00:00
Robin Gareus
bce3184ff5 skeleton framework for LTC-slave
git-svn-id: svn://localhost/ardour2/branches/3.0@13256 d708f5d6-7413-0410-9779-e7cbd77b26cf
2012-10-12 09:45:22 +00:00
Hans Baier
e3fb47d990 make sure routes instrument info initializes correctly
git-svn-id: svn://localhost/ardour2/branches/3.0@13254 d708f5d6-7413-0410-9779-e7cbd77b26cf
2012-10-12 09:25:20 +00:00
Hans Baier
6009ad3060 tidy
git-svn-id: svn://localhost/ardour2/branches/3.0@13253 d708f5d6-7413-0410-9779-e7cbd77b26cf
2012-10-12 09:24:31 +00:00
Robin Gareus
617d291d1b MTC: map between timecodes
allow external timecode device to supply timecode with
framerates other than ardour session's framerate.

also fix latency overcompensation. The slave is supposed to
provide transport time - and not audible frame time.

git-svn-id: svn://localhost/ardour2/branches/3.0@13250 d708f5d6-7413-0410-9779-e7cbd77b26cf
2012-10-12 01:08:32 +00:00
Robin Gareus
a9abe3b1e1 move TimecodeFormat to libtimecode
provide a way to convert any TimecodeFormat to float frame-rate,
not only the currently active timecode_foramt.

git-svn-id: svn://localhost/ardour2/branches/3.0@13249 d708f5d6-7413-0410-9779-e7cbd77b26cf
2012-10-12 01:08:29 +00:00
Hans Baier
f61f973f87 implement missing midi event filtering during recording
git-svn-id: svn://localhost/ardour2/branches/3.0@13243 d708f5d6-7413-0410-9779-e7cbd77b26cf
2012-10-11 05:39:40 +00:00
Hans Baier
ed05701ccb revert last commit, wrong place...
git-svn-id: svn://localhost/ardour2/branches/3.0@13242 d708f5d6-7413-0410-9779-e7cbd77b26cf
2012-10-11 04:31:57 +00:00
Hans Baier
d2c6b00bdd fix bug: capture buffer not filtered by track channel selector
git-svn-id: svn://localhost/ardour2/branches/3.0@13241 d708f5d6-7413-0410-9779-e7cbd77b26cf
2012-10-11 04:27:53 +00:00
Hans Baier
97c23848d7 implement deleting of sysex events
git-svn-id: svn://localhost/ardour2/branches/3.0@13238 d708f5d6-7413-0410-9779-e7cbd77b26cf
2012-10-11 03:22:17 +00:00
Paul Davis
9707a0e827 move the external sync source selection tobe a global config parameter, not per-session, since this is likely a reflection of studio setup, h/w etc.; starting using real tooltips in the RC option editor
git-svn-id: svn://localhost/ardour2/branches/3.0@13237 d708f5d6-7413-0410-9779-e7cbd77b26cf
2012-10-11 03:10:18 +00:00
Paul Davis
71b7326576 move timecode-is-clock-synced option to global configuration parameters, not per session
git-svn-id: svn://localhost/ardour2/branches/3.0@13235 d708f5d6-7413-0410-9779-e7cbd77b26cf
2012-10-10 22:56:21 +00:00
Paul Davis
8007939839 add global config parameter timecode-sync-frame-rate to control behaviour when a timecode slave (MTC, LTC) has a different frame rate than an Ardour session
git-svn-id: svn://localhost/ardour2/branches/3.0@13233 d708f5d6-7413-0410-9779-e7cbd77b26cf
2012-10-10 21:07:24 +00:00
Robin Gareus
0441bc140e MTC slave, don't touch position if no MTC was received
git-svn-id: svn://localhost/ardour2/branches/3.0@13232 d708f5d6-7413-0410-9779-e7cbd77b26cf
2012-10-10 20:37:59 +00:00
Robin Gareus
915797fd23 MTC-slave: print error if framerate mismatch
git-svn-id: svn://localhost/ardour2/branches/3.0@13231 d708f5d6-7413-0410-9779-e7cbd77b26cf
2012-10-10 20:37:56 +00:00
Robin Gareus
8a6b0ab072 debug msg - varispeed recording
git-svn-id: svn://localhost/ardour2/branches/3.0@13228 d708f5d6-7413-0410-9779-e7cbd77b26cf
2012-10-10 14:03:19 +00:00
Robin Gareus
29825092ae ignore slave/engine time-delta when recording.
git-svn-id: svn://localhost/ardour2/branches/3.0@13227 d708f5d6-7413-0410-9779-e7cbd77b26cf
2012-10-10 14:03:18 +00:00
Robin Gareus
a2b4128035 fix and improve MTC-slave
- MTC-speed average (MIDI thread)
   * base timing on quarter-frames
   * replace hann-window average with a DLL
 - MTC/engine alignment
   * replace 1st order PI-controller with 2nd order DLL

The 2nd DLL is needed because the jack-process callback effectively
quantizes the transport-speed to integer audio-frames (speed * nframes).
This leaves a delta on every cycle because the remainder from previous
cycles is not compensated for.

Theoretically it is possible to merge the two DLLs into one.
However, with callbacks coming from by two independent threads
it is cleaner to track the MTC and JACK engine-alignment speeds
independently.

git-svn-id: svn://localhost/ardour2/branches/3.0@13226 d708f5d6-7413-0410-9779-e7cbd77b26cf
2012-10-10 14:03:15 +00:00
Hans Baier
3f5c6f8190 enable and extend EVORAL_MIDI_XML. Useful for Debugging. Any objections?
git-svn-id: svn://localhost/ardour2/branches/3.0@13223 d708f5d6-7413-0410-9779-e7cbd77b26cf
2012-10-10 04:31:59 +00:00
Hans Baier
f8b7687f78 whitespace
git-svn-id: svn://localhost/ardour2/branches/3.0@13222 d708f5d6-7413-0410-9779-e7cbd77b26cf
2012-10-10 04:30:48 +00:00
Hans Baier
9a19da77e3 fix insidious bugs in midnam_patch.cc which account for garbled data
git-svn-id: svn://localhost/ardour2/branches/3.0@13219 d708f5d6-7413-0410-9779-e7cbd77b26cf
2012-10-09 03:17:15 +00:00
Paul Davis
9a4fbfcdfe add 8kHz as an available export format sample rate
git-svn-id: svn://localhost/ardour2/branches/3.0@13214 d708f5d6-7413-0410-9779-e7cbd77b26cf
2012-10-08 19:45:25 +00:00
Paul Davis
d29c5cdfb0 drop connections to incoming MIDI signals before deleting MTC Slave object
git-svn-id: svn://localhost/ardour2/branches/3.0@13208 d708f5d6-7413-0410-9779-e7cbd77b26cf
2012-10-04 20:54:08 +00:00
Paul Davis
a63d01e24a do not add in ticks in the "at" position when computing BBT duration somewhere on the timeline (fixes issues with nudging etc.
git-svn-id: svn://localhost/ardour2/branches/3.0@13201 d708f5d6-7413-0410-9779-e7cbd77b26cf
2012-10-01 20:55:10 +00:00
Paul Davis
02a98547f1 different version of previous commit that leaves previous semantics intact unless punch in/out are enabled
git-svn-id: svn://localhost/ardour2/branches/3.0@13200 d708f5d6-7413-0410-9779-e7cbd77b26cf
2012-09-27 14:11:01 +00:00
Paul Davis
f940452bc0 when deciding monitoring state, only consider the session to be in global record state if we are actively recording, not just if we are rec-enabled. this provides correct monitoring when punch in/out are enabled
git-svn-id: svn://localhost/ardour2/branches/3.0@13199 d708f5d6-7413-0410-9779-e7cbd77b26cf
2012-09-27 11:38:13 +00:00
Paul Davis
53afa11311 mark session dirty when route active status changes
git-svn-id: svn://localhost/ardour2/branches/3.0@13195 d708f5d6-7413-0410-9779-e7cbd77b26cf
2012-09-19 19:32:05 +00:00
David Robillard
87017d581a Support latest options extension.
git-svn-id: svn://localhost/ardour2/branches/3.0@13191 d708f5d6-7413-0410-9779-e7cbd77b26cf
2012-09-16 17:01:23 +00:00
Paul Davis
4ee7e09e2c fix a couple of errors in zh.po files
git-svn-id: svn://localhost/ardour2/branches/3.0@13185 d708f5d6-7413-0410-9779-e7cbd77b26cf
2012-09-12 21:30:44 +00:00
Paul Davis
3008fbdea5 add chinese translation from Rui-huai Zhang
git-svn-id: svn://localhost/ardour2/branches/3.0@13183 d708f5d6-7413-0410-9779-e7cbd77b26cf
2012-09-12 21:24:55 +00:00
David Robillard
bfb5292e74 Consistent style.
git-svn-id: svn://localhost/ardour2/branches/3.0@13180 d708f5d6-7413-0410-9779-e7cbd77b26cf
2012-09-08 18:18:47 +00:00
Carl Hetherington
f404e90836 I think Region::can_move() should take into account _locked
as well as the never-used (apart from ImageFrameView)
_position_locked.  Fixes #5090.


git-svn-id: svn://localhost/ardour2/branches/3.0@13179 d708f5d6-7413-0410-9779-e7cbd77b26cf
2012-09-08 01:03:00 +00:00
Carl Hetherington
c779474c13 Reset pending_locate_roll in all cases, not just when the
roll happened; should help with #5047.


git-svn-id: svn://localhost/ardour2/branches/3.0@13158 d708f5d6-7413-0410-9779-e7cbd77b26cf
2012-09-01 11:24:17 +00:00
David Robillard
3eaadafd31 Fix compilation without svn lv2.
git-svn-id: svn://localhost/ardour2/branches/3.0@13152 d708f5d6-7413-0410-9779-e7cbd77b26cf
2012-08-30 01:23:39 +00:00
David Robillard
7e335a8234 Implement latest buf-size extension via new options extension.
git-svn-id: svn://localhost/ardour2/branches/3.0@13151 d708f5d6-7413-0410-9779-e7cbd77b26cf
2012-08-29 20:22:18 +00:00
Robin Gareus
fd37871315 added missing header include
git-svn-id: svn://localhost/ardour2/branches/3.0@13150 d708f5d6-7413-0410-9779-e7cbd77b26cf
2012-08-29 00:30:50 +00:00
Robin Gareus
322f1c7d0d LV2: amend previous commit, respect replicated plugin instances
When a plugin is replicated (eg. mono plugin on a stereo-track),
configure_io() is only called for the first instance.
The 2nd instance will not have dedicated buffers but re-use copies
of the first instance. Should the 2nd instance use a LV2 worker-thread or
local communication ports they can not be shared with the first instance.
-> this patch allocates Atom-buffers for each instance.

PS. this still needs more work; there is only one UI instance for
all plugin instances. messages from the UI should go to all
instances.

git-svn-id: svn://localhost/ardour2/branches/3.0@13148 d708f5d6-7413-0410-9779-e7cbd77b26cf
2012-08-28 15:42:40 +00:00
Robin Gareus
198efb82bc LV2: allocate dedicated buffers for [non-midi] event-ports.
git-svn-id: svn://localhost/ardour2/branches/3.0@13147 d708f5d6-7413-0410-9779-e7cbd77b26cf
2012-08-28 15:42:38 +00:00
Robin Gareus
9ab45f37c6 LV2 worker: prevent corruption of ringbuffer
git-svn-id: svn://localhost/ardour2/branches/3.0@13146 d708f5d6-7413-0410-9779-e7cbd77b26cf
2012-08-28 15:42:35 +00:00