ardour/libs
Robin Gareus 927788a0b0 Move vari-speed into backend (resample ports)
Previously Ardour used a /local/ per track vari-speed mechanism.
Now that the disk-reader is a latency-compensated processor, the speed
of each disk-reader would need to be maintained locally, offset by each
disk-reader's output latency. Furthermore each disk-reader may
produce a different number of samples, depending on its global alignment.

This commit introduces port-data resampling directly at the engine-level:
Up/down-sample all input ports at the beginning, and down/up-sample output
port-data using the inverse ratio at the end of the session's process
cycle.
The session itself is unaware of the speed-change, and only needs to
handle transport speeds {-1, 0, +1}.

This also allows for aligned cue-monitoring and vari-speed recording,
and also pitch-shifts synthesized MIDI along.
2017-10-29 20:04:00 +01:00
..
appleutility replicate the remove-all-trailing whitespace commit(s) in master 2016-02-22 15:31:24 -05:00
ardour Move vari-speed into backend (resample ports) 2017-10-29 20:04:00 +01:00
ardouralsautil Use PBD::to_string() from pbd/string_convert.h in ardour ALSA utils 2017-04-19 09:37:00 +10:00
audiographer convert codebase to use Temporal for various time types 2017-09-24 12:03:54 -04:00
backends Fix/update alsa backend build recipe (statically link zresampler) 2017-10-29 20:03:51 +01:00
canvas globally change all use of "frame" to refer to audio into "sample". 2017-09-18 12:39:17 -04:00
clearlooks-newer globally change all use of "frame" to refer to audio into "sample". 2017-09-18 12:39:17 -04:00
evoral remove *.orig files (accidentally added in cba53a202) 2017-09-29 21:05:06 +02:00
fluidsynth Update fluidsynth 2017-06-27 20:12:46 +02:00
fst Don't use VST ->user points, prefer host-reserved ptr 2017-07-08 18:13:42 +02:00
gtkmm2ext NO-OP: whitespace 2017-08-18 09:42:04 -04:00
hidapi Fix libhid compile with /recent/ libc (GNU_SOURCE) 2017-05-20 12:39:49 +02:00
libltc Check in a few MSVC projects to accommodate the change from libtimecode to libtemporal 2017-09-28 12:27:56 +01:00
lua Add luaRef is Boolean 2017-08-18 20:42:55 +02:00
midi++2 convert codebase to use Temporal for various time types 2017-09-24 12:03:54 -04:00
panners globally change all use of "frame" to refer to audio into "sample". 2017-09-18 12:39:17 -04:00
pbd Accommodate newly added/removed source(s) in our MSVC project (libpbd) 2017-10-27 13:08:32 +01:00
plugins globally change all use of "frame" to refer to audio into "sample". 2017-09-18 12:39:17 -04:00
ptformat Update ptformat to upstream 72bd66b 2017-10-15 17:14:59 +11:00
qm-dsp Patch the QM source code to make it buildable with MSVC 2017-04-02 15:32:26 +02:00
surfaces NO-OP: whitespace cleanup 2017-10-26 15:46:00 -04:00
temporal Accommodate newly added/removed source(s) in our MSVC project (libtemporal) 2017-09-28 12:27:54 +01:00
vamp-plugins update qm-vamp-plugins (git v1.7.1-10-g76bc879) 2017-04-01 21:50:32 +02:00
vfork silence clang analyzer: Memory Error, Memory leak 2016-02-28 13:12:40 +01:00
waveview globally change all use of "frame" to refer to audio into "sample". 2017-09-18 12:39:17 -04:00
widgets Accommodate newly added/removed source(s) in our MSVC project (libwidgets) 2017-09-28 12:27:55 +01:00
zita-resampler Add a dedicated mono variable resampler version 2017-10-29 20:03:55 +01:00