Commit graph

106 commits

Author SHA1 Message Date
Robin Gareus
09dd3fc369 some backends can handle incorrectly ordered midi events.
(that can happen if multiple sources send to the same
ouput port, in particular async midi events)
2015-03-09 05:41:36 +01:00
Robin Gareus
659a8a26ae fix latency report, take buffersize changes into account. 2015-03-07 14:35:32 +01:00
Robin Gareus
2ab26bd86d fix another screwup/typo in 782dd70 2015-03-05 02:10:21 +01:00
Robin Gareus
7ef22e5e71 remove unused devel.variable in prev commit 2015-03-05 02:04:14 +01:00
Robin Gareus
782dd70875 alsa: implement timing callback 2015-03-05 01:59:59 +01:00
Ben Loftis
e3dd226ffa Change order of midi entries so a new backend will default to a working midi system.
Needs testing on all platforms.
2015-03-03 15:57:08 -06:00
Paul Davis
582138f280 change Audio backend sample time methods to use a 64 bit timeline 2015-02-19 17:44:01 -05:00
Robin Gareus
8a93a87db0 remove lib versioning for internal plugins
Those objects do not have a versioned API by themselves.
This fixes issues with duplicate deployment (OSX, Linux bundles: cp) and
ardour listing control-surfaces multiple times (file index plugin dir).
2015-02-16 17:32:56 +01:00
Robin Gareus
cf8e7bc135 ALSA-backend separate report for error and x-run 2015-01-28 13:47:24 +01:00
Robin Gareus
397ce4ccc7 ALSA-Backend prefer ppoll() 2015-01-28 13:47:24 +01:00
Robin Gareus
db28eefc49 ALSA backend: synchronous switch to/from freewheeling 2015-01-24 23:39:41 +01:00
Robin Gareus
f499f4cfd2 don't take temporary copy of MIDI sequence
fixes potential boost shared_ptr double free.
2014-12-31 03:19:00 +01:00
Robin Gareus
7aab4be5e4 alsa-backend: drop midi during freewheel processing. 2014-12-02 17:03:29 +01:00
Robin Gareus
f2273dc3b6 remove dead assignment 2014-11-18 02:15:06 +01:00
Robin Gareus
bd46de779f check alsa midi ringbuffer 2014-11-17 06:50:48 +01:00
Robin Gareus
d991bb10ca add 'available' interface to the AudioBackendInfo
If a backend can be loaded, it does not mean that it can be used;
e.g. weak-linked jack-backend if libjack is not available.
2014-10-23 16:53:14 +02:00
Paul Davis
68458cde69 fix all 4 backends' failure to include the main "backend" thread when computing ::in_process_thread() 2014-10-22 17:07:11 -04:00
Robin Gareus
32e05fa640 update backends for API change in 8d59afb048 2014-10-01 03:24:54 +02:00
Robin Gareus
99a484f193 ALSA backend: initial device selection 2014-09-24 01:26:51 +02:00
Robin Gareus
b1da9af8de ALSA|Dummy: ignore port unregistration when engine is stopped
When changing Engine parameters, ardour first stops
the engine and only later when re-etablishing ports
unregisters/re-registers them.

