ardour.git
7 years agocommence testing
Robin Gareus [Sat, 9 Jul 2016 09:55:05 +0000 (11:55 +0200)]
commence testing

7 years agomove LatencyChanged detection from Plugin to Processor (plugin-insert)
Robin Gareus [Sat, 9 Jul 2016 02:42:21 +0000 (04:42 +0200)]
move LatencyChanged  detection from Plugin to Processor (plugin-insert)

* support all Plugin APIs (not implementation specific)
* also check for latency changes when plugins are hard en/disabled

7 years agoMake MIDI busses possible targets of internal sends
Julien "_FrnchFrgg_" RIVAUD [Sat, 9 Jul 2016 00:17:00 +0000 (02:17 +0200)]
Make MIDI busses possible targets of internal sends

The session only added an internal return to new audio busses, and so
only those were proposed in the "New Aux Send" list. Also add the return
to new midi busses, now that internal sends know how to deal with midi.

7 years agoMake internal sends aware of non-audio data
Julien "_FrnchFrgg_" RIVAUD [Sat, 9 Jul 2016 00:00:27 +0000 (02:00 +0200)]
Make internal sends aware of non-audio data

When most internal sends are created, they are given a panner shell
which is then responsible for audio dispatch. Other data types were left
there without handling them at all. Ensure that all available data is
sent provided the internal send has enough outgoing buffers.

7 years agoMake Delivery::run more Datatype-agnostic
Julien "_FrnchFrgg_" RIVAUD [Fri, 8 Jul 2016 23:07:16 +0000 (01:07 +0200)]
Make Delivery::run more Datatype-agnostic

Note that checking the number of output ports is not needed because
IO::copy_to_outputs() will stop if there are less ports of the right
type than buffers (or even none).

7 years agoAssert that nobody calls IO::copy_to_output with empty bufs
Julien "_FrnchFrgg_" RIVAUD [Fri, 8 Jul 2016 22:19:44 +0000 (00:19 +0200)]
Assert that nobody calls IO::copy_to_output with empty bufs

IO::copy_to_output() crashed if there was no channel to copy from. Since
all callers seem to check before calling, just assert() that it is not
the case.

7 years agofix port-sort order for good.
Robin Gareus [Fri, 8 Jul 2016 19:31:52 +0000 (21:31 +0200)]
fix port-sort order for good.

TODO find out how to make std::set::find() work with custom sort order,
as std::find may only be O(N) and not O(log (N)).

7 years agoOSC: Add well known controls for pan and compressor
Len Ovens [Fri, 8 Jul 2016 18:54:37 +0000 (11:54 -0700)]
OSC: Add well known controls for pan and compressor

7 years agopre-sort port-names
Robin Gareus [Fri, 8 Jul 2016 18:43:24 +0000 (20:43 +0200)]
pre-sort port-names

7 years agofix incorrect behaviour of mixer strip [X] (hide) buttons
Paul Davis [Fri, 8 Jul 2016 18:42:49 +0000 (14:42 -0400)]
fix incorrect behaviour of mixer strip [X] (hide) buttons

7 years agountested hack for AU multi-bus outputs which are not explicitly listed
Robin Gareus [Fri, 8 Jul 2016 18:29:03 +0000 (20:29 +0200)]
untested hack for AU multi-bus outputs which are not explicitly listed

7 years agofix thinko
Paul Davis [Fri, 8 Jul 2016 17:34:43 +0000 (13:34 -0400)]
fix thinko

7 years agotowards a generic plugin grid layout
Robin Gareus [Fri, 8 Jul 2016 16:17:21 +0000 (18:17 +0200)]
towards a generic plugin grid layout

7 years agoadd an plugin API to query generic-gui grid-layout
Robin Gareus [Fri, 8 Jul 2016 16:18:34 +0000 (18:18 +0200)]
add an plugin API to query generic-gui grid-layout

7 years agofirst step to separate generic-gui layout
Robin Gareus [Fri, 8 Jul 2016 00:41:42 +0000 (02:41 +0200)]
first step to separate generic-gui layout

