Paul Davis
76bd2a77d7
add DSP/processing statistics to Routes and Processors
2021-06-10 10:11:40 -06:00
Paul Davis
6b07926b03
remove debug output
2021-06-10 10:11:40 -06:00
Paul Davis
0dddd75429
change StoringTimer to be thread safe and use fixed char strings to identify timing points
...
This may not be at all useful, but the existing implementation was completely useless because of a lack
of thread safety
2021-06-10 10:11:40 -06:00
Robin Gareus
7ce43739e8
Tweak sched priorities use given and 4 levels below.
2021-06-10 14:38:45 +02:00
Robin Gareus
8c0ef7bd62
Add support for CPU DMA latency requests
2021-06-10 04:30:06 +02:00
Robin Gareus
2e574a011a
Amend 6e82f3669f, set BaseUI thread priority early on
...
This is conceptually clearned compared to doing it as
part of the session.
2021-06-10 04:30:03 +02:00
Robin Gareus
6e82f3669f
Correctly set ctrl-surface thread priority
2021-06-10 03:17:55 +02:00
Robin Gareus
89a0040f1b
Allow to override rt priority for internal backends
2021-06-10 03:17:53 +02:00
Robin Gareus
2c8916310a
Consistent env variable naming (see also 6801c2cac2)
2021-06-10 03:17:49 +02:00
Robin Gareus
444af7b3e8
Fix client_real_time_priority() calls (backend vs engine)
2021-06-10 03:17:45 +02:00
Robin Gareus
0e570d15ae
Amend 3a7ea6b, do not kill child after 10 sec w/o output
...
This fixes video-timeline issues (harvid has no output), as well
as ALSA device reservation and xjadeo (when idle).
2021-06-08 23:23:31 +02:00
Robin Gareus
445d5a75d0
NO-OP: use reference instead of iterator
2021-06-08 19:26:40 +02:00
Robin Gareus
23e3b6f6a8
Amend previous commit (remove debug instrumentation)
2021-06-08 16:49:55 +02:00
Robin Gareus
e8130c1f1b
Optimize input-metering
...
Rely on previously collected I/O port-list, skip expensive call
to get_physical_inputs() and rely on RCU port list alone.
Also skip port_is_mine() test in optimized builds.
2021-06-08 16:43:26 +02:00
Paul Davis
b75a37abdb
fix arguemnts to transport call in shared control surface code for transport_play()
2021-06-08 08:32:19 -06:00
Ben Loftis
f4d4dddbeb
Paste Mode: overwrite-paste, naive implementation using rec-mode (for testing)
2021-06-08 08:33:48 -05:00
Ben Loftis
1c9bb9ab41
Playlist UI tweaks: refactor PlaylistSelector (life-cycle, code-cleanup)
...
* You can now show a selector for each track, rather than one global dialog
* Removed the 'cancel' button: it was too easy to unintentionally revert your selection
* Correctly sort and name new playlists when they are added or renamed from the P menu
* Fix problem where list contents disappeared when changing desktops (on_unmap_event)
2021-06-08 08:33:48 -05:00
Ben Loftis
c2fb85e37e
Cruft removal: behavior of Region List has changed; these functions are deprecated (libardour)
2021-06-08 08:33:48 -05:00
Robin Gareus
b0db646029
Refactor input port monitoring
...
* avoid memory allocation (remove std:set<>&)
* skip nested loop using port-names as IDs
However this adds a bit of extra cost in case input ports are
monitored: get_port_by_name() and get_buffer()
2021-06-08 14:34:57 +02:00
Robin Gareus
bed992d55f
Minimize false sharing of MPMC queue variables
2021-06-07 23:40:29 +02:00
Robin Gareus
5cec55da2e
Micro-optimization: std::atomic<> vs glib
...
glib atomic operations include a complete act as a full
compiler and (where appropriate) hardware memory barrier.
std::atomic<> allows dedicated acquire and release barrier
semantics which are not available with glib.
2021-06-07 20:44:29 +02:00
Robin Gareus
1eb6b82b9f
Prevent L1 cache line evicion in MPMC queue
...
This reduces cache coherence overhead of the queue
2021-06-07 16:05:42 +02:00
Robin Gareus
ecb992de64
Remove custom generic plugin UIs (a-eq) 2/2
2021-06-04 01:43:29 +02:00
Robin Gareus
bc4ef3ff3d
Update weakjack, alternative macOS libjack paths
...
see also https://github.com/x42/weakjack/pull/13
2021-06-02 17:42:01 +02:00
Ben Loftis
6cf1083cb6
Playlist UI tweaks: add function playlists_for_pgroup() (libardour)
2021-06-01 17:55:09 -05:00
Robin Gareus
63629c0a91
NO-OP: whitespace
2021-06-01 19:40:21 +02:00
Ben Loftis
0e86e3337c
Playlist UI tweaks: relax requirement that playlists names must be unique (libardour part)
2021-06-01 09:39:50 -05:00
Ben Loftis
932b07b7b0
Playlist UI tweaks: assign a pgroup when a playist is first recorded to
...
* this solves the problem where the first 'take' was not grouped because
the user has not explicitly created a take for the group yet
2021-06-01 09:39:50 -05:00
Ben Loftis
28aa22e11a
Playlist UI tweaks: Add pgroup_id field to playlists, to associate playlists created in the same operation (libardour)
2021-06-01 09:39:50 -05:00
Ben Loftis
f6d2229c47
Playlist UI tweaks: Update PlaylistSelector (libardour part)
...
* Add an option to use a playlist without stealing its ownership. (libardour)
* Tracks emit PlaylistAdded when a new playlist is created either by copying or by creating a new empty pl
2021-06-01 09:15:54 -05:00
Ben Loftis
7b2854b2fb
Prefer storing playlist-IDs for frozen tracks; but if none is provided then search by name
...
* no version-check should be necessary because when opening an old session,
playlists can be looked-up by discrete names and will be tracked by ID thereafter
2021-06-01 09:14:07 -05:00
David Robillard
71a414b4b0
Remove unused function (Wunused-function)
2021-05-30 20:09:35 -04:00
David Robillard
8d471e6761
Remove extraneous parentheses (Wparentheses-equality)
2021-05-30 20:09:35 -04:00
David Robillard
74e21e942e
Remove unused variables (Wunused-variable)
2021-05-30 20:09:35 -04:00
David Robillard
1b4aaea92a
Remove unused private fields (Wunused-private-field)
2021-05-30 20:09:35 -04:00
Robin Gareus
c57c230dfc
Fix loading old session w/missing playlist #8727
2021-05-30 18:54:45 +02:00
Robin Gareus
df0571892f
Coreaudio: fix duplicates in device list
...
This is an edge-case only, some devices may
dis and reconnect with different IDs.
2021-05-29 17:54:39 +02:00
Damien Zammit
bdb5aec1cc
ptimport: Fix crash when imported session has zero audio tracks
2021-05-29 12:54:10 +10:00
Paul Davis
3d15b61e37
fix Playlist::remove_gaps() for ExternalOverlap regions; add per-gap callback
2021-05-28 17:43:33 -06:00
Paul Davis
c8c506f702
fix bug in Locations::ripple()
2021-05-28 17:43:33 -06:00
Paul Davis
9766132a53
libardour: add Locations::ripple()
2021-05-28 17:43:33 -06:00
Robin Gareus
37acb07752
Fix previous commit
2021-05-28 22:51:12 +02:00
Robin Gareus
0f25086446
Misc fixes pertaining to plugin-scanning
2021-05-28 22:03:10 +02:00
Robin Gareus
79b50aebcd
Ignore all export xruns while not rolling
...
This fixes false positives with some backends, notably JACK2.
2021-05-28 21:22:10 +02:00
Paul Davis
fecce7c333
libardour: initial implementation of Playlist::remove_gaps()
...
This is probably a little naive and may need extending to cover cross-track scenarios
2021-05-28 12:35:30 -06:00
Paul Davis
3e56eedf11
libardour: add X_() macros around several Source XMLNode state property names
2021-05-27 17:17:40 -06:00
Paul Davis
d4bc60a388
libardour: infrastructure for cue-marker-only source undo/redo
2021-05-27 17:17:40 -06:00
Paul Davis
83100de133
NOOP: rearrange arg decl to follow conventions
2021-05-27 17:17:40 -06:00
Paul Davis
ca44f54ed6
libardour: small changes to cue marker API to return bool from Source modification methods
2021-05-27 17:17:40 -06:00
Todd Naugle
1a1e67f595
Use Posix style return values for sem wait when on windows.
...
0 on success, -1 on error
2021-05-27 15:17:15 -05:00