DRIVE 5.0 Linux Open Source Software

Development Guide Release

Screen Capture API
The following diagram shows the place of the Screen Capture API in the NVIDIA DRIVE™ SDK architecture.
The relevant layers of the system, from the top down, are:
A user screen capture tool or sample application
The screen capture wrapper library, nvscrncapt
The Display Controller API, libnvdc
The kernel DC driver
Logical Flow in a Screen Capture Operation
The logical flow of the screen capture process has the following steps:
1. Pause display flip if a display flip operation is in progress.
2. For each requested head and for each window assigned to this head:
Collect the display head configuration information.
Initiate the screen capture process by calling the Screen Capture API NvScrncaptInit() function.
Capture the screen image from the frame buffer for the latest flip currently on display by calling the NvScrncaptCapture() function. This function may use a screen capture buffer provided by the application, or shall allocate its own if the application delegates that task to the API.
Process the captured data, for an example, saving it to a file.
Conclude the screen capture process by calling the NvScrncaptCleanup() function.
3. Resume display flip.
The display pause in Step 1 is subject to a timer that may resume the display after a predefined amount of time to prevent the system display lock-up.
For more information, see Screen Capture in API Modules.