Nvidia uses hardware FBC for its own streaming and recording software Expirience. Steam also uses it for streaming to steam link.
They work independant from any API uses in game or sofware. FBC effective for full screen framebuffer capture and IFR for windowed capture, her some details:
NVFBC
Captures the framebuffer (front buffer) without any involvement from OpenGL or Direct3D.
Effectively a direct copy of the framebuffer irrespective of which application(s) drew it.
It generally only works sensibly in fullscreen mode. If you render in windowed mode and use NVFBC, it is going to capture the entire screen including your desktop and other unrelated windows.
NVIFR
Slightly more complicated and less performant than NVFBC, this can capture a single application.
In my experience this used to be how Steam would stream windowed-mode applications. I have not seen this capture path in a very long time and I am glad because performance was awful whenever it was used.
Here some documentation https://developer.nvidia.com/sites/default/files/akamai/designworks/docs/NVIDIA%20Capture%20SDK%20Programming%20Guide.pdf
http://on-demand.gputechconf.com/gtc/2016/presentation/s6307-shounak-deshpande-get-to-know-the-nvidia-grid-sdk.pdf
Here the capture SDK itself: https://developer.nvidia.com/capture-sdk
ATI also has something similar, but im not very familiar with it, maybe google it.
Anyway, implementation of this will reduce CPU load and performance impact completely, please do this as soon as you can.
Nvidia uses hardware FBC for its own streaming and recording software Expirience. Steam also uses it for streaming to steam link.
They work independant from any API uses in game or sofware. FBC effective for full screen framebuffer capture and IFR for windowed capture, her some details:
NVFBC
Captures the framebuffer (front buffer) without any involvement from OpenGL or Direct3D.
Effectively a direct copy of the framebuffer irrespective of which application(s) drew it.
It generally only works sensibly in fullscreen mode. If you render in windowed mode and use NVFBC, it is going to capture the entire screen including your desktop and other unrelated windows.
NVIFR
Slightly more complicated and less performant than NVFBC, this can capture a single application.
In my experience this used to be how Steam would stream windowed-mode applications. I have not seen this capture path in a very long time and I am glad because performance was awful whenever it was used.
Here some documentation https://developer.nvidia.com/sites/default/files/akamai/designworks/docs/NVIDIA%20Capture%20SDK%20Programming%20Guide.pdf
http://on-demand.gputechconf.com/gtc/2016/presentation/s6307-shounak-deshpande-get-to-know-the-nvidia-grid-sdk.pdf
Here the capture SDK itself: https://developer.nvidia.com/capture-sdk
ATI also has something similar, but im not very familiar with it, maybe google it.
Anyway, implementation of this will reduce CPU load and performance impact completely, please do this as soon as you can.