ef08cd6e4a
move incorrectly packed touch sensitivity slider for Mackie GUI
2015-10-13 07:33:27 -04:00
8e83ca5753
Only flip if not already in desired state. Fixes fader jerk on banking.
2015-10-12 13:52:10 -07:00
1eb1391cfd
expose terminal, rather than just physical, MIDI ports in Mackie GUI
2015-10-12 14:42:49 -04:00
d4e0e8e963
make MCP port buttons work
2015-10-12 13:36:22 -04:00
79113144ef
Correct wrong value on LCD strip when fader is touched (fixs #6619 from Petr Vejsada)
2015-10-11 23:24:14 -07:00
796e404819
Don't use old session connections on MCP device change, Solves crash on device change.
2015-10-11 22:27:13 -07:00
104f43ad37
Fix MCP extension number and get master on right surface.
2015-10-11 21:37:04 -07:00
f8875df18f
Several changes to Mackie support. Breaks existing Mackie state on disk but not
...
in any way that causes problems, just loss of pre-existing connectivity.
1. retain state of current device (and serialize to disk) when switching
devices, and restore that state when switching back to it.
2. fix port and surfacenaming.
3. fix bundle assembly so that all ports (for multi-surface combos) work.
4. rationalize master position numbering
5. add small sleep before starting device handshake after reconnection. This
is ugly but seems to be necessary, unfortunately.
2015-10-11 12:01:27 -04:00
6faec91dd9
Force Flip normal before Bank ( fixes #6630 )
2015-10-10 19:59:29 -07:00
7535947eb1
Display parameter that matches mode.
2015-10-10 19:40:28 -07:00
965b135842
numerous changes to Mackie support, generally offering better robustness
2015-10-10 17:14:30 -04:00
9b5a071c33
varied and wide changes to get input and output combos closer to working
2015-10-09 14:01:22 -04:00
7e771c9fdc
move location where port handling stops during Mackie::Surface destructor
2015-10-09 11:12:28 -04:00
6acd51d48e
NOOP: whitespace/indent fix
2015-10-09 11:11:36 -04:00
03018aeefb
add TrimAutomation to list of possible pot parameters for routes
2015-10-09 11:11:15 -04:00
d700576171
remove unused and useless stuff relating to bundles inside Mackie::Strip
...
What was someone (Paul? John ?) thinking?
2015-10-09 11:10:44 -04:00
9c7139e505
set up control_by_parameter map in a Mackie::Strip so that subsequent array-syntax lookup does not crash
2015-10-09 11:09:47 -04:00
6bcbace73a
add device-info specific component to Mackie GUI to allow direct wiring of MIDI ports (non-functional)
2015-10-08 21:55:38 -04:00
8338fd8ac6
add DeviceChanged signal to MCP and make surface lock mutable for use in const methods.
...
Also add nth_surface() API to MackieControlProtocol
2015-10-08 21:55:38 -04:00
36088b53b1
add new API to access AsyncMIDIPort members of Mackie Surface port
2015-10-08 21:55:38 -04:00
bda0ba173c
for an ipMIDI surface, make the GSource used for input hold the only reference on the GUIChannel.
2015-10-08 21:55:37 -04:00
7e10c21468
make Mackie::Surface keep a reference to the input source+channel and clean up in destructor
2015-10-08 21:55:37 -04:00
33fe33f268
fix initialization sequence for ipMIDI Mackie surfaces
2015-10-08 15:28:37 -04:00
0c448c387b
fix crash when switching from regular MIDI to ipMIDI Mackie surface
2015-10-08 15:28:21 -04:00
d3efef7f5c
fix logic to reshow strip "name" after a message display
2015-10-08 14:58:28 -04:00
02181174c3
remove debugging display of message on MCP device
2015-10-08 14:51:27 -04:00
49be513bfa
fix rebase conflicts left over after pull
2015-10-08 13:40:00 -04:00
0cb1c7b58c
lots of changes to try to get the Mackie Control display be more useful and usable
2015-10-08 12:51:44 -04:00
4677d047a5
more mackie strip redisplay renames, and add a global block to redisplays\n
2015-10-08 12:51:18 -04:00
0f978a90f4
subtle rework/rename of per-strip revert-to-vpot-display code
2015-10-08 12:50:05 -04:00
4a1790b75e
remove unused per-surface button timer
2015-10-08 12:50:05 -04:00
6899bd7c15
Add Trim to Mackie controls.
2015-10-07 21:36:16 -07:00
c9658134ce
add button time and explicit bank switching to MCP support
2015-10-07 15:13:03 -04:00
ce9b271a92
track Mackie MIDI port connection status as primary trigger for handshake with device
2015-10-07 13:17:49 -04:00
2397429e99
use quotes for in-tree pbd/glib wrapper include
2015-10-05 22:15:18 +02:00
97bd6db2b7
remove i/ofstream from libardour
...
except:
* audio-unit (ifstream is known to work on OSX)
* evoral curve algorithm debugger
* cycle-timer debug code
* export_handler's CDMarker -> TODO
2015-10-05 22:15:17 +02:00
33d614359a
only use HUI heartbeat with HUI devices
2015-10-05 12:24:15 -04: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
cf33204e35
always use session rt-event to un/set solo
2015-10-04 02:04:59 +02:00
a333edcb28
Initialize variable every loop so MCP devices don't accumulate too.
2015-10-03 13:15:18 -07:00
4b69495f82
Initialize variable every loop so MCP profiles don't accumulate.
2015-10-03 13:06:34 -07:00
2dddf6504b
NOOP: delete trailing whitespace
2015-10-03 14:03:29 -04:00
1e5672de98
reset IP MIDI port when deleting a mackie surface port
2015-10-03 13:51:17 -04:00
9d7b5f6df9
reset shared_ptr to master surface when clearing surfaces, to ensure Surface destructor is called
2015-10-03 13:50:59 -04:00
4403ce4bd4
make a start on providing direct choice of MIDI ports where an MCP device can be reached
2015-10-03 13:13:58 -04:00
91d3aabf53
NOOP: reformat indentation
2015-10-03 13:13:58 -04:00
76398911d4
more code-control when laying out Mackie Control GUI panel
2015-10-03 13:13:58 -04:00
6bf0d4f627
add basic support for HUI heartbeat, only used for HUI devices
2015-10-03 13:13:58 -04:00
4ef45aacc1
add DeviceType specifier for mackie devices.
...
Incomplete, because we need a way to handle multiple devices of different types
2015-10-03 13:13:58 -04:00
13765d41e3
NOOP: reformat indentation
2015-10-03 13:13:58 -04:00
c8448cb0dd
add device type to Mackie device info
2015-10-03 13:13:57 -04:00
53c47e0ccd
add support to display and set key aliases in mackie GUI
2015-10-03 13:13:57 -04:00
f0c1d58f59
fix windows compilation
2015-10-03 11:20:15 +02:00
3733fd7f31
remove undefined and unused method declaration
2015-10-02 22:08:15 -04:00
0ee737f129
another change from modifier_state() to main_modifier_state()
2015-10-02 22:08:15 -04:00
c78426968f
avoid handling pitchbend (fader) messages while SHIFT modifier is active.
...
See comment in code for more detail
2015-10-02 22:08:15 -04:00
40a4e2e6af
no longer call ::zero_all() when deleting an MCP surface object.
...
The ports required may no longer exist, and it requires a lot of messages. A reset is sent instead
2015-10-02 22:08:14 -04:00
9476657cd1
use ::main_modifier_state() in some more places
2015-10-02 22:08:14 -04:00
ef6b0bdb07
necessary header changes for new redisplay code in MCP
2015-10-02 22:08:14 -04:00
4d47760d61
add new (fast) redisplay timer that pushes parameter display text to MCP device.
...
Changes are queued in a FIFO, and pulled when a timeout in the MCP event loop fires.
2015-10-02 22:08:14 -04:00
05a8107ff6
fix comment spelling
2015-10-02 22:08:14 -04:00
2cdfeda884
use Surface::reset() when deleting MackieControlProtocol, rather than sending lots of messages.
...
This may be a bit "strong" because on the MCU Pro (at least) it causes a fader recalibration.
2015-10-02 22:08:14 -04:00
ccf505c3a2
implement backlight, fader touch sensitivity and recalibrate fader functions for MCP GUI
2015-10-02 22:08:14 -04:00
04b9df1fd9
avoid sending replicated fader set position messages
2015-10-02 22:08:14 -04:00
918133a342
fix handler of fader (pitchbend) messages in Mackie Control so that the outbound messages match the inbound ones
...
Pitch bend values really can span 0 to 16384, not 16383
2015-10-02 10:22:00 -04:00
71bf231199
allow aliasing Mackie Control buttons to other buttons
2015-10-02 10:21:20 -04:00
5c63ed589c
catch changes in click status and alter LED appropriately
2015-10-02 07:32:56 -04:00
a4fced6d63
change zoom and scrub handling to use modifier bits
2015-10-02 07:32:56 -04:00
d28c8c9bb4
spelling correction in error message
2015-10-02 07:32:56 -04:00
239da0efb5
Fix Mackie control metering ( fixes #6608 ).
2015-09-28 20:13:15 -07:00
b1424dab79
Vpot assign buttons don't do anything, don't light LEDs either.
2015-09-21 10:04:06 +02:00
47976ed4fa
Make Mackie control surface LEDs for modifier keys only light while pressed. ( fixes #6601 )
2015-09-21 10:03:56 +02:00
7ac691ec82
use pbd's gstdio compatibility wrapper
2015-09-17 14:37:57 +02:00
f8912b8b57
Made master fader touch and jog go to _master_surface instead of first surface.
2015-09-08 20:47:16 -07:00
b8b6f61d6c
save/load generic-midi motorized setting - fixes #5296
2015-08-20 00:19:32 +02:00
4129b8865c
Fixed Mackie control port naming for extender use ( fixes #6500 )
2015-08-14 08:57:13 -07:00
962ba01cfd
Fixed feedback for MCP buttons and LEDs not working.
2015-08-13 13:00:04 -07:00
39240c9d37
Added end of line to debug statment
2015-08-13 09:55:32 -07:00
2a3f5d0107
Make MCP MasterPosition match MIDI port number.
2015-08-09 22:27:40 -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
b7b1f9a0a6
fix “missing operator<< for PBD::ID” (clang)
2015-07-15 01:21:19 +02:00
d8f3f9f02d
Move learned midi binding reload after midi map load ( fixes #6405 )
2015-07-13 13:47:00 -07:00
937ed39c45
fix PBD::ID string format
2015-07-11 05:17:02 +02: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
2ea5962af2
rationalize save/restore of control surface "feedback" property
2015-06-24 13:46:07 -04:00
974e5dcc0c
Add option to mackie control profile editor to remove binding ( fixes #6301 )
2015-06-21 12:42:48 -04:00
7a966c81bd
Don't close OSC server sockets explicitly (the subsequent call to 'lo_server_free()' will close the socket anyway)
2015-06-09 16:25:20 +01:00
801af5df9e
Add the new (UINTSDEFINED) preprocessor directive to all out MSVC projects (just to be on the safe side)
2015-06-09 13:18:42 +01:00
f33c8aeb33
Add a new preprocessor directive (UINTSDEFINED) which is rather annoyingly needed if liblo gets built with MSVC
2015-06-09 12:09:21 +01:00
b79c5d4f1b
Add a new link library that's needed when building against the newer version of liblo (0.28)
...
(probably only needed when building with MSVC)
2015-06-09 12:06:49 +01:00
72416e9432
Don't allow user to change function of modifier buttons.
2015-06-08 17:22:34 -04:00
71ae8d2abe
Add an option in the MCP .device file to set master position ( fixes #6357 )
2015-06-04 15:07:43 -07:00
71feea97a0
Clean up mackie surface profile editor from things that don't work or match the mackie hardware ( fixes #6342 )
2015-06-04 15:02:51 -07:00
f8c4c0b5b8
Make ctl put v-pot in fine mode.
2015-06-04 14:04:46 -07:00
5e1ba50731
fix unsigned/signed math error
2015-05-27 08:57:16 -04:00
e5c3efe9a3
ensure that Mackie Control bank left/right commands always hit the same boundary (Len Ovens)
2015-05-27 07:11:15 -04:00
fb649f43ea
fix for MCP panner width - closes #6341
2015-05-24 17:56:40 +02:00
ce259edbcd
professionalize peak-meters
...
The peak meter needs to withstand various test-signals
without visual jitter (in particular 1kHz sine) regardless
of settings (period-size, sample-rate, custom fall-off).
This needs to be done in sync (and not by a random non-rt
‘smoothing’ thread).
On the downside this voids the ‘visual smoothing’ particularly
with large buffersizes - but then again exactly this “always
fall-off no matter what [the next real data will be]” is the
problem.
One the upside, there’s one less high-frequency (100Hz) thread
(Yay!) PS. it probably never worked on windows, anyway.
Only peak-meters are affected by his change.
K-meters, IEC I/II and VU were never visually smoothed.
2015-05-02 03:46:49 +02:00
1e5be9ebfd
add OSC trim control
2015-04-25 21:23:37 +02:00
4512d013eb
put all of the Mackie control surface code into the ArdourSurface namespace
2015-04-15 20:37:20 -04:00
7f659a0463
add ArdourSurface to OSC class to help reduce global namespace pollution
2015-04-15 17:21:55 -04:00
d00ab0221a
allow to set/change loop-range via OSC
2015-04-12 23:40:35 +02:00
7c146a9e22
fix OSC parameter mapping, fixes #6224
...
(ignore non control ports in numbering)
2015-04-04 03:16:53 +02:00
2a9d7286f9
fix AWOL semicolon in 9f842f3
2015-03-20 22:08:17 +01:00
9f842f3247
NOOP, whitespace
2015-03-20 21:38:26 +01:00
410cf8e79d
OSC log errors
2015-03-20 21:32:56 +01:00
7619edd1f6
OSC: fix crash when trying to set output params
2015-03-20 21:19:25 +01:00
17e1e2641b
OSC fix plugin numbering:
...
ignore non-plugin processors for OSC
/ardour/routes/plugin/parameter
fixes issue with hidden internal processors. (rec-en
track adds a hidden [meter] processor at the top,
internal returns on busses have returns etc.)
2015-03-20 20:27:15 +01:00
40c04867ef
Bundle API user update
...
cherry-pickable follow up to 0582221
2015-03-08 22:39:34 +01:00
8a93a87db0
remove lib versioning for internal plugins
...
Those objects do not have a versioned API by themselves.
This fixes issues with duplicate deployment (OSX, Linux bundles: cp) and
ardour listing control-surfaces multiple times (file index plugin dir).
2015-02-16 17:32:56 +01:00
95091a52a0
When building with MSVC make sure any backends / panners etc get copied to the correct target folder
...
(i.e. 'lib/ardour3' or 'lib/mixbus3' as appropriate)
These changes are MSVC specific and shouldn't affect the other builds
2015-01-12 14:43:22 +00:00
dafcaec023
Limit Wiimote surface discovery to 5 connection attempts
...
If you don't connect a Wiimote then the connection attempts were
endless.
2014-12-21 12:53:00 +07:00
0fdb846625
try alternate Glib:: API for conversion from UTF-8 to ascii in Mackie support code
2014-12-15 15:06:10 -05:00
e3f376107e
nominal fix for sending UTF-8 text to Mackie surface
2014-12-15 14:44:05 -05:00
602e390649
changes to Mackie Control support for new crossthreadchannel implementation
2014-12-03 21:22:34 -05:00
d3e2de8b4e
modify Mackie surface code to use crossthreadchannel on all platforms
2014-12-03 20:57:58 -05:00
25e1eddc50
remove "port sources" management from MidiControlUI and Mackie support.
...
This was necessary due to a bug/design issue between Glibmm and Glib (see https://bugzilla.gnome.org/show_bug.cgi?id=561885 )
but the problem needs to be managed by the *creator* of the IOSource and that has now moved inside CrossThreadChannel.
2014-11-26 18:22:22 +02:00
1f58f81aa6
Fix order of parameters to stop_touch() in Mackie::Control
...
Reverse the parameters of Mackie::Control::stop_touch() to make them
consistent with AutomationControl::stop_touch(), and fix up the call to
AutomationControl::stop_touch() to have the parameters in the correct
order.
Unfortunately, I don't possess any devices that speak the Mackie protocol, so
though the patch seems logical and correct to me, I have no way of testing it.
If anyone has a device with touch faders that speaks Mackie, I'd be glad of any
confirmation that it at least doesn't break anything.
2014-11-25 14:59:48 +00:00
ea5876b836
Remove dead code.
2014-11-25 02:11:44 -05:00
bfe49540b9
remove use of CrossThreadChannel::selectable() to allow cross-platform implementation of CrossThreadChannel via Glib::IOSource
2014-11-23 17:37:13 +02:00
7204702c3f
Reduce coupling between Plugin and PluginInsert.
2014-11-03 13:40:50 -05:00
6dfb11c2d0
Move ParameterDescriptor from Plugin to its own header.
...
This fixes circular dependency issues that arise when using ParameterDescriptor more widely.
2014-11-02 02:10:24 -05:00
973d40e3ac
Add support for USE_CAIRO_IMAGE_SURFACE when building with MSVC
...
(new preprocessor directive - greatly improves CPU loading)
2014-10-29 17:36:30 +00:00
2f4a8cf693
avoid const cast warning
2014-10-24 12:18:46 -04:00
d8e64103a6
fix CPI window handling:
...
Move control-surface editor-window management to the control surface.
The Preferences-Dialog is not aware of session specific or surface
specific actions and cannot properly manage the window.
2014-09-13 16:59:02 +02:00
65715dd298
Make sure all our VC projects agree that the product is called 'Mixbus3' (as opposed to just 'Mixbus')
...
It'd be nice if we could use 'ARDOUR::config_dir_name' for this purpose (or perhaps 'PROGRAM_VERSION'). However, neither is implemented widely enough at present to make this practical. Keep an eye on them though, as possible future strategies.
2014-08-28 07:57:20 +01:00
45afed5e9a
Modify our VC project files to work with msvc32-fixup.pl
2014-08-04 09:02:17 +01:00
576f39d6a0
Add the MSVC project file for building libs/surfaces/osc
2014-07-27 11:26:41 +01:00
7984cd2321
Changes needed for building surfaces/osc (control surface protocol) with MSVC
...
(for testing on the non-Windows platforms)
2014-07-22 22:19:46 +01:00
928881b24a
Update vcproj files for changed LILV config define.
2014-07-15 15:50:12 -04:00
cd12698b9c
Rename PBD::find_file_in_search_path to just PBD::find_file
...
saves a bit of typing and not necessary if you look at how it is used.
2014-06-25 12:40:10 -04:00
d9a7d419b2
Change PBD::find_files_matching_regex and PBD::find_files_matching_filter to take a Searchpath
2014-06-25 12:40:10 -04:00
547689a055
Replace all use of PathScanner with equivalent functions from pbd/file_utils.h
2014-06-17 21:41:29 +10:00
0e96d84079
Change PBD::PathScanner API to return results by value to avoid inadvertent memory leaks
2014-06-17 21:13:05 +10:00
12cf9d5be8
fix pathscanner / stl_vector related memory leaks
2014-06-15 13:24:39 +02:00
8c9749e42f
merge with master and fix 4 conflicts by hand
2014-06-02 11:32:13 -04:00
f3349a797c
more gettimeofday() -> g_get_monotonic_time()
2014-05-16 19:58:46 +02:00
5fba8a2015
and one more gettimeofday() transition (mackie timers)
2014-05-16 18:35:42 +02:00
1b989a93c2
remove redundant os.path.join() calls when specifying install path as bld.env['LIBDIR']
2014-04-28 21:18:02 -04:00
058986f77b
finish unfinished work at basing all install paths on the program name
2014-04-28 21:11:08 -04:00
8a4fdbf023
final eradication of jack header files from anything except the JACK backend
2014-04-11 02:52:28 -04:00
077a194430
Add the main VC project files for building Ardour3 with Microsoft Visual Studio
...
Note that there's no 'VS Solution' file at present and some targets haven't been built yet (e.g. 'fst')
2014-04-08 09:49:35 +01:00
af0c42ec4f
midi-controller, support log parameters - fixes #5890
2014-03-23 18:59:24 +01:00