5ebc8de6cc
conform to new CP API design
2013-12-21 15:31:28 -05:00
afabc09fbf
change Generic MIDI control so that it handles a SendFeedback request synchronously within a process callback
2013-12-13 16:56:34 -05:00
1c49138e00
move MidiPortManager from AudioEngine to Session
...
This makes the responsibilities and ownership of non-Route related MIDI ports
more clear, and removes a few wierd bits of code. It also ensures that open/close/open
on the same session will retain connections for those MIDI ports
2013-09-05 13:22:34 -04:00
1ab61b8564
major redesign of MIDI port heirarchy and management (part 2)
2013-08-07 22:22:11 -04:00
298da23619
save and restore Generic MIDI threshold/smoothing value
2013-06-10 12:37:09 -04:00
6e485c0fc1
fix reload of Generic MIDI binding state when the target state involves just a binding map, with no specific controller bindings at all (should fix #5210 )
2013-04-06 09:13:39 -04:00
2c3dc9861e
missing part of the midi map fix
2013-03-18 13:59:12 -04:00
1847053f66
return the full MIDI map search path from system_midi_map_search_path(), to fix #5379
2013-03-18 11:42:49 -04:00
397729eb18
fix continuing SNAFUs with ::set_state() for control protocols and the parent/child/grandchild relationship for the XML nodes. this corrects problems with MackieControl
...
git-svn-id: svn://localhost/ardour2/branches/3.0@13794 d708f5d6-7413-0410-9779-e7cbd77b26cf
2013-01-06 14:39:27 +00:00
844ce9f359
prevent crash when saving learned MIDI binding that is now missing its controllable
...
git-svn-id: svn://localhost/ardour2/branches/3.0@13678 d708f5d6-7413-0410-9779-e7cbd77b26cf
2012-12-19 01:19: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
3cd8138a41
convert from Glib:: to Glib::Threads for all thread-related API
...
git-svn-id: svn://localhost/ardour2/branches/3.0@13084 d708f5d6-7413-0410-9779-e7cbd77b26cf
2012-07-25 17:48:55 +00:00
Carl Hetherington
e09e185e3e
Add what I think is a missing lock when reading controllables.
...
git-svn-id: svn://localhost/ardour2/branches/3.0@12958 d708f5d6-7413-0410-9779-e7cbd77b26cf
2012-06-28 15:37:54 +00:00
1708ab55b9
fix MIDI binding stuff when the controllable does actually exist the first time we go looking for it ( #4950 )
...
git-svn-id: svn://localhost/ardour2/branches/3.0@12957 d708f5d6-7413-0410-9779-e7cbd77b26cf
2012-06-28 14:44:29 +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
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
4522ef26a2
Use Glib instead of pbd/filesystem.h in GenericMidiControlProtocol
...
git-svn-id: svn://localhost/ardour2/branches/3.0@12901 d708f5d6-7413-0410-9779-e7cbd77b26cf
2012-06-23 05:09:42 +00:00
bc205191bf
Use Glib::file_test instead of PBD::sys::exists
...
git-svn-id: svn://localhost/ardour2/branches/3.0@12883 d708f5d6-7413-0410-9779-e7cbd77b26cf
2012-06-23 05:09:02 +00:00
105caf23da
Use std::string instead of PBD::sys::path in pbd/search_path.h, pbd/file_utils.h and ardour/session_dir.h
...
git-svn-id: svn://localhost/ardour2/branches/3.0@12829 d708f5d6-7413-0410-9779-e7cbd77b26cf
2012-06-23 05:06:54 +00:00
Carl Hetherington
3dd8fbdefa
Hush some debug messages.
...
git-svn-id: svn://localhost/ardour2/branches/3.0@12779 d708f5d6-7413-0410-9779-e7cbd77b26cf
2012-06-19 13:28: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
813c5f0af9
major rationalization of use of search paths. ardour now has just 4 functions used to define how external resources are located: ardour_config_search_path() (for system or user specific configuration data), ardour_data_search_path() (for machine, user and system independent data), ardour_dll_directory() (base directory where shared libraries are found) and user_config_directory(). These are now used throughout the code. the config, data and dll paths/directories can be overridden by environment variables. the user config dir is added as the first element of the first two search paths, and use selectively when searching for a few other things.
...
This commit re-enabes ./waf install, and it is believed that it works fully at this point (more testing likely required)
git-svn-id: svn://localhost/ardour2/branches/3.0@12326 d708f5d6-7413-0410-9779-e7cbd77b26cf
2012-05-18 17:24:06 +00:00
ec1ef5d6b5
remove the apparently unnecessary "ui_bind()" macro from entire source base
...
git-svn-id: svn://localhost/ardour2/branches/3.0@12088 d708f5d6-7413-0410-9779-e7cbd77b26cf
2012-04-25 12:58:19 +00:00
72678cc230
revert previous commit (it should work, but did not); minor tweaks elsewhere
...
git-svn-id: svn://localhost/ardour2/branches/3.0@12084 d708f5d6-7413-0410-9779-e7cbd77b26cf
2012-04-24 20:27:13 +00:00
2171bba037
make generic MIDI support handle SendFeedback() in process()-context, not in the MIDIControlUI event loop
...
git-svn-id: svn://localhost/ardour2/branches/3.0@12083 d708f5d6-7413-0410-9779-e7cbd77b26cf
2012-04-24 19:25:57 +00:00
4e9173ff62
likely fix for various odd problems with cross-thread callbacks
...
git-svn-id: svn://localhost/ardour2/branches/3.0@12082 d708f5d6-7413-0410-9779-e7cbd77b26cf
2012-04-24 19:19:39 +00:00
4bfdcc18bd
ControlProtocol doesn't actually need any record of an event loop and doesn't need to connect to any signals itself
...
git-svn-id: svn://localhost/ardour2/branches/3.0@12063 d708f5d6-7413-0410-9779-e7cbd77b26cf
2012-04-23 10:54:34 +00:00
Carl Hetherington
8063027507
Add set_motorised().
...
git-svn-id: svn://localhost/ardour2/branches/3.0@11728 d708f5d6-7413-0410-9779-e7cbd77b26cf
2012-03-19 01:34:35 +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
ae5f278202
make control protocol's SelectByRID signal work, thus enabling MIDI binding maps to use function="select" with an argument; fix minor bug in previous commit
...
git-svn-id: svn://localhost/ardour2/branches/3.0@9991 d708f5d6-7413-0410-9779-e7cbd77b26cf
2011-08-14 17:11:33 +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
0a07cca64c
if a binding map specifies controllables that don't exist in the session, drop those bindings so that we don't crash from having bindings without controllables (should fix #4256 )
...
git-svn-id: svn://localhost/ardour2/branches/3.0@9973 d708f5d6-7413-0410-9779-e7cbd77b26cf
2011-08-10 15:57:03 +00:00
4ef712df25
permit envvar to define where to find MIDI binding maps (for bundle, or other reasons)
...
git-svn-id: svn://localhost/ardour2/branches/3.0@9203 d708f5d6-7413-0410-9779-e7cbd77b26cf
2011-03-25 21:21:05 +00:00
665f3bea5a
fix all manner of wrongness with port buffer offsets
...
git-svn-id: svn://localhost/ardour2/branches/3.0@9098 d708f5d6-7413-0410-9779-e7cbd77b26cf
2011-03-07 19:06:42 +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
b85b4d9e54
make ardour3 build and link on OS X (tiger, at least)
...
git-svn-id: svn://localhost/ardour2/branches/3.0@8018 d708f5d6-7413-0410-9779-e7cbd77b26cf
2010-11-13 05:14:48 +00:00
Carl Hetherington
648a169d8f
Move MIDI control port ownership into the MIDI Manager, since control port state should be Ardour-wide, not per-session. Fix up port connection state management.
...
git-svn-id: svn://localhost/ardour2/branches/3.0@7394 d708f5d6-7413-0410-9779-e7cbd77b26cf
2010-07-08 22:55:20 +00:00
Carl Hetherington
ea23298f10
Setup fixed ports for MIDI control data; hence remove configuration of those ports. Move MIDI tracer to the Windows menu. Trim some unused code from the midi++ Manager.
...
git-svn-id: svn://localhost/ardour2/branches/3.0@7384 d708f5d6-7413-0410-9779-e7cbd77b26cf
2010-07-07 00:40:58 +00:00
77c09fc824
add support for "msg=" bindings and also action="SomeGroup/Action"
...
git-svn-id: svn://localhost/ardour2/branches/3.0@6876 d708f5d6-7413-0410-9779-e7cbd77b26cf
2010-04-08 21:05:55 +00:00
14b0ca31bc
handle deletion of UI objects between the time that a callback is queued with the UI event loop and the execution of the callback (intrusive, big)
...
git-svn-id: svn://localhost/ardour2/branches/3.0@6807 d708f5d6-7413-0410-9779-e7cbd77b26cf
2010-03-30 15:18:43 +00:00
ac5bbf4b99
use correct (RCConfig-based) name for MIDI port in generic MIDI control stuff; make monitor section track configuration params that apply to it; add use-monitor-bus option to rc option editor
...
git-svn-id: svn://localhost/ardour2/branches/3.0@6797 d708f5d6-7413-0410-9779-e7cbd77b26cf
2010-03-25 16:03:31 +00:00
2196bb614e
Fix illegal iterator usage.
...
git-svn-id: svn://localhost/ardour2/branches/3.0@6613 d708f5d6-7413-0410-9779-e7cbd77b26cf
2010-02-01 20:03:25 +00:00
11792ed95d
provide a real and usable MuteControllable for Routes (so that MIDI can use it)
...
git-svn-id: svn://localhost/ardour2/branches/3.0@6445 d708f5d6-7413-0410-9779-e7cbd77b26cf
2010-01-04 18:15:29 +00:00
6ddcd8f0b9
add a way to see (most of) the waf config used to build ardour at run time (from the about dialog). buttons still need reordering there
...
git-svn-id: svn://localhost/ardour2/branches/3.0@6439 d708f5d6-7413-0410-9779-e7cbd77b26cf
2010-01-04 02:04:05 +00:00
6572f421a4
provide limited momentary note on/off MIDI binding option; remove some debugging output; add bank selector to generic MIDI UI
...
git-svn-id: svn://localhost/ardour2/branches/3.0@6430 d708f5d6-7413-0410-9779-e7cbd77b26cf
2010-01-01 18:14:32 +00:00
6c717a56e2
new PBD::ControllableDescriptor class to encapsulate parsing of binding URIs and speed up lookup at runtime
...
git-svn-id: svn://localhost/ardour2/branches/3.0@6427 d708f5d6-7413-0410-9779-e7cbd77b26cf
2009-12-31 23:43:47 +00:00
74933f5865
restore excess calls to sync-order stuff (for now); allow MIDI controllers to use the same non-linear fader response as the gui; add various flags to PBD::Controllable and remove URI from that class
...
git-svn-id: svn://localhost/ardour2/branches/3.0@6414 d708f5d6-7413-0410-9779-e7cbd77b26cf
2009-12-30 16:48:58 +00:00
8a17b0fb90
make generic MIDI control track remote control ID changes; fixup messes in the editor+mixer that caused excessive calls to SyncOrderKey stuff. generic MIDI still doesn't track editor/mixer order changes if we're not syncing both windows
...
git-svn-id: svn://localhost/ardour2/branches/3.0@6413 d708f5d6-7413-0410-9779-e7cbd77b26cf
2009-12-30 12:41:10 +00:00
77cc0f7cc8
editors for control protocols (generalized); editor for Generic MIDI that allows choosing a MIDI binding map (or none); support banking in binding URLs, and other miscellany related to generic MIDI; save+restore JACK_MidiPort connection state (but cause a crash at shutdown time)
...
git-svn-id: svn://localhost/ardour2/branches/3.0@6411 d708f5d6-7413-0410-9779-e7cbd77b26cf
2009-12-29 21:31:14 +00:00