Commit graph

24289 commits

Author SHA1 Message Date
Robin Gareus
c05e6b2069 Add a script to update qm-dsp library 2017-04-01 21:11:51 +02:00
Robin Gareus
c0c24aff72 Hotfix crashes for [extreme] time-stretch -- #7305
e.g. stretch-shrink 3712 samples down to 1780.
The filter order defines nFact which can become larger than length - 2
leading to out-of-bounds array access.

e.g. m_ord = 2 -> nFilt = 2, nFact = 6;  process < 7 samples (here 6)
2017-04-01 19:16:12 +02:00
Robin Gareus
2513aad1ed Remove duplicate msg (load_keybindings also prints an info) 2017-04-01 19:16:12 +02:00
Robin Gareus
a57914ed50 Another fix to reset keybindings:
Don't carry previously set global keybindings_path.
2017-04-01 19:16:12 +02:00
Ben Loftis
6fbe3f6408 Fix label for show-mixer 2017-04-01 10:02:04 -05:00
Ben Loftis
6b8be8fa71 Fix set-*-from-edit-range actions, when accessed from control surfaces. 2017-04-01 09:57:06 -05:00
Robin Gareus
3e43585fa1 Pop splash on dialog response - not d'tor.
A Dialog Window may not be tightly scoped, and may be around
for a while (query settings from the dialog instance). The destructor
may only be called  later.
2017-04-01 16:40:07 +02:00
Robin Gareus
dae7e8dbd3 NO-OP: whitespace 2017-04-01 15:56:35 +02:00
Robin Gareus
16cdab6327 Fix engine state ordering 2017-04-01 15:39:02 +02:00
Robin Gareus
8bed793b48 Properly desensitize various engine-controls.
MIDI system and channel-count cannot be changed while the engine is
running.
2017-04-01 14:37:35 +02:00
Tim Mayberry
752706911e Fix crash when dragging playhead or mouse in ruler area
This can be hard to reproduce and I have not been able to work out the steps to
reproduce reliably, but as it is still occuring work around the issue by just
checking the variable is valid before dereferencing it.

Resolves: #7304
2017-04-01 22:04:56 +10:00
Robin Gareus
727ac30dd2 Unregister ports at session close.
This fixes issues when re-loading a session without taking the
engine down.
2017-04-01 13:14:17 +02:00
Robin Gareus
d61683809d Connect route-template insert i/o ports #5778 2017-03-31 19:53:14 +02:00
Robin Gareus
a534258594 Reset Playhead interpolation when looping and locating 2017-03-31 14:16:04 +02:00
Robin Gareus
f2c0b0ee3f Add an API to query if the audible frame is latent pending a locate
eg. at the end of a loop, the session may already be playing the
beginning of the loop. The TransportLooped signal was emitted.
Yet due to playback latency, the audible frame is still at the end of
the loop.

