Time-domain
pitch shifting | time stretching | formant shifting
Built on Time-Domain Pitch-Synchronous Overlap and Add (TD-PSOLA)
A small experimental TD-PSOLA engine that can:
- Pitch shift
- Time stretch
- Preserve/adjust formants
input | 12 semitones up | 12 semitones down
drive distortion | fry distortion
for more experiments, please check audio folder
Dependencies:
pip install numpy soundfile praat-parselmouthNote: praat-parselmouth is used for pitch estimation and epoch marking
import soundfile as sf
from td_psola import td_psola # or paste the function into your script
audio, sr = sf.read("input_audio.wav")
result = td_psola(
audio, sr,
pitch_semitones=12,
stretch_factor=1.0,
)
sf.write("output_audio.wav", result, sr)made with questionable sleep schedules please I am suffering




