ScnLib_EnableGPUAcceleration()

ScnLib_EnableGPUAcceleration()

标准版专业版超级版至尊版
C++ __declspec(dllimport) void __stdcall ScnLib_EnableGPUAcceleration(BOOL bEnable);
C# [DllImport("ScnLib.dll")] public static extern void ScnLib_EnableGPUAcceleration(bool Enable);
Basic Public Declare Sub ScnLib_EnableGPUAcceleration Lib "ScnLib.dll" (ByVal Enable As Boolean)
Delphi procedure ScnLib_EnableGPUAcceleration(Enable: LongBool); stdcall; external 'ScnLib.dll';
  • 描述
    启用或禁用GPU加速屏幕捕获功能。

  • 参数
    • Enable [in]
      TRUE:启用GPU加速功能。
      FALSE:禁用GPU加速功能。
  • 返回值
    无。

  • 备注
    Windows提供了一系列屏幕捕获方法,包括GDI屏幕捕获、基于驱动的捕获、DWM(Aero) Hook捕获、DXGI桌面复制和WindowsGraphicsCapture等。GDI屏幕捕获因其简单而受欢迎,但它会减慢系统速度,并且在Windows Vista及更新系统上捕获的帧率较低,这是由于从GPU到系统内存的数据传输过程中会发生管线阻滞。

    为了解决这些问题,一些屏幕录制软件可能会在整个录制过程中禁用GPU渲染,也称为禁用DirectX硬件加速。这可以减少延迟,但通常以牺牲用户体验为代价。

    我们的SDK结合了先进的技术,提供高帧率、无延迟的屏幕录制。它包括针对不同Windows版本的优化方法:Windows XP的GDI捕获、Windows Vista/7的DWM(Aero) Hook、Windows 8及更新版本的DXGI复制,以及Windows 10及更高版本的WindowsGraphicsCapture。

    我们的SDK在Vista及以后的系统上利用GPU加速高效地截取屏幕内容,这对于平滑捕获至关重要。它无缝结合了这些技术,自动适应操作系统,从而最大限度地减少CPU使用率并提升性能。默认情况下SDK启用GPU加速,以确保最佳录制效果。

    然而,如果需要禁用GPU加速,您可以调用此函数并传入FALSE参数,将在所有系统中均使用标准GDI屏幕捕获,尽管通常不建议这样做,除非您遇到特定系统的问题。要检测GPU加速是否处于激活状态,请调用ScnLib_IsGPUAccelerationEnabled()

  • 参见
    ScnLib_IsGPUAccelerationEnabled()
    ScnLib_EnableVideoVariableFrameRate()

下载 SDK API 总览