ardour.git
5 years agoProcessor-box control context menu update
Robin Gareus [Sun, 28 Oct 2018 20:03:43 +0000 (21:03 +0100)]
Processor-box control context menu update

5 years agoDon't show hidden controls inline in the mixer-strip
Robin Gareus [Sun, 28 Oct 2018 19:37:20 +0000 (20:37 +0100)]
Don't show hidden controls inline in the mixer-strip

5 years agoOnly allow LV2 touch events for control inputs
Robin Gareus [Sun, 28 Oct 2018 19:34:21 +0000 (20:34 +0100)]
Only allow LV2 touch events for control inputs

This fixes a crash when a plugin sends a touch events for non-control ports.

5 years agoFix incorrect VST callback fall-though (effective NOOP)
Robin Gareus [Sat, 27 Oct 2018 08:33:58 +0000 (10:33 +0200)]
Fix incorrect VST callback fall-though (effective NOOP)

5 years agoFix another compiler warning
Robin Gareus [Sat, 27 Oct 2018 08:33:07 +0000 (10:33 +0200)]
Fix another compiler warning

5 years agoWimplicit-fallthrough fixes for tools/utils
Robin Gareus [Fri, 26 Oct 2018 12:53:11 +0000 (14:53 +0200)]
Wimplicit-fallthrough fixes for tools/utils

5 years agoWimplicit-fallthrough fixes for gtk-ardour
Robin Gareus [Fri, 26 Oct 2018 12:31:14 +0000 (14:31 +0200)]
Wimplicit-fallthrough fixes for gtk-ardour

5 years agoFix some Wimplicit-fallthrough
Robin Gareus [Fri, 26 Oct 2018 12:30:26 +0000 (14:30 +0200)]
Fix some Wimplicit-fallthrough

A "fall through" comment is most portable way to indicate
"no break, fallthru" cases.

 * __attribute__ ((fallthrough))  // is not portable
 * [[fallthrough]]; // is C++17

5 years agoFix some compiler warnings (exception catches)
Robin Gareus [Fri, 26 Oct 2018 12:25:55 +0000 (14:25 +0200)]
Fix some compiler warnings (exception catches)

5 years agoGlib throws a const FileError exception
Robin Gareus [Fri, 26 Oct 2018 11:40:03 +0000 (13:40 +0200)]
Glib throws a const FileError exception

5 years agoFix Lua bindings (music-time, mapping)
Robin Gareus [Fri, 26 Oct 2018 11:38:28 +0000 (13:38 +0200)]
Fix Lua bindings (music-time, mapping)

5 years agoPlugin analysis numerics
Robin Gareus [Thu, 25 Oct 2018 02:25:15 +0000 (04:25 +0200)]
Plugin analysis numerics

Show vertical marker-line (freq) and precise numeric data of the
transfer function (dB, deg).

5 years agoFix race-condition/deadlock, plugin-copy while rolling
Robin Gareus [Thu, 25 Oct 2018 00:00:08 +0000 (02:00 +0200)]
Fix race-condition/deadlock, plugin-copy while rolling

lili93's session (#ardour) triggered this w/jackd 512fpp:
Drag/Drop copy a latent plugin from one track to another while rolling.
The GUI-thread as well as the auto-connect thread concurrently call
jack_recompute_total_latencies(). The auto-connect thread holds
a process lock while doing so. The GUI does not use any mutexes.
This randomly deadlocks in libjack.

backtrace: https://pastebin.com/6m3KGhWS

5 years agoFix typo in binding, amend 9bbbc7fbe
Robin Gareus [Tue, 23 Oct 2018 22:15:44 +0000 (00:15 +0200)]
Fix typo in binding, amend 9bbbc7fbe

5 years agoAdd some missing link libs to MSVC zita-convolver
John Emmas [Tue, 23 Oct 2018 08:55:31 +0000 (09:55 +0100)]
Add some missing link libs to MSVC zita-convolver

