Hi,
I’m trying to create a small application that would be able to save the screen layout and be able to load it at boot time. And also save the EDID (I’m using quadro card) and load them at the proper GPU and outputs at boot time. Any people had experience with similar project that could help me ? Are these things possible with the NVAPI ?
Thank you,
Phil
Dear @gervais.phil
Thank you for contacting NVIDIA developer forum. I will assist you with this query.
Could you kindly clarify on what exactly do you mean by the “Screen Layout”? Is it the number of displays with their relative positions (as seen in Microsoft Display Settings Panel or NVIDIA Control Panel’s Set up multiple displays
page)?
Thank you.
NVAPI Forum Moderator
Hi!
Yes I meant the screens positions as seen in Microsoft Display Settings Panel or NVIDIA Control Panel’s Set up multiple displays
page
Thank,
Phil
Hello @gervais.phil
I would answer your query in three parts:
(I)
In order to get and set the display configuration using NVAPI, you can use the following APIs:
* NvAPI_DISP_GetDisplayConfig
* NvAPI_DISP_SetDisplayConfig
To see a sample usage of these functions, kindly refer to the file Sample_Code\DisplayConfiguration\DisplayConfiguration.cpp
inside the NVAPI SDK zip. You will have to correctly set the Path Info structure members to duplicate 3 monitors.
(II) You can also use the Windows APIs directly:
* QueryDisplayConfig: https://learn.microsoft.com/en-us/windows/win32/api/winuser/nf-winuser-querydisplayconfig
* SetDisplayConfig: https://learn.microsoft.com/en-us/windows/win32/api/winuser/nf-winuser-setdisplayconfig
(III)
You have also mentioned about loading and persisting the EDID. You might already be using the API NvAPI_GPU_SetEDID
for the same.
Thank you.
NVAPI Developer Forum
Good, Yes i saw the set EDID, but I dont see how we can specify on which port we set the EDID. For example, if I have 2 video card and I want to set on port 3 of card #2
Is there also a way to get what screen is connected on which port ? a bit like we see in system topology in nvidia driver?
1 Like
I have the same question.
Hello @gervais.phil , @patrick.xiong
I have noted your query about finding a way to get what screen is connected on which port. I will check within our technical team and get back to you.
Thank you.
1 Like
I am in the same boat. I often need to load a custom edid and assign it to certain ports. I am working with media servers so this is a common thing. We have a directory of saved edid’s to load. We have a process that goes something like this:
- Disable Mosaic
- Unload EDID
- Load new EDID
- Set nvidia color output
- Create new Mosaic
- Set Sync
Times the number of media servers we are running.