展示HN:使用WebRTC进行CUA模型的直播(开源软件,Apache 2.0)

1作者: juecd10 个月前原帖
嘿,HN, 我们一直在基于我们的浏览器unikernel仓库[0]进行开发,想要用更快的东西替换掉noVNC远程图形用户界面。虽然noVNC还可以,但在任何重JS的网站上(基本上除了Hacker News之外的任何网站)都非常卡顿……我们添加了使用WebRTC的远程GUI支持,具体支持如下: - 低延迟的实时读写沙箱浏览器视图(滚动、点击、输入感觉更为流畅) - 可以直接作为Docker容器或在Unikraft unikernels上启动 - 如果使用unikernels,能够处理实时流,启动时间快(<20毫秒) WebRTC功能强大(支持各种媒体和数据传输),但实现起来并不简单。我们对Neko [1]库进行了调整,使其能够与我们的基础Chromium镜像良好配合。我们还根据我们的使用案例定制了前端。 希望能听到之前在流媒体项目上工作过的朋友们的想法和反馈。 [0] [https://news.ycombinator.com/item?id=43705144](https://news.ycombinator.com/item?id=43705144) [1] 改编自: [https://github.com/m1k1o/neko](https://github.com/m1k1o/neko) [2] [https://github.com/onkernel/kernel-images](https://github.com/onkernel/kernel-images) * 注意:我们已经开始着手添加视频回放功能,因此我们的仓库中也已经有一些相关的源代码。
查看原文
Hey HN,<p>We’ve been building on top of our browser-unikernel repo [0] and wanted to replace the noVNC remote GUI with something much faster. NoVNC is okay but it’s super laggy with any JS-heavy website (basically anything besides Hacker News…). We added remote GUI support using WebRTC, which supports:<p>- low latency read&#x2F;write live view into the sandboxed browser (scrolling, clicking, typing feel way more responsive) - can launch directly as a Docker container or on Unikraft unikernels - process real-time streams with a fast boot up time (&lt;20ms) if you’re using unikernels<p>WebRTC is powerful (supports all types of media and data transmission) but not trivial to implement. We adapted the Neko [1] library to play nicely with our base Chromium image. We also tailored the frontend to our use case.<p>Would love any thoughts&#x2F;feedback from folks who’ve worked on streaming projects before.<p>[0] <a href="https:&#x2F;&#x2F;news.ycombinator.com&#x2F;item?id=43705144">https:&#x2F;&#x2F;news.ycombinator.com&#x2F;item?id=43705144</a> [1] Adapted from: <a href="https:&#x2F;&#x2F;github.com&#x2F;m1k1o&#x2F;neko">https:&#x2F;&#x2F;github.com&#x2F;m1k1o&#x2F;neko</a> [2] <a href="https:&#x2F;&#x2F;github.com&#x2F;onkernel&#x2F;kernel-images">https:&#x2F;&#x2F;github.com&#x2F;onkernel&#x2F;kernel-images</a><p>* Note: we&#x27;ve started working on adding video replays, so there&#x27;s some source code for that already in our repo too.