files/en-us/web/api/sourcebuffer/removeasync/index.md
{{APIRef("Media Source Extensions")}}{{AvailableInWorkers("window_and_dedicated")}}{{Non-standard_Header}}{{SeeCompatTable}}
The removeAsync() method of the
{{domxref("SourceBuffer")}} interface starts the process of asynchronously removing
from the SourceBuffer media segments found within a specific time
range. A {{jsxref("Promise")}} is returned, which is fulfilled when the buffers
in the specified time range have been removed.
This method can only be called when {{domxref("SourceBuffer.updating", "updating")}} is
false. If that's not the case, call {{domxref("SourceBuffer.abort", "abort()")}} instead.
removeAsync(start, end)
start
end
A {{jsxref("Promise")}} whose fulfillment handler is executed once the buffers in the
specified time range have been removed from the SourceBuffer.
This example establishes an asynchronous function, emptySourceBuffer(),
which clears the contents of the specified SourceBuffer.
async function emptySourceBuffer(msBuffer) {
await msBuffer.removeAsync(0, Infinity).catch((e) => {
handleException(e);
});
}
This feature is not part of any specification. It is not on track to become a standard.
{{Compat}}