13
0
Commit Graph

28029 Commits

Author SHA1 Message Date
ad8f21763e deepen stacktrace to show where non-process calls to supposedly process-stack-only methods are called 2019-09-17 19:16:53 -06:00
bd229936ec add finite state machine to control/manage transport state 2019-09-17 18:26:03 -06:00
fc3e7623e7 correct mistakenly left-in debugging condition that removed parallelism for PortManager::cycle_start() 2019-09-17 18:20:51 -06:00
b648b3a4b4 minor tweaks to use initialization rather than assignment 2019-09-17 18:04:03 -06:00
192a8b7ec0 remove unused local variable 2019-09-17 18:00:37 -06:00
f52781b46b fix thinko when testing for internal seek with negative distance 2019-09-17 17:59:23 -06:00
cbb7f6d863 use const int rather than macro 2019-09-17 17:57:43 -06:00
b84c99639f parametize the maximum transport speed.
No GUI to adjust this at this, nor is any planned. This just makes it easier if
we ever feel we can change this.
2019-09-17 17:19:15 -06:00
ea30642ae3 resize audio port _data buffer based on current buffer size 2019-09-17 17:14:39 -06:00
455039255b manually correct cherry-pick of cdbabe40ed4e 2019-09-17 17:06:08 -06:00
5e9f4f2572 add new port flag to identify those owned by a transport master
These ports are handled without SRC
2019-09-17 17:00:32 -06:00
37d9ec34c8 add ::usable() method to TransportMaster objects to allow GUI to show their usability after backend/engine changes 2019-09-17 16:54:10 -06:00
fb4cbb9f9e
Correctly handle Zoom > Edit-point > Mouse
Previously this failed if the event was initiated outside
of the canvas (e.g. Zoom buttons).

This also fixes a special case of Zooming to an edit-point at zero.
2019-09-17 17:18:29 +02:00
9851c9b08a foldback gui: removed mute, solo button hide in SIP
Mute removed, Solo renamed to listen only shows when
not in SIP mode.
2019-09-16 16:25:09 -07:00
65ec8fe65a
Clarify splash-screen boot messages
Parsing MIDNAM is what takes the most time.

"Reset Remote Controls" message is misleading (it means MMC), not
control-surfaces, which a user may have none.
2019-09-16 23:08:01 +02:00
abdb7b81c6 Foldback gui: desensitize solo button when in SIP mode
Because foldback by design goes to physical outputs
rather than master or monitor, SIP solo does not work
or make sense. PFL/AFL allow a foldback to be rough
adjusted using the control room monitoring.

A soloed Foldback bus will be released when the foldback
strip is switched to a different foldback bus
2019-09-15 14:48:09 -07:00
ec35afef38 Foldback gui:Removed unused calls and parameters 2019-09-15 07:00:11 -07:00
ef5fd145f7 Set Foldback strip width and ellipsize to work 2019-09-14 10:19:01 -07:00
4884fc734b desensitize foldback show unless there is a foldback bus
The view menu should not show the foldback item
if there is no foldback bus available.
2019-09-13 08:18:35 -07:00
1d557ba69f
Use new icons in mixer window 2019-09-12 23:36:25 +02:00
9c752c249d
Add new icons: hide, prev/next 2019-09-12 23:36:25 +02:00
7e5552d00b foldback gui: simplify foldback strip menus
This uses less code and fixes the odd crash as well
(there was sometimes a crash when using the send
display context menu)
2019-09-12 12:44:38 -07:00
81bbc3be1e foldback gui: simplify button code where possible
use signal_clicked rather than signal_button_press_event
for cases where a menu is not launched.
2019-09-12 09:39:38 -07:00
da88e9d34c Foldback gui: Added hide and show
- New menu item in view menu
- Foldback strip has hide button
- Adding a new foldback bus sets show
- setting is saved and restored
2019-09-11 16:36:05 -07:00
729cd0e2b3 foldback gui: added tool tips for previous and next 2019-09-10 21:40:39 -07:00
2e857e9143 Foldback gui: previous and next buttons don't wrap around
I had set the previous next buttons to wrap around
but Robin felt dead ending was better. The previous
button becomes insensitive when the first foldback bus
is displayed and next is insensitive when the last is
displayed.
2019-09-10 21:09:54 -07:00
3f6310ef9c Foldback GUI: sort send controls by mixer order
also found send button name did not follow sending
route name after change and tool tip was wrong. Fixed
both.
2019-09-10 19:26:41 -07:00
8a313daa13
Who needs semicolons? 2019-09-11 03:00:26 +02:00
9f668ceed2
AU: fix optional buffers
The spec [1] says:
 "If the mData pointers are null, the audio unit can
  provide pointers to its own buffers. In this case,
  the audio unit must keep those buffers valid for
  the duration of the calling thread’s I/O cycle."

