对不起,如果这个问题很愚蠢 我正在尝试使用 js 将流从一个人显示给另一个用户
我试过把它放在饼干里,但即使这样也不起作用。即使视频中的对象与另一个对象相同
文件 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 不是网络上的集中式通用相机访问存储库。谢天谢地。
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 */
您通常还需要某种类型的服务器,既要解决发现问题,即联系点,又需要Web套接字服务器来交换两个对等方之间建立连接所必需的关键报价/答案会话描述。
也许最简单的概念证明是这个剪切粘贴演示,它让你和朋友手动交换所需的WebRTC报价/答案会话描述,让你在没有任何服务器的情况下建立连接,互相查看和交谈。
这有大约70%的工作机会。如果你们都落后于对称NAT(大多数移动网络),那么它就会变得更加困难(你需要一个TURN服务器,这需要花钱)。