JSFiddle - React, Tailwind, and code Playground
by mickel8
JavaScript
async function run() {
pc1 = new RTCPeerConnection();
pc2 = new RTCPeerConnection();
pc2.ontrack = ev => {
ev.track.onmute = _ => console.log("pc2 track onmute");
console.log("pc2 ontrack");
}
tr = pc1.addTransceiver("audio");
offer = await pc1.createOffer();
await pc1.setLocalDescription(offer);
// this will trigger track event
await pc2.setRemoteDescription(offer);
// reject incoming track by setting the direction to "inactive"
pc2.getTransceivers()[0].direction = "inactive";
answer = await pc2.createAnswer();
console.log("Setting local description on pc2");
// this will trigger mute event
await pc2.setLocalDescription(answer);
await pc1.setRemoteDescription(answer);
};
run();