Я попытался сделать простое браузерное приложение для видеочата WebRTC p2p. Я настроил сигнальный сервер, и два одноранговых узла выполняют все рукопожатия SDP
и ICE
. Некоторые из моих фрагментов кода:
pc = new RTCPeerConnection(config);
pc.onicecandidate = (event) => {
...
}
pc.ontrack(event) =>{
if (event.track.kind === 'video') {
// add the stream as the srcObject of a video tag
}
event.streams[0].onremovetrack = (e) => {
// want to remove the stream from the video tag
}
}
Когда пир готов, я делаю следующее:
pc.stop();
Я просто закрываю RTCPeerConnection. Но я не вижу, чтобы onremovetrack
срабатывал на другом узле.
Каков правильный способ выключения однорангового узла, чтобы другой одноранговый узел мог быть уведомлен и onremovetrack
активирован?