Age | Commit message (Collapse) | Author |
|
Note that this is done at the GUI level, might need to double check if there are
other paths into a "save" that should be covered. Control surfaces use the action, but
Lua comes to mind
|
|
after successful save
|
|
|
|
|
|
|
|
|
|
On recent Mac systems (Catalina) OpenGL is slower compared to
directly using GTK's NSView. Furthermore when compiled on
Catalina, and running on a system with a Retina screen, the initial
size of the canvas may be wrong:
libs/gtkmm2ext/nsglview.mm:175:1: warning: method possibly
missing a [super reshape] call [-Wobjc-missing-super-calls]
This is not an issue when running versions compiled on older systems.
|
|
removal of tape tracks removed an intermediate argument in the argument list; presence of default args for the
last two arguments and implicit conversion from int->bool prevented the compiler from complaining
about any existing calls.
This supplements/extends a54b000a70
|
|
|
|
|
|
|
|
|
|
|
|
|
|
0.05 seconds per track
Leave debug output in place for now to get some numbers from any testers
|
|
|
|
|
|
|
|
|
|
|
|
tape-rec icon was removed in a4d7b45fe, also re-order icons to
retain grouping per line when using the icon render util
|
|
|
|
|
|
|
|
Session::plan_master_strategy()
|
|
|
|
|
|
|
|
|
|
|
|
|
|
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
|
|
|
|
Eventually this is to replace a literal name "hidden" that is
currently used as hack throughout Ardour's codebase.
|
|
|
|
|
|
|
|
correct length
Without this change, such regions end up with insanely large (though legal) lengths
|
|
Not all is working right yet, however
|
|
|
|
|
|
|
|
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.
|
|
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.
|
|
|
|
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).
|
|
|
|
|
|
This also consolidates code to test if a processor can be frozen
from various places.
|
|
|