Robin Gareus
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
Robin Gareus
666aa5a557
More Coreaudio SDK fixes, after 30b087ab3
2017-09-19 05:20:05 +02:00
Robin Gareus
1ec471c961
partially revert 30b087ab3, CoreAudio SDK uses "Frames"
2017-09-19 04:47:10 +02:00
Paul Davis
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
Robin Gareus
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
Robin Gareus
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
Robin Gareus
df659e91f1
Consolidate _realtime_pthread_create() into libpbd.
2017-08-29 17:25:23 +02:00
Robin Gareus
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
Robin Gareus
8c61c7f14a
amend f4c76f89d3; fix blind coding typos
2017-08-05 16:06:15 +02:00
Robin Gareus
f4c76f89d3
Coreaudio backend RT-safe MIDI buffer allocation
2017-08-05 15:36:36 +02:00
Robin Gareus
2b7c585dba
Update backend API: read-only MIDI input buffers
2017-08-05 15:36:36 +02:00
Robin Gareus
c125cd2647
Reduce DSP thread priority (main-i/o > midi i/o > computation)
2017-08-05 01:28:11 +02:00
Robin Gareus
38c5e9de6d
CoreAudio: Set MachThread RT Priority
2017-08-04 06:25:23 +02:00
Robin Gareus
6b5d374352
Some more assert() debugging
2017-08-03 23:46:05 +02:00
Robin Gareus
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
Robin Gareus
43bd7f5db1
fix const-cast
2016-11-12 16:20:43 +01:00
Robin Gareus
56711b99c9
Work around OSX MIDI devices that send no timestamps
2016-10-19 19:45:53 +02:00
Robin Gareus
355fa64c79
fix Coreaudio Aggregate for separate devices with identical names
2016-08-28 13:44:30 +02:00
Robin Gareus
957f59f351
print a warning if CoreAudio falls back to non realtime priority
2016-08-22 17:38:45 +02:00
Paul Davis
cf52d6e4b4
enough with umpteen "i18n.h" files. Consolidate on pbd/i18n.h
2016-07-14 14:45:23 -04:00
Robin Gareus
8444837b71
properly sort port-names
2016-07-14 16:52:43 +02:00
Robin Gareus
ac923be7af
fix port-sort order for good.
...
TODO find out how to make std::set::find() work with custom sort order,
as std::find may only be O(N) and not O(log (N)).
2016-07-08 21:37:42 +02:00
Robin Gareus
f84a7605d8
pre-sort port-names
2016-07-08 20:44:21 +02:00
Robin Gareus
43e620504a
port 93eac8b0 to ALSA and CoreAudio
2016-04-26 18:19:48 +02:00
Robin Gareus
2169de3975
keep portmap & portindex in sync when renaming ports
...
Fixes crash on session re-load (introduced in 800c8182 and fde99e68 )
2016-04-26 02:26:20 +02:00
Robin Gareus
fde99e68f7
..and CoreAudio.
2016-04-24 20:45:50 +02:00
Robin Gareus
9840a11537
implement metadata-set for remaining backends
2016-04-18 00:35:51 +02:00
Paul Davis
5dbfca9953
Fix build on El Capitan
...
In which Apple once again changed the name of the MIDI kit from CoreMidi to CoreMIDI, something
they did for the Lion release of OS X
2016-03-01 12:20:59 -05:00
Robin Gareus
ba78359129
prepare for update to waf 1.8
...
uselib is no longer implicit (inherited by .use). This is still incomplete,
some uselibs for non-linux variants may be missing.
bld.is_defined("HAVE_XXX") also no longer works and will have to be
changed (I think to bld.env["HAVE_XXX"]) in countless places.
2016-02-28 21:16:44 +01:00
Robin Gareus
0fc06b4a1b
fix warning message typo
2016-01-11 11:45:44 +01:00
Paul Davis
a9995c59cc
coremidi: do not clear port buffer for every call to parse_events()
...
This was limiting the data flow to 1 MIDI event per process cycle.
2016-01-10 17:46:36 -05:00
Paul Davis
36fb8c44c1
add explanatory comment regarding coremidi data flow
2016-01-09 14:45:38 -05:00
Paul Davis
4a99727dea
coremidi: be sure to mark _event._pending false after queueing, so that it doesn't get queued up again later
2016-01-09 13:53:17 -05:00
Paul Davis
ef45a6c84b
coreaudio: remove debug output
2016-01-08 09:43:33 -05:00
Paul Davis
63cbe11c67
coreaudio: remove debug output
2016-01-08 09:39:55 -05:00
Paul Davis
cae2f82278
NOOP: fix whitespace/indendentation in coreaudio backend code
2016-01-08 09:39:00 -05:00
Paul Davis
3d5e345800
coreaudio: reset MIDI parsers when entering and leaving freewheeling
2016-01-08 09:23:05 -05:00
Paul Davis
9d3cbe44a3
coreaudio: correctly clear MIDI port buffers
2016-01-07 18:11:45 -05:00
Paul Davis
c615e26f3c
coreaudio: factor out common code for stuffing MIDI data into a CoreMidiPort buffer
2016-01-07 18:11:45 -05:00
Paul Davis
6e71d3b445
coreaudio: per-port parser for incoming MIDI, copied from ALSA Raw MIDI support
2016-01-07 16:42:34 -05:00
Robin Gareus
7c58b4de5f
coreaudio: reset freewheeling after export
...
fixes lively with session-fadeout
2015-10-10 02:42:13 +02:00
Robin Gareus
22b07e0233
NOOP, remove trailing tabs/whitespace.
2015-10-05 16:17:49 +02:00
Paul Davis
4dc63966f0
globally remove all trailing whitespace from ardour code base.
...
Paul Davis was responsible for introducing almost all of this.
2015-10-04 14:51:05 -04:00
Robin Gareus
87c36aba60
use new error-messages
2015-10-02 17:51:17 +02:00
Robin Gareus
3f99c44ff6
improve CoreAudio error reporting
2015-10-02 17:28:28 +02:00
Robin Gareus
1c43383e92
CoreAudio: use libardour provided DSP load calc.
2015-09-16 18:24:57 +02:00
Robin Gareus
fa32fa1abe
replace "None" with DeviceNone in ALSA/Coreaudio
...
TODO: separate MidiSystemNone
2015-09-02 13:33:40 +02:00
Robin Gareus
b6f51b2497
coreaudio: re-classify port-errors as warnings
2015-08-28 15:41:33 +02:00
Robin Gareus
548340eb05
remove -Woverload-virtual ambiguity (from 1d3690d)
...
this breaks compilation in engine_dialog.cc
2015-08-11 23:50:56 +02:00
Robin Gareus
8f10b38275
coreaudio backend: SR/BS query for separate devices
2015-08-11 15:38:04 +02:00