7 years agomake route group master a real property.
Paul Davis [Fri, 8 Jul 2016 15:44:45 +0000 (11:44 -0400)]
make route group master a real property.

Required for state save/restore to know about the master

7 years agosigned VCA numbers
Paul Davis [Fri, 8 Jul 2016 15:44:13 +0000 (11:44 -0400)]
signed VCA numbers

7 years agochange VCA number to signed.
Paul Davis [Fri, 8 Jul 2016 15:43:34 +0000 (11:43 -0400)]
change VCA number to signed.

Allows for more robust out-of-band (negative) value

7 years agoa-EQ: Tweak default values and inline display scale +-20dB
Damien Zammit [Fri, 8 Jul 2016 14:28:01 +0000 (00:28 +1000)]
a-EQ: Tweak default values and inline display scale +-20dB

7 years agotreat VCA assign as a RouteGroup property.
Paul Davis [Fri, 8 Jul 2016 13:25:18 +0000 (09:25 -0400)]
treat VCA assign as a RouteGroup property.

Newly added routes,removed routes etc. all correctly assign or
unassign to the group's VCA.

7 years agofix region action sensitivity issues.
Paul Davis [Fri, 8 Jul 2016 12:43:52 +0000 (08:43 -0400)]
fix region action sensitivity issues.

Desensitize all region actions initially, and toggle that state
appropriately when region selection changes

7 years agoOSC: Add feedback for known pan controls and known compressor controls
Len Ovens [Thu, 7 Jul 2016 18:36:31 +0000 (11:36 -0700)]
OSC: Add feedback for known pan controls and known compressor controls

7 years agofix AU bus sidechaining
Robin Gareus [Thu, 7 Jul 2016 16:02:36 +0000 (18:02 +0200)]
fix AU bus sidechaining

7 years agoupdate lua-biquad: add en/disable
Robin Gareus [Thu, 7 Jul 2016 14:45:10 +0000 (16:45 +0200)]
update lua-biquad: add en/disable

7 years agoimplement designated enable/bypass port for lua-proc
Robin Gareus [Thu, 7 Jul 2016 14:44:41 +0000 (16:44 +0200)]
implement designated enable/bypass port for lua-proc

7 years agobackup lua-test/devel util code
Robin Gareus [Thu, 7 Jul 2016 13:33:45 +0000 (15:33 +0200)]
backup lua-test/devel util code

7 years agorewrite spectrogram using PBD::Ringbuffer
Robin Gareus [Thu, 7 Jul 2016 13:33:26 +0000 (15:33 +0200)]
rewrite spectrogram using PBD::Ringbuffer

7 years agoadd LuaTableRef to DSP API as alternative to shared-mem
Robin Gareus [Thu, 7 Jul 2016 13:36:39 +0000 (15:36 +0200)]
add LuaTableRef to DSP API as alternative to shared-mem

7 years agosome more lua-bindings
Robin Gareus [Thu, 7 Jul 2016 13:36:13 +0000 (15:36 +0200)]
some more lua-bindings

* allow C memory allocation with lua-lifetime
* expose some ChanMapping methods

7 years agoprepare sharing C++ class instances across lua-interpreters
Robin Gareus [Thu, 7 Jul 2016 02:44:36 +0000 (04:44 +0200)]
prepare sharing C++ class instances across lua-interpreters

in particular: lua-lifefime (!) C++ instances.
This allows for dynamic allocation of custom user-data, bound to
the lifetime of the allocating lua-context.

7 years agolua PBD ringbuffer bindings
Robin Gareus [Wed, 6 Jul 2016 15:44:06 +0000 (17:44 +0200)]
lua PBD ringbuffer bindings

7 years agoRemove some (no longer needed) source files from our MSVC project (gtk2_ardour)
John Emmas [Thu, 7 Jul 2016 12:26:57 +0000 (13:26 +0100)]
Remove some (no longer needed) source files from our MSVC project (gtk2_ardour)

