summaryrefslogtreecommitdiff
AgeCommit message (Collapse)Author
2018-04-22pt import: Assume infinite length on missing sourcespt-missing-sourcesDamien Zammit
2018-04-22ptformat: Update to upstream c0305a2Damien Zammit
2018-04-20Use https for harrison channelstrip (windows-builds)Robin Gareus
2018-04-19amend e1f94bbb4a (32/64bit int64 compat)Robin Gareus
2018-04-19Fix 32bit buildsRobin Gareus
Unsigned long is 32bit on 32bit systems, besides sampleoffset and start variables are signed int64_t. resulting in a compiler error: integer constant is too large for 'unsigned long' type.
2018-04-13Fix plugin analysis for some VST and AU Plugins.Robin Gareus
set_block_size() implies plugin deactivate(), activate() calls to re-initialize AU and VST plugins. So plugins will reset the internal state and not immediately respond correctly. Some plugins zero the output or ramp up internally, leading the analyzer to show invalid or random/uncorrelated information. This avoid periodic calls to de/activate()
2018-04-12Only update tooltips if there is an actual change -- #7268Robin Gareus
Changing a tooltip resets the timeout. In one particular case, while rolling, AudioClock::set() is calling set_tooltip() at a rate faster than the tooltip timeout and prevents tooltip from showing at all (even if there is no actual change to the tooltip text). Alas, there is no trivial fix for this UI side and there may be other such cases. A central check is more than practical.
2018-04-08ptformat: Update to upstream 762f0dbDamien Zammit
2018-04-08pt import: Add commented out code for inserting silent missing sourcesDamien Zammit
- Disabled due to ptformat not knowing the length of sources - Added MIDI region/track summary information to dialog
2018-04-08ptformat: Update to upstream d5a73a0Damien Zammit
2018-04-08Fix crash when testing unsupported MIDI fileRobin Gareus
smf_delete() does not handle NULL, and segfaults instead. This only crashes with optimized builds. libsmf will call g_critical() earlier and in that case debug-builds call UI::handle_fatal() and ask the user to "click to exit".
2018-04-07OSC make strippable null on drop referencesLen Ovens
2018-04-07Use precalulated value rather than recalculatingLen Ovens
2018-04-07OSC: Setting strip types should clear temporary custom modesLen Ovens
2018-04-07Fix VstParameterProperties (bug from ac03e4a93)Robin Gareus
This fixes VST parameter prop.flags (toggle, integer-step). VestigeMaxLabelLen is used in various places in libardour, most notably with effGetParamName.
2018-04-02Implement VST UI touch (begin/end Edit)Robin Gareus
2018-04-02lots of changes including: ability to store and recall more than one mixer ↵Nikolaus Gullotta
state, ability to work on selected tracks only, plus bugfixes and removal of redundant checks
2018-03-30Fix a French translationJulien "_FrnchFrgg_" RIVAUD
It conveyed the idea of continuous silencing as long as the transport is in a stopped state. Make it correctly mean a one-shot reset when the transport is being stopped.
2018-03-29CoreAudio/MIDI: add locks for port-registrationRobin Gareus
CoreMIDI ports are dynamic. When dis/connecting a device CoreAudio's AudioHardware-PropertyListener triggers a callback which can add/remove ports. This can not happen concurrently with processing, but it may happen concurrently with a user creating tracks using Ardour's UI and/or session-load/setup.
2018-03-28fix undo/redo for duplicate-regions in ripple modePaul Davis
Also fix duplicate of multiple regions in the same track, and change "gap" variable name to "span" for greater clarity
2018-03-28NO-OP: prefer binary OR to set midi-status byteRobin Gareus
2018-03-28Sparse update for granular controls on slidersRobin Gareus
Don't call ::set_value() if the actual value has not changed. e.g. MIDI-CC or integer controls. Moving the Bar-controller was able to create events even though the actual value remained unchanged. This check has to be done UI-side, since the underlying API is also used for state-restore and automation. e.g. "old value" (user-set) may be default "0", "new value" may also be "0" but libardour still needs to send an event (a synth's internal state may not default to "0")
2018-03-27duplicate (regions) should honor ripple edit modePaul Davis
2018-03-27Remove debug message and trailing whitespaceRobin Gareus
2018-03-26faderport: make ::invoke() tell us whether or not something was actually ↵Paul Davis
invoked for a button event Only put the button into "consumed" if it actually invoked something. This helps to get reverse-polarity footswitches to work as expected
2018-03-26fix binding to long-press for User button on FaderPortPaul Davis
2018-03-24Fix MIDI-port info in plugin-managerRobin Gareus
2018-03-23assert(rv) removed, fixed redundant checking, and fixed proc ordering issue ↵Nikolaus Gullotta
caused by commit c7f7347
2018-03-22better group support + mute and solo recallNikolaus Gullotta
2018-03-22MSVC won't allow us to cast directly from float to an enum. We need to ↵John Emmas
kludge it by first casting to an integer type (is it safe to be casting from float to enum anyway??)
2018-03-20OSC: Change custom mode to enumLen Ovens
2018-03-20more stability fixesNikolaus Gullotta
2018-03-20fixed processor ordering crash in ardour and added group support (kinda)Nikolaus Gullotta
2018-03-20Fix call to labs.Robin Gareus
..or as clang puts it: "error: no member named 'labs' in namespace 'std'; did you mean simply 'labs'?"
2018-03-20Fix crash when re-assigning groups to a disjunct set.Robin Gareus
Drag a group-tab's right-edge horizontally to the right to remove all current routes from the groups before adding new routes to the group. The group becomes temporarily empty, and Session::route_removed_from_route_group() removes the group (before new routes can be added).
2018-03-20OSC: a strip controlling a send should deactivate other controlsLen Ovens
2018-03-20OSC: Add feedback for bus_only mode and automation and panLen Ovens
2018-03-20OSC: select should have latch too.Len Ovens
2018-03-20OSC: Add bus only mode for gain controlsLen Ovens
2018-03-19Fixed issue in plugin id invalidator caused by commit d5d5c0cNikolaus Gullotta
2018-03-19cleanup, fix in-on-change issue.Nikolaus Gullotta
2018-03-19Lua is not an acronymRobin Gareus
2018-03-19Speed up plugin-selector refill.Robin Gareus
* Detach model from treeview and disable sorting during refill. * Prevent multiple re-fills due to sensitivity updates of ComboBoxes: gtk_widget_set_sensitive() -> CairoWidget::on_state_changed () -> CairoWidget::set_visual_state () -> StateChanged Signal
2018-03-19Fix "Shortcut" special-case in the script-selector.Robin Gareus
The Script-selector is used in various places, not just for Action-scripts. Also add a "--" prefix for the separator to avoid name conflicts with actual script names.
2018-03-19Lua: Lock bindings into memory for rt-scriptsRobin Gareus
Empirically this decreases gc-spike duration (worst-case) by a factor of two and speeds up the average gc-run by a factor of over 4 (depending on the amount of memory used by the plugin).
2018-03-19Customize Lua GC, add object-memory-lock API.Robin Gareus
Add custom API to prevent Lua Objects from being garbage collected. This is intended to for Ardour LuaBridge bindings (~1MB Objects: tables, functions and userdata). The bindings are persistent and the gc can skip them in mark & sweep phases. This is a significant performance improvement for garbage collection. Note. The next version of Lua (5.4) will come with a generational-gc rather than an incremental, so extending the API at this point in time is acceptable.
2018-03-18Example Lua script to perform action at specific wallclock timeRobin Gareus
2018-03-18Fix midi track mapping on pt importDamien Zammit
2018-03-17Remove calls to deprecated Lua bitlibRobin Gareus
2018-03-17Remove another C++11 construct (local struct) from UI codeRobin Gareus