ALSA: silently ignore port unregs and silently accept registrations
Dummy: print a PBD::info message,
2014-09-08 01:25:56 +02:00
Robin Gareus
dc318e6e74 ALSA|Dummy Backend: do as jack does:
when the backend is closed, unregister all ports.
2014-09-07 22:50:57 +02:00
Tim Mayberry
cd12698b9c Rename PBD::find_file_in_search_path to just PBD::find_file
saves a bit of typing and not necessary if you look at how it is used.
2014-06-25 12:40:10 -04:00
Robin Gareus
07fafac36e don't let enumerated device list strings go out of scope. 2014-06-23 12:16:35 +02:00
Robin Gareus
fb51bdb892 statically allocate midi-options
fixes possible segfault when the data in the vector
goes out of scope due to RVO.
2014-06-23 11:56:58 +02:00
Robin Gareus
16ffff10cd ALSA-backend: dedicated Midi-Buffer n-periods (only use for HW output) 2014-06-22 18:28:24 +02:00
Robin Gareus
6648074a13 virtual abstraction of Alsa Raw+Seq 2014-06-21 13:51:46 +02:00
Robin Gareus
5e436fc8fc prepare ALSA sequencer 2014-06-21 11:51:11 +02:00
Robin Gareus
bc67e47048 rework raw-midi drain strategy (workaround for sync devices) 2014-06-19 19:44:14 +02:00
Robin Gareus
e426c603b6 remove debug output 2014-06-16 23:58:52 +02:00
Robin Gareus
019e987944 more alsa-midi debugging 2014-06-16 22:08:52 +02:00
Robin Gareus
ff39a42581 ALSA backend: set latencies to zero when measuring latency 2014-06-13 13:51:42 +02:00
Robin Gareus
ecb92f474f update ALSA backend, MIDI device config 2014-06-13 12:02:03 +02:00
Robin Gareus
da912f7ed4 add AudioEngine API to configure individual MIDI devices 2014-06-13 11:47:51 +02:00
Robin Gareus
8fe593fcca some misc tweaks to the ALSA Backend 2014-06-08 21:04:30 +02:00
Robin Gareus
b3a44ea32b ALSA Backend: align midi output buffer with n_periods (currently 2) 2014-06-08 15:53:15 +02:00
Robin Gareus
8f17b7c309 ALSA backend: separate systemic audio+midi latency 2014-06-07 17:28:47 +02:00
Robin Gareus
c452cd9be2 ALSA rt-thread priority fixes 2014-06-07 17:28:46 +02:00
Robin Gareus
b68d2e25b2 ALSA backend: prevent possible crash destruction of a-r-d 2014-06-07 17:28:46 +02:00
Robin Gareus
960a5347f0 ALSA & Dummy: implement port [un]registration_callback 2014-06-07 17:28:46 +02:00
Robin Gareus
d7fc573cb8 alsa + dummy backend, proper [re]initialization 2014-06-06 03:43:39 +02:00
Robin Gareus
1c87f6adec properly setup port system latency for Dummy & ALSA backend 2014-06-06 00:58:11 +02:00
Robin Gareus
748c137461 pass ardour's pid to the device reservation script.
terminate a-r-d when ardour crashes or exits unexpectedly.
2014-06-05 19:49:23 +02:00
Robin Gareus
8d6183bff5 ALSA backend: require both in+output. 2014-06-05 03:27:19 +02:00
Robin Gareus
822c460d15 DBus ALSA device reservation 2014-06-05 02:22:13 +02:00
Robin Gareus
a907d3455e break out ALSA related functions into libardouralsautil 2014-06-04 19:16:37 +02:00
Robin Gareus
40cfe86569 ALSA: tentative hack to request audio-device. 2014-06-04 17:17:15 +02:00
Robin Gareus
6b781f72f2 ALSA backend: engine.halted_callback if the process thread dies 2014-06-04 17:17:15 +02:00
Robin Gareus
aec7ea4613 Revert "Revert "ALSA backend: separate flags for is-running and should-be-running""
sorry, c/p error
This reverts commit 9658b77327.
2014-06-04 02:39:39 +02:00
Robin Gareus
9658b77327 Revert "ALSA backend: separate flags for is-running and should-be-running"
Theoretically one could alter the plugins after a delivery even on a
frozen track. ..or even change settings, the ordering and add/remove
plugins after the frozen part of a track.

We won't go there. Frozen is frozen. this API is not needed after all.

This reverts commit 6d89488d64.
2014-06-04 02:34:58 +02:00
Robin Gareus
6d89488d64 ALSA backend: separate flags for is-running and should-be-running 2014-06-04 02:23:41 +02:00