7 years agoAdd a-EQ (basic 4 band EQ) with inline display based on SVF filters
Damien Zammit [Thu, 7 Jul 2016 12:14:02 +0000 (22:14 +1000)]
Add a-EQ (basic 4 band EQ) with inline display based on SVF filters

7 years agoOSC: Make sure selected strip is corrected when it's stripable vanishes
Len Ovens [Thu, 7 Jul 2016 02:28:41 +0000 (19:28 -0700)]
OSC: Make sure selected strip is corrected when it's stripable vanishes

7 years agomackie: ensure that the strip where select was pressed ends up as the first_selected_...
Paul Davis [Thu, 7 Jul 2016 01:40:29 +0000 (21:40 -0400)]
mackie: ensure that the strip where select was pressed ends up as the first_selected_stripable

7 years agoset ControlProtocol::_first_selected_stripable at the right time only
Paul Davis [Thu, 7 Jul 2016 00:58:07 +0000 (20:58 -0400)]
set ControlProtocol::_first_selected_stripable at the right time only

7 years agoDon't add audio outs to non-audio routes with strict I/O
Julien "_FrnchFrgg_" RIVAUD [Wed, 6 Jul 2016 22:46:53 +0000 (00:46 +0200)]
Don't add audio outs to non-audio routes with strict I/O

If a route has strict I/O then the main delivery follows the output of
the last processor, but libardour ensures it has at least as many
outputs as inputs in the master strip. A good consequence is that mono
tracks get their expected panner.

An akward side-effect is that MIDI-only routes (e.g. midi tracks or busses
without a synth) get two audio channels that have no use (and indeed no
panner is added because there is nothing to pan).

Skip the completion of audio outs if there was no audio out to begin
with.

7 years agoimplement LeatusPenguin's excellent idea for the plugin manager window (#6916)
Paul Davis [Wed, 6 Jul 2016 22:25:57 +0000 (18:25 -0400)]
implement LeatusPenguin's excellent idea for the plugin manager window (#6916)

7 years agomerge MixerActor API (back) into Mixer_UI; make solo/mute/recenable actions there...
Paul Davis [Wed, 6 Jul 2016 19:20:42 +0000 (15:20 -0400)]
merge MixerActor API (back) into Mixer_UI; make solo/mute/recenable actions there do the right thing

7 years agoquick checks on empty control lists, to avoid unnecessary work
Paul Davis [Wed, 6 Jul 2016 19:20:17 +0000 (15:20 -0400)]
quick checks on empty control lists, to avoid unnecessary work

7 years agoa few post-rebase cleanups
Paul Davis [Wed, 6 Jul 2016 18:03:24 +0000 (14:03 -0400)]
a few post-rebase cleanups

7 years agomany changes associated with rationalizing selection flow
Paul Davis [Wed, 6 Jul 2016 17:37:30 +0000 (13:37 -0400)]
many changes associated with rationalizing selection flow

7 years agorestore/extend/simplify ControlProtocol API to allow tracking of selection
Paul Davis [Wed, 6 Jul 2016 17:36:55 +0000 (13:36 -0400)]
restore/extend/simplify ControlProtocol API to allow tracking of selection

7 years agoremove a bunch of code that will no longer be used
Paul Davis [Wed, 6 Jul 2016 17:36:15 +0000 (13:36 -0400)]
remove a bunch of code that will no longer be used

7 years agoremove a bunch of code that will no longer be used
Paul Davis [Wed, 6 Jul 2016 17:35:50 +0000 (13:35 -0400)]
remove a bunch of code that will no longer be used

7 years agofix a-High/LowPass transfer-fn display visual bleed
Robin Gareus [Wed, 6 Jul 2016 02:05:46 +0000 (04:05 +0200)]
fix a-High/LowPass transfer-fn display visual bleed

7 years agotweak lua gc
Robin Gareus [Wed, 6 Jul 2016 01:32:08 +0000 (03:32 +0200)]
tweak lua gc

