Robin Gareus
e99fe62137
Optimize default case: no delay
2019-10-02 01:54:08 +02:00
Robin Gareus
ec2628f2ca
Fix thinko in cd5f70e69a (delayline buffer resize)
...
The delay-time itself can change arbitrarily, but the buffer-size
never shrinks.
If the buffersize grows it means that the new delay is longer than
the current one (or at least as large as any pending, not yet
active delay).
This is important for the mechanism that adjusts the read-pointer
to the new buffer-size.
2019-10-01 13:42:34 +02:00
Robin Gareus
07905f0776
Update Fluidsynth to v2.0.7
2019-09-30 23:12:32 +02:00
Robin Gareus
ecc2597870
Fix remaining doxygen warnings (!)
2019-09-30 21:03:29 +02:00
Robin Gareus
bfec73b8c3
NO-OP: whitespace, indent
2019-09-30 21:03:20 +02:00
Robin Gareus
feb5d1261e
Fix use of doxygen documented parameters in running text
2019-09-30 06:30:11 +02:00
Robin Gareus
ee54b13d6d
Fix some more doxygen warnings
2019-09-30 05:33:44 +02:00
Robin Gareus
6c83b6f47d
NO-OP: whitespace (use tab to indent)
2019-09-30 04:52:20 +02:00
Robin Gareus
959a37144b
Fix a few hundred doxygen warnings..
...
There are still over a hundred left, but this addresses many already.
In particular @param references to undocumented parameters.
Most notably in audio_backend.h
2019-09-30 04:45:59 +02:00
Robin Gareus
0daee87803
Ardour::IO is not latent by itself
2019-09-29 18:25:14 +02:00
Robin Gareus
f417bc07d0
Fix port-insert default latency
2019-09-29 18:25:14 +02:00
Robin Gareus
cd5f70e69a
Fix issues when delay-buffers are re-allocated
...
Previously buffers were dropped, and data was not copied to
newly allocated buffers. As side-effect the read-offset was not
adjusted either.
The distance between read and write-pointer needs to be maintained
(delay does not change). This needs to be accounted for, when the
buffer increases while read->write wraps around the old (smaller)
buffer. Previously this triggered an assert (in line 180)
2019-09-29 17:00:27 +02:00
Robin Gareus
1c680f116a
Emit signal when session latency was updated
2019-09-29 01:27:35 +02:00
Robin Gareus
16066786e3
Add Lua bindings related to latency compensation
2019-09-29 01:26:54 +02:00
Robin Gareus
430dae6250
Add Signal to indicate global delay compensation status
2019-09-29 01:26:52 +02:00
Robin Gareus
e1378e7be5
Handle case where an audio-port is added to a MIDI only delayline
2019-09-27 14:50:40 +02:00
Paul Davis
903c3ec5a0
rename BufferSet::get* to BufferSet::get_available*
...
This tries to make it clear what the BufferSet limit semantics really are
2019-09-26 18:39:56 -06:00
Paul Davis
f5f452bf9c
Don't try to process MIDI input in a DiskWriter if it has no _midi_buf
...
... which implies it has no MIDI input port(s) either.
This fixes behaviour caused by BufferSet::get...() returning a valid MidiBuffer because it was
based on using the _available count within the BufferSet, even though the _count value
indicated there was no buffer available (to match the I/O configuration of the Route).
2019-09-26 18:39:56 -06:00
Robin Gareus
55e03e5c68
Try auto-start engine by default
...
Ardour auto-connects to JACK already if jackd is running. Let
other users benefit from a similar experience.
2019-09-26 20:15:09 +02:00
Robin Gareus
5395a557d2
Another try at C++11/boost spinlock initialization
2019-09-26 02:48:17 +02:00
Paul Davis
468731c14b
goodbye Profile->...trx
2019-09-25 13:02:31 -06:00
Paul Davis
5ec5bc4523
goodbye USE_TRACKS_CODE_FEATURES and is_tracks_build
2019-09-25 12:16:13 -06:00
Robin Gareus
86187514d9
Some reasonable default config changes
2019-09-25 15:27:02 +02:00
Robin Gareus
99b3bde7f6
Print LADSPA ID with debug message
2019-09-25 15:16:34 +02:00
Robin Gareus
d10c4c651c
Consolidate and extend "well-known" controls:
...
* Add new common strip controls (inspired from Mixbus)
* Remove duplicate documentation, document virtual API only.
* "azimuth" not "azi"
2019-09-25 14:02:45 +02:00
Robin Gareus
09acad190b
Faderport: use well-known-controls API
2019-09-25 14:02:45 +02:00
Robin Gareus
0eebc8b894
Prepare for plugin-control groups
...
This is in preparation to allow groups of "well known" controls,
the parameter ID of which is not known a-priori.
2019-09-24 19:50:54 +02:00
John Emmas
c1abc6e1f1
Add/remove source(s) in our MSVC project (libardour)
2019-09-24 10:19:38 +01:00
Paul Davis
e0069fe0f5
various changes to transportFSM, mostly to try to keep track of whether to roll-after-locate (more) accurately
2019-09-22 12:23:54 -06:00
Paul Davis
21ba7fb844
change the way we clear post transport work as the butler and post-butler methods get things done
...
This avoids the blanket "set_post_transport_work (PostTransportWork(0));" that never really looked right
2019-09-22 12:23:54 -06:00
Paul Davis
2a221ae21b
improve debug output
2019-09-22 12:23:54 -06:00
Paul Davis
0b033a320d
move all bundle-related session methods into their own file
2019-09-22 12:23:54 -06:00
Paul Davis
86b23c0f19
add direct access API for transportFSM and session transport speed
2019-09-22 12:23:54 -06:00
Paul Davis
9f8b8d192b
remove unused PostTransportDuration and enumeration-writing for Adjust(Playback|Capture)Buffering
2019-09-22 12:23:54 -06:00
Paul Davis
228fbd3192
correct problem with some locates that would keep rolling after they are finished
2019-09-22 12:23:54 -06:00
Paul Davis
d7c91b5322
split session-bundled-related methods to their own file
2019-09-22 12:23:54 -06:00
Paul Davis
ba9e6ab869
add const and tweak variable name
2019-09-22 12:23:54 -06:00
Paul Davis
0869f63866
transport master deletion is no longer in parallel with process()
2019-09-22 12:23:54 -06:00
Paul Davis
057ce33563
use internal seek to implement DiskReader::seek() when possible.
...
This still needs a check that the amount of readable data left in the buffe is adequate.
2019-09-22 12:23:54 -06:00
Robin Gareus
99c072660b
NO-OP: whitespace
2019-09-22 04:58:32 +02:00
Robin Gareus
0e68d3f742
Optimize Audio-buffer summing
...
* skip silent buffers
* use vectorized copy
* prefer memset for zero-gain
2019-09-22 04:54:28 +02:00
Robin Gareus
a1c48e0a80
Remove unused method
2019-09-22 04:52:26 +02:00
Robin Gareus
3ae46256c8
Properly initialize BusSendEnable min/max
2019-09-22 04:15:36 +02:00
Robin Gareus
7dc52e009f
NO-OP: cleanup code
2019-09-22 04:15:01 +02:00
Robin Gareus
e8822e76d6
Add abstract API for latency compensated sends
...
This is in preparation for MixbusSends that are not derived from
Delivery : IOProcessor.
2019-09-20 21:27:16 +02:00
Paul Davis
361727716f
do not abort in the event that we cannot internal-seek to align with the playhead.
...
There are no good options here, but treating it like a regular underrun seems as good as anything
2019-09-20 13:02:46 -06:00
Paul Davis
bddde1337e
better initial value
2019-09-20 12:36:23 -06:00
Paul Davis
7383fbbe48
remove debug output
2019-09-20 12:26:49 -06:00
Paul Davis
b374eb7658
fix crash when doing rapid (ongoing-locate-interrupting) locates
2019-09-20 12:26:49 -06:00
Paul Davis
84f8e23027
move TransportFSM::enqueue() into .cc file
2019-09-20 12:26:49 -06:00