Я новичок в веб-обработке звука и обработке звука в целом, но мне нужно добавить это в проект, я хочу передать голос через микрофон и модулировать голос, чтобы высота звука изменилась, и он получился по-другому .
Для контекста, моя команда создала приложение для видео и аудиочата на Webrt c, и мы хотим модулировать голос, чтобы партнер не мог определить акцент / тип голоса человека на другом конце звоните.
Я знаю, как открыть микрофон с помощью navigator.mediaDevices.getUserMedia, но я хочу передать потоковый голос и модулировать его, я хотел бы получить глубокий басовый голос и очень низкий голос, например женский, я пробовал это
var audioCtx = new AudioContext();
var source = audioCtx.createMediaStreamSource(stream);
var biquadFilter = audioCtx.createBiquadFilter();
biquadFilter.type = "highshelf";
biquadFilter.frequency.value = 400;
biquadFilter.gain.value = 30;
, а также этот
biquadFilter.type = "peaking";
biquadFilter.frequency.value = 1500;
biquadFilter.Q.value = 100;
biquadFilter.gain.value = 25;
Но у меня нет чистого вывода, так много шума, и он вообще не звучит ясно, не в точности как голос, который можно слушать. Я открыт для использования библиотек, если таковые имеются? Пожалуйста, мне нужна помощь и понимание