lua C++ bindings require ~400KB worth of tables now; so bump memory
available to rt-safe scripts (full interpreter) to 2MB.

Also switch to incremental GC.

7 years agodisable git-archive
Robin Gareus [Wed, 6 Jul 2016 01:12:19 +0000 (03:12 +0200)]
disable git-archive

ardour-git requires `git describe` to work. raw git archives
which are not dist tar-balls will fail to configure.

7 years agoOSX: fix bundled lv2 plugin library names and deps
Robin Gareus [Wed, 6 Jul 2016 00:53:31 +0000 (02:53 +0200)]
OSX: fix bundled lv2 plugin library names and deps

7 years agosome comments
Robin Gareus [Tue, 5 Jul 2016 21:49:58 +0000 (23:49 +0200)]
some comments

7 years agofix crash when loading a saved visual state
Robin Gareus [Tue, 5 Jul 2016 21:49:50 +0000 (23:49 +0200)]
fix crash when loading a saved visual state

7 years agoPlugin GUI activate/enable update (prefer enable)
Robin Gareus [Tue, 5 Jul 2016 19:25:31 +0000 (21:25 +0200)]
Plugin GUI activate/enable update (prefer enable)

7 years agoupdate route/processor semantics
Robin Gareus [Tue, 5 Jul 2016 17:44:47 +0000 (19:44 +0200)]
update route/processor semantics

* active(): hard bypass: en/disable. When disabled, run() is not called.
* enabled(): plugin run()s but may do nothing (or only be latent)

7 years agoimplement lv2:designation processing#enable (for bypass ports)
Robin Gareus [Tue, 5 Jul 2016 17:14:25 +0000 (19:14 +0200)]
implement lv2:designation processing#enable (for bypass ports)

7 years agoadd API to use a plugin provided bypass control port
Robin Gareus [Tue, 5 Jul 2016 19:26:45 +0000 (21:26 +0200)]
add API to use a plugin provided bypass control port

* new separate API: en/disable
* old API remains in place for hard bypass
* PluginInsert::enable() falls back to activate/deativate if a plugin
  does not provided designated bypass control port

7 years agoOSC: Clear expand Lamp on strip observer destroy
Len Ovens [Tue, 5 Jul 2016 21:11:16 +0000 (14:11 -0700)]
OSC: Clear expand Lamp on strip observer destroy

7 years agoa-delay: Fix compiler warning
Damien Zammit [Tue, 5 Jul 2016 16:18:10 +0000 (02:18 +1000)]
a-delay: Fix compiler warning

7 years agoAdd a-Delay plugin
Damien Zammit [Tue, 5 Jul 2016 15:53:59 +0000 (01:53 +1000)]
Add a-Delay plugin

7 years agotweak a-series plugin names
Robin Gareus [Tue, 5 Jul 2016 15:17:59 +0000 (17:17 +0200)]
tweak a-series plugin names

7 years agoadd support for http://lv2plug.in/ns/ext/port-props/#rangeSteps
Robin Gareus [Tue, 5 Jul 2016 14:21:09 +0000 (16:21 +0200)]
add support for lv2plug.in/ns/ext/port-props/#rangeSteps

7 years agoconsistent use of fmaxf() in a-comp
Robin Gareus [Tue, 5 Jul 2016 13:38:24 +0000 (15:38 +0200)]
consistent use of fmaxf() in a-comp

7 years agoamend d9de72215 - bypass replicated instances w/sidechain inputs
Robin Gareus [Tue, 5 Jul 2016 13:37:59 +0000 (15:37 +0200)]
amend d9de72215 - bypass replicated instances w/sidechain inputs

7 years agoa-comp: Use input signal x as cutoff for inline comp curve
Damien Zammit [Tue, 5 Jul 2016 08:36:04 +0000 (18:36 +1000)]
a-comp: Use input signal x as cutoff for inline comp curve

