W3C home > Mailing lists > Public > public-webrtc@w3.org > April 2017

Re: Enabling simulcast in the answer

From: Peter Thatcher <pthatcher@google.com>
Date: Fri, 14 Apr 2017 17:37:05 +0000
Message-ID: <CAJrXDUFbmidpteTLtSys_e-akBsMM7M43j5bLa9WqWF0fdZQuA@mail.gmail.com>
To: Iñaki Baz Castillo <ibc@aliax.net>, "public-webrtc@w3.org" <public-webrtc@w3.org>
The simulcast solution we were able to fit into the 1.0 time frame was
specifically designed such that the browser/client can offer simulcast, but
not (necessarily) answer a simulcast offer.    Allowing the server to send
an offer to the client and have it answer, as I recall, was too complex to
get into 1.0 (we barely got simulcast in at all) and will have to wait for
a future version of the spec.

I believe a browser/client is free to go beyond the spec and allow
answering simulcast offers from the server, but it's not part of the spec.

This mostly defined i JSEP, by the way, not the W3C spec.

On Fri, Apr 14, 2017 at 4:00 AM Iñaki Baz Castillo <ibc@aliax.net> wrote:

> Hi,
> Assuming the browser receives an SDP offer with a m=video section that
> invites the browser to send simulcast:
>   a=rid:1 recv
>   a=rid:2 recv
>   a=simulcast: recv rid=1;2
> >From previous discussions I understand that, if the browser wishes to
> honor the simulcast "invitation", it must create a new Transceiver and
> fill `sendEncodings` parameters with the EXACT RID values given in the
> offer. This is, something that would generate the following stuff in
> the SDP answer (within the same m= section):
>   a=rid:1 send
>   a=rid:2 send
>   a=simulcast: send rid=1;2
> The first "problem" here is obvious: the JS app must "parse" the
> received SDP offer in order to figure out the offered simulcast stuff
> (offered RID values and directions).
> What would happen if the JS app incorrectly sets the `sendEncodings`
> with, for example, RID values not present in the received offer?
> Here the second problem: After the first SDP O/A (in which the browser
> successfully enabled sending simulcast) the remote sends a new SDP
> re-offer with some simulcast related params modified, for example:
>   a=rid:1 recv
>   a=rid:4 recv
>   a=simulcast: recv rid=1;4
> (RID 2 was was removed and RID 4 was added).
> What should do the JS in this case? and what would happen if it does
> nothing but just call setRemoteDescription() + createAnswer() +
> setLocalDescription()?
> --
> Iñaki Baz Castillo
> <ibc@aliax.net>
Received on Friday, 14 April 2017 17:37:49 UTC

This archive was generated by hypermail 2.4.0 : Friday, 17 January 2020 19:18:28 UTC