Re: [webrtc-pc] Clarify "multiple sources of media stitched together" at Note describing replaceTrack (#2171)

@fippo The code at Chromium source appears to use 

`std::unique_ptr<WebRtcMediaStreamTrackAdapterMap::AdapterRef> track_ref;` at several occasions, particularly at https://github.com/chromium/chromium/blob/1dc524aa4005eb08c533f2a344d5812863ae60a5/content/renderer/media/webrtc/rtc_rtp_sender.cc#L192

```
    std::unique_ptr<WebRtcMediaStreamTrackAdapterMap::AdapterRef> track_ref;
    webrtc::MediaStreamTrackInterface* webrtc_track = nullptr;
    if (!with_track.IsNull()) {
      track_ref = track_map_->GetOrCreateLocalTrackAdapter(with_track);
      webrtc_track = track_ref->webrtc_track();
    }
    signaling_task_runner_->PostTask(
        FROM_HERE,
        base::BindOnce(
            &RTCRtpSender::RTCRtpSenderInternal::ReplaceTrackOnSignalingThread,
            this, std::move(track_ref), base::Unretained(webrtc_track),
            std::move(callback)));
```

is that the basis of the code which performs the task of "multiple sources of media stitched together" at Chromium? 

If yes, then what exactly does the code do, technically? That is, what is the flowchart for that procedure outlined in the same manner that the procedure for `replaceTrack()` is outlined in the specification at the first link at first comment?

-- 
GitHub Notification of comment by guest271314
Please view or discuss this issue at https://github.com/w3c/webrtc-pc/issues/2171#issuecomment-482936713 using your GitHub account

Received on Sunday, 14 April 2019 09:13:32 UTC