Back to Content

AudioDecoder: configure() method

files/en-us/web/api/audiodecoder/configure/index.md

latest2.0 KB
Original Source

{{securecontext_header}}{{APIRef("WebCodecs API")}}{{AvailableInWorkers("window_and_dedicated")}}

The configure() method of the {{domxref("AudioDecoder")}} interface enqueues a control message to configure the audio decoder for decoding chunks.

Syntax

js-nolint
configure(config)

Parameters

  • config
    • : A dictionary object containing the following members:
      • codec
      • sampleRate
        • : An integer representing the number of frame samples per second.
      • numberOfChannels
        • : An integer representing the number of audio channels.
      • description {{optional_inline}}
        • : An {{jsxref("ArrayBuffer")}}, a {{jsxref("TypedArray")}}, or a {{jsxref("DataView")}} containing a sequence of codec specific bytes, commonly known as extradata.

[!NOTE] The registrations in the WebCodecs Codec Registry link to a specification detailing whether and how to populate the optional description member.

Return value

None ({{jsxref("undefined")}}).

Exceptions

  • {{jsxref("TypeError")}}
    • : Thrown if the provided config is invalid.
  • InvalidStateError {{domxref("DOMException")}}
    • : Thrown if the {{domxref("AudioDecoder.state","state")}} is "closed".
  • NotSupportedError {{domxref("DOMException")}}
    • : Thrown if the provided config is valid but the user agent cannot provide a codec that can decode this profile.

Examples

The following example configures the audioDecoder with the opus codec.

js
audioDecoder.configure({
  codec: "opus",
  sampleRate: 44100,
  numberOfChannels: 2,
});

Specifications

{{Specifications}}

Browser compatibility

{{Compat}}