Изменить высоту звукового буфера

Я пытаюсь изменить высоту буфера, используя скрипт-процессор, но какие формулы мне нужны для этого? Я не ищу точный код JS, но просто для общего математического, как. Я хотел бы иметь некоторый код для этого, так как в первом ответе есть много формул, где я понятия не имею, как реализовать это в JS.

Я знаю, что это работает со временем, но в соответствии с этим это можно сделать с помощью БПФ, но я понятия не имею, как это сделать.

2 ответа

Я считаю, что https://github.com/mikolalysenko/pitch-shift будет уместным (качество не на уровне другого кода, но эта библиотека довольно проста для понимания / использования). Вы можете услышать демо на http://mikolalysenko.github.io/pitch-shift/.

Для одного метода выполнения изменения высоты тона, используя FFT, ищите фазовый вокодер. Вот одно из объяснений того, как работает фазовый вокодер (но при поиске будет много других): http://www.guitarpitchshifter.com/algorithm.html

Другие вопросы по тегам