|
46 | 46 | "title": "RFC 7845: Ogg Encapsulation for the Opus Audio Codec", |
47 | 47 | "publisher": "IETF", |
48 | 48 | "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" |
49 | 55 | } |
50 | 56 | } |
51 | 57 | </pre> |
|
115 | 121 | <xmp> |
116 | 122 | dictionary OpusEncoderConfig { |
117 | 123 | OpusBitstreamFormat format = "opus"; |
| 124 | + OpusSignal signal = "auto"; |
| 125 | + OpusApplication application = "audio"; |
118 | 126 | [EnforceRange] unsigned long long frameDuration = 20000; |
119 | 127 | [EnforceRange] unsigned long complexity; |
120 | 128 | [EnforceRange] unsigned long packetlossperc = 0; |
|
139 | 147 | Configures the format of output {{EncodedAudioChunk}}s. See |
140 | 148 | {{OpusBitstreamFormat}}. |
141 | 149 | </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> |
142 | 158 | <dt><dfn dict-member for=OpusEncoderConfig>frameDuration</dfn></dt> |
143 | 159 | <dd> |
144 | 160 | Configures the frame duration, in microseconds, of output {{EncodedAudioChunk}}s. |
|
197 | 213 | </dd> |
198 | 214 | </dl> |
199 | 215 |
|
| 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 | + |
200 | 277 | Privacy Considerations {#privacy-considerations} |
201 | 278 | ========================================================================== |
202 | 279 |
|
|
0 commit comments