@webref/idl 3.19.0 → 3.20.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/fs.idl CHANGED
@@ -85,10 +85,10 @@ interface FileSystemSyncAccessHandle {
85
85
  unsigned long long write([AllowShared] BufferSource buffer,
86
86
  optional FileSystemReadWriteOptions options = {});
87
87
 
88
- Promise<undefined> truncate([EnforceRange] unsigned long long newSize);
89
- Promise<unsigned long long> getSize();
90
- Promise<undefined> flush();
91
- Promise<undefined> close();
88
+ undefined truncate([EnforceRange] unsigned long long newSize);
89
+ unsigned long long getSize();
90
+ undefined flush();
91
+ undefined close();
92
92
  };
93
93
 
94
94
  [SecureContext]
package/package.json CHANGED
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "name": "@webref/idl",
3
3
  "description": "Web IDL definitions of the web platform",
4
- "version": "3.19.0",
4
+ "version": "3.20.1",
5
5
  "repository": {
6
6
  "type": "git",
7
7
  "url": "https://github.com/w3c/webref.git"
@@ -7,10 +7,15 @@ partial interface MediaDevices {
7
7
  Promise<MediaStream> getDisplayMedia(optional DisplayMediaStreamOptions options = {});
8
8
  };
9
9
 
10
+ enum CaptureStartFocusBehavior {
11
+ "focus-captured-surface",
12
+ "no-focus-change"
13
+ };
14
+
10
15
  [Exposed=Window, SecureContext]
11
16
  interface CaptureController {
12
17
  constructor();
13
- // TODO: Add setFocusBehavior() in a separate PR.
18
+ undefined setFocusBehavior(CaptureStartFocusBehavior focusBehavior);
14
19
  };
15
20
 
16
21
  enum SelfCapturePreferenceEnum {
package/webaudio.idl CHANGED
@@ -64,16 +64,23 @@ enum AudioContextLatencyCategory {
64
64
  "playback"
65
65
  };
66
66
 
67
+ enum AudioSinkType {
68
+ "none"
69
+ };
70
+
67
71
  [Exposed=Window]
68
72
  interface AudioContext : BaseAudioContext {
69
73
  constructor (optional AudioContextOptions contextOptions = {});
70
74
  readonly attribute double baseLatency;
71
75
  readonly attribute double outputLatency;
76
+ [SecureContext] readonly attribute (DOMString or AudioSinkInfo) sinkId;
72
77
  [SecureContext] readonly attribute AudioRenderCapacity renderCapacity;
78
+ attribute EventHandler onsinkchange;
73
79
  AudioTimestamp getOutputTimestamp ();
74
80
  Promise<undefined> resume ();
75
81
  Promise<undefined> suspend ();
76
82
  Promise<undefined> close ();
83
+ [SecureContext] Promise<undefined> setSinkId ((DOMString or AudioSinkOptions) sinkId);
77
84
  MediaElementAudioSourceNode createMediaElementSource (HTMLMediaElement mediaElement);
78
85
  MediaStreamAudioSourceNode createMediaStreamSource (MediaStream mediaStream);
79
86
  MediaStreamTrackAudioSourceNode createMediaStreamTrackSource (
@@ -84,6 +91,16 @@ interface AudioContext : BaseAudioContext {
84
91
  dictionary AudioContextOptions {
85
92
  (AudioContextLatencyCategory or double) latencyHint = "interactive";
86
93
  float sampleRate;
94
+ (DOMString or AudioSinkOptions) sinkId;
95
+ };
96
+
97
+ dictionary AudioSinkOptions {
98
+ required AudioSinkType type;
99
+ };
100
+
101
+ [Exposed=Window]
102
+ interface AudioSinkInfo {
103
+ readonly attribute AudioSinkType type;
87
104
  };
88
105
 
89
106
  dictionary AudioTimestamp {
@@ -0,0 +1,17 @@
1
+ // GENERATED CONTENT - DO NOT EDIT
2
+ // Content was automatically extracted by Reffy into webref
3
+ // (https://github.com/w3c/webref)
4
+ // Source: AAC WebCodecs Registration (https://w3c.github.io/webcodecs/aac_codec_registration.html)
5
+
6
+ partial dictionary AudioEncoderConfig {
7
+ AacEncoderConfig aac;
8
+ };
9
+
10
+ dictionary AacEncoderConfig {
11
+ AacBitstreamFormat format = "aac";
12
+ };
13
+
14
+ enum AacBitstreamFormat {
15
+ "aac",
16
+ "adts",
17
+ };
@@ -0,0 +1,17 @@
1
+ // GENERATED CONTENT - DO NOT EDIT
2
+ // Content was automatically extracted by Reffy into webref
3
+ // (https://github.com/w3c/webref)
4
+ // Source: AVC (H.264) WebCodecs Registration (https://w3c.github.io/webcodecs/avc_codec_registration.html)
5
+
6
+ partial dictionary VideoEncoderConfig {
7
+ AvcEncoderConfig avc;
8
+ };
9
+
10
+ dictionary AvcEncoderConfig {
11
+ AvcBitstreamFormat format = "avc";
12
+ };
13
+
14
+ enum AvcBitstreamFormat {
15
+ "annexb",
16
+ "avc",
17
+ };
@@ -0,0 +1,17 @@
1
+ // GENERATED CONTENT - DO NOT EDIT
2
+ // Content was automatically extracted by Reffy into webref
3
+ // (https://github.com/w3c/webref)
4
+ // Source: HEVC (H.265) WebCodecs Registration (https://w3c.github.io/webcodecs/hevc_codec_registration.html)
5
+
6
+ partial dictionary VideoEncoderConfig {
7
+ HevcEncoderConfig hevc;
8
+ };
9
+
10
+ dictionary HevcEncoderConfig {
11
+ HevcBitstreamFormat format = "hevc";
12
+ };
13
+
14
+ enum HevcBitstreamFormat {
15
+ "annexb",
16
+ "hevc",
17
+ };
@@ -0,0 +1,18 @@
1
+ // GENERATED CONTENT - DO NOT EDIT
2
+ // Content was automatically extracted by Reffy into webref
3
+ // (https://github.com/w3c/webref)
4
+ // Source: Opus WebCodecs Registration (https://w3c.github.io/webcodecs/opus_codec_registration.html)
5
+
6
+ partial dictionary AudioEncoderConfig {
7
+ OpusEncoderConfig opus;
8
+ };
9
+
10
+ dictionary OpusEncoderConfig {
11
+ OpusBitstreamFormat format = "opus";
12
+ [EnforceRange] unsigned long frameDuration;
13
+ };
14
+
15
+ enum OpusBitstreamFormat {
16
+ "opus",
17
+ "ogg",
18
+ };
package/webcodecs.idl CHANGED
@@ -146,7 +146,7 @@ dictionary AudioDecoderConfig {
146
146
 
147
147
  dictionary VideoDecoderConfig {
148
148
  required DOMString codec;
149
- BufferSource description;
149
+ [AllowShared] BufferSource description;
150
150
  [EnforceRange] unsigned long codedWidth;
151
151
  [EnforceRange] unsigned long codedHeight;
152
152
  [EnforceRange] unsigned long displayAspectWidth;
@@ -312,6 +312,8 @@ interface VideoFrame {
312
312
  readonly attribute long long timestamp; // microseconds
313
313
  readonly attribute VideoColorSpace colorSpace;
314
314
 
315
+ VideoFrameMetadata metadata();
316
+
315
317
  unsigned long allocationSize(
316
318
  optional VideoFrameCopyToOptions options = {});
317
319
  Promise<sequence<PlaneLayout>> copyTo(
@@ -334,6 +336,8 @@ dictionary VideoFrameInit {
334
336
  // Default matches image unless visibleRect is provided.
335
337
  [EnforceRange] unsigned long displayWidth;
336
338
  [EnforceRange] unsigned long displayHeight;
339
+
340
+ VideoFrameMetadata metadata;
337
341
  };
338
342
 
339
343
  dictionary VideoFrameBufferInit {
@@ -356,6 +360,10 @@ dictionary VideoFrameBufferInit {
356
360
  VideoColorSpaceInit colorSpace;
357
361
  };
358
362
 
363
+ dictionary VideoFrameMetadata {
364
+ // Possible members are recorded in the VideoFrame Metadata Registry.
365
+ };
366
+
359
367
  dictionary VideoFrameCopyToOptions {
360
368
  DOMRectInit rect;
361
369
  sequence<PlaneLayout> layout;
@@ -400,29 +408,35 @@ interface VideoColorSpace {
400
408
  };
401
409
 
402
410
  dictionary VideoColorSpaceInit {
403
- VideoColorPrimaries primaries;
404
- VideoTransferCharacteristics transfer;
405
- VideoMatrixCoefficients matrix;
406
- boolean fullRange;
411
+ VideoColorPrimaries? primaries = null;
412
+ VideoTransferCharacteristics? transfer = null;
413
+ VideoMatrixCoefficients? matrix = null;
414
+ boolean? fullRange = null;
407
415
  };
408
416
 
409
417
  enum VideoColorPrimaries {
410
- "bt709", // BT.709, sRGB
411
- "bt470bg", // BT.601 PAL
412
- "smpte170m", // BT.601 NTSC
418
+ "bt709",
419
+ "bt470bg",
420
+ "smpte170m",
421
+ "bt2020",
422
+ "smpte432",
413
423
  };
414
424
 
415
425
  enum VideoTransferCharacteristics {
416
- "bt709", // BT.709
417
- "smpte170m", // BT.601 (functionally the same as bt709)
418
- "iec61966-2-1", // sRGB
426
+ "bt709",
427
+ "smpte170m",
428
+ "iec61966-2-1",
429
+ "linear",
430
+ "pq",
431
+ "hlg",
419
432
  };
420
433
 
421
434
  enum VideoMatrixCoefficients {
422
- "rgb", // sRGB
423
- "bt709", // BT.709
424
- "bt470bg", // BT.601 PAL
425
- "smpte170m", // BT.601 NTSC (functionally the same as bt470bg)
435
+ "rgb",
436
+ "bt709",
437
+ "bt470bg",
438
+ "smpte170m",
439
+ "bt2020-ncl",
426
440
  };
427
441
 
428
442
  [Exposed=(Window,DedicatedWorker), SecureContext]
@@ -80,7 +80,7 @@ dictionary RTCEncodedVideoFrameMetadata {
80
80
  [Exposed=(Window,DedicatedWorker)]
81
81
  interface RTCEncodedVideoFrame {
82
82
  readonly attribute RTCEncodedVideoFrameType type;
83
- readonly attribute unsigned long timestamp; // RTP timestamp.
83
+ readonly attribute unsigned long timestamp;
84
84
  attribute ArrayBuffer data;
85
85
  RTCEncodedVideoFrameMetadata getMetadata();
86
86
  };
@@ -93,13 +93,11 @@ dictionary RTCEncodedAudioFrameMetadata {
93
93
 
94
94
  [Exposed=(Window,DedicatedWorker)]
95
95
  interface RTCEncodedAudioFrame {
96
- readonly attribute unsigned long timestamp; // RTP timestamp.
96
+ readonly attribute unsigned long timestamp;
97
97
  attribute ArrayBuffer data;
98
98
  RTCEncodedAudioFrameMetadata getMetadata();
99
99
  };
100
100
 
101
- // New interfaces to expose JavaScript-based transforms.
102
-
103
101
  [Exposed=DedicatedWorker]
104
102
  interface RTCTransformEvent : Event {
105
103
  readonly attribute RTCRtpScriptTransformer transformer;
package/webrtc.idl CHANGED
@@ -316,6 +316,7 @@ dictionary RTCRtpCodingParameters {
316
316
  dictionary RTCRtpEncodingParameters : RTCRtpCodingParameters {
317
317
  boolean active = true;
318
318
  unsigned long maxBitrate;
319
+ double maxFramerate;
319
320
  double scaleResolutionDownBy;
320
321
  };
321
322