webrtc: Send offer twice in very short time, second offer doesn't reflect well
Your environment.
- Version: v3.1.7
- Browser: Chrome
- Other Information - peerconnection.go
What did you do?
Send offer twice in very short time(within 100ms). In the first offer, I just add datachannel in SDP In the second offer, I add two tracks(audio, video)
But the second offer doesn’t reflects well and see error log in PeerConnection as below
Incoming unhandled RTP ssrc(123412341234), OnTrack will not be fired. incoming SSRC failed Simulcast probing
This issue is raised because REMOTE DESCRIPTION is changed during processing the first offer’s startRTP(). (startSCTP() takes long time for init) So I think before completing startRTP() of the first offer, it should prevent to change REMOTE DESCRIPTION or filter the simulcastStream by undeclaredMediaProcessor().
And there is no way to check it startRTP() is in progress. Adding some function for checking it in PeerConnection might be helpful for user.
- I call PeerConnection’s functions sequentially as below.
SetRemoteDescription(offer) -> answer, err := CreateAnswer(nil) -> SetLocalDescription(answer)
What did you expect?
The second offer should reflect well.
What happened?
The second offer doesn’t reflect well
About this issue
- Original URL
- State: closed
- Created 3 years ago
- Reactions: 1
- Comments: 21 (10 by maintainers)
Commits related to this issue
- Set up RTP Receivers synchronously References - https://github.com/pion/webrtc/issues/2054 Do the set up of RTP receivers synchronously so that they are ready to receive media as soon as signalling ... — committed to pion/webrtc by boks1971 2 years ago
- Set up RTP Receivers synchronously References - https://github.com/pion/webrtc/issues/2054 Do the set up of RTP receivers synchronously so that they are ready to receive media as soon as signalling ... — committed to pion/webrtc by boks1971 2 years ago
- Set up RTP Receivers synchronously Do the set up of RTP receivers synchronously so that they are ready to receive media as soon as signalling to remote side is sent. Once signalling to remote side is... — committed to pion/webrtc by boks1971 2 years ago
- Set up RTP Receivers synchronously References - #2054 Do the set up of RTP receivers synchronously so that they are ready to receive media as soon as signalling to remote side is sent. Once signalli... — committed to pion/webrtc by boks1971 2 years ago
- Set up RTP Receivers synchronously References - #2054 Do the set up of RTP receivers synchronously so that they are ready to receive media as soon as signalling to remote side is sent. Once signalli... — committed to pion/webrtc by boks1971 2 years ago
- Set up RTP Receivers synchronously Do the set up of RTP receivers synchronously so that they are ready to receive media as soon as signalling to remote side is sent. Once signalling to remote side is... — committed to pion/webrtc by boks1971 2 years ago
- Set up RTP Receivers synchronously Do the set up of RTP receivers synchronously so that they are ready to receive media as soon as signalling to remote side is sent. Once signalling to remote side is... — committed to pion/webrtc by boks1971 2 years ago
- Set up RTP Receivers synchronously Do the set up of RTP receivers synchronously so that they are ready to receive media as soon as signalling to remote side is sent. Once signalling to remote side is... — committed to pion/webrtc by boks1971 2 years ago
- Set up RTP Receivers synchronously Do the set up of RTP receivers synchronously so that they are ready to receive media as soon as signalling to remote side is sent. Once signalling to remote side is... — committed to daonb/webrtc by boks1971 2 years ago
@lamhai1401 Looking at the code more, I think it is the
FEC-FR
group in Android that is causing trouble. I think it is working in v3.1.15 because of timing of which stream arrives first at the server. Would you be able to turn off FEC on Android client?