@@ -586,18 +586,34 @@ interface RTCTransformEvent : Event {
586586 readonly attribute RTCRtpScriptTransformer transformer;
587587};
588588
589+ interface BandwidthInfo {
590+ readonly attribute long bandwidth; // bits per second
591+ readonly attribute long bufferDepth; // bytes that can be sent with no loss at sender
592+ };
593+
589594partial interface DedicatedWorkerGlobalScope {
590595 attribute EventHandler onrtctransform;
591596};
592597
593- [Exposed=DedicatedWorker]
594- interface RTCRtpScriptTransformer {
598+ interface mixin RTCRtpScriptSource {
595599 readonly attribute ReadableStream readable;
596- readonly attribute WritableStream writable;
597- readonly attribute any options;
598600 Promise<unsigned long long> generateKeyFrame(optional DOMString rid);
599601 Promise<undefined> sendKeyFrameRequest();
602+ undefined bandwidthEstimate(BandwidthInfo info);
603+ };
604+
605+ interface mixin RTCRtpScriptSink {
606+ readonly attribute WritableStream writable;
607+ attribute EventHandler onbandwidthestimate;
608+ attribute EventHandler onkeyframerequest;
609+ };
610+
611+ [Exposed=DedicatedWorker]
612+ interface RTCRtpScriptTransformer {
613+ readonly attribute any options;
600614};
615+ RTCRtpScriptTransformer includes RTCRtpScriptSource;
616+ RTCRtpScriptTransformer includes RTCRtpScriptSink;
601617
602618[Exposed=Window]
603619interface RTCRtpScriptTransform {
0 commit comments