Не удалось выполнить createMediaElementSource в AudioContext. ⇐ Javascript
-
Гость
Не удалось выполнить createMediaElementSource в AudioContext.
Я получаю сообщение Uncaught DOMException: не удалось выполнить createMediaElementSource в AudioContext: HTMLMediaElement уже подключен ранее к другому MediaElementSourceNode, когда я выбираю трек2 после трека1 или трек1 после трека2.
Это мой код, и я понятия не имею, как от него избавиться. Я хочу иметь возможность выбирать элементы без этой ошибки.
const audioDB = [{ 'индекс': 0, 'src': 'https://s3-us-west-2.amazonaws.com/s.cd ... g-crop.ogg' }, { 'индекс': 1, 'src': 'https://s.cdpn.io/1202/Star_Wars_origin ... l_1977.mp3' } ]; constContainer = document.querySelector('#container'); const audio = document.querySelector('audio'); Container.addEventListener('change', (event) => { событие.preventDefault(); const dropVal = document.querySelector('#valueSelection').value; const adjVal = dropVal - 1; const URL = audioDB[adjVal].src; const urlIndex = audioDB[adjVal].index audio.src = URL; аудио.играть(); пусть audioContext; если (!audioContext) { audioContext = new(window.AudioContext || window.webkitAudioContext)(); }; константный анализатор = audioContext.createAnalyser(); const audioSrc = audioContext.createMediaElementSource(аудио); audioSrc.connect(анализатор); analyser.connect(audioContext.destination); }) Выберите значение Пожалуйста, выберите значение дорожка1 дорожка2
Я получаю сообщение Uncaught DOMException: не удалось выполнить createMediaElementSource в AudioContext: HTMLMediaElement уже подключен ранее к другому MediaElementSourceNode, когда я выбираю трек2 после трека1 или трек1 после трека2.
Это мой код, и я понятия не имею, как от него избавиться. Я хочу иметь возможность выбирать элементы без этой ошибки.
const audioDB = [{ 'индекс': 0, 'src': 'https://s3-us-west-2.amazonaws.com/s.cd ... g-crop.ogg' }, { 'индекс': 1, 'src': 'https://s.cdpn.io/1202/Star_Wars_origin ... l_1977.mp3' } ]; constContainer = document.querySelector('#container'); const audio = document.querySelector('audio'); Container.addEventListener('change', (event) => { событие.preventDefault(); const dropVal = document.querySelector('#valueSelection').value; const adjVal = dropVal - 1; const URL = audioDB[adjVal].src; const urlIndex = audioDB[adjVal].index audio.src = URL; аудио.играть(); пусть audioContext; если (!audioContext) { audioContext = new(window.AudioContext || window.webkitAudioContext)(); }; константный анализатор = audioContext.createAnalyser(); const audioSrc = audioContext.createMediaElementSource(аудио); audioSrc.connect(анализатор); analyser.connect(audioContext.destination); }) Выберите значение Пожалуйста, выберите значение дорожка1 дорожка2
Мобильная версия