NVAPI Reference Documentation
NVIDIA
Release 550
Tue May 7 2024

Data Structures | Macros | Typedefs | Enumerations | Functions
Display Control Interface

Data Structures

struct  tagNV_TIMINGEXT
 
struct  _NV_TIMING
 
struct  NV_VIEW_TARGET_INFO
 
struct  NV_DISPLAY_PATH
 
struct  NV_DISPLAY_PATH_INFO_V3
 
struct  NV_DISPLAY_PATH_INFO
 
struct  _NV_POSITION
 
struct  _NV_RESOLUTION
 
struct  _NV_DISPLAYCONFIG_PATH_ADVANCED_TARGET_INFO_V1
 
struct  _NV_DISPLAYCONFIG_PATH_TARGET_INFO_V1
 
struct  _NV_DISPLAYCONFIG_PATH_TARGET_INFO_V2
 
struct  _NV_DISPLAYCONFIG_SOURCE_MODE_INFO_V1
 
struct  _NV_DISPLAYCONFIG_PATH_INFO_V1
 
struct  _NV_DISPLAYCONFIG_PATH_INFO_V2
 
struct  _NV_DISPLAY_PORT_INFO_V1
 
struct  NV_DISPLAY_PORT_CONFIG
 
struct  _NV_HDMI_SUPPORT_INFO_V1
 
struct  NV_TIMING_FLAG
 
struct  _NV_TIMING_INPUT
 
struct  _NV_MONITOR_COLOR_DATA
 
struct  NV_CUSTOM_DISPLAY
 
struct  _NV_EDID_DATA_V1
 
struct  NV_SET_PREFERRED_STEREO_DISPLAY_V1
 
struct  NV_GET_PREFERRED_STEREO_DISPLAY_V1
 
struct  _NV_GET_VRR_INFO_V1
 

Macros

#define NVFORMAT_MAKEFOURCC(ch0, ch1, ch2, ch3)
 
#define NV_TIMING_H_SYNC_POSITIVE   0
 
#define NV_TIMING_H_SYNC_NEGATIVE   1
 
#define NV_TIMING_H_SYNC_DEFAULT   NV_TIMING_H_SYNC_NEGATIVE
 
#define NV_TIMING_V_SYNC_POSITIVE   0
 
#define NV_TIMING_V_SYNC_NEGATIVE   1
 
#define NV_TIMING_V_SYNC_DEFAULT   NV_TIMING_V_SYNC_POSITIVE
 
#define NV_TIMING_PROGRESSIVE   0
 
#define NV_TIMING_INTERLACED   1
 
#define NV_TIMING_INTERLACED_EXTRA_VBLANK_ON_FIELD2   1
 
#define NV_TIMING_INTERLACED_NO_EXTRA_VBLANK_ON_FIELD2   2
 
#define NV_VIEW_TARGET_INFO_VER   MAKE_NVAPI_VERSION(NV_VIEW_TARGET_INFO,2)
 
#define NVAPI_MAX_DISPLAY_PATH   NVAPI_MAX_VIEW_TARGET
 
#define NVAPI_ADVANCED_MAX_DISPLAY_PATH   NVAPI_ADVANCED_MAX_VIEW_TARGET
 
#define NV_DISPLAY_PATH_INFO_VER   NV_DISPLAY_PATH_INFO_VER4
 
#define NV_DISPLAY_PATH_INFO_VER4   MAKE_NVAPI_VERSION(NV_DISPLAY_PATH_INFO,4)
 
#define NV_DISPLAY_PATH_INFO_VER3   MAKE_NVAPI_VERSION(NV_DISPLAY_PATH_INFO,3)
 
#define NV_DISPLAY_PATH_INFO_VER2   MAKE_NVAPI_VERSION(NV_DISPLAY_PATH_INFO,2)
 
#define NV_DISPLAY_PATH_INFO_VER1   MAKE_NVAPI_VERSION(NV_DISPLAY_PATH_INFO,1)
 
#define NV_DISPLAYCONFIG_PATH_ADVANCED_TARGET_INFO_VER1   MAKE_NVAPI_VERSION(NV_DISPLAYCONFIG_PATH_ADVANCED_TARGET_INFO_V1,1)
 
#define NV_DISPLAYCONFIG_PATH_ADVANCED_TARGET_INFO_VER   NV_DISPLAYCONFIG_PATH_ADVANCED_TARGET_INFO_VER1
 
#define _NV_DISPLAYCONFIG_PATH_INFO_V2   _NV_DISPLAYCONFIG_PATH_INFO
 
#define NV_DISPLAYCONFIG_PATH_INFO_VER1   MAKE_NVAPI_VERSION(NV_DISPLAYCONFIG_PATH_INFO_V1,1)
 
#define NV_DISPLAYCONFIG_PATH_INFO_VER2   MAKE_NVAPI_VERSION(NV_DISPLAYCONFIG_PATH_INFO_V2,2)
 
#define NV_DISPLAY_PORT_CONFIG_VER   MAKE_NVAPI_VERSION(NV_DISPLAY_PORT_CONFIG,2)
 
#define NV_DISPLAY_PORT_CONFIG_VER_1   MAKE_NVAPI_VERSION(NV_DISPLAY_PORT_CONFIG,1)
 
#define NV_DISPLAY_PORT_CONFIG_VER_2   MAKE_NVAPI_VERSION(NV_DISPLAY_PORT_CONFIG,2)
 
#define NV_MONITOR_COLOR_CAPS_VER1   MAKE_NVAPI_VERSION(NV_MONITOR_COLOR_CAPS_V1,1)
 
#define NV_CUSTOM_DISPLAY_VER   MAKE_NVAPI_VERSION(NV_CUSTOM_DISPLAY,1)
 
#define NV_SET_PREFERRED_STEREO_DISPLAY_VER1   MAKE_NVAPI_VERSION(NV_SET_PREFERRED_STEREO_DISPLAY_V1,1)
 
#define NV_SET_PREFERRED_STEREO_DISPLAY_VER   NV_SET_PREFERRED_STEREO_DISPLAY_VER1
 
#define NV_GET_PREFERRED_STEREO_DISPLAY_VER1   MAKE_NVAPI_VERSION(NV_GET_PREFERRED_STEREO_DISPLAY_V1,1)
 
#define NV_GET_PREFERRED_STEREO_DISPLAY_VER   NV_GET_PREFERRED_STEREO_DISPLAY_VER1
 

Typedefs

typedef enum _NV_DP_LINK_RATE NV_DP_LINK_RATE
 
typedef enum _NV_DP_LANE_COUNT NV_DP_LANE_COUNT
 
typedef enum _NV_DP_COLOR_FORMAT NV_DP_COLOR_FORMAT
 
typedef enum _NV_DP_COLORIMETRY NV_DP_COLORIMETRY
 
typedef enum _NV_DP_DYNAMIC_RANGE NV_DP_DYNAMIC_RANGE
 
typedef enum _NV_DP_BPC NV_DP_BPC
 
typedef enum _NV_SCALING NV_SCALING
 
typedef enum _NV_ROTATE NV_ROTATE
 
typedef enum _NV_FORMAT NV_FORMAT
 
typedef enum _NV_TIMING_OVERRIDE NV_TIMING_OVERRIDE
 
typedef struct tagNV_TIMINGEXT NV_TIMINGEXT
 
typedef struct _NV_TIMING NV_TIMING
 
typedef struct _NV_POSITION NV_POSITION
 
typedef struct _NV_RESOLUTION NV_RESOLUTION
 
typedef struct _NV_DISPLAYCONFIG_PATH_ADVANCED_TARGET_INFO_V1 NV_DISPLAYCONFIG_PATH_ADVANCED_TARGET_INFO_V1
 
typedef NV_DISPLAYCONFIG_PATH_ADVANCED_TARGET_INFO_V1 NV_DISPLAYCONFIG_PATH_ADVANCED_TARGET_INFO
 
typedef struct _NV_DISPLAYCONFIG_PATH_TARGET_INFO_V1 NV_DISPLAYCONFIG_PATH_TARGET_INFO_V1
 
typedef struct _NV_DISPLAYCONFIG_PATH_TARGET_INFO_V2 NV_DISPLAYCONFIG_PATH_TARGET_INFO_V2
 
typedef NV_DISPLAYCONFIG_PATH_TARGET_INFO_V2 NV_DISPLAYCONFIG_PATH_TARGET_INFO
 
typedef enum _NV_DISPLAYCONFIG_SPANNING_ORIENTATION NV_DISPLAYCONFIG_SPANNING_ORIENTATION
 
typedef struct _NV_DISPLAYCONFIG_SOURCE_MODE_INFO_V1 NV_DISPLAYCONFIG_SOURCE_MODE_INFO_V1
 
typedef struct _NV_DISPLAYCONFIG_PATH_INFO_V1 NV_DISPLAYCONFIG_PATH_INFO_V1
 
typedef struct _NV_DISPLAYCONFIG_PATH_INFO_V2 NV_DISPLAYCONFIG_PATH_INFO_V2
 
typedef enum _NV_DISPLAYCONFIG_FLAGS NV_DISPLAYCONFIG_FLAGS
 
typedef struct _NV_DISPLAY_PORT_INFO_V1 NV_DISPLAY_PORT_INFO_V1
 
typedef struct _NV_HDMI_SUPPORT_INFO_V1 NV_HDMI_SUPPORT_INFO_V1
 
typedef struct _NV_TIMING_INPUT NV_TIMING_INPUT
 
typedef struct _NV_MONITOR_COLOR_DATA NV_MONITOR_COLOR_CAPS_V1
 
typedef NV_SET_PREFERRED_STEREO_DISPLAY_V1 NV_SET_PREFERRED_STEREO_DISPLAY
 
typedef NV_GET_PREFERRED_STEREO_DISPLAY_V1 NV_GET_PREFERRED_STEREO_DISPLAY
 
typedef struct _NV_GET_VRR_INFO_V1 NV_GET_VRR_INFO_V1
 

Enumerations

