Upload files to "Source"
This commit is contained in:
@@ -6,10 +6,24 @@ enum class BlepWave : int { Sine = 0, Saw, Square, Triangle };
|
|||||||
class BlepOsc
|
class BlepOsc
|
||||||
{
|
{
|
||||||
public:
|
public:
|
||||||
void prepare (double sampleRate) { sr = sampleRate; resetPhase(); }
|
void prepare (double sampleRate)
|
||||||
|
{
|
||||||
|
sr = juce::jmax (1.0, sampleRate);
|
||||||
|
setFrequency ((float) freq);
|
||||||
|
resetPhase();
|
||||||
|
}
|
||||||
void setWave (BlepWave w) { wave = w; }
|
void setWave (BlepWave w) { wave = w; }
|
||||||
void setFrequency (float f) { freq = juce::jmax (0.0f, f); inc = freq / (float) sr; }
|
void setFrequency (float f)
|
||||||
void resetPhase (float p = 0.0f) { phase = juce::jlimit (0.0f, 1.0f, p); }
|
{
|
||||||
|
const float nyquist = 0.5f * (float) sr;
|
||||||
|
freq = juce::jlimit (0.0f, juce::jmax (0.0f, nyquist), f);
|
||||||
|
inc = freq / (float) sr;
|
||||||
|
}
|
||||||
|
void resetPhase (float p = 0.0f)
|
||||||
|
{
|
||||||
|
phase = juce::jlimit (0.0f, 1.0f, p);
|
||||||
|
z1 = 0.0f;
|
||||||
|
}
|
||||||
|
|
||||||
inline float process()
|
inline float process()
|
||||||
{
|
{
|
||||||
|
|||||||
Reference in New Issue
Block a user