Documentation updates

This commit is contained in:
Chris Cannam
2022-06-29 16:51:31 +01:00
parent 54b10f155c
commit 0fa2ed598f

View File

@@ -117,18 +117,18 @@ public:
* *
* \li \c OptionEngineFaster - Use the Rubber Band Library R2 * \li \c OptionEngineFaster - Use the Rubber Band Library R2
* (Faster) engine. This is the engine implemented in Rubber * (Faster) engine. This is the engine implemented in Rubber
* Band Library v1.x and v2.x, and it remains the default for * Band Library v1.x and v2.x, and it remains the default in
* backward compatibility. It uses substantially less CPU than * newer versions. It uses substantially less CPU than the R3
* the R3 engine and there are still many situations in which it * engine and there are still many situations in which it is
* is likely to be the more appropriate choice. * likely to be the more appropriate choice.
* *
* \li \c OptionEngineFiner - Use the Rubber Band Library R3 * \li \c OptionEngineFiner - Use the Rubber Band Library R3
* (Finer) engine. This engine was added in Rubber Band Library * (Finer) engine. This engine was introduced in Rubber Band
* v3.0. It produces higher-quality results than the R2 engine * Library v3.0. It produces higher-quality results than the R2
* for most material, especially complex mixes, vocals and other * engine for most material, especially complex mixes, vocals
* sounds that have soft onsets and smooth pitch changes, and * and other sounds that have soft onsets and smooth pitch
* music with substantial bass content. However, it uses much * changes, and music with substantial bass content. However, it
* more CPU power than the R2 engine. * uses much more CPU power than the R2 engine.
* *
* Important note: Consider calling getEngineVersion() after * Important note: Consider calling getEngineVersion() after
* construction to make sure the engine you requested is * construction to make sure the engine you requested is
@@ -142,11 +142,12 @@ public:
* reassuring run-time check. * reassuring run-time check.
* *
* 3. Flags prefixed \c OptionTransients control the component * 3. Flags prefixed \c OptionTransients control the component
* frequency phase-reset mechanism that may be used at transient * frequency phase-reset mechanism in the R2 engine, that may be
* points to provide clarity and realism to percussion and other * used at transient points to provide clarity and realism to
* significant transient sounds. These options may be changed * percussion and other significant transient sounds. These
* after construction when running in real-time mode, but not when * options have no effect when using the R3 engine. These options
* running in offline mode. * may be changed after construction when running in real-time
* mode, but not when running in offline mode.
* *
* \li \c OptionTransientsCrisp - Reset component phases at the * \li \c OptionTransientsCrisp - Reset component phases at the
* peak of each transient (the start of a significant note or * peak of each transient (the start of a significant note or
@@ -171,9 +172,10 @@ public:
* transients flags. * transients flags.
* *
* 4. Flags prefixed \c OptionDetector control the type of * 4. Flags prefixed \c OptionDetector control the type of
* transient detector used. These options may be changed * transient detector used in the R2 engine. These options have
* after construction when running in real-time mode, but not when * no effect when using the R3 engine. These options may be
* running in offline mode. * changed after construction when running in real-time mode, but
* not when running in offline mode.
* *
* \li \c OptionDetectorCompound - Use a general-purpose * \li \c OptionDetectorCompound - Use a general-purpose
* transient detector which is likely to be good for most * transient detector which is likely to be good for most
@@ -189,9 +191,10 @@ public:
* piano music). * piano music).
* *
* 5. Flags prefixed \c OptionPhase control the adjustment of * 5. Flags prefixed \c OptionPhase control the adjustment of
* component frequency phases from one analysis window to the next * component frequency phases in the R2 engine from one analysis
* during non-transient segments. These options may be changed at * window to the next during non-transient segments. These
* any time. * options have no effect when using the R3 engine. These options
* may be changed at any time.
* *
* \li \c OptionPhaseLaminar - Adjust phases when stretching in * \li \c OptionPhaseLaminar - Adjust phases when stretching in
* such a way as to try to retain the continuity of phase * such a way as to try to retain the continuity of phase
@@ -208,11 +211,13 @@ public:
* construction. * construction.
* *
* \li \c OptionThreadingAuto - Permit the stretcher to * \li \c OptionThreadingAuto - Permit the stretcher to
* determine its own threading model. Usually this means using * determine its own threading model. In the R2 engine this
* one processing thread per audio channel in offline mode if * means using one processing thread per audio channel in
* the stretcher is able to determine that more than one CPU is * offline mode if the stretcher is able to determine that more
* available, and one thread only in realtime mode. This is the * than one CPU is available, and one thread only in realtime
* default. * mode. The R3 engine does not currently have a multi-threaded
* mode, but if one is introduced in future, this option may use
* it. This is the default.
* *
* \li \c OptionThreadingNever - Never use more than one thread. * \li \c OptionThreadingNever - Never use more than one thread.
* *
@@ -221,9 +226,10 @@ public:
* the check for multiple CPUs and instead assume it to be true. * the check for multiple CPUs and instead assume it to be true.
* *
* 7. Flags prefixed \c OptionWindow control the window size for * 7. Flags prefixed \c OptionWindow control the window size for
* FFT processing. The window size actually used will depend on * FFT processing in the R2 engine. (The window size actually
* many factors, but it can be influenced. These options may not * used will depend on many factors, but it can be influenced.)
* be changed after construction. * These options have no effect when using the R3 engine. These
* options may not be changed after construction.
* *
* \li \c OptionWindowStandard - Use the default window size. * \li \c OptionWindowStandard - Use the default window size.
* The actual size will vary depending on other parameters. * The actual size will vary depending on other parameters.
@@ -239,8 +245,9 @@ public:
* clarity and timing. * clarity and timing.
* *
* 8. Flags prefixed \c OptionSmoothing control the use of * 8. Flags prefixed \c OptionSmoothing control the use of
* window-presum FFT and time-domain smoothing. These options may * window-presum FFT and time-domain smoothing in the R2
* not be changed after construction. * engine. These options have no effect when using the R3 engine.
* These options may not be changed after construction.
* *
* \li \c OptionSmoothingOff - Do not use time-domain smoothing. * \li \c OptionSmoothingOff - Do not use time-domain smoothing.
* This is the default. * This is the default.
@@ -252,8 +259,9 @@ public:
* OptionWindowShort. * OptionWindowShort.
* *
* 9. Flags prefixed \c OptionFormant control the handling of * 9. Flags prefixed \c OptionFormant control the handling of
* formant shape (spectral envelope) when pitch-shifting. These * formant shape (spectral envelope) when pitch-shifting. These
* options may be changed at any time. * options affect both the R2 and R3 engines. These options may
* be changed at any time.
* *
* \li \c OptionFormantShifted - Apply no special formant * \li \c OptionFormantShifted - Apply no special formant
* processing. The spectral envelope will be pitch shifted as * processing. The spectral envelope will be pitch shifted as
@@ -265,9 +273,10 @@ public:
* perceived pitch profile of the voice or instrument. * perceived pitch profile of the voice or instrument.
* *
* 10. Flags prefixed \c OptionPitch control the method used for * 10. Flags prefixed \c OptionPitch control the method used for
* pitch shifting. These options may be changed at any time. * pitch shifting in the R2 engine. These options have no effect
* They are only effective in realtime mode; in offline mode, the * when using the R3 engine. These options may be changed at any
* pitch-shift method is fixed. * time. They are only effective in realtime mode; in offline
* mode, the pitch-shift method is fixed.
* *
* \li \c OptionPitchHighSpeed - Use a method with a CPU cost * \li \c OptionPitchHighSpeed - Use a method with a CPU cost
* that is relatively moderate and predictable. This may * that is relatively moderate and predictable. This may
@@ -285,9 +294,10 @@ public:
* 1.0 pitch scale in real-time; it also consumes more CPU than * 1.0 pitch scale in real-time; it also consumes more CPU than
* the others in the case where the pitch scale is exactly 1.0. * the others in the case where the pitch scale is exactly 1.0.
* *
* 11. Flags prefixed \c OptionChannels control the method used for * 11. Flags prefixed \c OptionChannels control the method used
* processing two-channel audio. These options may not be changed * for processing two-channel audio in the R2 engine. These
* after construction. * options have no effect when using the R3 engine. These options
* may not be changed after construction.
* *
* \li \c OptionChannelsApart - Each channel is processed * \li \c OptionChannelsApart - Each channel is processed
* individually, though timing is synchronised and phases are * individually, though timing is synchronised and phases are