This is a reland of d335426a39d34389a00f8f7ae652d535f0fa2073. The revert was premature: the failing tests were known to be flaky (crbug.com/1066515, crbug.com/1066453, crbug.com/1066407, crbug.com/1066399) Original change's description: > Let WebRtcVideoChannel::ResetUnsignaledRecvStream delete all default streams. > > This CL changes WebRtcVideoChannel::ResetUnsignaledRecvStream so > that it deletes all default streams created by > WebRtcVideoChannel::AddRecvStream. This is needed for the case that > there are lingering default streams, whose SSRCs are different > from the SSRCs that were subsequently signaled. This can happen > when there are multiple "m= sections" and the early media is > sent to an "m= section" that is later not supposed to be the > sink for that particular SSRC. > > Default streams whose SSRC match the subsequently signaled > SSRC is already handled here: https://source.chromium.org/chromium/chromium/src/+/master:third_party/webrtc/media/engine/webrtc_video_engine.cc;l=1386;drc=22387b44ff173d263b434889d394cea90368ab06?originalUrl=https:%2F%2Fcs.chromium.org%2F > > Bug: webrtc:11477 > Change-Id: I96ed7e35b4904fb0757fe5824f8afa6f1b9a565e > Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/172622 > Reviewed-by: Harald Alvestrand <hta@webrtc.org> > Reviewed-by: Magnus Flodman <mflodman@webrtc.org> > Commit-Queue: Rasmus Brandt <brandtr@webrtc.org> > Cr-Commit-Position: refs/heads/master@{#30971} TBR=mflodman@webrtc.org,hta@webrtc.org Bug: webrtc:11477 Change-Id: I70b8fa47b4d1d0aa36fed4d8612e13fa7f992925 Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/172782 Reviewed-by: Rasmus Brandt <brandtr@webrtc.org> Commit-Queue: Rasmus Brandt <brandtr@webrtc.org> Cr-Commit-Position: refs/heads/master@{#30986}