Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Test coverage Section 5.4.1 (Simulcast) #2525

Merged
merged 1 commit into from May 7, 2020
Merged
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Jump to
Jump to file
Failed to load files.
Diff view
Diff view
14 changes: 7 additions & 7 deletions webrtc.html
Expand Up @@ -7670,29 +7670,29 @@ <h2>Methods</h2>
</div>
<section>
<h3>Simulcast functionality</h3>
<p>Simulcast functionality is provided via the {{RTCPeerConnection/addTransceiver}} method of the
<p data-test="basic.https.html">Simulcast functionality is provided via the {{RTCPeerConnection/addTransceiver}} method of the
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

simulcast/basic.https.html

{{RTCPeerConnection}} object and the {{RTCRtpSender/setParameters}} method of the
{{RTCRtpSender}} object.</p>
<p>The {{RTCPeerConnection/addTransceiver}} method establishes the <dfn>simulcast envelope</dfn> which
<p class="needs-test">The {{RTCPeerConnection/addTransceiver}} method establishes the <dfn>simulcast envelope</dfn> which
includes the maximum number of simulcast streams that can be sent, as well as the ordering of the
{{RTCRtpSendParameters/encodings}}. While characteristics of individual simulcast streams can be modified using
the {{RTCRtpSender/setParameters}} method, the [= simulcast envelope =] cannot be changed. One of the
implications of this model is that the {{RTCPeerConnection/addTrack()}} method cannot provide simulcast
functionality since it does not take {{RTCRtpTransceiverInit/sendEncodings}} as an argument, and therefore cannot
configure an {{RTCRtpTransceiver}} to send simulcast.</p>
<p>Another implication is that the answerer cannot set the [= simulcast envelope =] directly.
<p class="needs-test">Another implication is that the answerer cannot set the [= simulcast envelope =] directly.
Upon calling the {{RTCPeerConnection/setRemoteDescription}} method of the {{RTCPeerConnection}}
object, the [= simulcast envelope =] is configured on the {{RTCRtpTransceiver}}
to contain the layers described by the specified {{RTCSessionDescription}}.
Once the envelope is determined, layers cannot be removed. They can be marked as inactive by setting
the {{RTCRtpEncodingParameters/active}} member to <code>false</code> effectively disabling the layer.</p>
<p class="needs-test">While {{RTCRtpSender/setParameters}} cannot modify the [= simulcast envelope =], it is still possible
<p data-tests="getStats.https.html">While {{RTCRtpSender/setParameters}} cannot modify the [= simulcast envelope =], it is still possible
to control the number of streams that are sent and the characteristics of those streams. Using
{{RTCRtpSender/setParameters}}, simulcast streams can be made inactive by setting the {{RTCRtpEncodingParameters/active}}
member to <code>false</code>, or can be reactivated by setting the {{RTCRtpEncodingParameters/active}}
member to <code>true</code>. Using {{RTCRtpSender/setParameters}}, stream characteristics can be
changed by modifying attributes such as {{RTCRtpEncodingParameters/maxBitrate}}.</p>
<p class="note">
<p class="note" data-tests="getStats.https.html">
Simulcast is frequently used to send multiple encodings to
an SFU, which will then forward one of the simulcast streams to the
end user. The user agent is therefore expected to allocate bandwidth
Expand All @@ -7703,11 +7703,11 @@ <h3>Simulcast functionality</h3>
permit all simulcast streams to be sent in an usable form,
the user agent is expected to stop sending some of the simulcast streams.
</p>
<p data-tests="">As defined in <span data-jsep="simulcast">[[!JSEP]]</span>, an offer from a user-agent
<p data-tests="basic.https.html">As defined in <span data-jsep="simulcast">[[!JSEP]]</span>, an offer from a user-agent
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

needs subdirectory

will only contain a "send" description and no "recv" description on the
<code class=sdp>a=simulcast</code> line. Alternatives and restrictions (described
in [[MMUSIC-SIMULCAST]]) are not supported.</p>
<p>This specification does not define how to configure reception of multiple
<p class="test-needed">This specification does not define how to configure reception of multiple
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

test-needed -> needs-test

Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

needs-test

RTP encodings using {{RTCPeerConnection/createOffer}}, {{RTCPeerConnection/createAnswer}}
or {{RTCPeerConnection/addTransceiver}}. However when {{RTCPeerConnection/setRemoteDescription}}
is called with a corresponding remote description that is able to send multiple RTP
Expand Down