Steps to reproduce
Windows 10 Insider Preview 16226.1000
Having a connected
- Get a local audio+video stream via
- Create a
RtpSender()with the audio track and the already connected
- Same for webcam video.
send()on them with proper parameters (opus and VP8).
stop()on the video
- Call again
getUserMedia(just video) and create another
RtpSenderwith the new video track and the same
send()on the new video
RtpSenderwith proper parameters (VP8 with a different
- It will fail with
Now, if you repeat the same scenario without any
RtpReceiver, it won’t fail.
To reproduce it, just open https://demo.mediasoup.org/#room-id=edge with Edge and:
- Open the devtool console (in order to be easier to check what happens, filter just “errors” and “warnings”).
- Remove the local webcam video by clicking on the webcam icon within the selfview (the video
RtpSenderwas stopped and also its track).
- Now click again to add it again (a new video
RtpSenderis created with a new local video track).
- It works.
Now open the same link with Chrome/Firefox/Edge in other computer and so both computers join the same room. Then, again in Edge:
- Remove the webcam video (it works).
- Add webcam video again.
So, again, a new video
RtpSender is created with a newly obtained local video track, but when calling
send() on it, it fails with
NOTE: I’ve seen very similar issues also in
RtpReceiver.receive() (specially when a remote peer reloads the page).
According to the spec, both
receive() should just fail with
stop() was called on them or the
DtlsTransport is “closed” or "failed", but this is not the case here (for sure).
Comments and activity
- Microsoft Edge Team
Changed Assigned To to “Shijun S.”
Changed Status to “Confirmed”