Webrtc 如何修改SDP以接收视频?

Webrtc 如何修改SDP以接收视频?,webrtc,Webrtc,以前,在创建peerconnection时,可以将offerToReceiveVideo设置为true,但该API已被弃用。我现在应该如何设置音频->音频+视频通话?找到了导致sdp与recvonly视频的限制: 然而,就我而言,远程视频流仍然不存在 对于音频到音频+视频通话,有一个更好的解决方案: 创建画布dom元素,用黑色填充, 从画布获取流, 将曲目从此流放到带有音频的流中 创建对等连接 它看起来像这样: const canvas = document.createElement('can

以前,在创建peerconnection时,可以将offerToReceiveVideo设置为true,但该API已被弃用。我现在应该如何设置音频->音频+视频通话?

找到了导致sdp与recvonly视频的限制:

然而,就我而言,远程视频流仍然不存在

对于音频到音频+视频通话,有一个更好的解决方案:

创建画布dom元素,用黑色填充, 从画布获取流, 将曲目从此流放到带有音频的流中 创建对等连接 它看起来像这样:

const canvas = document.createElement('canvas');
canvas.width = 640;
canvas.height = 480;
const ctx = canvas.getContext('2d');
ctx.rect(0, 0, 640, 480);
ctx.fillStyle = 'black';
ctx.fill();
const canvasStream = canvas.captureStream(0);
mediaStream.addTrack(canvasStream.getVideoTracks()[0]);
这样就更容易启用实际的视频流,并且您可以使用replaceTrack

const canvas = document.createElement('canvas');
canvas.width = 640;
canvas.height = 480;
const ctx = canvas.getContext('2d');
ctx.rect(0, 0, 640, 480);
ctx.fillStyle = 'black';
ctx.fill();
const canvasStream = canvas.captureStream(0);
mediaStream.addTrack(canvasStream.getVideoTracks()[0]);