Skip to content

Commit 586ec1b

Browse files
Add OpusEncoderConfig.[signal/application]
1 parent d5a4ed2 commit 586ec1b

1 file changed

Lines changed: 77 additions & 0 deletions

File tree

opus_codec_registration.src.html

Lines changed: 77 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -46,6 +46,12 @@
4646
"title": "RFC 7845: Ogg Encapsulation for the Opus Audio Codec",
4747
"publisher": "IETF",
4848
"date": "April 2016"
49+
},
50+
"OBJECT-RTC": {
51+
"href": "https://w3c.github.io/ortc/",
52+
"title": "Object RTC (ORTC) API for WebRTC",
53+
"publisher": "W3C",
54+
"date": "January 2021"
4955
}
5056
}
5157
</pre>
@@ -115,6 +121,8 @@
115121
<xmp>
116122
dictionary OpusEncoderConfig {
117123
OpusBitstreamFormat format = "opus";
124+
OpusSignal signal = "auto";
125+
OpusApplication application = "audio";
118126
[EnforceRange] unsigned long long frameDuration = 20000;
119127
[EnforceRange] unsigned long complexity;
120128
[EnforceRange] unsigned long packetlossperc = 0;
@@ -139,6 +147,14 @@
139147
Configures the format of output {{EncodedAudioChunk}}s. See
140148
{{OpusBitstreamFormat}}.
141149
</dd>
150+
<dt><dfn dict-member for=OpusEncoderConfig>signal</dfn></dt>
151+
<dd>
152+
Specificies the type of audio signal being encoded. See {{OpusSignal}}.
153+
</dd>
154+
<dt><dfn dict-member for=OpusEncoderConfig>application</dfn></dt>
155+
<dd>
156+
Specificies the encoder's intended application. See {{OpusApplication}}.
157+
</dd>
142158
<dt><dfn dict-member for=OpusEncoderConfig>frameDuration</dfn></dt>
143159
<dd>
144160
Configures the frame duration, in microseconds, of output {{EncodedAudioChunk}}s.
@@ -197,6 +213,67 @@
197213
</dd>
198214
</dl>
199215

216+
OpusSignal {#opus-signal}
217+
------------------------------------------
218+
<pre class='idl'>
219+
<xmp>
220+
enum OpusSignal {
221+
"auto",
222+
"music",
223+
"voice",
224+
};
225+
</xmp>
226+
</pre>
227+
228+
The {{OpusSignal}} describes the type of audio signal being encoded. See
229+
[secion 9.3.1.1](https://draft.ortc.org/#opus-codec-options*) of [[OBJECT-RTC]].
230+
231+
<dl>
232+
<dt><dfn enum-value for=OpusSignal>auto</dfn></dt>
233+
<dd>
234+
The audio signal is not known to be of a particular type.
235+
</dd>
236+
<dt><dfn enum-value for=OpusSignal>music</dfn></dt>
237+
<dd>
238+
The audio signal is music.
239+
</dd>
240+
<dt><dfn enum-value for=OpusSignal>voice</dfn></dt>
241+
<dd>
242+
The audio signal is voice or speech.
243+
</dd>
244+
</dl>
245+
246+
OpusApplication {#opus-application}
247+
------------------------------------------
248+
<pre class='idl'>
249+
<xmp>
250+
enum OpusApplication {
251+
"voip",
252+
"audio",
253+
"lowdelay",
254+
};
255+
</xmp>
256+
</pre>
257+
258+
The {{OpusApplication}} describes the intended application. See
259+
[secion 9.3.1.1](https://draft.ortc.org/#opus-codec-options*) of [[OBJECT-RTC]].
260+
261+
<dl>
262+
<dt><dfn enum-value for=OpusApplication>voip</dfn></dt>
263+
<dd>
264+
Process signal for improved speech intelligibility.
265+
</dd>
266+
<dt><dfn enum-value for=OpusApplication>audio</dfn></dt>
267+
<dd>
268+
Favor faithfulness to the original input.
269+
</dd>
270+
<dt><dfn enum-value for=OpusApplication>lowdelay</dfn></dt>
271+
<dd>
272+
Configure the minimum possible coding delay by disabling certain modes of
273+
operation.
274+
</dd>
275+
</dl>
276+
200277
Privacy Considerations {#privacy-considerations}
201278
==========================================================================
202279

0 commit comments

Comments
 (0)