8725ed5bd1
add Ctl_Dial to get better behaviour when binding a MIDI controller KNOB/DIAL to a toggled controllable.
...
No intent to change Ctl_Momentary or Ctl_Toggle behaviour, plus I tried to document what they are intended to support
2018-06-21 22:28:11 -04:00
8a18929d57
remove Session::controllable_by_descriptor() and move code into GenericMIDI code (the only user).
...
This also removes enums introduced to describe well-known parameters for Mixbus. Lookup now involves string
parsing every time, but this is not likely to be a notable cost.
2018-06-21 13:05:58 -04:00
Jan Lentfer
a2af019c95
generic_midi: add proper handling of midi controll toggles
2018-03-03 14:04:12 +01:00
567c0a8f53
Switch to PBD control-math and prefer Controllable API
...
Note: Control-surfaces should always use interface_to_internal()
and internal_to_interface().
2017-06-21 18:12:04 +02:00
f82cb87f0c
Use XMLNode::get/set_property API in MIDIControllable class
2017-04-19 09:36:54 +10:00
cdddf79bcf
Generic MIDI controls should affect group members too, if they exist
2017-01-31 15:33:13 +01:00
93f837b43e
generic MIDI: put controllables into touch mode (if appropriate) when data is received
2017-01-23 13:25:56 +01:00
f05a07837b
MIDI leaks -- the Controllergate conspiracy debunked
2017-01-20 11:40:53 +01:00
81123a774a
amend 3afe3f32df
(remove unused global feedback option)
...
That commit accidentally removed unrelated code in generic-midi surface
which just happened to have the same name (get/set_midi_feedback) as the
unused preference.
Regardless, there was more cruft there. GMCP midicontrollables now use
the control surfaces' feedback option.
2016-12-31 15:20:07 +01:00
5156b8aeb5
White space fix only. (Spaces to tabs)
2016-07-10 08:20:05 -07:00
d5127001bb
move ControllableDescriptor from libpbd to libardour; add support for describing VCAs
2016-05-31 15:30:42 -04:00
dd05f1e257
Fix bug #5633 , Don't drop all midi bindings when a track is removed
...
Only drop the controllable that is being destroyed, not all of them.
2016-02-03 22:30:41 +10:00
0ddbf665d8
generic MIDI: if a CC is bound to a toggled controllable, toggle the controllable only when the incoming CC value > 0x40
...
See comment in code for more details
2016-02-02 22:28:36 -05:00
ddb362fe17
Generic MIDI: add ToggleRecEnable action, and change all maps to use that instead of separate rec-enable, rec-disable, which didnt work
2016-01-14 16:37:54 -06:00
9e3299f97d
change Controllable::set_value() API to include grouped control consideration.
...
This also removes Route::group_gain_control() and associated machinery.
Not yet tested with Mackie or other surfaces. More work to done to
start using the group capabilities, and also potentially to add
or derive more controls as RouteAutomationControls
2016-01-02 04:58:30 -05:00
634321ba45
Fix Trim control range does not match control (issue #6696 )
2015-12-13 15:53:24 -08:00
3c9b71b50e
allow use of (N)RPN messages in generic MIDI binding maps (UNTESTED)
2015-11-23 12:27:51 -05:00
22b07e0233
NOOP, remove trailing tabs/whitespace.
2015-10-05 16:17:49 +02:00
4dc63966f0
globally remove all trailing whitespace from ardour code base.
...
Paul Davis was responsible for introducing almost all of this.
2015-10-04 14:51:05 -04:00
1a51f19493
Clean up extra white space added by editor.
2015-07-27 16:17:38 -04:00
8b4a237ee3
Handle the 4 common encoder types.
2015-07-27 16:17:38 -04:00
d3b4ef4eed
Add enc to midi map for mcp style encoders.
2015-07-27 16:17:38 -04:00
ae3d4efce0
Make program change toggle or 1 only.
2015-07-27 16:17:38 -04:00
6ab04a27c3
Allow any one midi event to control only one thing.
2015-07-27 16:17:38 -04:00
ed8ab2c80a
Fixed pb in toggle mode to switch at half way ( fixes #6424 )
2015-07-10 16:52:43 -04:00
a29b050883
Fixed generic MIDI program change event size to two bytes ( fixes #6426 )
2015-07-10 16:52:43 -04:00
6349570fb2
Add debug for generic midi control
2015-07-10 16:52:43 -04:00
8c9749e42f
merge with master and fix 4 conflicts by hand
2014-06-02 11:32:13 -04:00
af0c42ec4f
midi-controller, support log parameters - fixes #5890
2014-03-23 18:59:24 +01:00
bb826f4bee
incomplete merge of master into windows (requires upcoming changes to master to be complete)
2013-09-12 11:28:50 -04:00
7b5d72eabd
'surfaces/generic_midi' - Specify 'MIDI::byte' instead of 'byte' so the compiler knows which one we mean
2013-09-05 09:50:58 +01:00
1ab61b8564
major redesign of MIDI port heirarchy and management (part 2)
2013-08-07 22:22:11 -04:00
1f9b0a86bd
fix crash when deleting a processor with a controllable ( #5284 )
...
git-svn-id: svn://localhost/ardour2/branches/3.0@13943 d708f5d6-7413-0410-9779-e7cbd77b26cf
2013-01-21 13:20:43 +00:00
5adcb61f60
a few small fixes that help pitchbend control of things, notably the shuttle controller. but note that basically, teh shuttle controller is completely and hopelessly broken through excess complexity and incorrect design
...
git-svn-id: svn://localhost/ardour2/branches/3.0@13870 d708f5d6-7413-0410-9779-e7cbd77b26cf
2013-01-17 14:48:17 +00:00
37906d067e
feedback for toggled MIDI controls now sends 0 or 127, not various in-between values (should fix #5117 , without any bad side-effects
...
git-svn-id: svn://localhost/ardour2/branches/3.0@13680 d708f5d6-7413-0410-9779-e7cbd77b26cf
2012-12-19 01:28:41 +00:00
b2bbc44eaa
forward-port generic MIDI and transport controllable changes from 2.X
...
git-svn-id: svn://localhost/ardour2/branches/3.0@13066 d708f5d6-7413-0410-9779-e7cbd77b26cf
2012-07-23 13:31:51 +00:00
Carl Hetherington
b97a1bfb97
Connect to controllable->Destroyed in all cases; fixes crash on route removal.
...
git-svn-id: svn://localhost/ardour2/branches/3.0@12959 d708f5d6-7413-0410-9779-e7cbd77b26cf
2012-06-28 15:38:07 +00:00
266030b79c
some generic midi debugging plus an assert
...
git-svn-id: svn://localhost/ardour2/branches/3.0@12950 d708f5d6-7413-0410-9779-e7cbd77b26cf
2012-06-26 20:49:52 +00:00
dde521f2c6
fix up some issues introduced by lifecycle tracking of Controllable in Generic MIDI control code
...
git-svn-id: svn://localhost/ardour2/branches/3.0@12947 d708f5d6-7413-0410-9779-e7cbd77b26cf
2012-06-26 19:10:11 +00:00
a054a74dd2
disconnect from a Controllable when it is destroyed
...
git-svn-id: svn://localhost/ardour2/branches/3.0@12938 d708f5d6-7413-0410-9779-e7cbd77b26cf
2012-06-26 01:55:53 +00:00
92469df6ab
add late/lazy binding between generic MIDI bindings and controllable elements in the session. this allows you to load a binding map that refers to elements that have not yet been created in the session, and when they are created, the binding will work
...
git-svn-id: svn://localhost/ardour2/branches/3.0@12921 d708f5d6-7413-0410-9779-e7cbd77b26cf
2012-06-25 12:33:13 +00:00
Carl Hetherington
72642335d1
Slightly tweaked patch from royvegard to add optional threshold for catch-up of non motorised controls in generic MIDI surfaces ( #4828 ).
...
git-svn-id: svn://localhost/ardour2/branches/3.0@12716 d708f5d6-7413-0410-9779-e7cbd77b26cf
2012-06-13 21:53:50 +00:00
Carl Hetherington
189257dd32
Make toggle MIDIControllables with program changes only respond to the appropriate program change (part of #4780 ).
...
git-svn-id: svn://localhost/ardour2/branches/3.0@11739 d708f5d6-7413-0410-9779-e7cbd77b26cf
2012-03-21 02:15:55 +00:00
Carl Hetherington
fb6895ba86
Add motorised attribute to DeviceInfo for generic MIDI maps so that
...
we can specify if a surface is motorised, and as such will keep its
phyiscal controls in sync with Ardour's controllables at all times.
If this is not the case, we enable the code to avoid jumps when controls and
controllables are out of sync. Mark the BCF2000 as motorised.
git-svn-id: svn://localhost/ardour2/branches/3.0@11611 d708f5d6-7413-0410-9779-e7cbd77b26cf
2012-03-07 01:11:22 +00:00
Carl Hetherington
fe86f97563
Work around problems with some JACK<->ALSA midi bridges which don't
...
transfer multiple MIDI messages when they are written in one
jack_midi_event_write. Support pitch bend messages in the
generic midi control surface code.
git-svn-id: svn://localhost/ardour2/branches/3.0@11601 d708f5d6-7413-0410-9779-e7cbd77b26cf
2012-03-06 15:08:17 +00:00
dcccd5b4d6
patch from roy vegard to stop feedback from causing jumps when a MIDI controller and ardour are out of sync
...
git-svn-id: svn://localhost/ardour2/branches/3.0@11001 d708f5d6-7413-0410-9779-e7cbd77b26cf
2011-12-14 15:57:48 +00:00
0938a42440
fixes for 98% of all the warnings/errors reported by OS X gcc on tiger
...
git-svn-id: svn://localhost/ardour2/branches/3.0@10179 d708f5d6-7413-0410-9779-e7cbd77b26cf
2011-09-30 17:55:14 +00:00
f75bbfd8ac
track changes to config parameters for MMC device id's correctly (from roy vegard)
...
git-svn-id: svn://localhost/ardour2/branches/3.0@9985 d708f5d6-7413-0410-9779-e7cbd77b26cf
2011-08-13 16:27:29 +00:00
964411b688
fix conversion of MIDI controller (7 bit) value into a 0..+1.0 range value
...
git-svn-id: svn://localhost/ardour2/branches/3.0@8124 d708f5d6-7413-0410-9779-e7cbd77b26cf
2010-11-29 17:56:08 +00:00
7cbcf258cc
changes associated with save/restore of AutomationControl id's
...
git-svn-id: svn://localhost/ardour2/branches/3.0@8111 d708f5d6-7413-0410-9779-e7cbd77b26cf
2010-11-27 17:43:32 +00:00