94e2bce740
Add & implement PortEngine::externally_connected() API
2017-10-30 19:41:42 +01:00
16b4535281
Add missing header (-Wmissing-prototypes)
2017-10-30 19:39:42 +01:00
7adb1297cd
Add weak linked symbol for "jack_port_is_mine"
2017-10-30 19:39:10 +01:00
c0dbe8eaaf
Move coreaudio_set_realtime_policy into libpbd
2017-10-30 16:31:38 +01:00
c0f27be59e
Fix/update alsa backend build recipe (statically link zresampler)
2017-10-29 20:03:51 +01:00
7512692e79
Fix initial cycle noise with dummy-loopback
2017-10-28 15:45:08 +02:00
79374df84e
fix preprocessor error on some/many systems
2017-10-26 15:44:09 -04:00
7e2c002ef6
Propagate Latency to backend/system ports (Dummy backend)
...
amend ab3889ff
(which implements this for other backends)
2017-09-28 13:14:11 +02:00
e39a8b90d9
amend ab3889ff
: portaudio backend uses a vector for connections
2017-09-23 01:06:10 +02:00
ab3889fff8
Propagate Latency to backend/system ports
...
Set accumulated capture-latency for physical-outputs
and accumulated playback-latency for physical-inputs
after Ardour is done setting all non-physical port latencies.
This will be needed for latency-compensation of the complete graph.
2017-09-23 00:34:01 +02:00
59ccf91eea
Revert some more frame/sample API issues
2017-09-19 18:40:29 +02:00
666aa5a557
More Coreaudio SDK fixes, after 30b087ab3
2017-09-19 05:20:05 +02:00
1ec471c961
partially revert 30b087ab3
, CoreAudio SDK uses "Frames"
2017-09-19 04:47:10 +02:00
30b087ab3d
globally change all use of "frame" to refer to audio into "sample".
...
Generated by tools/f2s. Some hand-editing will be required in a few places to fix up comments related to timecode
and video in order to keep the legible
2017-09-18 12:39:17 -04:00
8337982766
Prototype using additional ALSA devices (w/resampling).
2017-09-18 16:13:55 +02:00
128a985361
ALSA Backend: Separate Device Reservation into its own class
2017-09-18 14:50:31 +02:00
7258c6334d
Namespace PBD::RingBuffer
...
class RingBuffer<> is a very generic name and should not pollute the
global namespace.
2017-09-16 16:37:29 +02:00
14fcf86f03
MSVC uses a slightly smaller value for HUGE
2017-09-11 19:25:13 +01:00
35fcb622bc
Accommodate recently removed source(s) in our MSVC project (portaudio_audiobackend)
2017-08-30 09:53:33 +01:00
467c801ce8
Abstract definition of rt-scheduler policy
...
pthread-w32 does not support pthread_setschedparam() with
SCHED_FIFO and bails out. While pthread_create() simply ignores the policy
and sets the priority regadless.
This only affects ctrl-surface event-loops & AutomationWatch on Windows.
2017-08-29 20:35:36 +02:00
df659e91f1
Consolidate _realtime_pthread_create() into libpbd.
2017-08-29 17:25:23 +02:00
2961db3b6f
Use literal for compatibility
2017-08-23 12:43:48 +02:00
Stefan Müller-Klieser
587a2dee55
backends: jack: display playback only devices
...
When starting ardour using the jack backend, playback only devices
currently do not get displayed. Mixing and Mastering only workspaces
with e.g. a single USB Dac should be a common use case. Take this use
case into account by adding them to the device list. Tested on Linux
with jack-alsa.
2017-08-23 02:17:51 +02:00
e0a83a758e
Redesign Session+Route Template Meta Script API
...
Remove special-cased script types. Allow Action-Scripts to be re-used
for session-setup or route-templates.
2017-08-18 20:42:55 +02:00
26dc287c00
Fix non-buffered PA backend. Wait for backend to become active
...
This hopefully fixes an issue with port-registration (new session)
being skipped because PortAudioBackend::available() still false
until the first callback.
2017-08-07 23:23:39 +02:00
fd6377a5af
PortAudio: skip process callbacks until ports are established
2017-08-07 19:27:37 +02:00
fde07d4f4f
amend bc46a7e2e9; fix blind coding typos
2017-08-05 16:17:31 +02:00
8c61c7f14a
amend f4c76f89d3a; fix blind coding typos
2017-08-05 16:06:15 +02:00
bc46a7e2e9
PortAudio backend RT-safe MIDI buffer allocation
2017-08-05 15:36:36 +02:00
f4c76f89d3
Coreaudio backend RT-safe MIDI buffer allocation
2017-08-05 15:36:36 +02:00
59a63a08f9
ALSA backend RT-safe MIDI buffer allocation
2017-08-05 15:36:36 +02:00
2b7c585dba
Update backend API: read-only MIDI input buffers
2017-08-05 15:36:36 +02:00
c125cd2647
Reduce DSP thread priority (main-i/o > midi i/o > computation)
2017-08-05 01:28:11 +02:00
38c5e9de6d
CoreAudio: Set MachThread RT Priority
2017-08-04 06:25:23 +02:00
4ec72b5c76
DummyBackend: allow changing SPP
2017-08-04 03:53:51 +02:00
6b5d374352
Some more assert() debugging
2017-08-03 23:46:05 +02:00
660096b037
Fix typo
2017-07-31 19:54:23 +02:00
80ecac672f
Modify our MSVC project to add libltc as a dependency of 'dummy_backend' (which now needs to link to it)
2017-07-29 10:46:53 +01:00
7f03c9a664
Fix an ambiguous call to 'floor()'
...
MSVC complains, so let's specify which override we want.
2017-07-29 10:44:00 +01:00
7b7cc9ea6d
Add a LTC generator to the dummy backend
2017-07-28 17:47:36 +02:00
e511985ad9
Report Dummy as not available if not running
...
This fixes an issue with port-connections being polled from the backend
even when it's not running.
2017-06-25 20:53:47 +02:00
0d668b9beb
ALSA backend: always register ports with systemic latency
...
and allow re-start to un/set reporting latency.
2017-04-27 20:59:15 +02:00
d7d86a99d2
Re-nice ALSA MIDI port names
2017-04-21 10:43:22 +02:00
bf5864aaca
Use PBD::to_string() from pbd/string_convert.h in JACK utils
...
Use pbd/string_convert.h API instead of std::ostream for numeric formatting to
remain locale independent and not have to use a LocaleGuard.
2017-04-19 09:37:00 +10:00
6968c9f909
Drain ALSA raw-midi buffers after 64 bytes
...
Very long sequence of *concurrent* events may otherwise be truncated
because the backend requests a buffer-size of 64 bytes via
snd_rawmidi_params_set_buffer_size().
2017-04-09 05:03:19 +02:00
f9db9bf5fd
Retain order of concurrent MIDI events
...
This fixes an issue with FaderPort8 (and maybe other surfaces or synths).
2017-04-08 23:43:50 +02:00
9a45e0fde9
Add a missing #define to our MSVC project (portaudio_backend)
2017-02-20 09:16:51 +00:00
9bf4f339b9
revert 335debfa
for the PA backend
...
The same device may have different names for input + output
2016-11-27 00:42:08 +01:00
335debfa2f
Add API to enforce valid device selection.
2016-11-26 15:31:21 +01:00
d10913e2de
Fix intermittent hang when stopping PortaudioBackend
...
This issue is not always reproducible but when it does occur it happens
somewhat consistently on both 32bit and 64bit builds(Tested on Windows 7).
The midiOutReset call does not return (or it takes so long that it might as
well be indefinite) and as it is not strictly necessary just remove it.
Resolves: http://tracker.ardour.org/view.php?id=7095
2016-11-15 09:36:52 +10:00