7 years agoa-comp: Fix inline comp curve shading
Damien Zammit [Tue, 5 Jul 2016 08:19:00 +0000 (18:19 +1000)]
a-comp: Fix inline comp curve shading

7 years agoa-comp: Fix peak level on both stereo and mono plugins
Damien Zammit [Tue, 5 Jul 2016 05:07:06 +0000 (15:07 +1000)]
a-comp: Fix peak level on both stereo and mono plugins

7 years agoOSC: Signal for editor mixer change. (Selected or not)
Len Ovens [Tue, 5 Jul 2016 03:07:38 +0000 (20:07 -0700)]
OSC: Signal for editor mixer change. (Selected or not)

7 years agoOSC: /strip/select * should set new selected strip not toggle what is there.
Len Ovens [Tue, 5 Jul 2016 01:34:48 +0000 (18:34 -0700)]
OSC: /strip/select * should set new selected strip not toggle what is there.

7 years agoremove useless binding (fixes broken windows build)
Robin Gareus [Tue, 5 Jul 2016 00:38:02 +0000 (02:38 +0200)]
remove useless binding (fixes broken windows build)

7 years agofix bypassing plugins with sidechain i/o
Robin Gareus [Mon, 4 Jul 2016 22:38:52 +0000 (00:38 +0200)]
fix bypassing plugins with sidechain i/o

7 years agohighlight area below automation lanes
Robin Gareus [Mon, 4 Jul 2016 20:14:00 +0000 (22:14 +0200)]
highlight area below automation lanes

7 years agoadd fill-area feature to poly-line
Robin Gareus [Mon, 4 Jul 2016 22:39:39 +0000 (00:39 +0200)]
add fill-area feature to poly-line

7 years agofix AU sidechain busses
Robin Gareus [Mon, 4 Jul 2016 19:45:26 +0000 (21:45 +0200)]
fix AU sidechain busses

7 years agoadd required check for cairo in a-comp
Paul Davis [Mon, 4 Jul 2016 19:10:18 +0000 (15:10 -0400)]
add required check for cairo in a-comp

7 years agoadd another warning-disable flag for clang
Paul Davis [Wed, 22 Jun 2016 14:44:15 +0000 (10:44 -0400)]
add another warning-disable flag for clang

7 years agoremove temporarily added signal
Paul Davis [Mon, 4 Jul 2016 17:42:47 +0000 (13:42 -0400)]
remove temporarily added signal

7 years agoGUI doesn't need to listen to old ControlProtocol signals for stripable selection
Paul Davis [Mon, 4 Jul 2016 16:45:47 +0000 (12:45 -0400)]
GUI doesn't need to listen to old ControlProtocol signals for stripable selection

7 years agouse session stripable selection API
Paul Davis [Mon, 4 Jul 2016 16:45:29 +0000 (12:45 -0400)]
use session stripable selection API

and remove old ControlProtocol signals to talk to GUI etc.

7 years agoadd session-scope selection ops for Stripables
Paul Davis [Mon, 4 Jul 2016 16:44:42 +0000 (12:44 -0400)]
add session-scope selection ops for Stripables

7 years agofix another logic error in PresentationInfo::flag_match()
Paul Davis [Mon, 4 Jul 2016 16:44:20 +0000 (12:44 -0400)]
fix another logic error in PresentationInfo::flag_match()

7 years agoa-comp: Make ratio control logarithmic
Damien Zammit [Mon, 4 Jul 2016 16:32:05 +0000 (02:32 +1000)]
a-comp: Make ratio control logarithmic

7 years agoa-comp: Add stereo version
Damien Zammit [Mon, 4 Jul 2016 16:13:22 +0000 (02:13 +1000)]
a-comp: Add stereo version

7 years agoOSC: select is global not per surface.
Len Ovens [Mon, 4 Jul 2016 15:27:16 +0000 (08:27 -0700)]
OSC: select is global not per surface.

7 years agoa-comp display is getting fancy :)
Robin Gareus [Mon, 4 Jul 2016 13:49:39 +0000 (15:49 +0200)]
a-comp display is getting fancy :)