enum  _NV_DP_LINK_RATE {
  NV_DP_1_62GBPS = 6 , NV_DP_2_70GBPS = 0xA , NV_DP_5_40GBPS = 0x14 , NV_DP_8_10GBPS = 0x1E ,
  NV_EDP_2_16GBPS = 8 , NV_EDP_2_43GBPS = 9 , NV_EDP_3_24GBPS = 0xC , NV_EDP_4_32GBPS = 0x10
}
 
enum  _NV_DP_LANE_COUNT { NV_DP_1_LANE = 1 , NV_DP_2_LANE = 2 , NV_DP_4_LANE = 4 }
 
enum  _NV_DP_COLOR_FORMAT { NV_DP_COLOR_FORMAT_RGB = 0 , NV_DP_COLOR_FORMAT_YCbCr422 , NV_DP_COLOR_FORMAT_YCbCr444 }
 
enum  _NV_DP_COLORIMETRY { NV_DP_COLORIMETRY_RGB = 0 , NV_DP_COLORIMETRY_YCbCr_ITU601 , NV_DP_COLORIMETRY_YCbCr_ITU709 }
 
enum  _NV_DP_DYNAMIC_RANGE { NV_DP_DYNAMIC_RANGE_VESA = 0 , NV_DP_DYNAMIC_RANGE_CEA }
 
enum  _NV_DP_BPC {
  NV_DP_BPC_DEFAULT = 0 , NV_DP_BPC_6 , NV_DP_BPC_8 , NV_DP_BPC_10 ,
  NV_DP_BPC_12 , NV_DP_BPC_16
}
 
enum  _NV_SCALING {
  NV_SCALING_DEFAULT = 0 , NV_SCALING_GPU_SCALING_TO_CLOSEST = 1 , NV_SCALING_GPU_SCALING_TO_NATIVE = 2 , NV_SCALING_GPU_SCANOUT_TO_NATIVE = 3 ,
  NV_SCALING_GPU_SCALING_TO_ASPECT_SCANOUT_TO_NATIVE = 5 , NV_SCALING_GPU_SCALING_TO_ASPECT_SCANOUT_TO_CLOSEST = 6 , NV_SCALING_GPU_SCANOUT_TO_CLOSEST = 7 , NV_SCALING_GPU_INTEGER_ASPECT_SCALING = 8 ,
  NV_SCALING_MONITOR_SCALING = NV_SCALING_GPU_SCALING_TO_CLOSEST , NV_SCALING_ADAPTER_SCALING = NV_SCALING_GPU_SCALING_TO_NATIVE , NV_SCALING_CENTERED = NV_SCALING_GPU_SCANOUT_TO_NATIVE , NV_SCALING_ASPECT_SCALING = NV_SCALING_GPU_SCALING_TO_ASPECT_SCANOUT_TO_NATIVE ,
  NV_SCALING_CUSTOMIZED = 255
}
 
enum  _NV_ROTATE {
  NV_ROTATE_0 = 0 , NV_ROTATE_90 = 1 , NV_ROTATE_180 = 2 , NV_ROTATE_270 = 3 ,
  NV_ROTATE_IGNORED = 4
}
 
enum  _NV_FORMAT {
  NV_FORMAT_UNKNOWN = 0 , NV_FORMAT_P8 = 41 , NV_FORMAT_R5G6B5 = 23 , NV_FORMAT_A8R8G8B8 = 21 ,
  NV_FORMAT_A16B16G16R16F = 113
}
 
enum  _NV_TIMING_OVERRIDE {
  NV_TIMING_OVERRIDE_CURRENT = 0 , NV_TIMING_OVERRIDE_AUTO , NV_TIMING_OVERRIDE_EDID , NV_TIMING_OVERRIDE_DMT ,
  NV_TIMING_OVERRIDE_DMT_RB , NV_TIMING_OVERRIDE_CVT , NV_TIMING_OVERRIDE_CVT_RB , NV_TIMING_OVERRIDE_GTF ,
  NV_TIMING_OVERRIDE_EIA861 , NV_TIMING_OVERRIDE_ANALOG_TV , NV_TIMING_OVERRIDE_CUST , NV_TIMING_OVERRIDE_NV_PREDEFINED ,
  NV_TIMING_OVERRIDE_NV_PSF = NV_TIMING_OVERRIDE_NV_PREDEFINED , NV_TIMING_OVERRIDE_NV_ASPR , NV_TIMING_OVERRIDE_SDI , NV_TIMING_OVRRIDE_MAX
}
 
enum  _NV_DISPLAYCONFIG_SPANNING_ORIENTATION { NV_DISPLAYCONFIG_SPAN_NONE = 0 , NV_DISPLAYCONFIG_SPAN_HORIZONTAL = 1 , NV_DISPLAYCONFIG_SPAN_VERTICAL = 2 }
 
enum  _NV_DISPLAYCONFIG_FLAGS {
  NV_DISPLAYCONFIG_VALIDATE_ONLY = 0x00000001 , NV_DISPLAYCONFIG_SAVE_TO_PERSISTENCE = 0x00000002 , NV_DISPLAYCONFIG_DRIVER_RELOAD_ALLOWED = 0x00000004 , NV_DISPLAYCONFIG_FORCE_MODE_ENUMERATION = 0x00000008 ,
  NV_FORCE_COMMIT_VIDPN = 0x00000010
}
 
enum  NV_INFOFRAME_CMD {
  NV_INFOFRAME_CMD_GET_DEFAULT = 0 , NV_INFOFRAME_CMD_RESET , NV_INFOFRAME_CMD_GET , NV_INFOFRAME_CMD_SET ,
  NV_INFOFRAME_CMD_GET_OVERRIDE , NV_INFOFRAME_CMD_SET_OVERRIDE , NV_INFOFRAME_CMD_GET_PROPERTY , NV_INFOFRAME_CMD_SET_PROPERTY
}
 

