API веб-аудио, получите getByteTimeDomainData для левого/правого канала в двух массивах. ⇐ Javascript
-
Гость
API веб-аудио, получите getByteTimeDomainData для левого/правого канала в двух массивах.
В настоящее время я пытаюсь создать аудиовизуализацию с использованием API веб-аудио, а именно, я пытаюсь создать фигуры Лиссажу из заданного источника звука.
Я наткнулся на этот пост, но мне не хватает некоторых предварительных условий. Как я могу получить данные во временной области для левого/правого каналов? В настоящее время кажется, что я получаю только объединенные данные.
Будем очень признательны за любую помощь или подсказку.
$(document).ready(function () { вар audioCtx = новый (window.AudioContext || window.webkitAudioContext)(); var audioElement = document.getElementById('audioElement'); вар audioSrc = audioCtx.createMediaElementSource(audioElement); вар анализатор = audioCtx.createAnalyser(); // Привязываем анализатор к источнику медиа-элемента. audioSrc.connect(анализатор); audioSrc.connect (audioCtx.destination); //var timeDomainData = новый Uint8Array(analyser. FrequencyBinCount); вар timeDomainData = новый Uint8Array (200); // цикл и обновление массива данных во временной области. функция renderChart() { requestAnimationFrame (renderChart); // Копируем данные о частоте в массив timeDomainData. analyser.getByteTimeDomainData(timeDomainData); // отладка: вывод в консоль console.log(timeDomainData); } // Запускаем цикл рендерДиаграмма(); });
В настоящее время я пытаюсь создать аудиовизуализацию с использованием API веб-аудио, а именно, я пытаюсь создать фигуры Лиссажу из заданного источника звука.
Я наткнулся на этот пост, но мне не хватает некоторых предварительных условий. Как я могу получить данные во временной области для левого/правого каналов? В настоящее время кажется, что я получаю только объединенные данные.
Будем очень признательны за любую помощь или подсказку.
$(document).ready(function () { вар audioCtx = новый (window.AudioContext || window.webkitAudioContext)(); var audioElement = document.getElementById('audioElement'); вар audioSrc = audioCtx.createMediaElementSource(audioElement); вар анализатор = audioCtx.createAnalyser(); // Привязываем анализатор к источнику медиа-элемента. audioSrc.connect(анализатор); audioSrc.connect (audioCtx.destination); //var timeDomainData = новый Uint8Array(analyser. FrequencyBinCount); вар timeDomainData = новый Uint8Array (200); // цикл и обновление массива данных во временной области. функция renderChart() { requestAnimationFrame (renderChart); // Копируем данные о частоте в массив timeDomainData. analyser.getByteTimeDomainData(timeDomainData); // отладка: вывод в консоль console.log(timeDomainData); } // Запускаем цикл рендерДиаграмма(); });
Мобильная версия