很抱歉,如果问题非常愚蠢,我试图使用js显示从一个人到另一个用户的流
我已经尝试将它放入cookie但它即使在那时也不起作用。即使视频中的对象与另一个对象相同
档案1
var video = document.querySelector("#videoElement");
var x=document.cookie
console.log(x)
video.srcObject = x;
档案2
var video = document.querySelector("#videoElement");
if (navigator.mediaDevices.getUserMedia) {
navigator.mediaDevices.getUserMedia({ video: true })
.then(function (stream) {
video.srcObject = stream;
document.cookie=video.srcObject
console.log(stream,video.srcObject)
})
.catch(function (err0r) {
console.log("Something went wrong!");
});
console.log(stream,video.srcObject)
}
我想现在只在两个页面上显示它,但是对于将来我应该使用哪种语言存储视频,如果你知道你可以分享它
Cookie不是Web上的集中式通用相机访问存储库。谢天谢地。
MediaStream
是表示活动相机使用的本地资源对象,而不是可共享的URL。
此对象仅存在于本地JS页面中,无法在Web上寻址。
由于它不在任何服务器上运行,将图形位从相机传输到朋友的系统,需要相当多的繁重工作。这包括建立一个RTCPeerConnection,它是WebRTC的域:
navigator.mediaDevices.getUserMedia({ video: true })
.then(function (stream) {
const iceServers = [{urls: "stun:stun.l.google.com:19302"}];
const pc = new RTCPeerConnection({iceServers});
for (const track of stream.getTracks())
pc.addTrack(track, stream);
/* lots of other WebRTC negotiation code */
您通常还需要某种服务器,既可以解决discovery,即联系点,也可以使用Web套接字服务器来交换两个对等体之间建立连接所必需的批判性提供/应答会话描述。
也许最简单的概念证明是this cut'n'paste demo,它允许您和朋友手动交换所需的WebRTC提供/回答会话描述,让您在没有任何服务器的情况下建立连接,以便彼此查看和交谈。
这有大约70%的工作机会。如果你们都支持对称NAT(大多数移动网络),那么它会变得更难(你需要一台TURN服务器,这需要花钱)。