diff --git a/webrtc.html b/webrtc.html index 4e5312dc6..9b1c5811e 100644 --- a/webrtc.html +++ b/webrtc.html @@ -5235,7 +5235,7 @@
true
, throw an
InvalidStateError
.
- sendEncodings
by running the following steps:
+ Verify that each rid
@@ -7363,11 +7363,12 @@
The addTransceiver
method establishes the "simulcast envelope" which includes
the maximum number of simulcast streams that can be sent, as well as the ordering of the encodings
.
While characteristics of individual simulcast streams can be modified using the setParameters
- method, the "simulcast envelope" cannot be changed. One of the implications of this model is that
+ method, the simulcast envelope (the maximum number of simulcast encodings and the order of
+ the encodings) cannot be changed. One of the implications of this model is that
the addTrack
method cannot provide simulcast functionality since it
does not take sendEncodings
as an argument, and therefore cannot configure
- an RTCRtpTransceiver
with a "simulcast envelope".
While setParameters
cannot modify "simulcast envelope", it is still possible to control the
+ an RTCRtpTransceiver
to send simulcast.
While 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 setParameters
, simulcast streams can be made inactive by setting the active
attribute to false
, or can be reactivated by setting the active
@@ -7395,37 +7396,22 @@
Below are examples of simulcast usage scenarios implemented with encoding parameters.
+Examples of simulcast scenarios implemented with encoding parameters:
- // Example of 3-layer spatial simulcast -var encodings = [{ - // Simulcast layer at full scale - rid: "f", - scaleResolutionDownBy: 1.0 -}, { - // Simulcast layer at one half scale - rid: "h", - scaleResolutionDownBy: 2.0 -}, { - // Simulcast layer at one quarter scale - rid: "q", - scaleResolutionDownBy: 4.0 -}]; - + // Example of 3-layer spatial simulcast with all but the lowest resolution layer disabled -var encodings = [{ - rid: "f", - scaleResolutionDownBy: 1.0, - active: false -}, { - rid: "h", - scaleResolutionDownBy: 2.0, - active: false -}, { - rid: "q", - scaleResolutionDownBy: 4.0, - active: true -}]; +var encodings = [ + {rid: 'f', active: false}, + {rid: 'h', active: false, scaleResolutionDownBy: 2.0}, + {rid: 'q', active: true, scaleResolutionDownBy: 4.0} +]; + +// Example of 3-layer framerate simulcast with the middle layer disabled +var encodings = [ + {rid: 'f', active: true, maxFramerate: 60}, + {rid: 'h', active: false, maxFramerate: 30}, + {rid: 'q', active: true, maxFramerate: 15} +];