在一个网站上,我有一个加载我的游戏(从另一个域)的 iframe,我想捕获并流式传输它。我怎样才能实现这个目标?只是用户与其交互时此 iframe 的内容,而不是整个屏幕或页面。
这是我尝试过的:
使用getDisplayMedia()Chromium/Mozilla 浏览器 api,添加feature-policy:到 HTTP 标头和allow属性是我认为可以解决问题的方法,但发生的情况是,它只允许您使用屏幕捕获 API,该 API 似乎不支持将 iframe 内容捕获为视频。
其次,我尝试使用 iframe,allow='displaycapture'但是当我调用getDisplayUserMedia()iframe 时没有显示。
我最后放弃的绝望尝试是一个浏览器扩展,它可以以某种方式捕获 iframe 内容作为视频流,但这似乎很困难,因为它不像 iframe 屏幕输出作为二进制文件在 chromium 引擎深处的某个地方进行流式传输。
小智 3
出于安全原因,不可能记录来自第 3 方来源的嵌入页面。您需要将其放在同一域下,在这种情况下您可以使用<iframe allow='displaycapture'/>或添加 HTTP header Permissions-Policy: display-capture=(self)。除此之外,你就不走运了。