files/en-us/web/api/videoencoder/reset/index.md
{{APIRef("WebCodecs API")}}{{SecureContext_Header}}{{AvailableInWorkers("window_and_dedicated")}}
The reset() method of the {{domxref("VideoEncoder")}} interface synchronously cancels all pending encodes and callbacks, frees all underlying resources and sets the {{domxref("VideoEncoder.state", "state")}} to "unconfigured".
After calling reset(), {{domxref("VideoEncoder.configure()", "configure()")}} must be called before resuming {{domxref("VideoEncoder.encode()", "encode()")}} calls.
[!NOTE] To avoid discarding frames queued via {{domxref("VideoEncoder.encode()", "encode()")}}, {{domxref("VideoEncoder.flush()", "flush()")}} should be called and completed before calling
reset().
reset()
None.
None ({{jsxref("undefined")}}).
InvalidStateError {{domxref("DOMException")}}
"closed".The following example resets the VideoEncoder.
VideoEncoder.reset();
{{Specifications}}
{{Compat}}