Functions

 __nvapi_deprecated_function ("Do not use this function - it is deprecated in release 290. Instead, use NvAPI_DISP_SetDisplayConfig.") NVAPI_INTERFACE NvAPI_SetViewEx(NvDisplayHandle hNvDisplay
 
NVAPI_INTERFACE NvAPI_CreateDisplayFromUnAttachedDisplay (NvUnAttachedDisplayHandle hNvUnAttachedDisp, NvDisplayHandle *pNvDisplay)
 
NVAPI_INTERFACE NvAPI_GetAssociatedNvidiaDisplayName (NvDisplayHandle NvDispHandle, NvAPI_ShortString szDisplayName)
 
NVAPI_INTERFACE NvAPI_GetUnAttachedAssociatedDisplayName (NvUnAttachedDisplayHandle hNvUnAttachedDisp, NvAPI_ShortString szDisplayName)
 
NVAPI_INTERFACE NvAPI_EnableHWCursor (NvDisplayHandle hNvDisplay)
 
NVAPI_INTERFACE NvAPI_DisableHWCursor (NvDisplayHandle hNvDisplay)
 
NVAPI_INTERFACE NvAPI_GetVBlankCounter (NvDisplayHandle hNvDisplay, NvU32 *pCounter)
 
NVAPI_INTERFACE NvAPI_SetRefreshRateOverride (NvDisplayHandle hNvDisplay, NvU32 outputsMask, float refreshRate, NvU32 bSetDeferred)
 
NVAPI_INTERFACE NvAPI_GetAssociatedDisplayOutputId (NvDisplayHandle hNvDisplay, NvU32 *pOutputId)
 
NVAPI_INTERFACE NvAPI_GetDisplayPortInfo (__in_opt NvDisplayHandle hNvDisplay, __in NvU32 outputId, __inout NV_DISPLAY_PORT_INFO *pInfo)
 
NVAPI_INTERFACE NvAPI_SetDisplayPort (NvDisplayHandle hNvDisplay, NvU32 outputId, NV_DISPLAY_PORT_CONFIG *pCfg)
 
NVAPI_INTERFACE NvAPI_GetHDMISupportInfo (__in_opt NvDisplayHandle hNvDisplay, __in NvU32 outputId, __inout NV_HDMI_SUPPORT_INFO *pInfo)
 
NVAPI_INTERFACE NvAPI_Disp_InfoFrameControl (__in NvU32 displayId, __inout NV_INFOFRAME_DATA *pInfoframeData)
 
NVAPI_INTERFACE NvAPI_DISP_GetTiming (__in NvU32 displayId, __in NV_TIMING_INPUT *timingInput, __out NV_TIMING *pTiming)
 
NVAPI_INTERFACE NvAPI_DISP_GetMonitorCapabilities (__in NvU32 displayId, __inout NV_MONITOR_CAPABILITIES *pMonitorCapabilities)
 
NVAPI_INTERFACE NvAPI_DISP_GetMonitorColorCapabilities (__in NvU32 displayId, __inout_ecount_part_opt(*pColorCapsCount, *pColorCapsCount) NV_MONITOR_COLOR_CAPS *pMonitorColorCapabilities, __inout NvU32 *pColorCapsCount)
 
NVAPI_INTERFACE NvAPI_DISP_EnumCustomDisplay (__in NvU32 displayId, __in NvU32 index, __inout NV_CUSTOM_DISPLAY *pCustDisp)
 
NVAPI_INTERFACE NvAPI_DISP_TryCustomDisplay (__in_ecount(count) NvU32 *pDisplayIds, __in NvU32 count, __in_ecount(count) NV_CUSTOM_DISPLAY *pCustDisp)
 
NVAPI_INTERFACE NvAPI_DISP_DeleteCustomDisplay (__in_ecount(count) NvU32 *pDisplayIds, __in NvU32 count, __in NV_CUSTOM_DISPLAY *pCustDisp)
 
NVAPI_INTERFACE NvAPI_DISP_SaveCustomDisplay (__in_ecount(count) NvU32 *pDisplayIds, __in NvU32 count, __in NvU32 isThisOutputIdOnly, __in NvU32 isThisMonitorIdOnly)
 
NVAPI_INTERFACE NvAPI_DISP_RevertCustomDisplayTrial (__in_ecount(count) NvU32 *pDisplayIds, __in NvU32 count)
 
 __nvapi_deprecated_function ("Do not use this function - it is deprecated in release 290. Instead, use NvAPI_DISP_GetDisplayConfig.") NVAPI_INTERFACE NvAPI_GetView(NvDisplayHandle hNvDisplay
 
NVAPI_INTERFACE NvAPI_GetSupportedViews (NvDisplayHandle hNvDisplay, NV_TARGET_VIEW_MODE *pTargetViews, NvU32 *pViewCount)
 
NVAPI_INTERFACE NvAPI_DISP_GetDisplayIdByDisplayName (const char *displayName, NvU32 *displayId)
 
NVAPI_INTERFACE NvAPI_DISP_GetDisplayConfig (__inout NvU32 *pathInfoCount, __out_ecount_full_opt(*pathInfoCount) NV_DISPLAYCONFIG_PATH_INFO *pathInfo)
 
NVAPI_INTERFACE NvAPI_DISP_SetDisplayConfig (__in NvU32 pathInfoCount, __in_ecount(pathInfoCount) NV_DISPLAYCONFIG_PATH_INFO *pathInfo, __in NvU32 flags)
 
NVAPI_INTERFACE NvAPI_DISP_SetPreferredStereoDisplay (__in NV_SET_PREFERRED_STEREO_DISPLAY *pPreferredStereoDisplay)
 
NVAPI_INTERFACE NvAPI_DISP_GetPreferredStereoDisplay (__inout NV_GET_PREFERRED_STEREO_DISPLAY *pPreferredStereoDisplay)
 
NVAPI_INTERFACE NvAPI_DISP_AcquireDedicatedDisplay (__in NvU32 displayId, __inout NvU64 *pDisplaySourceHandle)
 
NVAPI_INTERFACE NvAPI_DISP_ReleaseDedicatedDisplay (__in NvU32 displayId)
 
NVAPI_INTERFACE NvAPI_Disp_GetVRRInfo (__in NvU32 displayId, __inout NV_GET_VRR_INFO *pVrrInfo)
 
NVAPI_INTERFACE NvAPI_DISP_GetGDIPrimaryDisplayId (NvU32 *displayId)
 
NVAPI_INTERFACE NvAPI_DISP_GetAdaptiveSyncData (__in NvU32 displayId, __inout NV_GET_ADAPTIVE_SYNC_DATA *pAdaptiveSyncData)
 
NVAPI_INTERFACE NvAPI_DISP_SetAdaptiveSyncData (__in NvU32 displayId, __in NV_SET_ADAPTIVE_SYNC_DATA *pAdaptiveSyncData)
 
NVAPI_INTERFACE NvAPI_DISP_GetVirtualRefreshRateData (__in NvU32 displayId, __inout NV_GET_VIRTUAL_REFRESH_RATE_DATA *pVirtualRefreshRateData)
 
NVAPI_INTERFACE NvAPI_DISP_SetVirtualRefreshRateData (__in NvU32 displayId, __in NV_SET_VIRTUAL_REFRESH_RATE_DATA *pVirtualRefreshRateData)
 
enum  NV_MONITOR_CAPS_TYPE { NV_MONITOR_CAPS_TYPE_HDMI_VSDB = 0x1000 , NV_MONITOR_CAPS_TYPE_HDMI_VCDB = 0x1001 , NV_MONITOR_CAPS_TYPE_GENERIC = 0x1002 }
 
enum  _NV_TARGET_VIEW_MODE {
  NV_VIEW_MODE_STANDARD = 0 , NV_VIEW_MODE_CLONE = 1 , NV_VIEW_MODE_HSPAN = 2 , NV_VIEW_MODE_VSPAN = 3 ,
  NV_VIEW_MODE_DUALVIEW = 4 , NV_VIEW_MODE_MULTIVIEW = 5
}
 
typedef enum _NV_TARGET_VIEW_MODE NV_TARGET_VIEW_MODE
 
#define NVAPI_MAX_VIEW_TARGET   2
 
#define NVAPI_ADVANCED_MAX_VIEW_TARGET   4
 
#define _NV_TARGET_VIEW_MODE_
 
typedef struct _NV_EDID_DATA_V1 NV_EDID_DATA_V1
 
NVAPI_INTERFACE NvAPI_DISP_GetEdidData (__in NvU32 displayId, __inout NV_EDID_DATA *pEdidParams, __inout NV_EDID_FLAG *pFlag)
 
NVAPI_INTERFACE NvAPI_Disp_ColorControl (NvU32 displayId, NV_COLOR_DATA *pColorData)
 

Detailed Description

Timing-related constants

Macro for constructing the version fields of NV_DISPLAY_PATH_INFO

Macro for constructing the version field of NV_DISPLAY_PORT_CONFIG

Macro Definition Documentation

◆ _NV_DISPLAYCONFIG_PATH_INFO_V2

#define _NV_DISPLAYCONFIG_PATH_INFO_V2   _NV_DISPLAYCONFIG_PATH_INFO

This define is temporary and must be removed once DVS failure is fixed.

◆ _NV_TARGET_VIEW_MODE_

#define _NV_TARGET_VIEW_MODE_

Used in NvAPI_SetView().

◆ NV_CUSTOM_DISPLAY_VER

#define NV_CUSTOM_DISPLAY_VER   MAKE_NVAPI_VERSION(NV_CUSTOM_DISPLAY,1)

◆ NV_DISPLAY_PATH_INFO_VER

#define NV_DISPLAY_PATH_INFO_VER   NV_DISPLAY_PATH_INFO_VER4

◆ NV_DISPLAY_PATH_INFO_VER1

#define NV_DISPLAY_PATH_INFO_VER1   MAKE_NVAPI_VERSION(NV_DISPLAY_PATH_INFO,1)

◆ NV_DISPLAY_PATH_INFO_VER2

#define NV_DISPLAY_PATH_INFO_VER2   MAKE_NVAPI_VERSION(NV_DISPLAY_PATH_INFO,2)

◆ NV_DISPLAY_PATH_INFO_VER3

#define NV_DISPLAY_PATH_INFO_VER3   MAKE_NVAPI_VERSION(NV_DISPLAY_PATH_INFO,3)

◆ NV_DISPLAY_PATH_INFO_VER4

#define NV_DISPLAY_PATH_INFO_VER4   MAKE_NVAPI_VERSION(NV_DISPLAY_PATH_INFO,4)

◆ NV_DISPLAY_PORT_CONFIG_VER

#define NV_DISPLAY_PORT_CONFIG_VER   MAKE_NVAPI_VERSION(NV_DISPLAY_PORT_CONFIG,2)

◆ NV_DISPLAY_PORT_CONFIG_VER_1

#define NV_DISPLAY_PORT_CONFIG_VER_1   MAKE_NVAPI_VERSION(NV_DISPLAY_PORT_CONFIG,1)

Macro for constructing the version field of NV_DISPLAY_PORT_CONFIG.

◆ NV_DISPLAY_PORT_CONFIG_VER_2

#define NV_DISPLAY_PORT_CONFIG_VER_2   MAKE_NVAPI_VERSION(NV_DISPLAY_PORT_CONFIG,2)

Macro for constructing the version field of NV_DISPLAY_PORT_CONFIG.

◆ NV_DISPLAYCONFIG_PATH_ADVANCED_TARGET_INFO_VER

#define NV_DISPLAYCONFIG_PATH_ADVANCED_TARGET_INFO_VER   NV_DISPLAYCONFIG_PATH_ADVANCED_TARGET_INFO_VER1

◆ NV_DISPLAYCONFIG_PATH_ADVANCED_TARGET_INFO_VER1

#define NV_DISPLAYCONFIG_PATH_ADVANCED_TARGET_INFO_VER1   MAKE_NVAPI_VERSION(NV_DISPLAYCONFIG_PATH_ADVANCED_TARGET_INFO_V1,1)

◆ NV_DISPLAYCONFIG_PATH_INFO_VER1

#define NV_DISPLAYCONFIG_PATH_INFO_VER1   MAKE_NVAPI_VERSION(NV_DISPLAYCONFIG_PATH_INFO_V1,1)

◆ NV_DISPLAYCONFIG_PATH_INFO_VER2

#define NV_DISPLAYCONFIG_PATH_INFO_VER2   MAKE_NVAPI_VERSION(NV_DISPLAYCONFIG_PATH_INFO_V2,2)

◆ NV_GET_PREFERRED_STEREO_DISPLAY_VER

#define NV_GET_PREFERRED_STEREO_DISPLAY_VER   NV_GET_PREFERRED_STEREO_DISPLAY_VER1

◆ NV_GET_PREFERRED_STEREO_DISPLAY_VER1

#define NV_GET_PREFERRED_STEREO_DISPLAY_VER1   MAKE_NVAPI_VERSION(NV_GET_PREFERRED_STEREO_DISPLAY_V1,1)

◆ NV_MONITOR_COLOR_CAPS_VER1

#define NV_MONITOR_COLOR_CAPS_VER1   MAKE_NVAPI_VERSION(NV_MONITOR_COLOR_CAPS_V1,1)

◆ NV_SET_PREFERRED_STEREO_DISPLAY_VER

#define NV_SET_PREFERRED_STEREO_DISPLAY_VER   NV_SET_PREFERRED_STEREO_DISPLAY_VER1

◆ NV_SET_PREFERRED_STEREO_DISPLAY_VER1

#define NV_SET_PREFERRED_STEREO_DISPLAY_VER1   MAKE_NVAPI_VERSION(NV_SET_PREFERRED_STEREO_DISPLAY_V1,1)

◆ NV_TIMING_H_SYNC_DEFAULT

#define NV_TIMING_H_SYNC_DEFAULT   NV_TIMING_H_SYNC_NEGATIVE

◆ NV_TIMING_H_SYNC_NEGATIVE

#define NV_TIMING_H_SYNC_NEGATIVE   1

◆ NV_TIMING_H_SYNC_POSITIVE

#define NV_TIMING_H_SYNC_POSITIVE   0

◆ NV_TIMING_INTERLACED

#define NV_TIMING_INTERLACED   1

◆ NV_TIMING_INTERLACED_EXTRA_VBLANK_ON_FIELD2

#define NV_TIMING_INTERLACED_EXTRA_VBLANK_ON_FIELD2   1

◆ NV_TIMING_INTERLACED_NO_EXTRA_VBLANK_ON_FIELD2

#define NV_TIMING_INTERLACED_NO_EXTRA_VBLANK_ON_FIELD2   2

◆ NV_TIMING_PROGRESSIVE

#define NV_TIMING_PROGRESSIVE   0

◆ NV_TIMING_V_SYNC_DEFAULT

#define NV_TIMING_V_SYNC_DEFAULT   NV_TIMING_V_SYNC_POSITIVE

◆ NV_TIMING_V_SYNC_NEGATIVE

#define NV_TIMING_V_SYNC_NEGATIVE   1

◆ NV_TIMING_V_SYNC_POSITIVE

#define NV_TIMING_V_SYNC_POSITIVE   0

◆ NV_VIEW_TARGET_INFO_VER

#define NV_VIEW_TARGET_INFO_VER   MAKE_NVAPI_VERSION(NV_VIEW_TARGET_INFO,2)

◆ NVAPI_ADVANCED_MAX_DISPLAY_PATH

#define NVAPI_ADVANCED_MAX_DISPLAY_PATH   NVAPI_ADVANCED_MAX_VIEW_TARGET

◆ NVAPI_ADVANCED_MAX_VIEW_TARGET

#define NVAPI_ADVANCED_MAX_VIEW_TARGET   4

Used in NvAPI_SetView().

◆ NVAPI_MAX_DISPLAY_PATH

#define NVAPI_MAX_DISPLAY_PATH   NVAPI_MAX_VIEW_TARGET

◆ NVAPI_MAX_VIEW_TARGET

#define NVAPI_MAX_VIEW_TARGET   2

Used in NvAPI_SetView().

◆ NVFORMAT_MAKEFOURCC

#define NVFORMAT_MAKEFOURCC (   ch0,
  ch1,
  ch2,
  ch3 
)
Value:
((NvU32)(NvU8)(ch0) | ((NvU32)(NvU8)(ch1) << 8) | \
((NvU32)(NvU8)(ch2) << 16) | ((NvU32)(NvU8)(ch3) << 24 ))
unsigned long NvU32
Definition nvapi_lite_common.h:79
unsigned char NvU8
Definition nvapi_lite_common.h:88

Color formats- used in NvAPI_SetViewEx().

Typedef Documentation

◆ NV_DISPLAY_PORT_INFO_V1

◆ NV_DISPLAYCONFIG_FLAGS

◆ NV_DISPLAYCONFIG_PATH_ADVANCED_TARGET_INFO

◆ NV_DISPLAYCONFIG_PATH_ADVANCED_TARGET_INFO_V1

◆ NV_DISPLAYCONFIG_PATH_INFO_V1

◆ NV_DISPLAYCONFIG_PATH_INFO_V2

◆ NV_DISPLAYCONFIG_PATH_TARGET_INFO

As version is not defined for this structure, we will be using version of NV_DISPLAYCONFIG_PATH_INFO

◆ NV_DISPLAYCONFIG_PATH_TARGET_INFO_V1

◆ NV_DISPLAYCONFIG_PATH_TARGET_INFO_V2

◆ NV_DISPLAYCONFIG_SOURCE_MODE_INFO_V1

◆ NV_DISPLAYCONFIG_SPANNING_ORIENTATION

◆ NV_DP_BPC

typedef enum _NV_DP_BPC NV_DP_BPC

Used in NV_DISPLAY_PORT_INFO.

◆ NV_DP_COLOR_FORMAT

Used in NV_DISPLAY_PORT_INFO.

◆ NV_DP_COLORIMETRY

Used in NV_DISPLAY_PORT_INFO.

◆ NV_DP_DYNAMIC_RANGE

Used in NV_DISPLAY_PORT_INFO.

◆ NV_DP_LANE_COUNT

Used in NV_DISPLAY_PORT_INFO.

◆ NV_DP_LINK_RATE

Used in NV_DISPLAY_PORT_INFO.

◆ NV_EDID_DATA_V1

DESCRIPTION: This API returns the EDID data for the specified display Id.
(NvAPI_GPU_GetConnectedDisplayIds() can be used to get the DisplayIds).
USAGE: The caller has to call this API two times to fetch the required details as follows:
First Pass : Caller should call NvAPI_DISP_GetEdidData() with pEdidParams->pEDID set to NULL,
to get the size of the EDID buffer in pEdidParams->sizeOfEDID.
Second Pass: Allocate memory for the EDID buffer of the size - pEdidParams->sizeOfEDID,
and call the API again to get the EDID buffer populated.
\param [in] displayId - NVIDIA Display ID
\param [inout] pEdidParams - Pointer to the structure that contains - pointer to EDID buffer and its size
\param [inout] pFlag - The type of EDID to be retrieved (IN).
To only retrieve the EDID type, the user should send pEdidParams->pEDID as NULL and
pEdidParams->sizeOfEDID as 0.
SUPPORTED OS: Windows 10 and higher
\since Release: 400
\return This API can return any of the error codes enumerated in #NvAPI_Status.
If there are return error codes with specific meaning for this API, they are listed below.
NVAPI_INSUFFICIENT_BUFFER: Reallocate buffer with pEdidParams->sizeOfEDID and call again to get complete data.
In this case pEdidParams->pEDID contains undefined data.
This error occurs only when pEdidParams->pEDID is present.
NVAPI_INTERFACE NvAPI_GPU_GetConnectedDisplayIds(__in NvPhysicalGpuHandle hPhysicalGpu, __inout_ecount_part_opt(*pDisplayIdCount, *pDisplayIdCount) NV_GPU_DISPLAYIDS *pDisplayIds, __inout NvU32 *pDisplayIdCount, __in NvU32 flags)
@ NVAPI_INSUFFICIENT_BUFFER
Input buffer is insufficient to hold the contents.
Definition nvapi_lite_common.h:343
NVAPI_INTERFACE NvAPI_DISP_GetEdidData(__in NvU32 displayId, __inout NV_EDID_DATA *pEdidParams, __inout NV_EDID_FLAG *pFlag)

◆ NV_FORMAT

typedef enum _NV_FORMAT NV_FORMAT

Color formats- used in NvAPI_SetViewEx().

◆ NV_GET_PREFERRED_STEREO_DISPLAY

◆ NV_GET_VRR_INFO_V1

◆ NV_HDMI_SUPPORT_INFO_V1

◆ NV_MONITOR_COLOR_CAPS_V1

◆ NV_POSITION

typedef struct _NV_POSITION NV_POSITION

◆ NV_RESOLUTION

typedef struct _NV_RESOLUTION NV_RESOLUTION

◆ NV_ROTATE

typedef enum _NV_ROTATE NV_ROTATE

Rotate modes- used in NvAPI_SetViewEx().

◆ NV_SCALING

typedef enum _NV_SCALING NV_SCALING

Scaling modes - used in NvAPI_SetViewEx().

◆ NV_SET_PREFERRED_STEREO_DISPLAY

◆ NV_TARGET_VIEW_MODE

Used in NvAPI_SetView().

◆ NV_TIMING

typedef struct _NV_TIMING NV_TIMING

The very basic timing structure based on the VESA standard:

|<----------------------------htotal--------------------------->|
---------"active" video-------->|<-------blanking------>|<-----
|<-------hvisible-------->|<-hb->|<-hfp->|<-hsw->|<-hbp->|<-hb->|
--------- -+-------------------------+ | | | | |
A A | | | | | | |
: : | | | | | | |
: : | | | | | | |
:vertical| addressable video | | | | | |
: visible| | | | | | |
: : | | | | | | |
: : | | | | | | |
vertical V | | | | | | |
total --+-------------------------+ | | | | |
: vb border | | | | |
: -----------------------------------+ | | | |
: vfp front porch | | | |
: -------------------------------------------+ | | |
: vsw sync width | | |
: ---------------------------------------------------+ | |
: vbp back porch | |
: -----------------------------------------------------------+ |
V vb border |
---------------------------------------------------------------------------+

◆ NV_TIMING_INPUT

◆ NV_TIMING_OVERRIDE

The timing override is not supported yet; must be set to _AUTO.

◆ NV_TIMINGEXT

typedef struct tagNV_TIMINGEXT NV_TIMINGEXT

NVIDIA-specific timing extras
Used in NV_TIMING.

Enumeration Type Documentation

◆ _NV_DISPLAYCONFIG_FLAGS

Enumerator
NV_DISPLAYCONFIG_VALIDATE_ONLY 
NV_DISPLAYCONFIG_SAVE_TO_PERSISTENCE 
NV_DISPLAYCONFIG_DRIVER_RELOAD_ALLOWED 

Driver reload is permitted if necessary.

NV_DISPLAYCONFIG_FORCE_MODE_ENUMERATION 

Refresh OS mode list.

NV_FORCE_COMMIT_VIDPN 

Tell OS to avoid optimizing CommitVidPn call during a modeset.

◆ _NV_DISPLAYCONFIG_SPANNING_ORIENTATION

Enumerator
NV_DISPLAYCONFIG_SPAN_NONE 
NV_DISPLAYCONFIG_SPAN_HORIZONTAL 
NV_DISPLAYCONFIG_SPAN_VERTICAL 

◆ _NV_DP_BPC

enum _NV_DP_BPC

Used in NV_DISPLAY_PORT_INFO.

Enumerator
NV_DP_BPC_DEFAULT 
NV_DP_BPC_6 
NV_DP_BPC_8 
NV_DP_BPC_10 
NV_DP_BPC_12 
NV_DP_BPC_16 

◆ _NV_DP_COLOR_FORMAT

Used in NV_DISPLAY_PORT_INFO.

Enumerator
NV_DP_COLOR_FORMAT_RGB 
NV_DP_COLOR_FORMAT_YCbCr422 
NV_DP_COLOR_FORMAT_YCbCr444 

◆ _NV_DP_COLORIMETRY

Used in NV_DISPLAY_PORT_INFO.

Enumerator
NV_DP_COLORIMETRY_RGB 
NV_DP_COLORIMETRY_YCbCr_ITU601 
NV_DP_COLORIMETRY_YCbCr_ITU709 

◆ _NV_DP_DYNAMIC_RANGE

Used in NV_DISPLAY_PORT_INFO.

Enumerator
NV_DP_DYNAMIC_RANGE_VESA 
NV_DP_DYNAMIC_RANGE_CEA 

◆ _NV_DP_LANE_COUNT

Used in NV_DISPLAY_PORT_INFO.

Enumerator
NV_DP_1_LANE 
NV_DP_2_LANE 
NV_DP_4_LANE 

◆ _NV_DP_LINK_RATE

Used in NV_DISPLAY_PORT_INFO.

Enumerator
NV_DP_1_62GBPS 
NV_DP_2_70GBPS 
NV_DP_5_40GBPS 
NV_DP_8_10GBPS 
NV_EDP_2_16GBPS 
NV_EDP_2_43GBPS 
NV_EDP_3_24GBPS 
NV_EDP_4_32GBPS 

◆ _NV_FORMAT

enum _NV_FORMAT

Color formats- used in NvAPI_SetViewEx().

Enumerator
NV_FORMAT_UNKNOWN 

unknown. Driver will choose one as following value.

NV_FORMAT_P8 

for 8bpp mode

NV_FORMAT_R5G6B5 

for 16bpp mode

NV_FORMAT_A8R8G8B8 

for 32bpp mode

NV_FORMAT_A16B16G16R16F 

for 64bpp(floating point) mode.

◆ _NV_ROTATE

enum _NV_ROTATE

Rotate modes- used in NvAPI_SetViewEx().

Enumerator
NV_ROTATE_0 
NV_ROTATE_90 
NV_ROTATE_180 
NV_ROTATE_270 
NV_ROTATE_IGNORED 

◆ _NV_SCALING

Scaling modes - used in NvAPI_SetViewEx().

Enumerator
NV_SCALING_DEFAULT 

No change.

NV_SCALING_GPU_SCALING_TO_CLOSEST 

Balanced - Full Screen.

NV_SCALING_GPU_SCALING_TO_NATIVE 

Force GPU - Full Screen.

NV_SCALING_GPU_SCANOUT_TO_NATIVE 

Force GPU - Centered\No Scaling.

NV_SCALING_GPU_SCALING_TO_ASPECT_SCANOUT_TO_NATIVE 

Force GPU - Aspect Ratio.

NV_SCALING_GPU_SCALING_TO_ASPECT_SCANOUT_TO_CLOSEST 

Balanced - Aspect Ratio.

NV_SCALING_GPU_SCANOUT_TO_CLOSEST 

Balanced - Centered\No Scaling.

NV_SCALING_GPU_INTEGER_ASPECT_SCALING 

Force GPU - Integer Scaling.

NV_SCALING_MONITOR_SCALING 
NV_SCALING_ADAPTER_SCALING 
NV_SCALING_CENTERED 
NV_SCALING_ASPECT_SCALING 
NV_SCALING_CUSTOMIZED 

For future use.

◆ _NV_TARGET_VIEW_MODE

Used in NvAPI_SetView().

Enumerator
NV_VIEW_MODE_STANDARD 
NV_VIEW_MODE_CLONE 
NV_VIEW_MODE_HSPAN 
NV_VIEW_MODE_VSPAN 
NV_VIEW_MODE_DUALVIEW 
NV_VIEW_MODE_MULTIVIEW 

◆ _NV_TIMING_OVERRIDE

The timing override is not supported yet; must be set to _AUTO.

Enumerator
NV_TIMING_OVERRIDE_CURRENT 

get the current timing

NV_TIMING_OVERRIDE_AUTO 

the timing the driver will use based the current policy

NV_TIMING_OVERRIDE_EDID 

EDID timing.

NV_TIMING_OVERRIDE_DMT 

VESA DMT timing.

NV_TIMING_OVERRIDE_DMT_RB 

VESA DMT timing with reduced blanking.

NV_TIMING_OVERRIDE_CVT 

VESA CVT timing.

NV_TIMING_OVERRIDE_CVT_RB 

VESA CVT timing with reduced blanking.

NV_TIMING_OVERRIDE_GTF 

VESA GTF timing.

NV_TIMING_OVERRIDE_EIA861 

EIA 861x pre-defined timing.

NV_TIMING_OVERRIDE_ANALOG_TV 

analog SD/HDTV timing

NV_TIMING_OVERRIDE_CUST 

NV custom timings.

NV_TIMING_OVERRIDE_NV_PREDEFINED 

NV pre-defined timing (basically the PsF timings)

NV_TIMING_OVERRIDE_NV_PSF 
NV_TIMING_OVERRIDE_NV_ASPR 
NV_TIMING_OVERRIDE_SDI 

Override for SDI timing.

NV_TIMING_OVRRIDE_MAX 

◆ NV_INFOFRAME_CMD

Enumerator
NV_INFOFRAME_CMD_GET_DEFAULT 

Returns the fields in the infoframe with values set by the manufacturer - NVIDIA/OEM.

NV_INFOFRAME_CMD_RESET 

Sets the fields in the infoframe to auto, and infoframe to the default infoframe for use in a set.

NV_INFOFRAME_CMD_GET 

Get the current infoframe state.

NV_INFOFRAME_CMD_SET 

Set the current infoframe state (flushed to the monitor), the values are one time and do not persist.

NV_INFOFRAME_CMD_GET_OVERRIDE 

Get the override infoframe state, non-override fields will be set to value = AUTO, overridden fields will have the current override values.

NV_INFOFRAME_CMD_SET_OVERRIDE 

Set the override infoframe state, non-override fields will be set to value = AUTO, other values indicate override; persist across modeset/reboot.

NV_INFOFRAME_CMD_GET_PROPERTY 

get properties associated with infoframe (each of the infoframe type will have properties)

NV_INFOFRAME_CMD_SET_PROPERTY 

set properties associated with infoframe

◆ NV_MONITOR_CAPS_TYPE

HDMI-related and extended CAPs.

Enumerator
NV_MONITOR_CAPS_TYPE_HDMI_VSDB 
NV_MONITOR_CAPS_TYPE_HDMI_VCDB 
NV_MONITOR_CAPS_TYPE_GENERIC 

Function Documentation

◆ __nvapi_deprecated_function() [1/2]

__nvapi_deprecated_function ( "Do not use this function - it is deprecated in release 290.  Instead,
use NvAPI_DISP_GetDisplayConfig."   
)

This API lets caller retrieve the target display arrangement for selected source display handle.

Note
Display PATH with this API is limited to single GPU. DUALVIEW across GPUs will be returned as STANDARD VIEW. Use NvAPI_SYS_GetDisplayTopologies() to query views across GPUs.
Since
Release: 85
Parameters
[in]hNvDisplayNVIDIA Display selection. It can be NVAPI_DEFAULT_HANDLE or a handle enumerated from NvAPI_EnumNVidiaDisplayHandle().
[out]pTargetsUser allocated storage to retrieve an array of NV_VIEW_TARGET_INFO. Can be NULL to retrieve the targetCount.
[in,out]targetMaskCountCount of target device mask specified in pTargetMask.
[out]targetViewTarget view selected from NV_TARGET_VIEW_MODE.
Return values
NVAPI_OKCompleted request
NVAPI_ERRORMiscellaneous error occurred
NVAPI_INVALID_ARGUMENTInvalid input parameter.

DESCRIPTION: This API lets caller retrieve the target display arrangement for selected source display handle.

Note
Display PATH with this API is limited to single GPU. DUALVIEW across GPUs will be returned as STANDARD VIEW. Use NvAPI_SYS_GetDisplayTopologies() to query views across GPUs.
Since
Release: 165
Parameters
[in]hNvDisplayNVIDIA Display selection. NVAPI_DEFAULT_HANDLE is not allowed, it has to be a handle enumerated with NvAPI_EnumNVidiaDisplayHandle().
[in,out]pPathInfoCount field should be set to NVAPI_MAX_DISPLAY_PATH. Can be NULL to retrieve just the pathCount.
[in,out]pPathCountNumber of elements in array pPathInfo->path.
[out]pTargetViewModeDisplay view selected from NV_TARGET_VIEW_MODE.
Return values
NVAPI_OKCompleted request
NVAPI_API_NOT_INTIALIZEDNVAPI not initialized
NVAPI_ERRORMiscellaneous error occurred
NVAPI_INVALID_ARGUMENTInvalid input parameter.
NVAPI_EXPECTED_DISPLAY_HANDLEhNvDisplay is not a valid display handle.

◆ __nvapi_deprecated_function() [2/2]

__nvapi_deprecated_function ( "Do not use this function - it is deprecated in release 290.  Instead,
use NvAPI_DISP_SetDisplayConfig."   
)

◆ NvAPI_CreateDisplayFromUnAttachedDisplay()

NVAPI_INTERFACE NvAPI_CreateDisplayFromUnAttachedDisplay ( NvUnAttachedDisplayHandle  hNvUnAttachedDisp,
NvDisplayHandle *  pNvDisplay 
)

This function converts the unattached display handle to an active attached display handle.

At least one GPU must be present in the system and running an NVIDIA display driver.

SUPPORTED OS: Windows 10 and higher

Since
Release: 80
Return values
NVAPI_INVALID_ARGUMENThNvUnAttachedDisp is not valid or pNvDisplay is NULL.
NVAPI_OKOne or more handles were returned
NVAPI_NVIDIA_DEVICE_NOT_FOUNDNo NVIDIA GPU driving a display was found

◆ NvAPI_DisableHWCursor()

NVAPI_INTERFACE NvAPI_DisableHWCursor ( NvDisplayHandle  hNvDisplay)

This function disables hardware cursor support

SUPPORTED OS: Windows XP

Since
Release: 80
Returns
NVAPI_ERROR or NVAPI_OK

◆ NvAPI_DISP_AcquireDedicatedDisplay()

NVAPI_INTERFACE NvAPI_DISP_AcquireDedicatedDisplay ( __in NvU32  displayId,
__inout NvU64 pDisplaySourceHandle 
)

SUPPORTED OS: Windows 10 and higher DESCRIPTION: This API requests exclusive access to the specified dedicated display managed by the Nvidia driver. If the call succeeds, a handle is returned which could be opened as a DisplaySource. The call fails if the display is not managed by the Nvidia driver. The call fails if the display has already been acquired by another process.

Since
Release: 495
Parameters
[in]displayIdDisplay ID of the dedicated display to be acquired.
[in/out]pDisplaySourceHandle Pointer to memory that receives the shared handle to a DisplaySource.
Return values
NVAPI_OKThe call succeeded.
NVAPI_ERRORThe call failed.
NVAPI_NO_IMPLEMENTATIONThe API not implemented.
NVAPI_INVALID_POINTERAn invalid pointer was passed as an argument.
NVAPI_API_NOT_INITIALIZEDNvAPI not initialized.
NVAPI_INVALID_DISPLAY_IDAn invalid displayId was passed as an argument.
NVAPI_UNREGISTERED_RESOURCEThe display is not managed by the Nvidia driver.
NVAPI_RESOURCE_IN_USEThe display has already been acquired by another process.

◆ NvAPI_Disp_ColorControl()

NvAPI_Disp_ColorControl ( NvU32  displayId,
NV_COLOR_DATA pColorData 
)

DESCRIPTION: This API controls the Color values.

SUPPORTED OS: Windows 10 and higher

Parameters
[in]displayIdMonitor Identifier
[in,out]pColorDataContains data corresponding to color information
Returns
RETURN STATUS: NVAPI_OK, NVAPI_ERROR, NVAPI_INVALID_ARGUMENT

◆ NvAPI_DISP_DeleteCustomDisplay()

NVAPI_INTERFACE NvAPI_DISP_DeleteCustomDisplay ( __in_ecount(count) NvU32 pDisplayIds,
__in NvU32  count,
__in NV_CUSTOM_DISPLAY pCustDisp 
)

DESCRIPTION: This function deletes the custom display configuration, specified from the registry for all the displays whose display IDs are passed.

SUPPORTED OS: Windows 10 and higher

Since
Release: 313
Parameters
[in]pDisplayIdsArray of Dispaly IDs on which custom display configuration is to be saved.
[in]countTotal number of the incoming Dispaly IDs. This is for the multi-head support.
[in]pCustDispPointer to the NV_CUSTOM_DISPLAY structure
Returns
This API can return any of the error codes enumerated in NvAPI_Status. If there are return error codes with specific meaning for this API, they are listed below.
Return values
NVAPI_INVALID_DISPLAY_IDCustom Timing is not supported on the Display, whose display id is passed

◆ NvAPI_DISP_EnumCustomDisplay()

NVAPI_INTERFACE NvAPI_DISP_EnumCustomDisplay ( __in NvU32  displayId,
__in NvU32  index,
__inout NV_CUSTOM_DISPLAY pCustDisp 
)

DESCRIPTION: This API enumerates the custom timing specified by the enum index. The client should keep enumerating until it returns NVAPI_END_ENUMERATION.

SUPPORTED OS: Windows 10 and higher

Since
Release: 313
Parameters
[in]displayIdDispaly ID of the display.
[in]indexEnum index
[in,out]pCustDispPointer to the NV_CUSTOM_DISPLAY structure
Returns
This API can return any of the error codes enumerated in NvAPI_Status. If there are return error codes with specific meaning for this API, they are listed below.
Return values
NVAPI_INVALID_DISPLAY_IDCustom Timing is not supported on the Display, whose display id is passed

◆ NvAPI_DISP_GetAdaptiveSyncData()

NvAPI_DISP_GetAdaptiveSyncData ( __in NvU32  displayId,
__inout NV_GET_ADAPTIVE_SYNC_DATA pAdaptiveSyncData 
)
DESCRIPTION: This function is used to get data for the Adaptive Sync Display.
SUPPORTED OS: Windows 10 and higher
\since Release: 415
\param [in] displayId - display id of the display
\param [inout] pAdaptiveSyncData - A pointer to NV_GET_ADAPTIVE_SYNC_DATA, containing the information about the values of parameters that are to be retrieved on given display.
\return This API can return any of the error codes enumerated in
#NvAPI_Status. If there are return error codes with specific
meaning for this API, they are listed below.
NV_GET_ADAPTIVE_SYNC_DATA_V1 NV_GET_ADAPTIVE_SYNC_DATA
Definition nvapi.h:8652

◆ NvAPI_DISP_GetDisplayConfig()

NVAPI_INTERFACE NvAPI_DISP_GetDisplayConfig ( __inout NvU32 pathInfoCount,
__out_ecount_full_opt *pathInfoCount NV_DISPLAYCONFIG_PATH_INFO pathInfo 
)

DESCRIPTION: This API lets caller retrieve the current global display configuration. USAGE: The caller might have to call this three times to fetch all the required configuration details as follows: First Pass: Caller should Call NvAPI_DISP_GetDisplayConfig() with pathInfo set to NULL to fetch pathInfoCount. Second Pass: Allocate memory for pathInfo with respect to the number of pathInfoCount(from First Pass) to fetch targetInfoCount. If sourceModeInfo is needed allocate memory or it can be initialized to NULL. Third Pass(Optional, only required if target information is required): Allocate memory for targetInfo with respect to number of targetInfoCount(from Second Pass). SUPPORTED OS: Windows 10 and higher

Parameters
[in,out]pathInfoCountNumber of elements in pathInfo array, returns number of valid topologies, this cannot be null.
[in,out]pathInfoArray of path information
Returns
This API can return any of the error codes enumerated in NvAPI_Status. If there are return error codes with specific meaning for this API, they are listed below.
Return values
NVAPI_INVALID_ARGUMENT- Invalid input parameter. Following can be the reason for this return value:
  1. pathInfoCount is NULL.
  2. *pathInfoCount is 0 and pathInfo is not NULL.
  3. *pathInfoCount is not 0 and pathInfo is NULL.
NVAPI_DEVICE_BUSY- ModeSet has not yet completed. Please wait and call it again.

◆ NvAPI_DISP_GetDisplayIdByDisplayName()

NVAPI_INTERFACE NvAPI_DISP_GetDisplayIdByDisplayName ( const char *  displayName,
NvU32 displayId 
)

SUPPORTED OS: Windows 10 and higher DESCRIPTION: This API retrieves the Display Id of a given display by display name. The display must be active to retrieve the displayId. In the case of clone mode or Surround gaming, the primary or top-left display will be returned.

Parameters
[in]displayNameName of display (Eg: "\\DISPLAY1" to retrieve the displayId for.
[out]displayIdDisplay ID of the requested display.

retval NVAPI_OK: Capabilties have been returned. retval NVAPI_INVALID_ARGUMENT: One or more args passed in are invalid. retval NVAPI_API_NOT_INTIALIZED: The NvAPI API needs to be initialized first retval NVAPI_NO_IMPLEMENTATION: This entrypoint not available retval NVAPI_ERROR: Miscellaneous error occurred

◆ NvAPI_DISP_GetEdidData()

NVAPI_INTERFACE NvAPI_DISP_GetEdidData ( __in NvU32  displayId,
__inout NV_EDID_DATA pEdidParams,
__inout NV_EDID_FLAG pFlag 
)
DESCRIPTION: This API returns the EDID data for the specified display Id.
(NvAPI_GPU_GetConnectedDisplayIds() can be used to get the DisplayIds).
USAGE: The caller has to call this API two times to fetch the required details as follows:
First Pass : Caller should call NvAPI_DISP_GetEdidData() with pEdidParams->pEDID set to NULL,
to get the size of the EDID buffer in pEdidParams->sizeOfEDID.
Second Pass: Allocate memory for the EDID buffer of the size - pEdidParams->sizeOfEDID,
and call the API again to get the EDID buffer populated.
\param [in] displayId - NVIDIA Display ID
\param [inout] pEdidParams - Pointer to the structure that contains - pointer to EDID buffer and its size
\param [inout] pFlag - The type of EDID to be retrieved (IN).
To only retrieve the EDID type, the user should send pEdidParams->pEDID as NULL and
pEdidParams->sizeOfEDID as 0.
SUPPORTED OS: Windows 10 and higher
\since Release: 400
\return This API can return any of the error codes enumerated in #NvAPI_Status.
If there are return error codes with specific meaning for this API, they are listed below.
NVAPI_INSUFFICIENT_BUFFER: Reallocate buffer with pEdidParams->sizeOfEDID and call again to get complete data.
In this case pEdidParams->pEDID contains undefined data.
This error occurs only when pEdidParams->pEDID is present.

◆ NvAPI_DISP_GetGDIPrimaryDisplayId()

NVAPI_INTERFACE NvAPI_DISP_GetGDIPrimaryDisplayId ( NvU32 displayId)

SUPPORTED OS: Windows 10 and higher DESCRIPTION: This API returns the Display ID of the GDI Primary.

Parameters
[out]displayIdDisplay ID of the GDI Primary display.
Return values
NVAPI_OKCapabilties have been returned.
NVAPI_NVIDIA_DEVICE_NOT_FOUNDGDI Primary not on an NVIDIA GPU.
NVAPI_INVALID_ARGUMENTOne or more args passed in are invalid.
NVAPI_API_NOT_INTIALIZEDThe NvAPI API needs to be initialized first
NVAPI_NO_IMPLEMENTATIONThis entrypoint not available
NVAPI_ERRORMiscellaneous error occurred

◆ NvAPI_DISP_GetMonitorCapabilities()

NVAPI_INTERFACE NvAPI_DISP_GetMonitorCapabilities ( __in NvU32  displayId,
__inout NV_MONITOR_CAPABILITIES pMonitorCapabilities 
)

SUPPORTED OS: Windows 10 and higher

◆ NvAPI_DISP_GetMonitorColorCapabilities()

NVAPI_INTERFACE NvAPI_DISP_GetMonitorColorCapabilities ( __in NvU32  displayId,
__inout_ecount_part_opt *, *pColorCapsCount NV_MONITOR_COLOR_CAPS pMonitorColorCapabilities,
__inout NvU32 pColorCapsCount 
)

DESCRIPTION: This API returns all the color formats and bit depth values supported by a given DP monitor.

USAGE: Sequence of calls which caller should make to get the information.

  1. First call NvAPI_DISP_GetMonitorColorCapabilities() with pMonitorColorCapabilities as NULL to get the count.
  2. Allocate memory for color caps(NV_MONITOR_COLOR_CAPS) array.
  3. Call NvAPI_DISP_GetMonitorColorCapabilities() again with the pointer to the memory allocated to get all the color capabilities.

Note :

  1. pColorCapsCount should never be NULL, else the API will fail with NVAPI_INVALID_ARGUMENT.
  2. *pColorCapsCount returned from the API will always be the actual count in any/every call.
  3. Memory size to be allocated should be (*pColorCapsCount * sizeof(NV_MONITOR_COLOR_CAPS)).
  4. If the memory allocated is less than what is required to return all the timings, this API will return the amount of information which can fit in user provided buffer and API will return NVAPI_INSUFFICIENT_BUFFER.
  5. If the caller specifies a greater value for *pColorCapsCount in second call to NvAPI_DISP_GetMonitorColorCapabilities() than what was returned from first call, the API will return only the actual number of elements in the color capabilities array and the extra buffer will remain unused.

SUPPORTED OS: Windows 10 and higher

Parameters
[in]displayIdMonitor Identifier
[in,out]pMonitorColorCapabilitiesThe monitor color capabilities information
[in,out]pColorCapsCount- During input, the number of elements allocated for the pMonitorColorCapabilities pointer
  • During output, the actual number of color data elements the monitor supports
Returns
This API can return any of the error codes enumerated in NvAPI_Status. If there are return error codes with specific meaning for this API, they are listed below.
Return values
NVAPI_INSUFFICIENT_BUFFERThe input buffer size is not sufficient to hold the total contents. In this case *pColorCapsCount will hold the required amount of elements.
NVAPI_INVALID_DISPLAY_IDThe input monitor is either not connected or is not a DP panel.

◆ NvAPI_DISP_GetPreferredStereoDisplay()

NVAPI_INTERFACE NvAPI_DISP_GetPreferredStereoDisplay ( __inout NV_GET_PREFERRED_STEREO_DISPLAY pPreferredStereoDisplay)

DESCRIPTION: Queries the displayId of the display output driving the 3pin DIN stereo signal, if any. SUPPORTED OS: Windows 10 and higher

Since
Release: 470
Parameters
[in,out]pPreferredStereoDisplayPointer to a NV_GET_PREFERRED_STEREO_DISPLAY structure
Return values
NVAPI_OKcompleted request
NVAPI_ERRORmiscellaneous error occurred
NVAPI_INVALID_ARGUMENTInvalid input parameter.
NVAPI_INVALID_POINTERAn invalid pointer was passed as an argument (probably NULL).

◆ NvAPI_DISP_GetTiming()

NVAPI_INTERFACE NvAPI_DISP_GetTiming ( __in NvU32  displayId,
__in NV_TIMING_INPUT timingInput,
__out NV_TIMING pTiming 
)

DESCRIPTION: This function calculates the timing from the visible width/height/refresh-rate and timing type info.

SUPPORTED OS: Windows 10 and higher

Since
Release: 313
Parameters
[in]displayIdDisplay ID of the display.
[in]timingInputInputs used for calculating the timing.
[out]pTimingPointer to the NV_TIMING structure.
Returns
This API can return any of the error codes enumerated in NvAPI_Status. If there are return error codes with specific meaning for this API, they are listed below.

◆ NvAPI_DISP_GetVirtualRefreshRateData()

NvAPI_DISP_GetVirtualRefreshRateData ( __in NvU32  displayId,
__inout NV_GET_VIRTUAL_REFRESH_RATE_DATA pVirtualRefreshRateData 
)
DESCRIPTION: This function is used to get Virtual Refresh Rate data for a VRR Capable Display.
SUPPORTED OS: Windows 10 and higher
\since Release: 510
\param [in] displayId - display id of the display
\param [inout] pVirtualRefreshRateData - A pointer to NV_GET_VIRTUAL_REFRESH_RATE_DATA, containing the information about the values of parameters that are to be retrieved on given display.
\return This API can return any of the error codes enumerated in
#NvAPI_Status. If there are return error codes with specific
meaning for this API, they are listed below.
NV_GET_VIRTUAL_REFRESH_RATE_DATA_V1 NV_GET_VIRTUAL_REFRESH_RATE_DATA
Definition nvapi.h:8725

◆ NvAPI_Disp_GetVRRInfo()

NVAPI_INTERFACE NvAPI_Disp_GetVRRInfo ( __in NvU32  displayId,
__inout NV_GET_VRR_INFO pVrrInfo 
)

DESCRIPTION: This API returns Variable Refresh Rate(VRR) information for the given display ID.

SUPPORTED OS: Windows 10 and higher

Since
Release: 525
Parameters
[in,out]pVrrInfoPointer to the NV_GET_VRR_INFO structure.
Returns
This API can return any of the error codes enumerated in NvAPI_Status.

◆ NvAPI_Disp_InfoFrameControl()

NVAPI_INTERFACE NvAPI_Disp_InfoFrameControl ( __in NvU32  displayId,
__inout NV_INFOFRAME_DATA pInfoframeData 
)

DESCRIPTION: This API controls the InfoFrame values.

SUPPORTED OS: Windows 10 and higher

Parameters
[in]displayIdMonitor Identifier
[in,out]pInfoframeDataContains data corresponding to InfoFrame
Returns
This API can return any of the error codes enumerated in NvAPI_Status. If there are return error codes with specific meaning for this API, they are listed below.

◆ NvAPI_DISP_ReleaseDedicatedDisplay()

NVAPI_INTERFACE NvAPI_DISP_ReleaseDedicatedDisplay ( __in NvU32  displayId)

SUPPORTED OS: Windows 10 and higher DESCRIPTION: This API releases the exclusive ownership of a specific dedicated display previously acquired by the process.

Since
Release: 495
Parameters
[in]displayIdDisplay ID of the dedicated display to be released.
Return values
NVAPI_OKThe call succeeded.
NVAPI_ERRORThe call failed.
NVAPI_NO_IMPLEMENTATIONThe API not implemented.
NVAPI_API_NOT_INITIALIZEDNvAPI not initialized.
NVAPI_UNREGISTERED_RESOURCEThe display is not managed by the Nvidia driver.
::NVAPI_DDISPLAY_NOT_ACQUIREDThe display is not acquired by the process.

◆ NvAPI_DISP_RevertCustomDisplayTrial()

NVAPI_INTERFACE NvAPI_DISP_RevertCustomDisplayTrial ( __in_ecount(count) NvU32 pDisplayIds,
__in NvU32  count 
)

DESCRIPTION: This API is used to restore the display configuration, that was changed by calling NvAPI_DISP_TryCustomDisplay(). This function must be called only after a custom display configuration is tested on the hardware, using NvAPI_DISP_TryCustomDisplay(), otherwise no action is taken. On Vista, NvAPI_DISP_RevertCustomDisplayTrial should be called with an active display that was affected during the NvAPI_DISP_TryCustomDisplay() call, per GPU.

SUPPORTED OS: Windows 10 and higher

Since
Release: 313
Parameters
[in]pDisplayIdsPointer to display Id, of an active display.
[in]countTotal number of incoming Display IDs. For future use only. Currently it is expected to be passed as 1.
Returns
This API can return any of the error codes enumerated in NvAPI_Status. If there are return error codes with specific meaning for this API, they are listed below.

◆ NvAPI_DISP_SaveCustomDisplay()

NVAPI_INTERFACE NvAPI_DISP_SaveCustomDisplay ( __in_ecount(count) NvU32 pDisplayIds,
__in NvU32  count,
__in NvU32  isThisOutputIdOnly,
__in NvU32  isThisMonitorIdOnly 
)

DESCRIPTION: This function saves the current hardware display configuration on the specified Display IDs as a custom display configuration. This function should be called right after NvAPI_DISP_TryCustomDisplay() to save the custom display from the current hardware context. This function will not do anything if the custom display configuration is not tested on the hardware.

SUPPORTED OS: Windows 10 and higher

Since
Release: 313
Parameters
[in]pDisplayIdsArray of Dispaly IDs on which custom display configuration is to be saved.
[in]countTotal number of the incoming Dispaly IDs. This is for the multi-head support.
[in]isThisOutputIdOnlyIf set, the saved custom display will only be applied on the monitor with the same outputId (see NvAPI Handles).
[in]isThisMonitorIdOnlyIf set, the saved custom display will only be applied on the monitor with the same EDID ID or the same TV connector in case of analog TV.
Returns
This API can return any of the error codes enumerated in NvAPI_Status. If there are return error codes with specific meaning for this API, they are listed below.
Return values
NVAPI_INVALID_DISPLAY_IDCustom Timing is not supported on the Display, whose display id is passed

◆ NvAPI_DISP_SetAdaptiveSyncData()

NvAPI_DISP_SetAdaptiveSyncData ( __in NvU32  displayId,
__in NV_SET_ADAPTIVE_SYNC_DATA pAdaptiveSyncData 
)
DESCRIPTION: This function is used to set data for Adaptive Sync Display.
SUPPORTED OS: Windows 10 and higher
\since Release: 415
\param [in] displayId - display id of the display
\param [in] pAdaptiveSyncData - A pointer to NV_SET_ADAPTIVE_SYNC_DATA, containing the information about the values of parameters that are to be set on given display.
\return This API can return any of the error codes enumerated in
#NvAPI_Status. If there are return error codes with specific
meaning for this API, they are listed below.
NV_SET_ADAPTIVE_SYNC_DATA_V1 NV_SET_ADAPTIVE_SYNC_DATA
Definition nvapi.h:8690

◆ NvAPI_DISP_SetDisplayConfig()

NVAPI_INTERFACE NvAPI_DISP_SetDisplayConfig ( __in NvU32  pathInfoCount,
__in_ecount(pathInfoCount) NV_DISPLAYCONFIG_PATH_INFO pathInfo,
__in NvU32  flags 
)

DESCRIPTION: This API lets caller apply a global display configuration across multiple GPUs.

If all sourceIds are zero, then NvAPI will pick up sourceId's based on the following criteria :

  • If user provides sourceModeInfo then we are trying to assign 0th sourceId always to GDIPrimary. This is needed since active windows always moves along with 0th sourceId.
  • For rest of the paths, we are incrementally assigning the sourceId per adapter basis.
  • If user doesn't provide sourceModeInfo then NVAPI just picks up some default sourceId's in incremental order. Note : NVAPI will not intelligently choose the sourceIDs for any configs that does not need a modeset.

SUPPORTED OS: Windows 10 and higher

Parameters
[in]pathInfoCountNumber of supplied elements in pathInfo
[in]pathInfoArray of path information
[in]flagsA bitwise OR of supported flags from NV_DISPLAYCONFIG_FLAGS.
Return values
NVAPI_OK- completed request
NVAPI_API_NOT_INTIALIZED- NVAPI not initialized
NVAPI_ERROR- miscellaneous error occurred
NVAPI_INVALID_ARGUMENT- Invalid input parameter.

◆ NvAPI_DISP_SetPreferredStereoDisplay()

NVAPI_INTERFACE NvAPI_DISP_SetPreferredStereoDisplay ( __in NV_SET_PREFERRED_STEREO_DISPLAY pPreferredStereoDisplay)

DESCRIPTION: Specifies a display output that drives the 3pin DIN output signal in a workstation stereo system environment. If display output is specified as a displayId of 0, the preferred stereo display target is reset to the driver default selection.

SUPPORTED OS: Windows 10 and higher

Since
Release: 470
Parameters
[in]pPreferredStereoDisplayPointer to a NV_SET_PREFERRED_STEREO_DISPLAY structure
Return values
NVAPI_OKcompleted request
NVAPI_ERRORmiscellaneous error occurred
NVAPI_INVALID_ARGUMENTInvalid input parameter.
NVAPI_INVALID_USER_PRIVILEGE- The application will require Administrator privileges to access this API. The application can be elevated to a higher permission level by selecting "Run as Administrator".

◆ NvAPI_DISP_SetVirtualRefreshRateData()

NvAPI_DISP_SetVirtualRefreshRateData ( __in NvU32  displayId,
__in NV_SET_VIRTUAL_REFRESH_RATE_DATA pVirtualRefreshRateData 
)
DESCRIPTION: This function is used to set Virtual Refresh Rate data for a VRR Capable Display.
SUPPORTED OS: Windows 10 and higher
\since Release: 510
\param [in] displayId - display id of the display
\param [inout] pVirtualRefreshRateData - A pointer to NV_SET_VIRTUAL_REFRESH_RATE_DATA, containing the information about the values of parameters that are to be retrieved on given display.
\return This API can return any of the error codes enumerated in
#NvAPI_Status. If there are return error codes with specific
meaning for this API, they are listed below.
NV_SET_VIRTUAL_REFRESH_RATE_DATA_V1 NV_SET_VIRTUAL_REFRESH_RATE_DATA
Definition nvapi.h:8759

◆ NvAPI_DISP_TryCustomDisplay()

NVAPI_INTERFACE NvAPI_DISP_TryCustomDisplay ( __in_ecount(count) NvU32 pDisplayIds,
__in NvU32  count,
__in_ecount(count) NV_CUSTOM_DISPLAY pCustDisp 
)

DESCRIPTION: This API is used to set up a custom display without saving the configuration on multiple displays.

Note
All the members of srcPartition, present in NV_CUSTOM_DISPLAY structure, should have their range in (0.0,1.0). In clone mode the timings can applied to both the target monitors but only one target at a time.
For the secondary target the applied timings works under the following conditions:
  • If the secondary monitor EDID supports the selected timing, OR
  • If the selected custom timings can be scaled by the secondary monitor for the selected source resolution on the primary, OR
  • If the selected custom timings matches the existing source resolution on the primary. Setting up a custom display on non-active but connected monitors is supported only for Win7 and above.

SUPPORTED OS: Windows 10 and higher

Since
Release: 313
Parameters
[in]pDisplayIdsArray of the target display Dispaly IDs - See NvAPI Handles.
[in]countTotal number of the incoming Display IDs and corresponding NV_CUSTOM_DISPLAY structure. This is for the multi-head support.
[in]pCustDispPointer to the NV_CUSTOM_DISPLAY structure array.
Returns
This API can return any of the error codes enumerated in NvAPI_Status. If there are return error codes with specific meaning for this API, they are listed below.
Return values
NVAPI_INVALID_DISPLAY_IDCustom Timing is not supported on the Display, whose display id is passed

◆ NvAPI_EnableHWCursor()

NVAPI_INTERFACE NvAPI_EnableHWCursor ( NvDisplayHandle  hNvDisplay)

This function enables hardware cursor support

SUPPORTED OS: Windows XP

Since
Release: 80
Returns
NVAPI_ERROR or NVAPI_OK

◆ NvAPI_GetAssociatedDisplayOutputId()

NVAPI_INTERFACE NvAPI_GetAssociatedDisplayOutputId ( NvDisplayHandle  hNvDisplay,
NvU32 pOutputId 
)

This function gets the active outputId associated with the display handle.

SUPPORTED OS: Windows 10 and higher

Since
Release: 90
Parameters
[in]hNvDisplayNVIDIA Display selection. It can be NVAPI_DEFAULT_HANDLE or a handle enumerated from NvAPI_EnumNVidiaDisplayHandle().
[out]outputIdThe active display output ID associated with the selected display handle hNvDisplay. The outputid will have only one bit set. In the case of Clone or Span mode, this will indicate the display outputId of the primary display that the GPU is driving. See NvAPI Handles.
Return values
NVAPI_OKCall successful.
NVAPI_NVIDIA_DEVICE_NOT_FOUNDNo NVIDIA GPU driving a display was found.
NVAPI_EXPECTED_DISPLAY_HANDLEhNvDisplay is not a valid display handle.

◆ NvAPI_GetAssociatedNvidiaDisplayName()

NVAPI_INTERFACE NvAPI_GetAssociatedNvidiaDisplayName ( NvDisplayHandle  NvDispHandle,
NvAPI_ShortString  szDisplayName 
)

For a given NVIDIA display handle, this function returns a string (such as "\\.\DISPLAY1") to identify the display.

SUPPORTED OS: Windows 10 and higher

Since
Release: 80
Return values
NVAPI_INVALID_ARGUMENTEither argument is NULL
NVAPI_OK*pNvDispHandle is now valid
NVAPI_NVIDIA_DEVICE_NOT_FOUNDNo NVIDIA device maps to that display name

◆ NvAPI_GetDisplayPortInfo()

NVAPI_INTERFACE NvAPI_GetDisplayPortInfo ( __in_opt NvDisplayHandle  hNvDisplay,
__in NvU32  outputId,
__inout NV_DISPLAY_PORT_INFO pInfo 
)

◆ NvAPI_GetHDMISupportInfo()

NVAPI_INTERFACE NvAPI_GetHDMISupportInfo ( __in_opt NvDisplayHandle  hNvDisplay,
__in NvU32  outputId,
__inout NV_HDMI_SUPPORT_INFO pInfo 
)

◆ NvAPI_GetSupportedViews()

NVAPI_INTERFACE NvAPI_GetSupportedViews ( NvDisplayHandle  hNvDisplay,
NV_TARGET_VIEW_MODE pTargetViews,
NvU32 pViewCount 
)

This API lets caller enumerate all the supported NVIDIA display views - nView and Dualview modes.

SUPPORTED OS: Windows 10 and higher

Since
Release: 85
Parameters
[in]hNvDisplayNVIDIA Display selection. It can be NVAPI_DEFAULT_HANDLE or a handle enumerated from NvAPI_EnumNVidiaDisplayHandle().
[out]pTargetViewsArray of supported views. Can be NULL to retrieve the pViewCount first.
[in,out]pViewCountCount of supported views.
Return values
NVAPI_OKCompleted request
NVAPI_ERRORMiscellaneous error occurred
NVAPI_INVALID_ARGUMENTInvalid input parameter.

◆ NvAPI_GetUnAttachedAssociatedDisplayName()

NVAPI_INTERFACE NvAPI_GetUnAttachedAssociatedDisplayName ( NvUnAttachedDisplayHandle  hNvUnAttachedDisp,
NvAPI_ShortString  szDisplayName 
)

This function returns the display name given, for example, "\\DISPLAY1", using the unattached NVIDIA display handle

SUPPORTED OS: Windows 10 and higher

Since
Release: 95
Return values
NVAPI_INVALID_ARGUMENTEither argument is NULL
NVAPI_OK*pNvDispHandle is now valid
NVAPI_NVIDIA_DEVICE_NOT_FOUNDNo NVIDIA device maps to that display name

◆ NvAPI_GetVBlankCounter()

NVAPI_INTERFACE NvAPI_GetVBlankCounter ( NvDisplayHandle  hNvDisplay,
NvU32 pCounter 
)

This function gets the V-blank counter

SUPPORTED OS: Windows 10 and higher

Since
Release: 80
Returns
NVAPI_ERROR or NVAPI_OK

◆ NvAPI_SetDisplayPort()

NVAPI_INTERFACE NvAPI_SetDisplayPort ( NvDisplayHandle  hNvDisplay,
NvU32  outputId,
NV_DISPLAY_PORT_CONFIG pCfg 
)

◆ NvAPI_SetRefreshRateOverride()

NVAPI_INTERFACE NvAPI_SetRefreshRateOverride ( NvDisplayHandle  hNvDisplay,
NvU32  outputsMask,
float  refreshRate,
NvU32  bSetDeferred 
)

This function overrides the refresh rate on the given display/outputsMask. The new refresh rate can be applied right away in this API call or deferred to be applied with the next OS modeset. The override is good for only one modeset (regardless whether it's deferred or immediate).

SUPPORTED OS: Windows XP

Since
Release: 80
Parameters
[in]hNvDisplayThe NVIDIA display handle. It can be NVAPI_DEFAULT_HANDLE or a handle enumerated from NvAPI_EnumNVidiaDisplayHandle().
[in]outputsMaskA set of bits that identify all target outputs which are associated with the NVIDIA display handle to apply the refresh rate override. When SLI is enabled, the outputsMask only applies to the GPU that is driving the display output.
[in]refreshRateThe override value. "0.0" means cancel the override.
[in]bSetDeferred
  • "0": Apply the refresh rate override immediately in this API call.
  • "1": Apply refresh rate at the next OS modeset.
Return values
NVAPI_INVALID_ARGUMENThNvDisplay or outputsMask is invalid
NVAPI_OKThe refresh rate override is correct set
NVAPI_ERRORThe operation failed