Note: This feature is available in Dedicated Web Workers.
The updateend event of the SourceBuffer interface signals the (not necessarily successful) completion of an appendBuffer() or remove() operation. The updating attribute transitions from true to false. This event is fired after the update, error, or abort events.
Use the event name in methods like addEventListener(), or set an event handler property.
addEventListener("updateend", (event) => { })
onupdateend = (event) => { }A generic Event.
This example demonstrates how to handle the updateend event. Note that we handle each completion event separately, and only use updateend for finalizing the stream.
const sourceBuffer = source.addSourceBuffer(mimeCodec);
sourceBuffer.addEventListener("abort", () => {
downloadStatus.textContent = "Canceled";
});
sourceBuffer.addEventListener("error", () => {
downloadStatus.textContent = "Error occurred during decoding";
});
sourceBuffer.addEventListener("update", () => {
downloadStatus.textContent = "Done";
});
sourceBuffer.addEventListener("updateend", () => {
source.endOfStream();
});
downloadStatus.textContent = "Downloading...";
fetch(assetURL)
.then((response) => response.arrayBuffer())
.then((data) => {
downloadStatus.textContent = "Decoding...";
sourceBuffer.appendBuffer(data);
});