13
0
Commit Graph

28219 Commits

Author SHA1 Message Date
1af123465c
Tweak session load
Listen positions are already correctly set when the route state
is restored. The Route directly uses the Config.

This skips duplicate calls to re-configure all processors on all Routes
during RCConfiguration::map_parameters() on session-load, twice
(pfl-position, listen-position)
2019-03-06 01:04:29 +01:00
883ee9c2a0
Allow to call set_state() on existing routes
Delaylines are not saved in the XML and internal-return is an
invisible processor not explicitly re-added when the state is restored.

They are [re]inserted during Route::setup_invisible_processors().
So this method need to be called after restoring processor state
(indirectly via configure_processors_unlocked as needed).

PS. During route creation this call happens explicitly and on session load
hookup_io() -> Route::output_change_handler() implicitly sets this up.
2019-03-06 00:57:49 +01:00
2bfe0c6ff7
Properly map MonitorSection state on session load 2019-03-06 00:47:59 +01:00
6a7750a55d
Tweak, optimize route setup
Speed up route creation: add_processor() takes a process-lock
and calls configure_processors() but this is done explicitly at the
end of init() already.
2019-03-06 00:03:46 +01:00
8b5437301b
Close stderr of child processes on MacOS
This fixes a bug on some modern mac systems. Related to
setup_logging() changing stderr to use ASL and write to com.apple.console.