To interpolate the playhead position the UI needs to be able to know:
Relying on the TransportLooped signal is not sufficient because it
does not take playback latency into account.
2017-03-31 14:01:50 +02:00
Robin Gareus
9436d0cb86 Hide eyedropper color-picker on mac
It not only does not work, but also locks up the Desktop/Window
manager in odd ways.
2017-03-31 02:21:38 +02:00
Robin Gareus
eea8fbd1c5 NO-OP, semantic tweak 2017-03-30 22:07:06 +02:00
Robin Gareus
7807869a68 Fix count-in for non 4/4 time signatures 2017-03-30 22:07:06 +02:00
Robin Gareus
478f26b2ad Count-in is a no-roll operation. 2017-03-30 22:07:06 +02:00
Ben Loftis
6e4eed51ca Shortcut editor: include a raw list of the currently-available actions in the printout. 2017-03-30 11:02:06 -05:00
Robin Gareus
02080a434f Consistent Color Selection Dialog (incl RouteGroups) 2017-03-30 15:21:06 +02:00
Robin Gareus
dd7063277a Add ColorButton drop-in replacement with palette support 2017-03-30 15:20:48 +02:00
Robin Gareus
ea8c6e9fc8 Fix hiding Lua __metatable -- prevent setmetatable() override 2017-03-30 05:06:34 +02:00
Robin Gareus
33b859a807 Add proper Lua bindings for RouteGroupList 2017-03-30 04:15:28 +02:00
Robin Gareus
412b6a4cb9 Lua: make external (static) functions available for const objects.
This fixes iterators on const std::lists<>& and const std::map<>&
2017-03-30 04:15:28 +02:00
Len Ovens
eb1bd9d8e2 OSC: don't skip when deleting cue observers 2017-03-29 16:24:43 -07:00
Len Ovens
8de580c123 OSC: Clear devices should clear cue observers as well. 2017-03-29 16:07:21 -07:00
Robin Gareus
05231949e6 When adding a PC, use the channel given in the dialog. 2017-03-29 23:53:56 +02:00
Robin Gareus
e66ba382da Remove expensive menu for sending immediate Patch Changes, use a dialog 2017-03-29 23:53:56 +02:00
Robin Gareus
c0b6d8bfdf Fix Patch Change Naming when plugins change (Route::reset_instrument_info) 2017-03-29 23:53:56 +02:00
Len Ovens
e7ca514887 OSC: reduce feedback noise for surfaces using /strip/list 2017-03-26 21:16:45 -07:00
Robin Gareus
b66d31891b Revert "profile instant.xml save"
This reverts commit e965e5edcd.
2017-03-27 05:08:30 +02:00
Robin Gareus
c3f2cff8bc optimize LuaInstance::get_action_state, LuaInstance::get_hook_state
Lua serialize() is called recursively and concatenates strings.
(in Lua that results in a new string on the stack, with 2 unused old
strings). Collecting garbage every time becomes expensive, so do it
only once at the end. GUI scripts are not memory limited anyway.
2017-03-27 04:59:20 +02:00
Robin Gareus
47ea6534d0 Add option to disable blinking alert buttons. 2017-03-26 21:42:01 +02:00
Paul Davis
5ac2d6dcd8 improve correct selection (in mixer) of newly added tracks/busses 2017-03-26 16:13:11 +02:00
Paul Davis
453e07d0a2 make selection of tracks/busses after adding them slightly more efficient 2017-03-26 16:12:10 +02:00
Paul Davis
7720caf36a whenever showing the add routes dialog, put focus in the SpinButton that determines how many <X> are added 2017-03-26 15:07:11 +02:00
Paul Davis
aeae859c46 make it possible to drop a group from a VCA 2017-03-26 15:01:00 +02:00
Paul Davis
196bdf8394 more fully disable gain adjustment sharing in a RouteGroup that is assigned to a VCA master 2017-03-26 14:42:28 +02:00
Robin Gareus
e965e5edcd profile instant.xml save
This does clutter up stderr, but only because instant.xml is arguably
saved much too often (and it's not really instant :)
2017-03-25 15:10:02 +01:00
Len Ovens
f5931457fb OSC: tell surfaces using /strip/list they need to rebuild after strip add/remove 2017-03-24 14:05:39 -07:00
Len Ovens
011c4a05d8 OSC: update /strip/list response to add aux, midi bus and VCAs 2017-03-24 13:07:03 -07:00
Robin Gareus
962e7a214a Revert "consistent use of context-menu popups"
This reverts commit b3722f7063.

In some cases ardour shows context-menu on right-mouse-button
release. In this case selecting a menu-entry should happen
with the left-mouse button (or any button?!)

Using ev->button is only correct if the menu is temporary and only
visible while the button is held, button release then activates the
menu-item.

This needs further work, in some cases allowing any button (0) to work
makes sense and overall consistency needs to be improved.
Different places use different strategies for context-menus which
don't always match the button used in the event-handler.

This is a hotfix (to make TAV context menus work again with left-click)
2017-03-24 14:48:46 +01:00
Robin Gareus
55b8b44889 Improve playhead updates, reduce jitter for follow PH, stationary PH
* resolve rounding mistakes
* extrapolate and filter position using GUI timing
* track engine's position
2017-03-23 19:21:50 +01:00
Robin Gareus
446041d6b9 Increase mempool for session-scripts
(bindings alone require ~800kB these days)
2017-03-23 19:05:53 +01:00
Robin Gareus
585fa4302f Disallow Selection, context-menu & drag-start on peak-display Button 2017-03-23 01:53:31 +01:00
Robin Gareus
4a180e68ba Special case const std::string& Lua binding.
since 6dc3bdf, a const string reference would leave scope with Lua code
     fn("text")
calling a C++
     fn (const std::string&)
before the C++ function is called.
2017-03-22 16:59:02 +01:00
Robin Gareus
35dcd46d7d remove cruft (following 6dc3bdf) 2017-03-22 16:55:19 +01:00
Robin Gareus
a199477cf6 Improve plugin Ccategory consistency somewhat 2017-03-21 22:21:02 +01:00
Robin Gareus
159e956225 Top-up "Utils" plugin filter
* move Generators unto Utility groups
* all "MIDI" plugins (which are not Instruments) are Utils
* Anaylsis, Analyser, Analyzer
2017-03-21 22:20:17 +01:00