23 static constexpr size_t DEFAULT_HOP_SIZE = 1024u;
24 static constexpr size_t DEFAULT_FFT_SIZE = 4096u;
30#pragma region Converts, Mix, Split/Merge Channels
63#pragma region Sound Effects
139 static void Chorus(
AudioBuffer& buffer,
double depth,
double feedbackGain,
double baseDelay_ms,
double delay_ms,
double extent_semitone,
const Oscillator& lfo);
306 static void EqualizerMT(
AudioBuffer& buffer,
size_t hopSize,
size_t fftSize,
size_t threadCountPerChannel,
Window& window,
const std::vector<EqualizerInfo>& infos);
379#pragma region Filters
615 static void BandCutFilterMT(
AudioBuffer& buffer,
size_t hopSize,
size_t fftSize,
double lowCutoffFreq,
double highCutoffFreq,
size_t threadCountPerChannel,
Window& window);
float heph_audio_sample_t
Definition HephAudioShared.h:133
#define HEPH_API
Definition HephShared.h:132
class for storing the audio samples in internal format.
Definition AudioBuffer.h:16
provides sound effects and filters.
Definition AudioProcessor.h:21
static void BandCutFilterMT(AudioBuffer &buffer, size_t hopSize, size_t fftSize, double lowCutoffFreq, double highCutoffFreq, size_t threadCountPerChannel, Window &window)
static void ChangeSpeed(AudioBuffer &buffer, double speed, Window &window)
static void LowPassFilterMT(AudioBuffer &buffer, double cutoffFreq, size_t threadCountPerChannel, Window &window)
static void Chorus(AudioBuffer &buffer, double depth, double feedbackGain, double baseDelay_ms, double delay_ms, double extent_semitone, const Oscillator &lfo)
static void EqualizerMT(AudioBuffer &buffer, size_t hopSize, size_t fftSize, Window &window, const std::vector< EqualizerInfo > &infos)
static void HighPassFilter(AudioBuffer &buffer, size_t hopSize, size_t fftSize, double cutoffFreq, Window &window)
static void Normalize(AudioBuffer &buffer, heph_audio_sample_t peakAmplitude)
static std::vector< Heph::DoubleBuffer > SplitChannels(const AudioBuffer &buffer)
static void ChangeChannelLayout(AudioBuffer &buffer, const AudioChannelLayout &outputChannelLayout)
static void BandPassFilter(AudioBuffer &buffer, double lowCutoffFreq, double highCutoffFreq, Window &window)
static void HighPassFilterMT(AudioBuffer &buffer, double cutoffFreq, size_t threadCountPerChannel, Window &window)
static void EqualizerMT(AudioBuffer &buffer, size_t threadCountPerChannel, Window &window, const std::vector< EqualizerInfo > &infos)
static void LinearFadeIn(AudioBuffer &buffer, double duration_s, size_t startIndex)
static void ChangeSampleRate(AudioBuffer &buffer, uint32_t outputSampleRate)
static void PitchShiftMT(AudioBuffer &buffer, double pitchChange_semitone, Window &window)
static void LowPassFilterMT(AudioBuffer &buffer, size_t hopSize, size_t fftSize, double cutoffFreq, size_t threadCountPerChannel, Window &window)
static void Equalizer(AudioBuffer &buffer, Window &window, const std::vector< EqualizerInfo > &infos)
static void LowPassFilter(AudioBuffer &buffer, double cutoffFreq, Window &window)
static void Tremolo(AudioBuffer &buffer, double depth, const Oscillator &lfo)
static void BandCutFilter(AudioBuffer &buffer, double lowCutoffFreq, double highCutoffFreq, Window &window)
static void Vibrato(AudioBuffer &buffer, double depth, double extent_semitone, const Oscillator &lfo)
static void Equalizer(AudioBuffer &buffer, size_t hopSize, size_t fftSize, Window &window, const std::vector< EqualizerInfo > &infos)
static void CubicDistortion(AudioBuffer &buffer, double a)
static void LinearPanning(AudioBuffer &buffer, double panningFactor)
static void Echo(AudioBuffer &buffer, EchoInfo info)
static void LowPassFilterMT(AudioBuffer &buffer, size_t hopSize, size_t fftSize, double cutoffFreq, Window &window)
static void HighPassFilterMT(AudioBuffer &buffer, double cutoffFreq, Window &window)
static void EqualizerMT(AudioBuffer &buffer, Window &window, const std::vector< EqualizerInfo > &infos)
static void BandPassFilterMT(AudioBuffer &buffer, size_t hopSize, size_t fftSize, double lowCutoffFreq, double highCutoffFreq, Window &window)
static void HighPassFilterMT(AudioBuffer &buffer, size_t hopSize, size_t fftSize, double cutoffFreq, size_t threadCountPerChannel, Window &window)
static void Overdrive(AudioBuffer &buffer, double drive)
static void BandCutFilter(AudioBuffer &buffer, size_t hopSize, size_t fftSize, double lowCutoffFreq, double highCutoffFreq, Window &window)
static void RmsNormalize(AudioBuffer &buffer, double rms)
static void PitchShiftMT(AudioBuffer &buffer, double pitchChange_semitone, size_t threadCountPerChannel, Window &window)
static void BandPassFilterMT(AudioBuffer &buffer, size_t hopSize, size_t fftSize, double lowCutoffFreq, double highCutoffFreq, size_t threadCountPerChannel, Window &window)
static void LowPassFilterMT(AudioBuffer &buffer, double cutoffFreq, Window &window)
static void BandCutFilterMT(AudioBuffer &buffer, double lowCutoffFreq, double highCutoffFreq, size_t threadCountPerChannel, Window &window)
static void BandPassFilterMT(AudioBuffer &buffer, double lowCutoffFreq, double highCutoffFreq, Window &window)
static void EqualizerMT(AudioBuffer &buffer, size_t hopSize, size_t fftSize, size_t threadCountPerChannel, Window &window, const std::vector< EqualizerInfo > &infos)
static void BandCutFilterMT(AudioBuffer &buffer, size_t hopSize, size_t fftSize, double lowCutoffFreq, double highCutoffFreq, Window &window)
static void BandPassFilterMT(AudioBuffer &buffer, double lowCutoffFreq, double highCutoffFreq, size_t threadCountPerChannel, Window &window)
static void HighPassFilterMT(AudioBuffer &buffer, size_t hopSize, size_t fftSize, double cutoffFreq, Window &window)
static void Flanger(AudioBuffer &buffer, double depth, double feedbackGain, double baseDelay_ms, double delay_ms, const Oscillator &lfo)
static void LinearFadeIn(AudioBuffer &buffer, double duration_s)
static void BandCutFilterMT(AudioBuffer &buffer, double lowCutoffFreq, double highCutoffFreq, Window &window)
static void LowPassFilter(AudioBuffer &buffer, size_t hopSize, size_t fftSize, double cutoffFreq, Window &window)
static void PitchShiftMT(AudioBuffer &buffer, size_t hopSize, size_t fftSize, double pitchChange_semitone, Window &window)
static void SquareLawPanning(AudioBuffer &buffer, double panningFactor)
static void SineLawPanning(AudioBuffer &buffer, double panningFactor)
static void BandPassFilter(AudioBuffer &buffer, size_t hopSize, size_t fftSize, double lowCutoffFreq, double highCutoffFreq, Window &window)
static void Fuzz(AudioBuffer &buffer, double depth, double alpha)
static void PitchShiftMT(AudioBuffer &buffer, size_t hopSize, size_t fftSize, double pitchChange_semitone, size_t threadCountPerChannel, Window &window)
static void FixOverflow(AudioBuffer &buffer)
static void ChangeSpeed(AudioBuffer &buffer, size_t hopSize, size_t windowSize, double speed, Window &window)
static void HighPassFilter(AudioBuffer &buffer, double cutoffFreq, Window &window)
static void LinearFadeOut(AudioBuffer &buffer, double duration_s, size_t startIndex)
static void LinearFadeOut(AudioBuffer &buffer, double duration_s)
static void ChangeEndian(AudioBuffer &buffer)
static void PitchShift(AudioBuffer &buffer, size_t hopSize, size_t fftSize, double pitchChange_semitone, Window &window)
static void HardClipDistortion(AudioBuffer &buffer, double clippingLevel_dB)
static void ArctanDistortion(AudioBuffer &buffer, double alpha)
static void PitchShift(AudioBuffer &buffer, double pitchChange_semitone, Window &window)
static AudioBuffer MergeChannels(const std::vector< Heph::DoubleBuffer > &channels, uint32_t sampleRate)
base class for oscillators.
Definition Oscillator.h:16
base class for windows.
Definition Window.h:14
stores information about the channel layout.
Definition AudioChannelLayout.h:136
container for echo effect parameters.
Definition EchoInfo.h:15