我有一些这样的代码:
fetch(audioSRC).then(response => {
return new Response( new ReadableStream({
start(controller) {
const reader = response.body.getReader();
read(); function read() {
reader.read().then(({done, value}) => {
if (done) {
controller.close();
return;
}
read();
})
}
}
})
);
}).then(response => response.blob()).then(blob => {
let vid = URL.createObjectURL(blob);
player.src = vid;
})
我想知道是否有可能采取这个流,而它是不完整的,并在下载完成之前播放什么是在视频/音频元素下载?如果有一种方法可以流畅地完成它,那就太好了,这样用户就不必等到它完全下载完。
它与https://developer.mozilla.org/en-US/docs/Web/API/MediaSource一起工作经过几个小时的实验,我找到了一个半途而废的解决方案:https://stackoverflow.com/a/68778572/11979842