我如何使用 getUserMedia() API 和 Node.js 实时流式传输媒体?
How can I use the getUserMedia() API with Node.js to stream media in real time?
学习如何在我的网络浏览器中捕获视频和音频进行了简单的 google 搜索,得到了最简单的工作测试示例,它向我播放了我自己的视频和音频:
navigator.getUserMedia = (navigator.getUserMedia || navigator.webkitGetUserMedia || navigator.mozGetUserMedia || navigator.msGetUserMedia);
if (navigator.getUserMedia) {
navigator.getUserMedia(
// constraints
{
video: true,
audio: true
},
// successCallback
function(localMediaStream) {
var video = document.querySelector('video');
video.src = window.URL.createObjectURL(localMediaStream);
// Do something with the video here, e.g. video.play()
},
// errorCallback
function(err) {
console.log("The following error occured: " + err);
});
} else {
console.log("getUserMedia not supported");
}
video {
width: 100%;
height: 420px;
background-color: black;
}
<video autoplay></video>
但从那里开始,搜索条件变得棘手。搜索 Stream audio & video with Node.js
显示了将视频从服务器流式传输到客户端的教程,但是找不到我的问题,即如何将音频和视频从一个客户端流式传输到服务器,再到另一个客户端。 ]
我想了解执行此操作的基本步骤。在考虑使用额外的 API 来加速这个过程之前,我想以一种简单的方式真正理解它。我对 Socket.io 持开放态度,但这是一个常见的标准 API。
因此我的问题是:
如何以最简单的形式通过 Node.js 服务器将视频和音频数据从一个客户端流式传输到另一个客户端?
根据您的需要,最好的方法可能是使用 WebRTC,直接将音频和视频从一个客户端流式传输到另一个客户端,仅使用您的节点服务器通过发送一些强制信息来建立连接。
我可以在这里推荐一个开始使用 webRTC 的好教程:
http://www.html5rocks.com/en/tutorials/webrtc/basics/
学习如何在我的网络浏览器中捕获视频和音频进行了简单的 google 搜索,得到了最简单的工作测试示例,它向我播放了我自己的视频和音频:
navigator.getUserMedia = (navigator.getUserMedia || navigator.webkitGetUserMedia || navigator.mozGetUserMedia || navigator.msGetUserMedia);
if (navigator.getUserMedia) {
navigator.getUserMedia(
// constraints
{
video: true,
audio: true
},
// successCallback
function(localMediaStream) {
var video = document.querySelector('video');
video.src = window.URL.createObjectURL(localMediaStream);
// Do something with the video here, e.g. video.play()
},
// errorCallback
function(err) {
console.log("The following error occured: " + err);
});
} else {
console.log("getUserMedia not supported");
}
video {
width: 100%;
height: 420px;
background-color: black;
}
<video autoplay></video>
但从那里开始,搜索条件变得棘手。搜索 Stream audio & video with Node.js
显示了将视频从服务器流式传输到客户端的教程,但是找不到我的问题,即如何将音频和视频从一个客户端流式传输到服务器,再到另一个客户端。 ]
我想了解执行此操作的基本步骤。在考虑使用额外的 API 来加速这个过程之前,我想以一种简单的方式真正理解它。我对 Socket.io 持开放态度,但这是一个常见的标准 API。
因此我的问题是:
如何以最简单的形式通过 Node.js 服务器将视频和音频数据从一个客户端流式传输到另一个客户端?
根据您的需要,最好的方法可能是使用 WebRTC,直接将音频和视频从一个客户端流式传输到另一个客户端,仅使用您的节点服务器通过发送一些强制信息来建立连接。
我可以在这里推荐一个开始使用 webRTC 的好教程: http://www.html5rocks.com/en/tutorials/webrtc/basics/