WebRTC max-bundle

by juberti

HTML

<button onclick="start()">▶</button>
<audio autoplay/>

JavaScript

var pc1, pc2;

async function start() {
  createConnection();
}


async function createConnection(stream, elem) {
  cfg = { bundlePolicy: "max-bundle", 'iceServers': [{'urls': 'stun:stun.l.google.com:19302'}]};
  pc1 = new RTCPeerConnection(cfg), pc2 = new RTCPeerConnection(cfg);
  pc1.addTransceiver('audio');
  pc1.addTransceiver('video');
  pc1.onicecandidate = (e) => { if (e.candidate) pc2.addIceCandidate(e.candidate); }
  pc2.onicecandidate = (e) => { if (e.candidate) pc1.addIceCandidate(e.candidate); }
  //pc2.ontrack = (e) => { elem.srcObject = e.streams[0]; }
  const offer = await pc1.createOffer();
  await pc1.setLocalDescription(offer);
  await pc2.setRemoteDescription(offer);
  const answer = await pc2.createAnswer();
  await pc2.setLocalDescription(answer);
  await pc1.setRemoteDescription(answer);
  setTimeout(() => console.log(pc1.localDescription.sdp), 5000);
  //console.log(pc2.localDescription.sdp);
}