| // GENERATED CONTENT - DO NOT EDIT |
| // Content was automatically extracted by Reffy into webref |
| // (https://github.com/w3c/webref) |
| // Source: WebRTC Insertable Media using Streams (https://w3c.github.io/webrtc-insertable-streams/) |
| |
| // New dictionary. |
| dictionary RTCInsertableStreams { |
| ReadableStream readable; |
| WritableStream writable; |
| }; |
| |
| // New enum for video frame types. Will eventually re-use the equivalent defined |
| // by WebCodecs. |
| enum RTCEncodedVideoFrameType { |
| "empty", |
| "key", |
| "delta", |
| }; |
| |
| dictionary RTCEncodedVideoFrameMetadata { |
| long long frameId; |
| sequence<long long> dependencies; |
| unsigned short width; |
| unsigned short height; |
| long spatialIndex; |
| long temporalIndex; |
| long synchronizationSource; |
| sequence<long> contributingSources; |
| }; |
| |
| // New interfaces to define encoded video and audio frames. Will eventually |
| // re-use or extend the equivalent defined in WebCodecs. |
| [Exposed=Window] |
| interface RTCEncodedVideoFrame { |
| readonly attribute RTCEncodedVideoFrameType type; |
| readonly attribute unsigned long long timestamp; |
| attribute ArrayBuffer data; |
| RTCEncodedVideoFrameMetadata getMetadata(); |
| }; |
| |
| dictionary RTCEncodedAudioFrameMetadata { |
| long synchronizationSource; |
| sequence<long> contributingSources; |
| }; |
| |
| [Exposed=Window] |
| interface RTCEncodedAudioFrame { |
| readonly attribute unsigned long long timestamp; |
| attribute ArrayBuffer data; |
| RTCEncodedAudioFrameMetadata getMetadata(); |
| }; |
| |
| // New fields in RTCConfiguration |
| partial dictionary RTCConfiguration { |
| boolean encodedInsertableStreams = false; |
| }; |
| |
| // New methods for RTCRtpSender and RTCRtpReceiver |
| partial interface RTCRtpSender { |
| RTCInsertableStreams createEncodedStreams(); |
| }; |
| |
| partial interface RTCRtpReceiver { |
| RTCInsertableStreams createEncodedStreams(); |
| }; |