226dadbd19
Further reduce DSP load of debug builds
...
In all years of using these assert()s never triggered. Besides
there are valid_port() tests in other strategic locations that
are not periodically hit in realtime context.
2022-05-06 02:04:55 +02:00
96c138c985
ALSA: prevent excessive slave-device latency updates on underrun
2022-05-04 05:57:52 +02:00
Mads Kiilerich
5b7431f243
wscript: drop unnecessary trailing ";"
2022-04-09 12:16:41 +02:00
Mads Kiilerich
bac32a8c2d
wscript: consistently use 4 spaces for indentation
2022-04-09 12:16:40 +02:00
Mads Kiilerich
06f8936a73
wscript: remove trailing whitespace
2022-04-09 12:16:37 +02:00
luz paz
3d395585c1
Fix various typos
...
Found via `codespell -q 3 -S *.po,./share/patchfiles,./libs -L ba,buss,busses,doubleclick,hsi,ontop,ro,seh,siz,sord,sur,te,trough,ue`
Follow-up to 364f2f078
2022-04-08 19:51:02 +02:00
Mads Kiilerich
8bb91099c5
wscript: drop configure statements already present in the top level wscript
...
Avoid repeated pointless configure messages like:
Checking for 'g++' (C++ compiler!) : /usr/lib64/ccache/g++
Checking for 'gcc' (C compiler) : /usr/lib64/ccache/gcc
2022-01-22 22:19:03 +01:00
Houston4444
36a2fb1ba8
JACK: re-create backend when re-connecting to the server
...
This updates the client-name when re-connecting to the
server, which is apparently useful with NSM.
2021-12-04 14:39:22 +01:00
a393f75694
Use shared port engine MIDI event compare operator
2021-11-30 19:41:39 +01:00
83225886a1
Fix gcc4 builds ('EEXIST' was not declared in this scope)
2021-11-15 19:12:00 +01:00
79330f909e
Work around connection loss when re-starting JACK backend
...
If connecting ports using the port-engine fails,
ardour forgets the connection.
Internal backends only produced an error if a port was already
connected, when using ::connect (handle, other), but
ignore already existing connection when using port-names.
Various ports are connected twice when the engine connects
at session load. This worked fine for as long as the engine
was never stopped (saving the session asks the port-engine),
but failed when the engine went away and internal representation
is used.
2021-11-01 23:11:41 +01:00
8bada4b5e1
remove public ::bbt_at (INTEGER) methods, because of superclock_t/samplepos_t confusion
...
libtemporal still needs ::bbt_at (superclock_t) fairly often so retain it as a private method, but public
interfaces take either Beats or timepos_t
2021-08-13 12:51:35 -06:00
bed76798f3
manual fixups after rebase against master (general libs edition)
2021-08-13 12:51:31 -06:00
79763893b3
remove/hide Session::tempo_map() and use TempoMap::use() instead (thread local shared ptr)
2021-08-13 12:51:30 -06:00
f67029bd02
random commit to facilitate trivial move of work from laptop back to main system
2021-08-13 12:51:29 -06:00
f4490f54c5
change Timecode::BBT_Time to use Temporal namespace, plus a couple of other minor changes to enable compilation
...
This still uses the tempo map object in libs/ardour, not the new one in libs/temporal, and isn't likely to be functional
(though it could be)
2021-08-13 12:51:28 -06:00
38a4bb6736
Fix prev commit (properly stop pulse)
2021-07-21 05:56:42 +02:00
03a17df68c
Pulseaudio: tweak freewheel recovery
...
Always cork stream before calling pa_stream_flush.
2021-07-21 05:03:54 +02:00
bf43c8d2d4
Set thread names
2021-06-30 17:15:27 +02:00
0f6e34a697
ALSA: fix idempotent device name setup
...
This fixes an edge case where available buffersizes are
not not correctly set because the device info was never queried.
2021-06-30 04:10:48 +02:00
a9f285b82b
debugging timing stats by showing how max values are computed
2021-06-29 09:46:46 -06:00
9d88f370ae
debug windows RunLoop timing stats
2021-06-29 09:25:38 -06:00
c2f7b12b0d
window compilation fix
2021-06-26 19:02:47 -06:00
fb562ddb61
window compilation fix
2021-06-26 19:02:13 -06:00
74538b7114
window compilation fix
2021-06-26 18:58:23 -06:00
a2974b0c0b
portaudio: improved compilation error fix
2021-06-26 12:56:49 -06:00
8bc4464309
portaudio: compilation error fix
2021-06-26 12:51:54 -06:00
7e858b9bda
portaudio: add standardized DSP statistics to portaudio backend (uncompiled)
2021-06-26 12:32:23 -06:00
74c93f3ff3
coreaudio: fix dsp stats collection
2021-06-26 11:42:18 -06:00
c7bed1320e
adding DSP stats to coreaudio backend (uncompiled)
2021-06-26 11:25:07 -06:00
ad9ac0911e
remove some timing stats that it seems unlikely we will use
2021-06-15 14:03:55 -06:00
e511cd2cb7
JACK backend: "fix" RunLoop timing
2021-06-13 11:11:03 -06:00
a5f7c793e3
add a new "Run Loop" timing stats for ALSA and JACK backends
2021-06-13 10:28:51 -06:00
95215ff405
JACK backend: avoid deadlock if a port is unregistered that is not known to Ardour
2021-06-13 07:59:14 -06:00
4c76ff503f
measure backend process callback duration in ALSA backend
2021-06-12 15:00:46 -06:00
8afc994177
add some DSP stats to the JACK backend
2021-06-12 09:20:28 -06:00
1777cf8f69
add some initial timing points for dsp stats
2021-06-11 18:55:24 -06:00
a67a475480
dramtically improve performance of ::get_port_by_name() for JACK backend
2021-06-11 10:41:41 -06:00
2c8916310a
Consistent env variable naming (see also 6801c2cac2
)
2021-06-10 03:17:49 +02:00
bc4ef3ff3d
Update weakjack, alternative macOS libjack paths
...
see also https://github.com/x42/weakjack/pull/13
2021-06-02 17:42:01 +02:00
8d471e6761
Remove extraneous parentheses (Wparentheses-equality)
2021-05-30 20:09:35 -04:00
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
14961e6bc7
ALSA backend: code cleanup and scoping and indent
...
This is combination of clang-format and manual edits.
The latter mainly to add braces and reduce scope of variables.
2021-05-16 00:49:06 +02:00
6801c2cac2
ALSA: add option to prefer interleaved access
2021-05-15 23:10:14 +02:00
e2bac27885
Remove unused API
2021-05-15 23:09:21 +02:00
5957e14259
Remove unused #include<> (2/2)
...
PBD::stacktrace() is not used nor needed by default.
It should be used sparingly.
2021-05-05 17:57:16 +02:00
438b1e5eab
Cont'd work to improve macOS rt priority
2021-05-02 20:24:10 +02:00
8661aa1809
ALSA: Fix swapped systemic latencies
...
This went unnoticed since measured systemic latency
is equally distributes between input and output.
2021-04-11 15:15:17 +02:00
cc7b8b1bc5
gcc-11 compat, volatile atomic variables (1/2)
...
"While 'atomic' has a volatile qualifier, this is a historical
artifact and the pointer passed to it should not be volatile."
Furthermore "It is very important that all accesses to a
particular integer or pointer be performed using only this API"
(from https://developer.gnome.org/glib/2.68/glib-Atomic-Operations.html )
Hence initialization of atomic variables is changed to also use
this API, instead of directly initializing the value.
This also fixes a few cases where atomic variables were
accessed directly.
see also libs/pbd/pbd/g_atomic_compat.h
2021-03-22 15:30:07 +01:00
John Emmas
a2b1482cad
Fix a problem with ASIO buffer sizes on Windows
...
PortAudio uses what it calls 'default suggested latencies' but in callback streaming mode, they can result in wildly inaccurate buffer sizing (e.g. the user requests a buffer size of 128 but PortAudio actually instructs ASIO to use a much bigger size).
What we do now is to improve PortAudio's suggested latency calculation by basing it on the actual buffer size requested by the user.
2021-03-18 16:12:28 +00:00