How to stretch time while maintaining pitch on AudioBufferSourceNode?

I am looking for a phase vocoder in javascript or some kind of pitch / time shift algorithm that I could use with webaudio when changing the playback speed to prevent the pitch from changing.

edit: I found https://github.com/also/soundtouch-js however it is not perfect because it must have access to the full source file; I am developing a system with several tracks (each with its own gain control); so ideally I would need a system with which I can connect all my nodes, instead of combining them or creating multiple soundtouch systems.

+4
source share

All Articles