javascript - 将网页呈现为 H.264

标签 javascript node.js video-streaming chromium-embedded video-encoding

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

我得到了最后一部分,流式传输到我网络上的另一台 PC。 现在我唯一的问题是呈现网页。

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

我能想到的唯一方法是,如果我运行浏览器(或者类似 CEF 的东西?),然后“捕获”输出,并将其呈现为 H.264

我基本上是在尝试做与 OBS 的 BrowserSource 相同的事情,但我不使用 OBS 的唯一原因是我找不到一个很好的方式来运行它。

注意:我需要能够通过命令行完成,完全 headless 。

最佳答案

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

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

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

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

关于javascript - 将网页呈现为 H.264,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/48348709/

相关文章:

javascript - 带有 PYQT QWebView 的谷歌地图 API

javascript - 在 Wordpress 中包含我的 JavaScript 文件不起作用

Javascript:将打印功能添加到正文元素

node.js - 查询时 mongodb native 驱动程序错误

node.js - 预期未授权错误 : jwt audience invalid.:

node.js - NodeJS 视频流实时转码

javascript - 使用 'AutoPostBack=false' ,如何触发运行一些 JavaScript 后执行的回发?

Node.js - "Cannot find module",当模块调用其他模块时

internet-explorer - 无法在 IE 中播放 vlc 插件中的视频

android - 在其他表面 View 之上的圆形表面 View