Commit graph

13215 commits

Author SHA1 Message Date
Robin Gareus
e65ff3fb4a Show range -60 .. +10 dBFS in acomp's inline display 2017-07-31 21:31:22 +02:00
Johannes Mueller
85106d81a0 Set makeup to 0.f when bypassed also in stereo version 2017-07-31 21:31:22 +02:00
Johannes Mueller
29df879edd Adjust the indication of the treshold value by the makup gain.
When lifting the compressor curve by the makeup gain value the actual
treshold (the level when the curve kinks in) is also lifted. Therefore we need
to adjust the dashed line indicating the threshold as well as the level when
the color gradient to show compression kicks in.
2017-07-31 21:31:22 +02:00
Johannes Mueller
dff4153024 Also the stereo version needs to set need_expose 2017-07-31 21:31:22 +02:00
Johannes Mueller
f68754b19d Show a-comp's makeup grain in inline rendering 2017-07-31 21:31:22 +02:00
Robin Gareus
660096b037 Fix typo 2017-07-31 19:54:23 +02:00
Len Ovens
f51fab35b1 OSC: Make stripname refresh in automation play mode as well. 2017-07-31 07:55:09 -07:00
Len Ovens
e94771a58f OSC: fix VCAs try to connect to controls it does not have. 2017-07-30 18:35:38 -07:00
Robin Gareus
008c3db9cd Some session cleanup fixes (delete slave, take lock for lua) 2017-07-31 01:48:28 +02:00
Robin Gareus
edcfa23e14 Binding Proxy: Drop references as requested. 2017-07-30 02:42:55 +02:00
Robin Gareus
6f80a5ba0f Turn AutomationCtrl into a SessionHandleRef
This fixes a crash with GUI elements which are only deleted during GUI
Idle and hold a Reference to a Controllable,
The session is already destroyed at that point:

ARDOUR::CoreSelection::remove_control_by_id(PBD::ID const&)
ARDOUR::AutomationControl::~AutomationControl()
ARDOUR::SlavableAutomationControl::~SlavableAutomationControl()
ARDOUR::MonitorControl::~MonitorControl()
boost::detail::sp_counted_base::destroy()
boost::detail::sp_counted_impl_p<AudioGrapher::Interleaver<float>::Input>::dispose()
boost::detail::sp_counted_base::release()
boost::detail::shared_count::~shared_count()
boost::shared_ptr<PBD::Controllable>::~shared_ptr()
boost::shared_ptr<PBD::Connection>::~shared_ptr()
ArdourWidgets::BindingProxy::~BindingProxy()
ArdourWidgets::ArdourButton::~ArdourButton()
VCAMasterStrip::~VCAMasterStrip()
int idle_delete<VCAMasterStrip>(VCAMasterStrip*)
2017-07-30 02:42:55 +02:00
Robin Gareus
ea48c56061 NO-OP: name-change (_list and _lock are also used in other places)
Derived classes need to explicitly specify namespace and class
to avoid ambiguities (even for private members)
2017-07-30 02:42:55 +02:00
John Emmas
80ecac672f Modify our MSVC project to add libltc as a dependency of 'dummy_backend' (which now needs to link to it) 2017-07-29 10:46:53 +01:00
John Emmas
7f03c9a664 Fix an ambiguous call to 'floor()'
MSVC complains, so let's specify which override we want.
2017-07-29 10:44:00 +01:00
Robin Gareus
b5e0b5b09f PortManager::unregister_port() must be called with process lock
This fixes "Failed to register <surface> port" when re-loading a session.
2017-07-28 20:15:15 +02:00
Robin Gareus
964b88e651 Delete CoreSelection at session close 2017-07-28 20:11:55 +02:00
Robin Gareus
7b7cc9ea6d Add a LTC generator to the dummy backend 2017-07-28 17:47:36 +02:00
Robin Gareus
d67056562b Fix write-pass re-start while in an active write-pass 2017-07-27 17:50:52 +02:00
Robin Gareus
3899c06fae Start a new write-pass when writing automation and locating while rolling 2017-07-27 01:40:13 +02:00
Robin Gareus
28c29ab22d Fix initial sync to LTC with small buffersizes
Ardour follow_slave() does nothing (not even seek) if the slave is not
locked.

The LTC-slave assumes it's locked if LTC is stable for 5 continuous
process-calls.

If the difference of Ardour's transport-position to the LTC-timecode
is large (> 2sec), the slave reset itself (assuming drift, seek don't vari-
speed).

A LTC-slave does reset does reset the locked counter.

