Commit graph

9195 commits

Author SHA1 Message Date
Len Ovens
6faec91dd9 Force Flip normal before Bank (fixes #6630) 2015-10-10 19:59:29 -07:00
Len Ovens
7535947eb1 Display parameter that matches mode. 2015-10-10 19:40:28 -07:00
Paul Davis
965b135842 numerous changes to Mackie support, generally offering better robustness 2015-10-10 17:14:30 -04:00
Robin Gareus
7c58b4de5f coreaudio: reset freewheeling after export
fixes lively with session-fadeout
2015-10-10 02:42:13 +02:00
Paul Davis
9b5a071c33 varied and wide changes to get input and output combos closer to working 2015-10-09 14:01:22 -04:00
Paul Davis
7e771c9fdc move location where port handling stops during Mackie::Surface destructor 2015-10-09 11:12:28 -04:00
Paul Davis
6acd51d48e NOOP: whitespace/indent fix 2015-10-09 11:11:36 -04:00
Paul Davis
03018aeefb add TrimAutomation to list of possible pot parameters for routes 2015-10-09 11:11:15 -04:00
Paul Davis
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
Paul Davis
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
Paul Davis
f74eab854a fix behaviour of AsyncMIDIPort so that large amounts of data are handled well.
Increased the size of the FIFO that acts as the intermediate between writers and the MidiBuffer. Changed
implementation of ::write() to notice if MidiBuffer::push_back() fails, and then just leave data queued
for subsequent calls to ::flush_output_fifo().

Note: the logic here will be broken by invalid events/data, which ALSO cause MidiBuffer::push_back() to
return false. That needs fixing
2015-10-09 11:08:33 -04:00
Paul Davis
cdd415cdaf tweaks to MidiBuffer::push_back() variants
1. there's no reason to make the same logic checks in both the Event and 3-arg variants when the Event
version simply calls the 3-arg variant

2. the Event version returned true under all conditions, even if the 3-arg part had failed to push
the Event data into the buffer. It now returns true or false, as intended.

3. remove debug output if a MidiBuffer is full during ::push_back(). The cases where this matters
emit output of their own, or simply remain silent and queue data later
2015-10-09 11:05:55 -04:00
Paul Davis
268d53f502 remove unused PortManager::port_name_prefix_is_unique() method 2015-10-09 07:39:08 -04:00
Paul Davis
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
Paul Davis
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
Paul Davis
36088b53b1 add new API to access AsyncMIDIPort members of Mackie Surface port 2015-10-08 21:55:38 -04:00
Paul Davis
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
Paul Davis
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
Paul Davis
ce03b02a79 in a CrossThread object, ensure destruction of the channel and source used on Posix
The source holds a reference to the channel; both must be unref'ed/destroyed in order to
fully clean up resources
2015-10-08 21:55:37 -04:00
Paul Davis
fcc7595882 remove declaration of undefined (and necessarily unused) method from PortManager 2015-10-08 21:55:37 -04:00
Paul Davis
33fe33f268 fix initialization sequence for ipMIDI Mackie surfaces 2015-10-08 15:28:37 -04:00
Paul Davis
0c448c387b fix crash when switching from regular MIDI to ipMIDI Mackie surface 2015-10-08 15:28:21 -04:00
Paul Davis
d3efef7f5c fix logic to reshow strip "name" after a message display 2015-10-08 14:58:28 -04:00
Paul Davis
02181174c3 remove debugging display of message on MCP device 2015-10-08 14:51:27 -04:00
Paul Davis
49be513bfa fix rebase conflicts left over after pull 2015-10-08 13:40:00 -04:00
Paul Davis
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
Paul Davis
4677d047a5 more mackie strip redisplay renames, and add a global block to redisplays\n 2015-10-08 12:51:18 -04:00
Paul Davis
0f978a90f4 subtle rework/rename of per-strip revert-to-vpot-display code 2015-10-08 12:50:05 -04:00
Paul Davis
4a1790b75e remove unused per-surface button timer 2015-10-08 12:50:05 -04:00
Robin Gareus
ffe06f7d3e fix region "valid-transient" property 2015-10-08 18:24:45 +02:00
Robin Gareus
014f8a582f windows compatible paths for analysis 2015-10-08 18:21:07 +02:00
Robin Gareus
ef169ce2ff fix Vamp Onset Detector. 2015-10-08 16:18:39 +02:00
Robin Gareus
4e39f13991 fix return value for transient load 2015-10-08 15:26:38 +02:00
Robin Gareus
fc6b965ad0 renice DLL info messages 2015-10-08 13:43:32 +02:00
Robin Gareus
d1d5f7f311 use g_open for DLL arch test 2015-10-08 13:43:32 +02:00
Robin Gareus
b5ea1b23b4 detect VST arch only during discovery (not scan) 2015-10-08 13:43:31 +02:00
Len Ovens
6899bd7c15 Add Trim to Mackie controls. 2015-10-07 21:36:16 -07:00
Paul Davis
c9658134ce add button time and explicit bank switching to MCP support 2015-10-07 15:13:03 -04:00
Damien Zammit
bcbb14f581 Added use click emphasis toggle (libs/ardour) 2015-10-07 19:34:39 +02:00
Paul Davis
ce9b271a92 track Mackie MIDI port connection status as primary trigger for handshake with device 2015-10-07 13:17:49 -04:00
Paul Davis
7675739f45 use C++ for PortManager::make_port_name_relative() 2015-10-07 13:17:49 -04:00
Robin Gareus
14932d1b86 allow to load huge VST plugin states -fixes #6623
by default libxml has a XML_MAX_TEXT_LENGTH of 10M
with base64 encoding that allows at most 2.5MB state.

set XML_PARSE_HUGE to read large sessions
2015-10-07 14:36:32 +02:00
Robin Gareus
44f1f0caf4 fix exclusive solo group-override 2015-10-07 14:21:30 +02:00
Robin Gareus
96b45d4909 only subdivide plugin-cycle when automation is playing
PluginInsert::automation_run() subdivides plugin-run on every
control-port automation event (without splitting the process cycle).

libevoral has no automation-control context, hence this function
must be implemented by Automatable.
2015-10-07 14:21:29 +02:00
Tim Mayberry
5fd4ee3ef1 Fix handling of Sysex messages with WinMME midi driver 2015-10-07 21:48:56 +10:00
Robin Gareus
2e8fb9207e print VST blacklist filename (for good measure) 2015-10-07 03:28:02 +02:00
Robin Gareus
477d1f3f42 implement solo group override 2015-10-07 01:44:02 +02:00
Robin Gareus
87026c871a add missing include 2015-10-06 21:32:55 +02:00
Robin Gareus
2237389112 renice code. RAII rocks. 2015-10-06 20:18:02 +02:00
Robin Gareus
e78f0fe526 CPPUNIT workaround for mingw/wine/windows 2015-10-06 20:10:42 +02:00