Skip to content

Commit d94224e

Browse files
Structure clone frame with passing frame.data as transferables and send frame's clone to packetizer or decoder. (#152)
SHA: 7f8ae89 Reason: push, by @youennf Co-authored-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com>
1 parent 3aa2ac1 commit d94224e

File tree

1 file changed

+28
-13
lines changed

1 file changed

+28
-13
lines changed

index.html

Lines changed: 28 additions & 13 deletions
Original file line numberDiff line numberDiff line change
@@ -8,7 +8,7 @@
88
<link href="https://www.w3.org/2008/site/images/favicon.ico" rel="icon">
99
<meta content="Bikeshed version 44af0bf3e, updated Fri Jul 29 17:05:16 2022 -0700" name="generator">
1010
<link href="https://www.w3.org/TR/webrtc-encoded-transform/" rel="canonical">
11-
<meta content="f2797d72cc5ce2d5599a5659c23418c7fc884420" name="document-revision">
11+
<meta content="7f8ae89f36e5ea4b2ca86c42b94e5378c59d11a1" name="document-revision">
1212
<style>/* style-autolinks */
1313

1414
.css.css, .property.property, .descriptor.descriptor {
@@ -579,7 +579,7 @@
579579
<div class="head">
580580
<p data-fill-with="logo"><a class="logo" href="https://www.w3.org/"> <img alt="W3C" height="48" src="https://www.w3.org/StyleSheets/TR/2021/logos/W3C" width="72"> </a> </p>
581581
<h1 class="p-name no-ref" id="title">WebRTC Encoded Transform</h1>
582-
<p id="w3c-state"><a href="https://www.w3.org/standards/types#ED">Editor’s Draft</a>, <time class="dt-updated" datetime="2022-09-29">29 September 2022</time></p>
582+
<p id="w3c-state"><a href="https://www.w3.org/standards/types#ED">Editor’s Draft</a>, <time class="dt-updated" datetime="2022-10-06">6 October 2022</time></p>
583583
<details open>
584584
<summary>More details about this document</summary>
585585
<div data-fill-with="spec-metadata">
@@ -781,12 +781,18 @@ <h4 class="heading settled" data-level="3.1.2" id="stream-processing"><span clas
781781
<li data-md>
782782
<p>Set <var>rtcObject</var>.<code>[[lastReceivedFrameCounter]]</code> to <var>frame</var><code>[[counter]]</code>.</p>
783783
<li data-md>
784-
<p>Enqueue the frame for processing as if it came directly from the encoded data source, by running one of the following steps:</p>
784+
<p>Let <var>data</var> be <var>frame</var>.<code>[[data]]</code>.</p>
785+
<li data-md>
786+
<p>Let <var>serializedFrame</var> be <a data-link-type="abstract-op" href="https://html.spec.whatwg.org/multipage/structured-data.html#structuredserializewithtransfer" id="ref-for-structuredserializewithtransfer">StructuredSerializeWithTransfer</a>(<var>frame</var>, « <var>data</var> »).</p>
787+
<li data-md>
788+
<p>Let <var>frameCopy</var> be <a data-link-type="abstract-op" href="https://html.spec.whatwg.org/multipage/structured-data.html#structureddeserialize" id="ref-for-structureddeserialize">StructuredDeserialize</a>(<var>serializedFrame</var>, <var>frame</var>’s <a data-link-type="dfn" href="https://html.spec.whatwg.org/multipage/webappapis.html#concept-relevant-realm" id="ref-for-concept-relevant-realm">relevant realm</a>).</p>
789+
<li data-md>
790+
<p>Enqueue <var>frameCopy</var> for processing as if it came directly from the encoded data source, by running one of the following steps:</p>
785791
<ul>
786792
<li data-md>
787-
<p>If <var>rtcObject</var> is a <code class="idl"><a data-link-type="idl" href="https://www.w3.org/TR/webrtc/#dom-rtcrtpsender" id="ref-for-dom-rtcrtpsender④">RTCRtpSender</a></code>, enqueue it to <var>rtcObject</var>’s packetizer, to be processed <a data-link-type="dfn" href="https://html.spec.whatwg.org/multipage/infrastructure.html#in-parallel" id="ref-for-in-parallel">in parallel</a>.</p>
793+
<p>If <var>rtcObject</var> is a <code class="idl"><a data-link-type="idl" href="https://www.w3.org/TR/webrtc/#dom-rtcrtpsender" id="ref-for-dom-rtcrtpsender④">RTCRtpSender</a></code>, enqueue <var>frameCopy</var> to <var>rtcObject</var>’s packetizer, to be processed <a data-link-type="dfn" href="https://html.spec.whatwg.org/multipage/infrastructure.html#in-parallel" id="ref-for-in-parallel">in parallel</a>.</p>
788794
<li data-md>
789-
<p>If <var>rtcObject</var> is a <code class="idl"><a data-link-type="idl" href="https://www.w3.org/TR/webrtc/#dom-rtcrtpreceiver" id="ref-for-dom-rtcrtpreceiver④">RTCRtpReceiver</a></code>, enqueue it to <var>rtcObject</var>’s decoder, to be processed <a data-link-type="dfn" href="https://html.spec.whatwg.org/multipage/infrastructure.html#in-parallel" id="ref-for-in-parallel①">in parallel</a>.</p>
795+
<p>If <var>rtcObject</var> is a <code class="idl"><a data-link-type="idl" href="https://www.w3.org/TR/webrtc/#dom-rtcrtpreceiver" id="ref-for-dom-rtcrtpreceiver④">RTCRtpReceiver</a></code>, enqueue <var>frameCopy</var> it to <var>rtcObject</var>’s decoder, to be processed <a data-link-type="dfn" href="https://html.spec.whatwg.org/multipage/infrastructure.html#in-parallel" id="ref-for-in-parallel①">in parallel</a>.</p>
790796
</ul>
791797
<li data-md>
792798
<p>Return <a data-link-type="dfn" href="https://webidl.spec.whatwg.org/#a-promise-resolved-with" id="ref-for-a-promise-resolved-with②">a promise resolved with</a> undefined.</p>
@@ -1060,20 +1066,20 @@ <h3 class="heading settled" data-level="5.1" id="RTCRtpScriptTransform-operation
10601066
<li data-md>
10611067
<p>Set <var>this</var>.<code>[[readable]]</code> to <var>t2</var>.<code>[[readable]]</code>.</p>
10621068
<li data-md>
1063-
<p>Let <var>serializedOptions</var> be the result of <a data-link-type="abstract-op" href="https://html.spec.whatwg.org/multipage/structured-data.html#structuredserializewithtransfer" id="ref-for-structuredserializewithtransfer">StructuredSerializeWithTransfer</a>(<var>options</var>, <var>transfer</var>).</p>
1069+
<p>Let <var>serializedOptions</var> be the result of <a data-link-type="abstract-op" href="https://html.spec.whatwg.org/multipage/structured-data.html#structuredserializewithtransfer" id="ref-for-structuredserializewithtransfer">StructuredSerializeWithTransfer</a>(<var>options</var>, <var>transfer</var>).</p>
10641070
<li data-md>
1065-
<p>Let <var>serializedReadable</var> be the result of <a data-link-type="abstract-op" href="https://html.spec.whatwg.org/multipage/structured-data.html#structuredserializewithtransfer" id="ref-for-structuredserializewithtransfer">StructuredSerializeWithTransfer</a>(<var>t1</var>.<code>[[readable]]</code>, « <var>t1</var>.<code>[[readable]]</code> »).</p>
1071+
<p>Let <var>serializedReadable</var> be the result of <a data-link-type="abstract-op" href="https://html.spec.whatwg.org/multipage/structured-data.html#structuredserializewithtransfer" id="ref-for-structuredserializewithtransfer">StructuredSerializeWithTransfer</a>(<var>t1</var>.<code>[[readable]]</code>, « <var>t1</var>.<code>[[readable]]</code> »).</p>
10661072
<li data-md>
1067-
<p>Let <var>serializedWritable</var> be the result of <a data-link-type="abstract-op" href="https://html.spec.whatwg.org/multipage/structured-data.html#structuredserializewithtransfer" id="ref-for-structuredserializewithtransfer">StructuredSerializeWithTransfer</a>(<var>t2</var>.<code>[[writable]]</code>, « <var>t2</var>.<code>[[writable]]</code> »).</p>
1073+
<p>Let <var>serializedWritable</var> be the result of <a data-link-type="abstract-op" href="https://html.spec.whatwg.org/multipage/structured-data.html#structuredserializewithtransfer" id="ref-for-structuredserializewithtransfer">StructuredSerializeWithTransfer</a>(<var>t2</var>.<code>[[writable]]</code>, « <var>t2</var>.<code>[[writable]]</code> »).</p>
10681074
<li data-md>
10691075
<p><a data-link-type="dfn" href="https://html.spec.whatwg.org/multipage/webappapis.html#queue-a-task" id="ref-for-queue-a-task②">Queue a task</a> on the DOM manipulation <a data-link-type="dfn" href="https://html.spec.whatwg.org/multipage/webappapis.html#task-source" id="ref-for-task-source">task source</a> <var>worker</var>’s global scope to run the following steps:</p>
10701076
<ol>
10711077
<li data-md>
1072-
<p>Let <var>transformerOptions</var> be the result of <a data-link-type="abstract-op" href="https://html.spec.whatwg.org/multipage/structured-data.html#structureddeserialize" id="ref-for-structureddeserialize">StructuredDeserialize</a>(<var>serializedOptions</var>, the current Realm).</p>
1078+
<p>Let <var>transformerOptions</var> be the result of <a data-link-type="abstract-op" href="https://html.spec.whatwg.org/multipage/structured-data.html#structureddeserialize" id="ref-for-structureddeserialize">StructuredDeserialize</a>(<var>serializedOptions</var>, the current Realm).</p>
10731079
<li data-md>
1074-
<p>Let <var>readable</var> be the result of <a data-link-type="abstract-op" href="https://html.spec.whatwg.org/multipage/structured-data.html#structureddeserialize" id="ref-for-structureddeserialize">StructuredDeserialize</a>(<var>serializedReadable</var>, the current Realm).</p>
1080+
<p>Let <var>readable</var> be the result of <a data-link-type="abstract-op" href="https://html.spec.whatwg.org/multipage/structured-data.html#structureddeserialize" id="ref-for-structureddeserialize">StructuredDeserialize</a>(<var>serializedReadable</var>, the current Realm).</p>
10751081
<li data-md>
1076-
<p>Let <var>writable</var> be the result of <a data-link-type="abstract-op" href="https://html.spec.whatwg.org/multipage/structured-data.html#structureddeserialize" id="ref-for-structureddeserialize">StructuredDeserialize</a>(<var>serializedWritable</var>, the current Realm).</p>
1082+
<p>Let <var>writable</var> be the result of <a data-link-type="abstract-op" href="https://html.spec.whatwg.org/multipage/structured-data.html#structureddeserialize" id="ref-for-structureddeserialize">StructuredDeserialize</a>(<var>serializedWritable</var>, the current Realm).</p>
10771083
<li data-md>
10781084
<p>Let <var>transformer</var> be a new <code class="idl"><a data-link-type="idl" href="#rtcrtpscripttransformer" id="ref-for-rtcrtpscripttransformer①">RTCRtpScriptTransformer</a></code>.</p>
10791085
<li data-md>
@@ -1484,13 +1490,15 @@ <h3 class="no-num no-ref heading settled" id="index-defined-here"><span class="c
14841490
<aside class="dfn-panel" data-for="term-for-structureddeserialize">
14851491
<a href="https://html.spec.whatwg.org/multipage/structured-data.html#structureddeserialize">https://html.spec.whatwg.org/multipage/structured-data.html#structureddeserialize</a><b>Referenced in:</b>
14861492
<ul>
1487-
<li><a href="#ref-for-structureddeserialize">5.1. Operations</a> <a href="#ref-for-structureddeserialize①">(2)</a> <a href="#ref-for-structureddeserialize②">(3)</a>
1493+
<li><a href="#ref-for-structureddeserialize">3.1.2. Stream processing</a>
1494+
<li><a href="#ref-for-structureddeserialize①">5.1. Operations</a> <a href="#ref-for-structureddeserialize②">(2)</a> <a href="#ref-for-structureddeserialize③">(3)</a>
14881495
</ul>
14891496
</aside>
14901497
<aside class="dfn-panel" data-for="term-for-structuredserializewithtransfer">
14911498
<a href="https://html.spec.whatwg.org/multipage/structured-data.html#structuredserializewithtransfer">https://html.spec.whatwg.org/multipage/structured-data.html#structuredserializewithtransfer</a><b>Referenced in:</b>
14921499
<ul>
1493-
<li><a href="#ref-for-structuredserializewithtransfer">5.1. Operations</a> <a href="#ref-for-structuredserializewithtransfer①">(2)</a> <a href="#ref-for-structuredserializewithtransfer②">(3)</a>
1500+
<li><a href="#ref-for-structuredserializewithtransfer">3.1.2. Stream processing</a>
1501+
<li><a href="#ref-for-structuredserializewithtransfer①">5.1. Operations</a> <a href="#ref-for-structuredserializewithtransfer②">(2)</a> <a href="#ref-for-structuredserializewithtransfer③">(3)</a>
14941502
</ul>
14951503
</aside>
14961504
<aside class="dfn-panel" data-for="term-for-worker">
@@ -1516,6 +1524,12 @@ <h3 class="no-num no-ref heading settled" id="index-defined-here"><span class="c
15161524
<li><a href="#ref-for-queue-a-task②">5.1. Operations</a> <a href="#ref-for-queue-a-task③">(2)</a>
15171525
</ul>
15181526
</aside>
1527+
<aside class="dfn-panel" data-for="term-for-concept-relevant-realm">
1528+
<a href="https://html.spec.whatwg.org/multipage/webappapis.html#concept-relevant-realm">https://html.spec.whatwg.org/multipage/webappapis.html#concept-relevant-realm</a><b>Referenced in:</b>
1529+
<ul>
1530+
<li><a href="#ref-for-concept-relevant-realm">3.1.2. Stream processing</a>
1531+
</ul>
1532+
</aside>
15191533
<aside class="dfn-panel" data-for="term-for-task-source">
15201534
<a href="https://html.spec.whatwg.org/multipage/webappapis.html#task-source">https://html.spec.whatwg.org/multipage/webappapis.html#task-source</a><b>Referenced in:</b>
15211535
<ul>
@@ -1854,6 +1868,7 @@ <h3 class="no-num no-ref heading settled" id="index-defined-elsewhere"><span cla
18541868
<li><span class="dfn-paneled" id="term-for-worker">Worker</span>
18551869
<li><span class="dfn-paneled" id="term-for-in-parallel">in parallel</span>
18561870
<li><span class="dfn-paneled" id="term-for-queue-a-task">queue a task</span>
1871+
<li><span class="dfn-paneled" id="term-for-concept-relevant-realm">relevant realm</span>
18571872
<li><span class="dfn-paneled" id="term-for-task-source">task source</span>
18581873
</ul>
18591874
<li>

0 commit comments

Comments
 (0)