1dedadd03f
Remove c-pointer Controllable* registry
2019-03-23 01:42:03 +01:00
baed14c17e
Prepare PBD::Controllable API cleanup (remove only registry user)
2019-03-23 01:41:55 +01:00
9a1c22d7e1
Remove unusued API Create/Delete Binding
2019-03-23 01:28:23 +01:00
430e51065c
Update cAutomationControl values when copying state
...
This fixes a bug that can result in inconsistent session-state when
copying plugin state from one plugin to another (via drag/drop
ProcessorBox::object_drop, LINK).
The underlying plugin state and settings are copied, port _shadow_data
is updated, and ::get_parameter() shows the correct new value.
However the Controllable was not updated. On Session save/restore
the value may have be lost or was inconsistently restored.
2019-03-22 14:12:30 +01:00
e398656940
Prevent crashes when copying LV2 plugin state
...
LV2 plugin state-loading is generally safe to perform concurrently
with running the plugin (as per LV2 spec). However concurrent run()
is not.
2019-03-22 14:09:03 +01:00
5372f9182d
NO-OP: reduce scope
2019-03-22 14:06:51 +01:00
391cb44dc6
Add ultra-insane CBR 320kbit mp3 quality
2019-03-21 21:58:08 +01:00
fb74b9e015
working but still confusing fix for ensuring that playlist shared-with data is correct when duplicating tracks.
...
Confusing because orig_track_id is still being switched to the
NEW track, and shared_with refers to the OLD one
2019-03-20 21:16:57 -07:00
02684009eb
safety fix, in case non-Route stripable is selected
2019-03-20 20:50:29 -07:00
df90dbd7bb
sort track selection into presentation order before duplicating.
...
This ensures that new tracks appear in the correct order (#7549 )
2019-03-20 20:42:02 -07:00
2c7b632824
fix Session::new_route_from_template() to use playlist IDs and not names. This also fixes #7674
2019-03-20 20:09:17 -07:00
851388e0b4
remove "rename_playlist" argument from Route::set_name_in_state().
...
We no longer find playlists by name when constructing tracks, so
the name of the playlist is not relevant
2019-03-20 20:02:07 -07:00
acbd12c885
fix all surfaces' available action menus
...
Note: this replicated code is ridiculous
2019-03-20 14:23:23 -07:00
cf2fa0ae84
fix Mackie available action menu
2019-03-20 13:05:35 -07:00
51df70b405
ActionManager::get_all_actions() no longer includes <Actions> in the paths it returns, part 3 (GUI)
2019-03-20 11:15:47 -07:00
94d859e30d
ActionManager::get_all_actions() no longer includes <Actions> in the paths it returns, part 2 (surface support)
2019-03-20 11:15:34 -07:00
df29e57cb4
ActionManager::get_all_actions() no longer includes <Actions> in the paths it returns, part 1
2019-03-20 11:15:22 -07:00
ed97a290db
make ::ardour_action_name() private to Bindings, because nothing else uses it and it semi-exposes the <Actions> nonsense
2019-03-20 11:12:06 -07:00
fd3b8f79af
do not create a (throwaway) playlist during track creation
2019-03-19 15:43:06 -07:00
50604d83de
Fix incorrectly saved un-used playlists
...
This addresses issues with session-cleanup and region-cleanup in
some sessions.
The root-cause why some unused playlists were saved in the session XML
under <Playlists> and not <UnusedPlaylists> is not known.
Early 6.0-pre did incorrect reference counting, but also older sessions
had this issue. Perhaps due to ambiguities of matching playlists
by name in 5.x or session-format changes 3.x .. 5.x.
2019-03-19 22:05:06 +01:00
c2e0fe8b3f
Add some more playlist Lua bindings
2019-03-19 22:05:06 +01:00
21e2b353c1
Add an exception handler for access_action() used by control surfaces and Lua.
2019-03-19 11:52:19 -05:00
957393c435
Compiler fix for 201110.
2019-03-19 11:24:26 -05:00
4667ca962b
Mixer/show-editor is now Common/show-editor
2019-03-19 10:42:05 -05:00
21110444c1
use a new unhandled (thus far) exception rather than ::abort() when an action is undefined
2019-03-19 08:29:30 -07:00
a3986f703d
reorder #include directives
2019-03-18 22:58:24 -07:00
842faa5b6e
Add example script to list Playlists
2019-03-19 05:32:12 +01:00
1172ff4948
Add Lua bindings for SessionPlaylists
2019-03-19 05:27:34 +01:00
1f7db60389
Add convenience methods (mainly for scripting)
2019-03-19 05:27:30 +01:00
c09c7bab52
Update GUI, use Session::playlists() getter (2/2)
2019-03-19 05:14:40 +01:00
cf11e11fc5
Remove global Session::playlists variable, use getter method (1/2)
...
Global variables that can written by anyone are to be avoided.
This also simplifies exposing SessionPlaylists as Lua bindings.
2019-03-19 05:14:00 +01:00
ab79165893
Fix Playlist refcount when deleting track
...
Both Disk-reader and Disk-writer use the same playlist.
ARDOUR::Track::use_playlist() sets it for both Disk-IO processors,
so it needs to be released by both on destruction.
2019-03-19 03:08:06 +01:00
7054b2ffc7
switch remaining use of Common/ToggleMixerList to Mixer/ToggleMixerList
2019-03-18 10:58:02 -07:00
7d71729237
compute correct size for working buffers used by compound regions during disk refills
2019-03-18 07:39:23 -07:00
b53d80a7d4
make PlaybackBuffer<T>'s power-of-two size computation available to others
2019-03-18 07:39:23 -07:00
4706201425
NO-OP: Use API to set/test state-of-the-state
2019-03-18 15:36:58 +01:00
bd9d848058
remove debug output
2019-03-17 22:22:09 -07:00
09fd380948
Avoid calling rt-methods from non-rt context
...
Since upcoming state-machine transitions are done in rt-context
via ARDOUR::Session::process_event () they should all in rt-context.
set_session() is called from the UI thread (and the process-lock wasn't
even taken)
2019-03-18 06:15:12 +01:00
e545e66911
Temporary change to make auto-return work with broken transport-logic
...
Revert this once transport state machine waits for de-click!
This causes audible-clicks on stop, but prevents audible artifacts
on LocateRoll with the current transport-control-logic.
2019-03-17 18:38:07 +01:00
66103be9f2
Speed up session deletion
...
No need to reconfigure routes due to removal of monitor or aux
send/return. The processors will be removed with the route.
2019-03-17 17:35:10 +01:00
3fa3437c38
Remove unneeded calls to configure_processors during session-load
...
Those are superseded by b890cf73ad
, which is done after
all IOChanges have been processed.
2019-03-17 17:32:06 +01:00
b890cf73ad
Prepare to configure procs only once - fix missing panners
...
During session load, all earlier configure_processors() calls
were useless and not taking I/O into account! The Delivery ::pan_out()
needs _output I/O ports in order to correctly report the correct
port-count!
This worked in earlier versions because Config->map_parameters()
triggered [two] processor re-configs via ::listen_position_changed().
That behavior was changed in 1af123465c
2019-03-17 17:19:02 +01:00
b14fdbb516
NO-OP: prefer to use API to check session-state
2019-03-17 17:04:45 +01:00
2f09f72b3d
Amend 883ee9c2
, setup required invisible processor
...
This fixes a potential silent master-bus when re-loading a session
("mains_out" may be skipped).
2019-03-15 15:54:07 +01:00
cec5ea102f
Allow to load presets via double-click
2019-03-15 15:29:36 +01:00
7655999889
Add example script to save instrument plugins on save
2019-03-15 01:38:49 +01:00
12fd048358
On selection, move/scroll VCA into view
2019-03-14 01:29:10 +01:00
41e0255b97
Unused skeleton of the transport state-machine
...
Simple test/example code. Eventually this is to replace
Session::process_event() and Session::realtime_*() methods
are to become transition actions.
2019-03-14 01:11:10 +01:00
871bd6e0f3
NO-OP: re-order code, collect realtime transport actions
2019-03-13 16:26:17 +01:00
57d3514946
Another fix for region-equivalency pref.
2019-03-12 12:28:39 -05:00