如何使用FFMPEG捕获浏览器的选项卡内容

时间:2017-04-06 20:25:49

标签: windows firefox ffmpeg screen-recording

我正在开展一个项目,我需要录制HTML5动画,这些动画将在不同的浏览器标签中播放。

所以我一直在阅读,显然可以使用FFMPEG完成,也许使用gdigrab设备: https://www.ffmpeg.org/ffmpeg-devices.html#gdigrab

您甚至可以从特定窗口抓取(使用title = Calculator 记录calc.exe)

我想使用此逻辑来捕获多个浏览器选项卡内容中的每一个。 (或至少一个)但我不知道Firefox / Chrome标签“标题”,或者它们是否可以用作Windows。

我还需要录制音频,因此我需要将计算机的输出设备与标签中的视频混合。

如果有人有关于我如何做到这一点的更多信息,我将非常感激。

谢谢,

1 个答案:

答案 0 :(得分:3)

标签位于浏览器的应用程序逻辑中,因此我认为您无法定位标签。如果将选项卡作为单独的窗口分离,则可以捕获它。您需要在任务管理器中显示的字符串。这是窗口标题。

首先运行 Picasso.with(this) .load("your image path") .resize(getWindowManager().getDefaultDisplay().getWidth(), getWindowManager().getDefaultDisplay().getHeight()) .into(imageview);

这将生成由firefox.exe控制的所有单独窗口的一组行

假设您想要捕获此当前页面,则findstr输出将为

tasklist /v /fi "imagename eq firefox.exe" /fo list | findstr  Window

然后运行

Window Title: firefox - How to use FFMPEG to capture a browser's tab content - Stack Overflow - Mozilla Firefox

您可以在录制时移动窗口,但如果调整大小,录制将在此时结束。如果该窗口中有其他选项卡,并且您切换到它们,则会捕获它们。因此,最好将所需的选项卡隔离到自己的窗口中。

对于音频,您需要使用directshow输入设备。请参阅文档和有关如何列出它们的示例。