Множественная ошибка AudioContext при воспроизведении звуков в состоянии наведения элемента

Я пытаюсь воспроизводить звуки и визуализировать частоту (через D3.js), когда я зависаю над элементом. Проблема в том, что я получаю эту ошибку при переходе от одного элемента к другому:

main.js:94 Uncaught NotSupportedError: Failed to construct 'AudioContext': The number of hardware contexts provided (6) is greater than or equal to the maximum bound (6)

Вот мой код:

    $('.item').on('mouseenter', function(){
    itemId = $(this).attr('data-id');
    $(itemId).trigger("play");

    var audioCtx = new (window.AudioContext || window.webkitAudioContext)();
    var audioElement = document.getElementById(itemId);
    var audioSrc = audioCtx.createMediaElementSource(audioElement);
    var analyser = audioCtx.createAnalyser();

    // Bind our analyser to the media element source.
    audioSrc.connect(analyser);
    audioSrc.connect(audioCtx.destination);

    var frequencyData = new Uint8Array(50);

    //D3.JS Stuffs here
});
$('.item').on('mouseleave', function(){
    itemId = $(this).attr('data-id');

    $('#' + coverId).trigger("pause");
});

Я пробовал много вещей, но ничего не работает, любая помощь будет очень и очень признательна! Спасибо!


person user990463    schedule 08.05.2016    source источник


Ответы (1)


AudioContext должен быть уникальным. Попробуйте объявить его только один раз вне вашей функции mouseenter.

person TGrif    schedule 08.05.2016
comment
Уже пробовал это, но он выдает ошибку в createMediaElementSource() и говорит, что HTMLelement уже ограничен:/ - person user990463; 09.05.2016