将网页渲染为 H.264

Mib*_*oot 5 javascript video-encoding video-streaming node.js chromium-embedded

我正在尝试将 HTML 渲染为 H.264 流,然后将其流式传输到网络上的另一台 PC。

我已经把最后一部分写streaming to to another PC on my network下来了。现在我唯一的问题是渲染网页。

我无法渲染它一次,因为它不是静态网页。我需要加载网页、获取图像、运行 javascript 并打开 websockets。

我能想象这个工作的唯一方法是,如果我运行浏览器(或者可能是CEF之类的东西?),并“捕获”输出,并将其渲染为 H.264

我基本上试图做与 OBS 的 BrowserSource 相同的事情,但我不使用 OBS 的唯一原因是因为我找不到一种无头运行它的好方法。

注意:我需要能够通过命令行来完成此操作,完全无头。

Bra*_*rad 3

我已经使用 Chromium Tab Capture API 和 Off-Screen Tab Capture API 完成了此操作。

Chromium 将方便地处理所有渲染,包括引入 WebGL 渲染的内容,并将所有内容合成到一个漂亮整洁的 MediaStream 中。从那里,您可以在 WebRTC 调用中使用它或传递给 MediaRecorder 实例。

屏幕外选项卡捕获甚至有一个很好的单独的隔离进程,无法访问本地摄像头等。

https://developer.chrome.com/extensions/tabCapture