Javascript Web Audio Алгоритм многоканального панорамирования - PullRequest
0 голосов
/ 07 июня 2018

Недавно я получил работу по программированию аудиосистемы для новой комнаты виртуальной реальности в моей школе.Моя первая задача - предоставить алгоритм панорамирования для звуковой системы с произвольным количеством динамиков.Таким образом, если имеется 20 динамиков, он должен иметь возможность панорамирования звука по одномерному массиву из 20 динамиков, где минимальное значение ручки панорамирования будет в 1-м динамике, а максимальное - в 20-м динамике, икогда вы постепенно увеличиваете регулятор, он должен последовательно передавать звук через каждый динамик.

Я получил это для работы в SuperCollider (http://doc.sccode.org/Classes/PanX.html), но им нужна аудиосистема, чтобы быть в Javascript.Существуют ли какие-либо пакеты API или npm, которые я должен использовать?Я подумывал только об использовании канала Slitter и в веб-аудио API (https : //developer.mozilla.org/en-US/docs/Web/API/ChannelSplitterNode) и просто изменить усилениевсех каналов относительно положения ручек панорамирования, но это похоже на наивный подход.Кто-нибудь нашел какие-либо пакеты или apis в javascript, которые предоставляют инструменты для работы с произвольным числом каналов?Я посмотрел, но не могу ничего найти.Я также нашел инструменты ambisonics в javascript, но система не будет иметь сферическую настройку динамиков, так что это не идеально.

Спасибо!Шон

...