Commit graph

9289 commits

Author SHA1 Message Date
Paul Davis
53c47e0ccd add support to display and set key aliases in mackie GUI 2015-10-03 13:13:57 -04:00
Robin Gareus
6357770588 additional check for DSP falloff. 2015-10-03 17:46:55 +02:00
Robin Gareus
20038fedf4 less verbose unit-tests 2015-10-03 17:46:39 +02:00
Robin Gareus
01105dc971 DSP load fall-off from 100%.
get_dsp_load_unbound() will return large values >100% for testing, 
but actual fall-off is from 100%.
2015-10-03 17:46:19 +02:00
Robin Gareus
9fc3883cbb fix float calc:
divide large number. not multiply a small.
2015-10-03 17:44:56 +02:00
Robin Gareus
f0c1d58f59 fix windows compilation 2015-10-03 11:20:15 +02:00
Paul Davis
3733fd7f31 remove undefined and unused method declaration 2015-10-02 22:08:15 -04:00
Paul Davis
0ee737f129 another change from modifier_state() to main_modifier_state() 2015-10-02 22:08:15 -04:00
Paul Davis
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
Paul Davis
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
Paul Davis
9476657cd1 use ::main_modifier_state() in some more places 2015-10-02 22:08:14 -04:00
Paul Davis
ef6b0bdb07 necessary header changes for new redisplay code in MCP 2015-10-02 22:08:14 -04:00
Paul Davis
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
Paul Davis
05a8107ff6 fix comment spelling 2015-10-02 22:08:14 -04:00
Paul Davis
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
Paul Davis
ccf505c3a2 implement backlight, fader touch sensitivity and recalibrate fader functions for MCP GUI 2015-10-02 22:08:14 -04:00
Paul Davis
04b9df1fd9 avoid sending replicated fader set position messages 2015-10-02 22:08:14 -04:00
Paul Davis
3bc7f863ca explicitly drop control surface protocols before disconnecting from engine.
This is not bomb/thread proof yet, because it still requires at least one process callback to function
2015-10-02 22:08:14 -04:00
Paul Davis
136b659f1c remove debug output 2015-10-02 22:08:14 -04:00
Paul Davis
64b4877ef6 the return of the 1 second fade out at session close 2015-10-02 22:08:14 -04:00
Robin Gareus
a05e48dab0 fix unbound DSP calc. 2015-10-02 22:28:03 +02:00
Robin Gareus
87c36aba60 use new error-messages 2015-10-02 17:51:17 +02:00
Robin Gareus
798c235d4d define more backend error-messages. 2015-10-02 17:49:31 +02:00
Robin Gareus
3f99c44ff6 improve CoreAudio error reporting 2015-10-02 17:28:28 +02:00
Paul Davis
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
Paul Davis
71bf231199 allow aliasing Mackie Control buttons to other buttons 2015-10-02 10:21:20 -04:00
Paul Davis
5c63ed589c catch changes in click status and alter LED appropriately 2015-10-02 07:32:56 -04:00
Paul Davis
a4fced6d63 change zoom and scrub handling to use modifier bits 2015-10-02 07:32:56 -04:00
Paul Davis
d28c8c9bb4 spelling correction in error message 2015-10-02 07:32:56 -04:00
Robin Gareus
4a31b03761 re-apply roll-delay after seek - fixes #5781 2015-10-01 23:17:01 +02:00
Robin Gareus
8384d98c92 there's no class called "The" :) 2015-10-01 21:39:15 +02:00
Robin Gareus
6b4e5f1d47 ALSA: update error-codes for HW initialization. 2015-10-01 12:42:05 +02:00
Tim Mayberry
dcf327f86a Return meaningful error codes when ALSA backend fails to start
Unfortunately it seems that in zita-alsa-pcmi doesn't set state() correctly in
some cases. Setting an invalid SR doesn't display the correct error message,
first guess would be that set_hwpar is failing and state() is not
representative of the actual error.
2015-10-01 09:10:19 +10:00
Tim Mayberry
aa713fcd83 Return meaningful error codes when PortaudioBackend fails to start
So they can be used to give a contextual error message in the GUI
2015-10-01 09:10:19 +10:00
Tim Mayberry
f178152114 Use portaudio error codes in the PortaudioIO class.
Having error codes defined in PortaudioIO means it is not dependent on the
ErrorCodes in AudioBackend but it doesn't really make sense to have another
set, so just use the PA ones until they become insufficient.
2015-10-01 09:10:19 +10:00
Tim Mayberry
d85ab8af89 Reinterpret the return value of AudioBackend::start as AudioBackend::ErrorCode
This will allow backends to return a more meaningful error message. Eventually
an error code could be returned by AudioEngine::start and the GUI can then use
AudioBackend::get_error_string to convert the error into a translated error
message directly, or it may be desirable to define its own error messages.

The reasons for not doing that right now is that this is a workable solution
with the least change required.
2015-10-01 09:10:19 +10:00
Tim Mayberry
9a7f96f15a Add a couple of error codes to AudioBackend::ErrorCode
Also use the error message from ARDOUR_UI::reconnect_to_engine as the default
error string
2015-10-01 09:10:19 +10:00
Paul Davis
71343e835a change the logic for a capture buffer flush to disk when a locate is occuring
We can't check for Session::actively_recording() because punch out may have disabled that. Rather
than add logic to check if a flush is needed (which is not much different than the code that runs
as part of the flush to disk), just do a flush anyway.
2015-09-30 13:02:58 -04:00
Paul Davis
7ff47ab80e tweak some debug output 2015-09-30 13:02:58 -04:00
Paul Davis
343bc5160b remove apparently bogus adjustment to capture_captured in AudioDiskstream::transport_looped 2015-09-30 13:02:58 -04:00
Paul Davis
2cf779fd0c split Butler::flush_tracks_to_disk() into two distinct versions with clear names and make one of them private 2015-09-30 13:02:58 -04:00
Len Ovens
239da0efb5 Fix Mackie control metering (fixes #6608). 2015-09-28 20:13:15 -07:00
Robin Gareus
b8ccf8accc BWF USID according to EBU-R99 2015-09-29 01:20:30 +02:00
Paul Davis
1536228d00 fix initialization of reserved I/O names vector 2015-09-28 17:52:27 -04:00
Paul Davis
34f088576c get loop recording working when using seam-ed looping 2015-09-28 17:42:11 -04:00
Paul Davis
0613ddd1f9 better more reliable checks on renamed, newly created and imported track/bus names 2015-09-28 17:42:11 -04:00
Paul Davis
9f8fe4b0bc change semantics of 4th argument to Session::locate to mean "this locate is connected with play-loop just being enabled" 2015-09-28 17:42:11 -04:00
Paul Davis
b9611a3168 a few new DEBUG_TRACE calls related to session transport state 2015-09-28 17:42:11 -04:00
Paul Davis
9202bc162a minor fix for possible off-by-one logic when at/near the end of the loop range 2015-09-28 17:42:11 -04:00
Paul Davis
f24fef669a fix a long-standing bug arising from a change to some logic which reversed an "is-rolling" test 2015-09-28 17:42:11 -04:00