5 years agoFix an edge-case in Dummy backend's random generator
Robin Gareus [Mon, 22 Oct 2018 13:46:39 +0000 (15:46 +0200)]
Fix an edge-case in Dummy backend's random generator

INT_MAX == 2^31 is not a valid random seed for this LCG.

5 years agoSort VST factory presets
Robin Gareus [Mon, 22 Oct 2018 13:43:46 +0000 (15:43 +0200)]
Sort VST factory presets

This is more of a workaround than a fix. Simply by forcing the
URI to be sortable (VST-user presets are sorted at the end).

This eventually needs a deeper cleanup and API consolidation

PluginInfo::get_presets(bool) returns an ordered std::vector.
However this API is only used in a few cases where the plugin is
not instantiated. PluginInfo::get_presets(bool).

The problem is Plugin::get_presets(). The method returns
information that was previously cached by Plugin::find_presets() in
std::map<URI, ...>

5 years agoRemaining changes needed to build zita-convolver with MSVC
John Emmas [Mon, 22 Oct 2018 07:56:22 +0000 (08:56 +0100)]
Remaining changes needed to build zita-convolver with MSVC

5 years agoAdd MSVC support for building the 'zita-convolver' library (which is now needed by...
John Emmas [Mon, 22 Oct 2018 07:53:20 +0000 (08:53 +0100)]
Add MSVC support for building the 'zita-convolver' library (which is now needed by libardour)

5 years agoAccommodate newly introduced source(s) in our MSVC project (fluidsynth)
John Emmas [Mon, 22 Oct 2018 07:46:59 +0000 (08:46 +0100)]
Accommodate newly introduced source(s) in our MSVC project (fluidsynth)

5 years agoPotential fix for lost VST MIDI events
Robin Gareus [Sun, 21 Oct 2018 18:45:25 +0000 (20:45 +0200)]
Potential fix for lost VST MIDI events

Ardour's VST MIDI buffer API does not yet implement offsets and limits.
When a cycle is split, the same midi-buffer is used for all sub-divisions
leading to duplicate, offset, events.

5 years agoMSVC compatibility for zita-convolver
Robin Gareus [Sun, 21 Oct 2018 15:02:14 +0000 (17:02 +0200)]
MSVC compatibility for zita-convolver

5 years agoAvoid use of 'std::to_string
Christopher Arndt [Sat, 20 Oct 2018 22:56:38 +0000 (00:56 +0200)]
Avoid use of 'std::to_string

Signed-off-by: Christopher Arndt <chris@chrisarndt.de>
5 years agoAdd plugin version and parameter count to VST user presets
Christopher Arndt [Sat, 20 Oct 2018 21:48:21 +0000 (23:48 +0200)]
Add plugin version and parameter count to VST user presets

Signed-off-by: Christopher Arndt <chris@chrisarndt.de>
5 years agoPersonal monitor now saves and restores
Len Ovens [Fri, 19 Oct 2018 23:58:39 +0000 (16:58 -0700)]
Personal monitor now saves and restores

5 years agoExample convolution plugin (Lua script, hardcoded IR)
Robin Gareus [Fri, 19 Oct 2018 17:13:36 +0000 (19:13 +0200)]
Example convolution plugin (Lua script, hardcoded IR)

5 years agoLua bindings for convolution DSP
Robin Gareus [Thu, 18 Oct 2018 23:08:04 +0000 (01:08 +0200)]
Lua bindings for convolution DSP

5 years agoImplement basic libardour convolution DSP
Robin Gareus [Thu, 11 Oct 2018 13:29:10 +0000 (15:29 +0200)]
Implement basic libardour convolution DSP

5 years agozita-convolver windows/mingw build fix
Robin Gareus [Thu, 11 Oct 2018 15:25:26 +0000 (17:25 +0200)]
zita-convolver windows/mingw build fix

- semaphore is available,
- pthread_t is not a pointer type (but here it's not used anyway)

5 years agoNO-OP: clang-format whitespace
Robin Gareus [Wed, 10 Oct 2018 22:52:37 +0000 (00:52 +0200)]
NO-OP: clang-format whitespace

5 years agozita-convolver: add namespace & visibility, remove global externs
Robin Gareus [Wed, 10 Oct 2018 22:43:06 +0000 (00:43 +0200)]
zita-convolver: add namespace & visibility, remove global externs

5 years agoAdd upstream libzita-convolver 4.0.3
Robin Gareus [Wed, 10 Oct 2018 22:35:53 +0000 (00:35 +0200)]
Add upstream libzita-convolver 4.0.3

5 years agoAllow Lua DSP processors to report latency
Robin Gareus [Fri, 19 Oct 2018 16:10:19 +0000 (18:10 +0200)]
Allow Lua DSP processors to report latency

5 years agoAdd personal monitor sends
Len Ovens [Fri, 19 Oct 2018 15:49:30 +0000 (08:49 -0700)]
Add personal monitor sends

5 years agoFix copy/edit in e047b01aa256
Robin Gareus [Thu, 18 Oct 2018 13:07:45 +0000 (15:07 +0200)]
Fix copy/edit in e047b01aa256

5 years agoFix scalar initialization of shared_ptr<>.
Robin Gareus [Thu, 18 Oct 2018 02:15:47 +0000 (04:15 +0200)]
Fix scalar initialization of shared_ptr<>.

5 years agoFluidsynth 2.0 uses anonymous unions (added in c11, or gnu99)
Robin Gareus [Thu, 18 Oct 2018 02:09:14 +0000 (04:09 +0200)]
Fluidsynth 2.0 uses anonymous unions (added in c11, or gnu99)

5 years agoFollow fluidsynth's API changes introduced with 2.0.0
Andreas Müller [Thu, 11 Oct 2018 22:56:59 +0000 (00:56 +0200)]
Follow fluidsynth's API changes introduced with 2.0.0

Updated patch from Andreas Müller <schnitzeltony@gmail.com>

5 years agoUpdate Fluidsynth to 2.0.1
Robin Gareus [Wed, 17 Oct 2018 22:41:02 +0000 (00:41 +0200)]
Update Fluidsynth to 2.0.1

5 years agoNoop: fix white space
Len Ovens [Wed, 17 Oct 2018 23:25:49 +0000 (16:25 -0700)]
Noop: fix white space

5 years agoOption to hide send if aux is hidden
Len Ovens [Wed, 17 Oct 2018 22:58:08 +0000 (15:58 -0700)]
Option to hide send if aux is hidden

5 years agoPrevent excessive meter redraws for inactive meters at zero II
Andreas Müller [Wed, 17 Oct 2018 20:10:41 +0000 (22:10 +0200)]
Prevent excessive meter redraws for inactive meters at zero II

Same as be826f363522dbca96c8263d404c57c4fe9ff0e2

Signed-off-by: Andreas Müller <schnitzeltony@gmail.com>
5 years agocorrect comment
Paul Davis [Wed, 17 Oct 2018 18:13:52 +0000 (14:13 -0400)]
correct comment

5 years agouse IsPhysical port flag to decide what to show in the "system" tab of a patchbay...
Paul Davis [Wed, 17 Oct 2018 18:11:32 +0000 (14:11 -0400)]
use IsPhysical port flag to decide what to show in the "system" tab of a patchbay/matrix

5 years agoadd new API for retrieving port flags from backend
Paul Davis [Wed, 17 Oct 2018 18:10:50 +0000 (14:10 -0400)]
add new API for retrieving port flags from backend

5 years agoFix MMC range 0..127 (libardour uses and 0x7f)
Robin Gareus [Wed, 17 Oct 2018 17:56:06 +0000 (19:56 +0200)]
Fix MMC range 0..127 (libardour uses and 0x7f)

5 years agowhen calling Session::engine_halted() after a user-driven engine stop, make sure...
Paul Davis [Wed, 17 Oct 2018 17:15:52 +0000 (13:15 -0400)]
when calling Session::engine_halted() after a user-driven engine stop, make sure Engine::running() will be false

5 years agoLCXL: complete overhaul and Mixbus support
Jan Lentfer [Fri, 21 Sep 2018 14:06:16 +0000 (16:06 +0200)]
LCXL: complete overhaul and Mixbus support

5 years agoLCXL: Assign one callback function per Knob/Fader
Térence Clastres [Sat, 8 Sep 2018 17:03:45 +0000 (19:03 +0200)]
LCXL: Assign one callback function per Knob/Fader

5 years agoOSC: personal monitor can hide the aux bus
Len Ovens [Tue, 16 Oct 2018 20:56:09 +0000 (13:56 -0700)]
OSC: personal monitor can hide the aux bus

5 years agoOSC: personal monitor send hidden follows aux hidden
Len Ovens [Tue, 16 Oct 2018 20:33:42 +0000 (13:33 -0700)]
OSC: personal monitor send hidden follows aux hidden

5 years agoOSC: personal monitor should only send signal present on change
Len Ovens [Mon, 15 Oct 2018 17:38:52 +0000 (10:38 -0700)]
OSC: personal monitor should only send signal present on change

5 years agoindentation fix
Paul Davis [Mon, 15 Oct 2018 20:38:21 +0000 (16:38 -0400)]
indentation fix

5 years ago#include tidy-up
Paul Davis [Mon, 15 Oct 2018 20:38:07 +0000 (16:38 -0400)]
#include tidy-up

5 years agochange region->row map of EditorRegions to use iterator, not RowReference
Paul Davis [Mon, 15 Oct 2018 20:04:53 +0000 (16:04 -0400)]
change region->row map of EditorRegions to use iterator, not RowReference

RowReference was responsible for 75% of the cost of building the region list, and incurs cost
at every later insert/delete/reorder. Since both ListStore and TreeStore have persistent iterators,
use them instead

5 years agoRemove a #include and substitute a forward declaration (to simplify and speed up...
John Emmas [Mon, 15 Oct 2018 09:21:45 +0000 (10:21 +0100)]
Remove a #include and substitute a forward declaration (to simplify and speed up compilation)

5 years agoAdapt some MSVC projects to accommodate the changes to 'ptformat' library
John Emmas [Mon, 15 Oct 2018 09:19:26 +0000 (10:19 +0100)]
Adapt some MSVC projects to accommodate the changes to 'ptformat' library

5 years agoOSC: allow personal monitor to add a send.
Len Ovens [Sat, 13 Oct 2018 18:02:47 +0000 (11:02 -0700)]
OSC: allow personal monitor to add a send.

5 years agoremove use of hardcoded -fPIC compiler flag, and use compiler flag dict instead
Paul Davis [Mon, 15 Oct 2018 02:06:13 +0000 (22:06 -0400)]
remove use of hardcoded -fPIC compiler flag, and use compiler flag dict instead

5 years agoremove use of hardcoded -fPIC compiler flag, and use compiler flag dict instead
Paul Davis [Mon, 15 Oct 2018 02:06:11 +0000 (22:06 -0400)]
remove use of hardcoded -fPIC compiler flag, and use compiler flag dict instead

5 years agofix mixup with previous commit
Paul Davis [Mon, 15 Oct 2018 01:22:39 +0000 (21:22 -0400)]
fix mixup with previous commit

5 years agofix several inter-related problems with libptformat
Paul Davis [Mon, 15 Oct 2018 00:35:31 +0000 (20:35 -0400)]
fix several inter-related problems with libptformat

5 years agofix several inter-related problems with libptformat
Paul Davis [Mon, 15 Oct 2018 00:35:29 +0000 (20:35 -0400)]
fix several inter-related problems with libptformat

5 years agoClarify where the file 'ptfformat.h' can be found
John Emmas [Sat, 13 Oct 2018 12:49:50 +0000 (13:49 +0100)]
Clarify where the file 'ptfformat.h' can be found

5 years agoAccommodate newly introduced source(s) in our MSVC project (gtk2_ardour)
John Emmas [Sat, 13 Oct 2018 12:47:16 +0000 (13:47 +0100)]
Accommodate newly introduced source(s) in our MSVC project (gtk2_ardour)

5 years agoAccommodate newly introduced source(s) in our MSVC project (libardour)
John Emmas [Sat, 13 Oct 2018 12:46:30 +0000 (13:46 +0100)]
Accommodate newly introduced source(s) in our MSVC project (libardour)

5 years agoPT import: Fix circular dependency with libptformat <-> libardour
Damien Zammit [Wed, 10 Oct 2018 09:24:47 +0000 (20:24 +1100)]
PT import: Fix circular dependency with libptformat <-> libardour

5 years agoPT import: Minor changes to session
Damien Zammit [Wed, 10 Oct 2018 09:17:57 +0000 (20:17 +1100)]
PT import: Minor changes to session

5 years agoPT import: Add new import_pt.cc session methods
Damien Zammit [Wed, 10 Oct 2018 09:19:12 +0000 (20:19 +1100)]
PT import: Add new import_pt.cc session methods

5 years agoPT import: editor_pt_import complete rewrite
Damien Zammit [Wed, 10 Oct 2018 09:13:14 +0000 (20:13 +1100)]
PT import: editor_pt_import complete rewrite

5 years agoPT import: Add new PTImportSelector dialog
Damien Zammit [Wed, 10 Oct 2018 09:09:24 +0000 (20:09 +1100)]
PT import: Add new PTImportSelector dialog

5 years agolibptformat: Update lib to upstream e75320e (+source lengths)
Damien Zammit [Wed, 10 Oct 2018 09:21:29 +0000 (20:21 +1100)]
libptformat: Update lib to upstream e75320e (+source lengths)

5 years agoAlways use internal, modified, zita-resampler
Robin Gareus [Wed, 10 Oct 2018 22:17:00 +0000 (00:17 +0200)]
Always use internal, modified, zita-resampler

zita-resampler was modified from the original:

 * a dedicated mono variable-resampler version was added
 * full-cycle no-resampling was optimized into a delayline

5 years agoConsolidate relative sched_get_priority computation
Robin Gareus [Wed, 10 Oct 2018 23:47:46 +0000 (01:47 +0200)]
Consolidate relative sched_get_priority computation

5 years agoUse new RT-priority API
Robin Gareus [Wed, 10 Oct 2018 23:36:49 +0000 (01:36 +0200)]
Use new RT-priority API

5 years agoAdd API to query backend realtime thread priority
Robin Gareus [Wed, 10 Oct 2018 23:36:10 +0000 (01:36 +0200)]
Add API to query backend realtime thread priority

5 years agoFix master_send_enable_controllable for Mixbusses
Robin Gareus [Wed, 10 Oct 2018 20:41:49 +0000 (22:41 +0200)]
Fix master_send_enable_controllable for Mixbusses

5 years agoFix inconsistent controllable Lua binding names
Robin Gareus [Wed, 10 Oct 2018 20:32:08 +0000 (22:32 +0200)]
Fix inconsistent controllable Lua binding names

This also fixes incorrectly mapped send_level/enable

5 years agoFix well-known control Lua bindings
Robin Gareus [Wed, 10 Oct 2018 20:15:28 +0000 (22:15 +0200)]
Fix well-known control Lua bindings

5 years agorevert the coupling of location UI clock modes to transport clocks
Paul Davis [Wed, 10 Oct 2018 15:56:49 +0000 (11:56 -0400)]
revert the coupling of location UI clock modes to transport clocks

5 years agouse primary, not secondary, clock mode to drive other clock modes, and dynamically...
Paul Davis [Wed, 10 Oct 2018 15:47:05 +0000 (11:47 -0400)]
use primary, not secondary, clock mode to drive other clock modes, and dynamically update region editors, location UI and editor regions when it changes

5 years agoregion editor should use primary clock mode, not secondary
Paul Davis [Wed, 10 Oct 2018 15:24:17 +0000 (11:24 -0400)]
region editor should use primary clock mode, not secondary

5 years agoIgnore small (or negative) radii.
Robin Gareus [Tue, 9 Oct 2018 17:26:02 +0000 (19:26 +0200)]
Ignore small (or negative) radii.

Some calls use e.g. (corner_radius - 1.5). With small radii or boxy
layout the radius can become negative.

5 years agoConstant radian/degree factor
Robin Gareus [Tue, 9 Oct 2018 17:24:42 +0000 (19:24 +0200)]
Constant radian/degree factor

5 years agoRemove unused variable
Robin Gareus [Tue, 9 Oct 2018 17:23:17 +0000 (19:23 +0200)]
Remove unused variable

5 years agosome rather simple code to allow MIDI Clock to set the tempo of the session.
Paul Davis [Mon, 8 Oct 2018 16:59:51 +0000 (12:59 -0400)]
some rather simple code to allow MIDI Clock to set the tempo of the session.

This is only allowed if the session has only 1 tempo marker

5 years agouse C++, dammit
Paul Davis [Sun, 7 Oct 2018 16:57:56 +0000 (12:57 -0400)]
use C++, dammit

5 years agofix duplicate name check for new transport master
Paul Davis [Sun, 7 Oct 2018 16:43:28 +0000 (12:43 -0400)]
fix duplicate name check for new transport master

5 years agoshow message if adding transport master doesn't work
Paul Davis [Sun, 7 Oct 2018 16:43:14 +0000 (12:43 -0400)]
show message if adding transport master doesn't work

5 years agomake name entry activation close dialog (potentially)
Paul Davis [Sun, 7 Oct 2018 16:36:04 +0000 (12:36 -0400)]
make name entry activation close dialog (potentially)

5 years agodelete transport masters from an idle callback
Paul Davis [Sun, 7 Oct 2018 16:29:52 +0000 (12:29 -0400)]
delete transport masters from an idle callback

5 years agofix return value and avoid unnecessary extra conditional
Paul Davis [Sun, 7 Oct 2018 16:29:37 +0000 (12:29 -0400)]
fix return value and avoid unnecessary extra conditional

5 years agoremove crazy thinko
Paul Davis [Sun, 7 Oct 2018 16:28:53 +0000 (12:28 -0400)]
remove crazy thinko

5 years agoadd dialog for adding new transport masters
Paul Davis [Sun, 7 Oct 2018 15:09:54 +0000 (11:09 -0400)]
add dialog for adding new transport masters

5 years agoFaderport(Classic): Add Record-PreRoll and Record-CountIn actions to the footswitch...
Ben Loftis [Sun, 7 Oct 2018 15:09:38 +0000 (10:09 -0500)]
Faderport(Classic): Add Record-PreRoll and Record-CountIn  actions to the footswitch selections.  Could make this menu access -any- action, but I think a short useful list of transport items is better in this case.

5 years agoFix DSP-load window when removing plugins/routes
Robin Gareus [Sat, 6 Oct 2018 23:44:33 +0000 (01:44 +0200)]
Fix DSP-load window when removing plugins/routes

DropReferences of a single item should only drop references of the
instance in question -- and refill, keep the remaining items.

5 years agoSort Sidechain port list by mixer-order instead of alphabetically
Robin Gareus [Sat, 6 Oct 2018 19:30:24 +0000 (21:30 +0200)]
Sort Sidechain port list by mixer-order instead of alphabetically

5 years agoProperly disable looping when deleting loop-range
Robin Gareus [Fri, 5 Oct 2018 19:48:41 +0000 (21:48 +0200)]
Properly disable looping when deleting loop-range

5 years agoNO-OP: whitespace
Robin Gareus [Fri, 5 Oct 2018 19:47:43 +0000 (21:47 +0200)]
NO-OP: whitespace

5 years agomake remove work for transport masters (bug fix, really)
Paul Davis [Fri, 5 Oct 2018 18:29:15 +0000 (14:29 -0400)]
make remove work for transport masters (bug fix, really)