13
0
Commit Graph

15690 Commits

Author SHA1 Message Date
f703385d07 fix slaving to JACK transport (again!) 2020-03-22 10:57:54 -06:00
1f3145f8ff fix up JACK transport to use master strategy design 2020-03-22 10:57:54 -06:00
1e474afbce fix typo that passed wrong value as 2nd parameter to Session::plan_master_strategy() 2020-03-22 10:57:54 -06:00
386264bd23
Pan: consolidate what_can_be_automated API 2020-03-21 19:46:39 +01:00
60bcefd03d
Pan: remove/consolidate parameter-descriptor 2020-03-21 19:46:38 +01:00
efb63e1bf2
Pan: remove value-as-string indirection 2020-03-21 19:46:38 +01:00
991f92c2c6
Pan: remove unused APIs 2020-03-21 19:46:38 +01:00
875f694380
Pan: remove VBAP requirement to access session 2020-03-21 19:46:38 +01:00
bf894d80fb
NO-OP: remove unused #includes 2020-03-21 19:46:38 +01:00
8296a030a5 redesign chasing the transport master
Substantive comments associated with code in Session::plan_master_strategy.

Known not to work for reverse TC. Also, the JACK related code has not yet been tested
2020-03-20 17:38:38 -06:00
e6e0edbe90 fix condition under which out-of-window MTC should trigger locate 2020-03-20 17:38:38 -06:00
28f15d3fa6
Add flag to explicitly hide a control
Eventually this is to replace a literal name "hidden" that is
currently used as hack throughout Ardour's codebase.
2020-03-18 18:16:29 +01:00
John Emmas
ca4e3c2556 Add/remove source(s) in our MSVC project (libardour) 2020-03-18 09:21:57 +00:00
1783305077 provide mechanism to report on destructive tracks presence in a session 2020-03-17 16:31:50 -06:00
0738472fee NOOP: indent/whitespace 2020-03-17 16:31:49 -06:00
295fb3ff5a allow loading of regions derived from formerly "destructive" sources with correct length
Without this change, such regions end up with insanely large (though legal) lengths
2020-03-17 16:31:49 -06:00
a30ee6950d restore being able to load a 5.12 session with a destructive track.
Not all is working right yet, however
2020-03-17 16:31:49 -06:00
a4d7b45fe0 remove destructive/tape mode tracks 2020-03-17 16:31:49 -06:00
e89b0cfd27 remove tape_file_matcher source 2020-03-17 16:31:49 -06:00
45026100aa LV2: Implement ui:requestValue feature 2020-03-17 16:55:35 +01:00
a7a781971e
Change default stereo panner to equal power balance
The stereo-width panner is not generally useful. In order to
change the azimuth, width has to be reduced, which usually leads
to comb-filter artifacts.

Equal power stereo, also matches the default mono to stereo panner
better than the stereo-width panner.

Last but not least, control surfaces only have an azimuth control
knob, without an easy way to reduce width, this leaves
the panner insensitive.
2020-03-15 21:39:53 +01:00
dbd4b9d07d
Fix cleanup report #7891
Direct call to Session::cleanup_sources() from ARDOUR_UI::cleanup()
didn't zero initialize size. This centralizes initialization,
so cleanup_trash_sources() does not need to explicitly clear it.
2020-03-15 20:31:57 +01:00
f941b3fadd
Add/use default argument for track creation 2020-03-15 14:03:24 +01:00
7f862298cf
Fix loading playlists of old sessions
Previously when loading Ardour v2, v3-5 sessions, tracks were
created with a dummy name "toBeResetFroXML".

In v6, Track::init() creates a playlist when the track name is
not empty. Later Track::set_state() calls set_name(). When a
playlist exists, the playlist's name is set to match the track's name.

When loading v6 sessions none of this happens. A previously loaded
playlist will be assigned by ID.

Older versions identified Playlists by name and by the time the
playlist is assigned, there may be ambiguities. With the default
(track-name = playlist-name) two playlists with the same name exist:

 (1) the playlist loaded from the session file
 (2) the playlist created by Track::init()

Playlists are stored in an ordered std::set<shared_ptr<Playlist>>,
and name-lookup iterates over the set.

When loading an old session after starting Ardour, it is very
likely to always lookup the playlist (1), because new, later
allocations from (2) are on top of the heap and ordered last.

The session seemingly loads correctly, except for lingering,
unused empty playlists "toBeResetFroXML" renamed to "Track name"
that were never deleted.

