13
0
livetrax/libs/evoral/evoral
David Robillard 7e2c8ace4b Follow MIDI control values with automation faders.
Fixes bug #6166 (except record).

This attempts to follow the "current" control value somewhat aggressively:

* On locate, slider is set to the value from the top region at the new
  transport position.

* Playback or MIDI input is followed "live".

* Whenever the slider is moved (including automatically), that value is emitted
  as an immediate event to keep external gear in sync.

General idea is that the Ardour slider should act as a mirror of an external
hardware knob, and both should be synced to whatever the control is at the
current transport position.  Since we lack real playback/touch/etc modes for
these for now, we must choose one behaviour, and this seems like the most
reasonable one.

Follow is handled in the audio thread, which is probably not ideal, but since
these controls have no lists and do not record, should be fine.  Probably.
2015-03-26 00:47:34 -04:00
..
Beats.hpp MusicalTime => Beats. 2015-01-07 00:12:07 -05:00
Control.hpp Mute automation via normal mute button. 2014-12-18 02:26:51 -05:00
ControlList.hpp
ControlSet.hpp
Curve.hpp
Event.hpp Handle edits while playing precisely. 2015-03-05 17:30:31 -05:00
EventList.hpp
EventSink.hpp
midi_events.h
midi_util.h fix incorrect test for valid MIDI events. 2014-12-31 10:32:50 -05:00
MIDIEvent.hpp Follow MIDI control values with automation faders. 2015-03-26 00:47:34 -04:00
Note.hpp
OldSMF.hpp
Parameter.hpp Adapt range when copying between automation types. 2014-12-06 13:40:35 -05:00
ParameterDescriptor.hpp Fix range of pan controls. 2014-12-02 19:02:03 -05:00
PatchChange.hpp
Range.hpp Fix range "arithmetic" 2014-12-31 07:43:43 -05:00
Sequence.hpp Add a missing 'typename' specifier to the declaration for 'Evoral::Sequence::set_notes()' 2015-03-07 12:29:15 +00:00
SMF.hpp Remove unnecessary includes. 2014-12-06 22:43:06 -05:00
SMFReader.hpp
TimeConverter.hpp
TypeMap.hpp
types.hpp MusicalTime => Beats. 2015-01-07 00:12:07 -05:00
visibility.h