Прелоадинг коллекции audio (mp3) файлов

Рейтинг: 1Ответов: 0Опубликовано: 24.01.2015

MSIE11, HTML5, JavaScript, new Audio()

Проблема: прелоадинг(-ируютя) только 123 файла?!

Условия упрощены до следующего состояния:

  • в папке 350 одинаковых (.mp3 17Кб) файлов;
  • имена файлов - номера от 1 до 350;

.

function collection(){  
    for(var i=1;i<=350;i++){MIM_BFR[i]=new Audio()  
        MIM_BFR[i].setAttribute('preload','auto')

        MIM_BFR[i].addEventListener('loadeddata',MIM_Yes)  
        MIM_BFR[i].addEventListener('error',MIM_No)

        MIM_BFR[i].setAttribute('autobuffer',true)  
        MIM_BFR[i].setAttribute('type','audio/mpeg')   
        MIM_BFR[i].src=mim_dir+i+'.mp3'
    }
}

Т.е. в MIM_Yes() фиксируются только 123 захода; всё остальное улетает в MIM_No():

  • номера загруженных файлов 'случайные' в [1-350]; их, кстати, можно и упорядочить (1-->123), если new Audio() совершать с интервалом в несколько миллисекунд;
  • попытка ввести число повторов при 'error' ничего нового не даёт;
  • замена 'loadeddata' на 'canplaythrough' также ничего нового не даёт;
  • употребление тега audio(HTML5) вместо new Audio()(JavaScript) - эффект тот же.

Вопрос: как объехать это ограничение - 123?
(Не хочется склеивать файлы (хотя папок со звуками, конечно, значительно меньше, чем 123) и считать интервалы!)

Ответы

Ответов пока нет.