However when loading an old session from a running instance,
ordering is mostly random, and many tracks end up with using
the empty playlist (2) instead of the correct playlist (1).
2020-03-15 13:34:13 +01:00
213b3cd593
More useful debug message (print script that failed to parse) 2020-03-15 12:50:30 +01:00
db59711bc9
Fix SessionHandleRef shared-ptr leak when unfreezing tracks 2020-03-14 13:25:54 +01:00
8f37865070
Prevent freeze/bounce of sidechain processors
This also consolidates code to test if a processor can be frozen
from various places.
2020-03-14 13:25:54 +01:00
d95f6039f8 import_pt.cc: Remove process lock on AudioEngine && save less often 2020-03-14 12:03:22 +11:00
91c92f8e25 remove debug output 2020-03-13 13:52:38 -06:00
7ba8714e37 add/alter DEBUG_TRACE output 2020-03-13 13:52:38 -06:00
ee1f8a6fc7 add comment and additional reset when reinitializing transport master engine DLL 2020-03-13 13:52:38 -06:00
c83d509203 when locating to follow a transport master, reset engine DLL 2020-03-13 13:52:38 -06:00
f5ec5ea929 add new API to TransportMasterManager to manage use of DiskReader::{inc,dec}_no_disk_output() 2020-03-13 13:52:38 -06:00
cc43ec3ef6 adjust TransportFSM to avoid declick to locate if DiskReader::_no_disk_output is set
Under those conditions, the DR will not execute a code path that will cause the declick to take place
and therefore the declick will never finish
2020-03-13 13:52:38 -06:00
cf15b6ad7a prevent out-of-window MTC messages from moving transport if we're not using MTC
in 5.x, we would only run the MTC parsing code if slaved to MTC. That's no longer true in 6.0, and without
this change, MTC will cause a locate at startup
2020-03-13 13:52:38 -06:00
26b6b8d840
mingw/gcc-8: use glib's stat(), drop hardlink support 2020-03-13 01:21:51 +01:00
5b113c9c5b
Fix un/bypassing Aux-send panners
This fixes issues with send-panner bypass whenever the
target bus input-count is different from the send's channel count.

--

Previously, when the aux-send panner was bypassed, data was
copied using BufferSet::read_from().
This sets the channel count of the output buffer set (here: mixbufs)
to match the input (here: bufs).

e.g. mono to stereo, "1 in -> 2 out" out was changed to "1 in -> 1 out".

Un-bypassing the panner later does not reconfigure the I/O.
Mixbufs remained mono, and PannerShell::run() "1 in -> 1 out"
does nothing. The panner was effectively not functional.
2020-03-12 02:23:49 +01:00
33f85b094b
NO-OP: reduce scope 2020-03-12 02:13:27 +01:00
dd30b8b31e
NO-OP: whitespace 2020-03-12 01:58:50 +01:00
96daa4036a fix apparent free-ordering issue reported in #7926 2020-03-11 08:50:29 -06:00
d979c9d09c
Fix win32, mingw/gcc-8.3 builds 2020-03-11 07:20:00 +01:00
7202f3ad28
Add Lua binding to query a region's playlist 2020-03-10 23:54:31 +01:00
6569653a3d
Add Lua bindings to access region-fades 2020-03-10 23:10:51 +01:00
ebd743d795
NO-OP: use set/clear_flag() API instead of set_flags() 2020-03-10 20:55:50 +01:00
2b17ded785
Add convenience ControlFlags operators
Explicit functions for operator&=~ and operator|=
2020-03-10 20:55:50 +01:00
bc638c0496 create transport master in the factory method if the engine is running
This fixes the GUI thinking there is no port because it is notified about the TM before the port
is created
2020-03-10 11:56:00 -06:00
aad60e37b9 small adjustments to TransportMaster API to better accomodate the "ignore/accept commands" concept 2020-03-10 11:39:39 -06:00
843907654c do not reset default transport speed when stopping to prepare for a locate 2020-03-10 09:16:39 -06:00
Nikolaus Gullotta
5dcac21092
Adhere to Ardour style guide - 810b2fb78d 2020-03-10 09:41:50 -05:00
John Emmas
4e137d5cbb Avoid using 'boost::aligned_storage' which is known to be problematic in MSVC builds:-
https://www.boost.org/doc/libs/1_65_0/libs/type_traits/doc/html/boost_typetraits/reference/aligned_storage.html
2020-03-10 12:28:52 +00:00