WebRTC-是否可以将浏览器代理视频从源发送到接收器
WebRTC - is it possible to have a browser proxy video from a source to a receiver?
例如:
- 浏览器A正在播放视频
- 浏览器B是一个中间人
- 浏览器C正在接收视频
在浏览器B充当A和C之间的中介的情况下,有可能这样做吗?
第二,B是否可以同时观看A的广播视频并将其转发给C?
当然可以。(对Chrome使用https fiddle):
function Hop() {
this.pc1 = new RTCPeerConnection();
this.pc2 = new RTCPeerConnection();
var add = (pc, can) => can && pc.addIceCandidate(can).catch(log);
this.pc1.onicecandidate = e => add(this.pc2, e.candidate);
this.pc2.onicecandidate = e => add(this.pc1, e.candidate);
this.pc2.oniceconnectionstatechange = e => log(this.pc2.iceConnectionState);
};
Hop.prototype.send = function(stream) {
this.pc1.addStream(stream);
return Promise.all([
new Promise(resolve => this.pc2.onaddstream = resolve),
this.pc1.createOffer()
.then(offer => this.pc1.setLocalDescription(offer))
.then(() => this.pc2.setRemoteDescription(this.pc1.localDescription))
.then(() => this.pc2.createAnswer())
.then(answer => this.pc2.setLocalDescription(answer))
.then(() => this.pc1.setRemoteDescription(this.pc2.localDescription))
])
.then(results => results[0].stream);
};
var AtoB = new Hop(), BtoC = new Hop();
navigator.mediaDevices.getUserMedia({ video: true })
.then(stream => AtoB.send(v1.srcObject = stream))
.then(stream => BtoC.send(v2.srcObject = stream))
.then(stream => v3.srcObject = stream)
.catch(e => log(e));
var log = msg => div.innerHTML += msg + "<br>";
<video id="v1" height="120" width="160" autoplay muted></video>
<video id="v2" height="120" width="160" autoplay></video>
<video id="v3" height="120" width="160" autoplay></video><br>
<div id="div"></div>
<script src="https://webrtc.github.io/adapter/adapter-latest.js"></script>
您可以创建任意数量的啤酒花。
相关文章:
- 视频HTML没有'无法在Internet Explorer 11上工作
- 播放当前视频时如何停止其他视频?JavaScript
- 使用Facebook live API创建实时视频对象时的隐私设置
- Brightcove获取/显示HTML中的当前视频标题和描述
- TypeError:在不兼容的接收器nodejs上调用了方法Uint8Array.length
- Twilio-显示所有连接参与者的远程参与者视频
- WebRTC视频聊天可以在FF中使用,但不能在Chrome中使用
- 是否可以使用iframe API在iOS浏览器上播放youtube视频
- 如何检查用户在html5视频播放器中观看了完整的视频
- Fullpage.js-视频+背景在同一部分
- html5视频中的Youtube类型注释
- 角度p2p视频聊天-远程流是黑视频
- tiltSlider播放/暂停视频元素(如果li有当前类)
- 可以在响应时隐藏iphone上的“播放”按钮以进行视频播放
- Javascript-在视频中跟踪鼠标位置
- 为什么可以'我在视频js中查看HLS
- 如何在javascript中解析Dailymotion视频Url
- Mozilla没有;t在附加视频src后触发视频后台事件
- 使用javascript将视频从我的android应用程序上传到youtube
- WebRTC-是否可以将浏览器代理视频从源发送到接收器