A plugin *can* do this, but it does not need to. An extra
NULL test is required.

furthermore [2] specifies

 "mDataByteSize -  The number of bytes in the buffer pointed
  at by the mData field."

In case the host does not provide any buffers, this is obviously zero.


[1] https://developer.apple.com/documentation/audiotoolbox/1438430-audiounitrender?language=objc
[2] https://developer.apple.com/documentation/coreaudiotypes/audiobuffer?language=objc
2019-09-11 02:56:08 +02:00
8dc0c84ba4
AU: don't consider in-place if there are no inputs 2019-09-11 02:56:04 +02:00
f84374730a Foldback GUI: size and position tweaks
- Set width so added pan controls in send controls don't change size
 - output button shows only ports applicable to foldback use
 - Size text to leave widget width alone
 - Center level control
 -
2019-09-10 16:09:26 -07:00
24a0a4256a
Add note about Denormal protection pref changes
Modifications to the MXCSR register are pre thread. Changing this
setting only directly affects the GUI thread.
2019-09-10 17:03:24 +02:00
d18f6dcbab
MXCSR is a 32bit unsigned int register
https://software.intel.com/sites/landingpage/IntrinsicsGuide/#text=_mm_setcsr
2019-09-10 16:59:04 +02:00
ed937c383f
Fix ARM compilation 2019-09-10 04:09:22 +02:00
1a828f1f4d
Remove redundant call (moved to libardour) 2019-09-10 03:07:17 +02:00
38b36d2ea5
Engage thread-safe fftw planner in libardour
This way initialization happens constently, and independent from the GUI,
for session-utils, lua, headless..
2019-09-10 03:06:21 +02:00
68c13940e3
Implement denormal protection for ARM 2019-09-09 18:54:58 +02:00
4abb907a82
Use ProcessThread::init () to set up denormal protection
Modifying the MXCSR register only affects the current thread.
2019-09-09 18:48:16 +02:00
07b685c371
Remove NO-OP; ProcessThread::init() does nothing 2019-09-09 18:44:24 +02:00
d59aa81b39
Remove NO-OP, ProcessThread::init() does nothing 2019-09-09 18:43:57 +02:00
7afb068fa6
When muting MIDI, silence all playing notes
All-note-off event (CC 123) needs to be accompanied
with raising the sustain-pedal (CC 64).
2019-09-09 17:10:04 +02:00
cd6e074e92
Fix MIDI velocity scale for muted sends and manual faders
Do not send continuous stream of note-evens with zero velocity
after muting a MIDI track or after a fade to silence completed
(and all-notes-off has been sent).

NB. Automated Faders are left untouched (no panic is sent for -infdB gain),
Note-on events with zero velocity are sent.
2019-09-09 05:01:26 +02:00
65268bae5b
Report whether arlua is being built 2019-09-09 04:15:20 +02:00
bbe605c0fa
Send NoteOff on when muting MIDI, drop note events when silent 2019-09-09 04:15:20 +02:00
5450b6c556 NO OP: clean up and rearrange things 2019-09-08 14:02:48 -07:00
bc7dfc4615
Tweak foldback style and tweak alignment
This tentatively re-uses nudge arrows for prev/next buttons,
and matches alignment of the top of the strips.
2019-09-08 22:33:01 +02:00
a8447a35ac Foldback GUI: Add menus to send box 2019-09-07 14:51:40 -07:00
3ecf0fde19 Match foldback strip BG to dark theme better 2019-09-07 14:51:40 -07:00
66ceb2b3c7
NO-OP: whitespace 2019-09-06 20:43:20 +02:00
33c251a623
Fix MSVC compilation
This resolves a circular dependency:
libardour calls methods from libardour_cp and vice versa.
Since 9bb2f2bb libardour is also calling active() and that method
needs to be forced to use late binding. -- compare to b9bbea7174
2019-09-06 20:35:49 +02:00