【问题标题】:[C++|winapi]Can you access video output of application before it is displayed?[C++|winapi]应用程序的视频输出能否在显示前访问?
【发布时间】:2014-04-09 11:45:04
【问题描述】:

我想使用 C++ 和 winapi 捕获应用程序的视频输出,并将其通过网络传输。目前,我正在使用 DirectShow 过滤器捕获此输出。该应用程序在屏幕上显示它的视频输出,我只是捕捉那里的任何内容。我想优化这个过程。

我的问题是:有没有办法在应用程序的视频/音频输出显示在屏幕上之前捕获它?

谢谢。

【问题讨论】:

    标签: c++ winapi video


    【解决方案1】:

    在显示之前拍摄视频

    这取决于应用程序如何为您提供视频。

    1. 实时渲染 - 您无法访问不存在的内容。像电子游戏,或者任何只显示实际状态的动态渲染,也许对未来一无所知。 还有一个异常,当渲染变得比屏幕刷新率慢时,称为screen tearing

    2. 静态显示 - 所有数据都已可用。例如,如果它是一个视频播放器应用程序,在您的本地机器上有一个视频,您唯一的任务就是获取数据,并及时将其捕捉到适当的位置。

    最后但并非最不重要的一点是,每个硬件都有一个反应时间,即处理数据的小延迟。

    还有一个类似的问题Fastest method of screen capturing on Windows

    【讨论】:

      猜你喜欢
      • 2013-11-27
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2023-03-03
      • 1970-01-01
      • 1970-01-01
      • 2012-06-05
      • 2020-06-08
      相关资源
      最近更新 更多