36 XO(
"Sliding Stretch") };
63 return XO(
"Allows continuous changes to the tempo and/or pitch");
68 return L
"Sliding_Stretch";
83 double inputLength =
settings.extra.GetDuration();
84 if (inputLength == 0.0)
92 double tOut = previewLength / inputLength;
95 return t * inputLength;
127 return 1.0 + percentChange / 100.0;
132 return 100.0 * (pow(2.0, halfSteps / 12.0) - 1.0);
static Settings & settings()
Generates EffectParameterMethods overrides from variadic template arguments.
ComponentInterfaceSymbol pairs a persistent string identifier used internally with an optional,...
void SetLinearEffectFlag(bool linearEffectFlag)
Performs effect computation.
Interface for manipulations of an Effect's settings.
virtual void Reset(Effect &effect) const =0
void setParameters(double rateStart, double rateEnd, double pitchStart, double pitchEnd, SlideType rateSlideType, SlideType pitchSlideType, bool bLinkRatePitch, bool bRateReferenceInput, bool bPitchReferenceInput)
bool Process(EffectInstance &instance, EffectSettings &settings) override
static double getInvertedStretchedTime(double rateStart, double rateEnd, SlideType slideType, double outputTime)
static double getRate(double rateStart, double rateEnd, SlideType slideType, double t)
static constexpr EffectParameter PitchPercentEnd
double m_RatePercentChangeStart
static double HalfStepsToPercentChange(double halfSteps)
double CalcPreviewInputLength(const EffectSettings &settings, double previewLength) const override
static double PercentChangeToRatio(double percentChange)
double m_PitchPercentChangeStart
double m_RatePercentChangeEnd
static constexpr EffectParameter HalfStepsEnd
double m_PitchPercentChangeEnd
ComponentInterfaceSymbol GetSymbol() const override
bool Process(EffectInstance &instance, EffectSettings &settings) override
static const ComponentInterfaceSymbol Symbol
double previewSelectedDuration
EffectType GetType() const override
Type determines how it behaves.
static constexpr EffectParameter RatePercentStart
ManualPageID ManualPage() const override
Name of a page in the Audacity alpha manual, default is empty.
static constexpr EffectParameter RatePercentEnd
const EffectParameterMethods & Parameters() const override
static constexpr EffectParameter PitchPercentStart
static constexpr EffectParameter HalfStepsStart
static double PercentChangeToHalfSteps(double percentChange)
std::any BeginPreview(const EffectSettings &settings) override
Called when Preview() starts, to allow temporary effect state changes.
TranslatableString GetDescription() const override
Holds a msgid for the translation catalog; may also bind format arguments.
Externalized state of a plug-in.