When a forked application writes to stderr while ASL is used,
the child is terminated for some reason.
2019-03-05 22:52:53 +01:00
a390d8d3ca
Use enum for exec stderr parameter (2/2) 2019-03-05 22:49:18 +01:00
e1ffe7857f
Use enum for exec stderr parameter (1/2) 2019-03-05 22:49:15 +01:00
fdf74cf850
Enable de-click in disk-reader
This breaks auto-return and other post-transport locates until
such transport-states wait for de-click before seek().
2019-03-05 22:49:08 +01:00
f1dfc6d2a2 do not disconnect MidiPortSelection-flagged ports from everything when (MIDI track) selection changes
If the user manually connects such a port to something, then it is
up the user to disconnect it too
2019-03-04 18:23:06 -07:00
2cf57e9257
Fix recursive WriteLock crash due to signal emission
Route::processors_changed() signal connects to a same thread session-slot
Session::route_processors_changed() which can end up iterating over
Routes and Processors to re-calculate latency.
This takes a ReadLock after WriteLock, which eventually leads a duplicate
unlock and segfault.
2019-03-05 00:25:53 +01:00
bb6408d553
Make it compile again
ISO C++ forbids applying 'sizeof' to an expression of function type
2019-03-04 21:42:21 +01:00
d3657a8944 Add/remove source(s) in our MSVC project (audiographer) 2019-03-04 12:16:47 +00:00
6dad858620 remove double assignments and one debug trace output; tweak second debug trace output 2019-03-03 13:19:01 -07:00
7c820af42f debug trace output tweaks 2019-03-03 13:17:42 -07:00
cd3c72bffe remove debug output 2019-03-03 13:17:30 -07:00
033699a4cd remove conditional surrounding wait-for-master-to-catch-us logic 2019-03-03 13:16:30 -07:00
64b6ea4341 remove debug output 2019-03-03 13:15:12 -07:00
1568cd4411 do not initialize LTC timecode rate from session FPS 2019-03-03 11:39:56 -07:00
5b0d98abcd fix decision about sending MTC to be based not just on whether the transport master is locked, but whether it is external 2019-03-03 10:27:38 -07:00
564796b6c0 audioengine skip should trigger full LTC_Slave::reset(), not just feed silence to the decoder 2019-03-03 10:26:48 -07:00
920fc66540 LTC_Slave: count frames since reset 2019-03-03 10:26:22 -07:00
18f75c9f8a debug trace output tweaks (including avoiding stderr/stdout issues) 2019-03-03 10:24:02 -07:00
42f93487b5 LTC_Slave::reset() should change _current.speed back to zero 2019-03-03 10:22:22 -07:00
a000faaa47 NO-OP: brace position 2019-03-03 10:21:07 -07:00
cbc93c3487 NO-OP: brace position 2019-03-03 10:20:49 -07:00
7fd05ff051 expand scope of LTC_Slave::reset() to include more object state 2019-03-03 10:20:27 -07:00
5146d93853 fix semantics of LTC_Slave::locked() - we must have detected FPS to be considered locked 2019-03-03 10:19:45 -07:00
d2d349a30b fix initialization order 2019-03-03 10:19:06 -07:00
477628a884 rename LTC_Slave::prev_sample to prev_frame, correcting s/frame/sample/ changes 2019-03-03 10:17:46 -07:00
86cac37680 removed _locked property from TransportMaster (it's a method, not a property) 2019-03-03 10:12:08 -07:00
84aedbb532 remove ill-conceived use-session-timecode-format option 2019-03-03 09:59:05 -07:00
e791966f75
Add GUI option to include session-meta-data when exporting mp3 2019-03-02 14:39:10 +01:00
a33f52bacc
FFmpeg/MP3 export supports tagging 2019-03-02 14:38:19 +01:00
8b2a8fa42a
Remove another unused include 2019-03-02 14:32:54 +01:00
9c1801fedb
Show VCA pane when a new VCA is created. 2019-03-01 19:02:38 +01:00
9a8464ff40
Add a signal to indicate VCA creation
As opposed to VCAAdded this is not emitted when re-loading a session
and only emitted when a user creates a new VCA.
2019-03-01 18:56:56 +01:00
f098a6fb06
Revert "Show VCA pane whan adding a VCA"
This reverts commit 9a0260148d.
2019-03-01 18:44:52 +01:00
9a0260148d
Show VCA pane whan adding a VCA 2019-03-01 18:00:11 +01:00
6be7fa2d45
Prefix an asterisk to indicate plugin replication
This saves space compared to "(NxN) ", especially with narrow
mixer-strips
2019-03-01 17:48:46 +01:00
6daba61ab2
Replicated plugin instances may or may not be mono 2019-03-01 17:43:44 +01:00
94d3da7e09
GUI updates to handle monitor-section changes
This fixes various MS related action sensitivity issues, as well
as action-states.

Also manually adding a monitor-section to a session now always
immediately shows it, regardless of prior ToggleMonitorSection
visibility.
2019-03-01 16:51:08 +01:00
9836304e3e
Update scripts, monitor-section API change 2019-03-01 16:46:08 +01:00
1854a72b80
Revert Monitor-Section to be per session
This partially reverts 639dff3a7c. When loading a session,
the monitor-bus that was saved with the session is used.

This changes semantics of the monitor-section/config.

Config::set_use_monitor_bus(bool) is used to initiate a change!
Notification about the change is sent asynchronously by
Session::MonitorBusAddedOrRemoved

It is no longer possible to directly call add/remove_monitor_section()
and leave the session + config in an inconsistent state.
2019-03-01 16:45:42 +01:00
6064c75fd5
NO-OP: whitespace 2019-03-01 16:02:08 +01:00
63200eab05
Don't use c99 (amend 959947e7f8) 2019-03-01 16:02:08 +01:00
9079f213c2 Add/remove source(s) in our MSVC project (gtk2_ardour) 2019-03-01 08:40:18 +00:00
93d23f7e49 Add/remove source(s) in our MSVC project (libardour) 2019-03-01 08:39:50 +00:00
bc8286c7eb simplifications to the logic and additional comments for code that handles auto-return at transport stop 2019-02-28 17:18:28 -07:00
0df8552627 auto-return is still available if using JACK transport 2019-02-28 17:18:28 -07:00
47d143a45d
Remove unused RulerType 2019-03-01 00:52:36 +01:00