HephAudio v3.1.0
A cross-platform C++ library for recording, playing, and processing audio on Windows, Android, Linux, iOS, and macOS.
Loading...
Searching...
No Matches
PitchShifter.h
Go to the documentation of this file.
1#pragma once
2#include "HephAudioShared.h"
3#include "OlaEffect.h"
4
7namespace HephAudio
8{
14 {
15 protected:
21
22 public:
25
27 PitchShifter(size_t hopSize, const Window& wnd);
28
37 PitchShifter(double toneChange, size_t hopSize, const Window& wnd);
38
40 virtual ~PitchShifter() = default;
41
42 virtual std::string Name() const override;
43
48 virtual double GetToneChange() const;
49
56 virtual void SetToneChange(double toneChange);
57
58 protected:
59 virtual void ProcessST(const AudioBuffer& inputBuffer, AudioBuffer& outputBuffer, size_t startIndex, size_t frameCount) override;
60 };
61}
#define HEPH_API
Definition HephShared.h:124
class for storing the audio samples in internal format.
Definition AudioBuffer.h:16
base class for effects that use overlap-add method.
Definition OlaEffect.h:16
changes the pitch without changing the playback speed.
Definition PitchShifter.h:14
virtual void ProcessST(const AudioBuffer &inputBuffer, AudioBuffer &outputBuffer, size_t startIndex, size_t frameCount) override
virtual ~PitchShifter()=default
PitchShifter(double toneChange, size_t hopSize, const Window &wnd)
virtual std::string Name() const override
virtual void SetToneChange(double toneChange)
virtual double GetToneChange() const
double pitchFactor
Definition PitchShifter.h:20
PitchShifter(size_t hopSize, const Window &wnd)
base class for windows.
Definition Window.h:14