Подгрузить данные в буфер через fetch/MediaSource
video.src = URL.createObjectURL(source = new MediaSource);
// Начинаем подгрузку
(buffer = source.addSourceBuffer('video/mp4; codecs="avc1.42E01E, mp4a.40.2"')).onupdateend = _ => {
// Подгрузка закончена, видео полностью загружено
source.endOfStream();
video.muted = true;
video.play();
};
buffer.appendBuffer(fetch('frag_bunny.mp4').then(r => r.arrayBuffer()))
У меня несколько вопросов
Не удается подгрузить данные видео, в буфер, через fetch, через xhr получается
(xhr = new XMLHttpRequest).open('get', 'frag_bunny.mp4'); xhr.responseType = 'arraybuffer'; xhr.onload = _ => { console.log(xhr.response); buffer.appendBuffer(xhr.response); } xhr.send();
2 Вопрос. Данным способом мы ждем когда видео целиком погрузится в буфер. Затем срабатывает слушатель onupdateend можем запускать. Вопрос как делать так, чтобы запускать видео в том случаи когда видео подгружено не полностью.
3 Вопрос. Возможноли, когда проигрываем видео, ссылка на который приведена в теге к
URL.createObjectURL(source = new MediaSource)
Запускать следующее видео без ее подмены? То есть, возможно ли в этот же самый буфер добавлять следующую дорожку?