Hi everyone, a quick update to let you know we’ve added RubberBand time stretching support to Tracktion Engine! You can find the changes on the
develop branch for now: GitHub - Tracktion/tracktion_engine at develop
PLEASE NOTE: RubberBand is not owned by Tracktion and is licensed separately.
Please make sure you have a suitable licence if building with RubberBand support.
You can find more information here: Rubber Band Audio Time Stretcher Library
To enable RubberBand, set the config option
TRACKTION_ENABLE_TIMESTRETCH_RUBBERBAND=1 either in CMake or your Projucer project’s module options.
You can build RubberBand separately and link to it or you can include it in your search path and build it directly in to your app by enabling
TRACKTION_BUILD_RUBBERBAND (you’ll need a recent version of RubberBand for this to work).
Once done, you’ll be able to use the
TimeStretcher::rubberbandPercussive modes for time-stretching clips or for real-time use in the
PitchShiftPlugin (N.B. this does introduce ~200ms latency).
To showcase this, we’ve also updated the
PitchAndTimeDemo example app to select time stretch modes and added a PitchShiftPlugin instance.