带有WebRTC的Vnc用于远程屏幕控制

问题描述 投票:0回答:1

概述

是否可以将VNC(RFB)与WebRTC一起使用Node Js来实现远程屏幕控制?我从RFB获得了远程屏幕框架,我想将其转换为MediaStream,然后发送到客户端。我试图在网络中搜索任何解决方案,但找不到任何可以使用的解决方案。

我找到可能的解决方案

  1. ffmpeg帧编码(我不确定我可以将帧编码为适合MediaStream的内容)
  2. 将帧放入画布元素,然后捕获到MediaStream中

主要问题

如何编码rfb帧以适合Mediastream和WebRTC

到目前为止我一直在使用什么

我只是将rfb帧转换为png图片,发送给客户端并使用画布进行渲染。问题-糟糕的fps,相当长的延迟]

除了WebRTC之外还有其他解决方案吗?

node.js encoding webrtc vnc rfb-protocol
1个回答
0
投票

我认为WebRTC是一个很好的解决方案,这个开源项目neko已经做到了。他们没有使用VNC(而是使用GStreamer来捕获X11),但这完全有可能改变。

由于png是无损的,因此您浪费了大量带宽,如果可能的话,我会编码为VPx或H264。

您是否通过DataChannel传输这些png?如果可能,我也会使用RTP。浏览器将丢弃后期帧(以及其他优化),以确保您获得最佳体验。

© www.soinside.com 2019 - 2024. All rights reserved.