webrtc一边流式传输视频另一边接收?HTML5

Das*_*oot 2 javascript html5 html5-video webrtc

我想知道是否有可能从客户端捕获视频输入,如下面的https://apprtc.appspot.com/?r=91737737,并将其显示在另一个上,以便任何查看者都可以看到它,我的问题是我我的第二台计算机上没有网络摄像头,我想使用webrtc接收视频.是否有可能从一端捕获并将其捕获到另一端?也许如果这不可能是websockets最好的方法吗?

Sev*_*Sev 6

我认为除了由于性能/带宽问题导致的不完美之外,没有理由不可能.

目前最支持的HTML5解决方案,我会想象它是使用getUserMedia这是用于Chrome(考虑getUserMedia.js关于相机输入更广泛的支持,虽然我还没有使用它)

脚本

我们将有一个捕获器,一个广播流的服务器和接收最终流的观察者.

计划

捕获阶段

  1. 使用getUserMedia从摄像头获取数据
  2. 在画布上绘制(也许你可以跳过这个)
  3. 使用websockets(通过socket.io获得更广泛的支持)到服务器(ex node.js)以图像数据的格式发布帧.

广播阶段

  1. 接收图像数据并仅向订阅的观察者广播

观看阶段

  1. 观察者将与服务器建立websocket连接
  2. 在从服务器接收的每个新帧上,它必须将接收的帧绘制到画布上

注意事项

  1. 您应该考虑到网络的性能会影响播放.
  2. 您可以在客户端强制执行FPS速率,以避免抖动播放速度.
  3. 如果适合您的情况,缓冲池将是更好的播放.

未来

您可以使用PeerConnection API,MediaSource API,因为这就是它们的原因,尽管这可能会增加CPU使用率,具体取决于浏览器的性能.