[webrtc-pc] special-casing of a=msid:-

fippo has just created a new issue for https://github.com/w3c/webrtc-pc:

== special-casing of a=msid:- ==
https://github.com/rtcweb-wg/jsep/issues/856 has some implications for webrtc-pc.

I think @henbos already identified the two places where this impacts things.
The spec says under set the associated remote streams to:
    For each MSID in msids, unless a MediaStream object has previously been created 
   with that id for this connection, create a MediaStream object with that id.
>From setRemoteDescription when applying a remote description...
    If direction is "sendrecv" or "recvonly", let msids be a list of the MSIDs that the media
    description indicates transceiver.[[Receiver]].[[ReceiverTrack]] is to be associated with. 
   Otherwise, let msids be an empty list.

I *think* we can get away with changing only the first one (*). If JSEP passes the list of streams as ["-"] including the "no stream" we can special-case both that ("do not create a stream") and handle an empty list (legacy) by creating a "legacy" stream that encompasses all tracks. From what I can see, this is what Firefox does, even if it means the stream will have more than a single audio/video track.

(*)side-note: I think that text is slightly off as msid "forgets"; I think the slightly more correct thing to say is that if the receivers streams do not include a stream with that id, create one)

Please view or discuss this issue at https://github.com/w3c/webrtc-pc/issues/2027 using your GitHub account

Received on Tuesday, 6 November 2018 10:09:14 UTC