Hence: If initially Ardour's transport differs > 2 sec and the buffersize
is small (many process-callbacks), the slave kept resetting itself
never informing Ardour that it locked to the external TC, and Ardour
never issued a seek.
2017-07-26 22:58:16 +02:00
Robin Gareus
b804109e8e update libltc 2017-07-26 22:58:12 +02:00
Robin Gareus
2fa34614d0 Remove unnecessary tests for touch-state 2017-07-25 20:16:04 +02:00
Robin Gareus
bde3edf1c8 Make start_touch() truly idempotent
Also don't allow outsiders to call Controllable::set_touching()
2017-07-25 20:15:12 +02:00
Robin Gareus
681ab52330 fix e838e7f359 2017-07-24 22:26:04 +02:00
Robin Gareus
e838e7f359 Fix Mixbus "well known" send-names and enable ctrls 2017-07-24 21:54:31 +02:00
Robin Gareus
a41198305e Update WritePass logic + AutomationList Undo
Fixes various issues when changing AutomationState while rolling.
2017-07-24 21:00:12 +02:00
Paul Davis
8c260a647a update japanese translation (Hiroki Inagaki) 2017-07-24 14:59:11 -04:00
Len Ovens
b694ee9e53 OSC: only use gain change signals if value changes 2017-07-24 10:21:31 -07:00
Len Ovens
3ab4a1d147 OSC: add use groups to GUI 2017-07-24 10:21:31 -07:00
Len Ovens
f3e0fcbb7e OSC: port mode by default should be manual 2017-07-24 10:21:31 -07:00
Len Ovens
f1632fcfd2 OSC: make sure initialization is complete before we allow periodic to run 2017-07-23 20:08:02 -07:00
Len Ovens
07e869fda8 OSC: simplify route observer 2017-07-23 20:08:02 -07:00
Robin Gareus
b29b46d371 Fix saving automation record undo
Calling AutomationList::before() clears the state.
2017-07-24 02:59:09 +02:00
Robin Gareus
30f85faa49 Update amp.cc to use gain_t for maths (no more double)
Also tweak threshold for LPF, assume gain-differences < 10-e5 as
no-change
2017-07-24 01:59:24 +02:00
Robin Gareus
fde0e293a3 Remove unused "mark" parameter from stop_touch() API 2017-07-24 01:59:18 +02:00
Robin Gareus
2006701f73 Fix ctrl-list guard-points and concurrency issues
* lock list when editing (prevent concurrent modification of insert
  iterator
* don't add a guard-point if an event is already present between the
  target and guard-point-position
* remove existing automation-events (old guard points) when
  touching automation w/o change
* don't unset "new write pass" when not rolling
  (fixes issues when not rolling but locating with write-enabled)
2017-07-24 01:59:08 +02:00
Robin Gareus
183351f333 Add touch-events signal emission to ArdourKnob 2017-07-23 19:40:20 +02:00
Len Ovens
1508838bde OSC: add /use_group 1/0 command 2017-07-22 12:12:41 -07:00
Robin Gareus
b42dbe9e4e Sanitize printing of a-eq gain parameters 2017-07-22 17:41:35 +02:00
Robin Gareus
c21345fc93 NO-OP: whitespace 2017-07-22 15:41:08 +02:00
Robin Gareus
24829c93b8 AutomationWatch: single DropReferences connection per AC 2017-07-22 15:40:27 +02:00
Robin Gareus
48ec6dd5c4 NO-OP: whitespace 2017-07-22 15:17:09 +02:00
Robin Gareus
fba2c2467d Fix Route mute automation touch (owned control) 2017-07-22 15:16:54 +02:00
Robin Gareus
24e92c1861 NO-OP: consistent [internal] API name for Automatables 2017-07-22 04:45:48 +02:00
Robin Gareus
f756dc69f4 NO-OP: Consistent API name 2017-07-22 04:25:07 +02:00
Robin Gareus
038c391d55 More non-rt calls to VCA - fixes VCA automation writing
This calls for a unified API to invoke
Automatable methods  ::transport_located() and ::transport_stopped()
on Stripables,  rather than indirectly calling it via
Route::non_realtime_locate(), Route::nonrealtime_handle_transport_stopped()
2017-07-21 23:07:51 +02:00
Robin Gareus
243cd35a36 Fix VCA Automation: end write pass 2017-07-21 21:48:20 +02:00
nick_m
886f4e6bc8 TempoMap legacy session loading fixes
Ensure we set the last tempo end note types per minute.
Clarify that we only set the end ntpm if unset.
2017-07-22 02:15:20 +10:00
nick_m
e4e3c10a90 Fis stray break statement when checking for a legacy tempo map
This could result in legacy sessions not being identified correctly and
loading with end tempi of -1.0.
2017-07-22 02:15:20 +10:00
nick_m
2925fd52e5 Rework tempo marker editing menu functions
Setting a tempo to 'Continue' via right click puts it in a permanent state
of continuing the previous section's end tempo (basically what
'Lock Continue' should have been). This can be disabled (unlocked) by
selecting 'Don't Continue'.

Remove the previous temporary 'Continue' function.

Reorganise menu to separate position lock style from more commonly
used functions.
2017-07-22 02:15:20 +10:00