7 years agostop-and-forget-capture should not toggle transport state, only stop it
Paul Davis [Mon, 4 Jul 2016 13:41:21 +0000 (09:41 -0400)]
stop-and-forget-capture should not toggle transport state, only stop it

7 years agoavoid unnecessary multiple calls to RouteUI::update_monitoring_state()
Paul Davis [Mon, 4 Jul 2016 13:27:28 +0000 (09:27 -0400)]
avoid unnecessary multiple calls to RouteUI::update_monitoring_state()

7 years agooperate directly on realtime controls, not via Session
Paul Davis [Mon, 4 Jul 2016 13:27:09 +0000 (09:27 -0400)]
operate directly on realtime controls, not via Session

7 years agooperate directly on realtime controls, not via Session
Paul Davis [Mon, 4 Jul 2016 13:26:48 +0000 (09:26 -0400)]
operate directly on realtime controls, not via Session

7 years ago2nd part of previous commit
Paul Davis [Mon, 4 Jul 2016 13:26:44 +0000 (09:26 -0400)]
2nd part of previous commit

7 years agomake sure that rec-enable changes get to do their non-RT stuff before being queued...
Paul Davis [Mon, 4 Jul 2016 13:25:31 +0000 (09:25 -0400)]
make sure that rec-enable changes get to do their non-RT stuff before being queued for RT-context execution

7 years agodisplay level in a-comp display
Robin Gareus [Mon, 4 Jul 2016 12:26:37 +0000 (14:26 +0200)]
display level in a-comp display

7 years agocon't work on a-comp inline-display
Robin Gareus [Mon, 4 Jul 2016 12:07:05 +0000 (14:07 +0200)]
con't work on a-comp inline-display

7 years agoadd C99 flags for lv2 plugin
Robin Gareus [Mon, 4 Jul 2016 11:08:23 +0000 (13:08 +0200)]
add C99 flags for lv2 plugin

7 years agobasic inline display for a-comp
Robin Gareus [Mon, 4 Jul 2016 10:59:04 +0000 (12:59 +0200)]
basic inline display for a-comp

7 years agoa-comp: Tweak control bounds and clear state on deactivate
Damien Zammit [Mon, 4 Jul 2016 09:41:15 +0000 (19:41 +1000)]
a-comp: Tweak control bounds and clear state on deactivate

7 years agoAccommodate newly introduced source(s) in our MSVC project (gtk2_ardour)
John Emmas [Mon, 4 Jul 2016 08:38:28 +0000 (09:38 +0100)]
Accommodate newly introduced source(s) in our MSVC project (gtk2_ardour)

7 years agounbind pangomm 1.30 API for compat.
Robin Gareus [Mon, 4 Jul 2016 08:36:11 +0000 (10:36 +0200)]
unbind pangomm 1.30 API for compat.

7 years agoexperimental support for AU sidechain busses
Robin Gareus [Mon, 4 Jul 2016 01:56:26 +0000 (03:56 +0200)]
experimental support for AU sidechain busses

some plugins include a sidechain bus which is not explicitly
listed under "Reported Channel Capabilities" list,
nor the "Input/Output Channel Handling"

7 years agoUI: Add editor_mixer route pointer to session so all UIs can know the same current_st...
Len Ovens [Mon, 4 Jul 2016 01:22:09 +0000 (18:22 -0700)]
UI: Add editor_mixer route pointer to session so all UIs can know the same current_strip even in a selected group.

7 years agoflush output buffers after processing - fixes midi-bus chaining
Robin Gareus [Mon, 4 Jul 2016 01:13:35 +0000 (03:13 +0200)]
flush output buffers after processing - fixes midi-bus chaining

7 years agomore lua-script updates:
Robin Gareus [Sun, 3 Jul 2016 23:47:52 +0000 (01:47 +0200)]
more lua-script updates:

* comments and explain amp4.lua
* move amp1-3 to "Example" category