68 int midiNoteForNormalPitch,
69 double attackTimeSecs,
70 double releaseTimeSecs,
71 double maxSampleLengthSeconds);
90 bool appliesToNote (
int midiNoteNumber)
override;
91 bool appliesToChannel (
int midiChannel)
override;
98 std::unique_ptr<AudioBuffer<float>> data;
99 double sourceSampleRate;
101 int length = 0, midiRootNote = 0;
134 void stopNote (
float velocity,
bool allowTailOff)
override;
144 double pitchRatio = 0;
145 double sourceSamplePosition = 0;
146 float lgain = 0, rgain = 0;
SamplerSound(const String &name, AudioFormatReader &source, const BigInteger &midiNotes, int midiNoteForNormalPitch, double attackTimeSecs, double releaseTimeSecs, double maxSampleLengthSeconds)
AudioBuffer< float > * getAudioData() const noexcept
void setEnvelopeParameters(ADSR::Parameters parametersToUse)
const String & getName() const noexcept
void startNote(int midiNoteNumber, float velocity, SynthesiserSound *, int pitchWheel) override
void controllerMoved(int controllerNumber, int newValue) override
bool canPlaySound(SynthesiserSound *) override
void renderNextBlock(AudioBuffer< float > &, int startSample, int numSamples) override
void pitchWheelMoved(int newValue) override
void stopNote(float velocity, bool allowTailOff) override
virtual void renderNextBlock(AudioBuffer< float > &outputBuffer, int startSample, int numSamples)=0