Thanks for your reply!
I've tested this by first creating a customized view with the Catalyst controls. After that I enumerated the view via ADL, deleted the view and tried to recreate it via ADL with the same structure I got from enumeration - and it failed. So I think this specific ADL API is generally broken.
Anyway, not important for me, because I was looking for a way to create true custom resolutions, which these APIs are obviously not meant for.
BTW, why do you want 23.976 if the display doesn't report it already in EDID? |
My HTPC video renderer is used by many different end users, some of which have problems with incorrect EDIDs. Also, even if the EDID is correct, some users with some ATI GPUs on some OSs don't have 1080p23 as an option, although the EDID says 1080p23 is supported. I can reproduce that on my own PC. HD3850, XPSP3, JVC HD350 and Sony HW10 projectors, connected via HDMI or DVI. I only get 1080i48 (48.000Hz interlaced) as an option, not 1080p24 (24.000Hz progressive) or 1080p23 (23.976Hz progressive). Even forcing 1080p24 via Catalyst control panel only gives me 1080i48, but not 1080p24 or 1080p23.
Also some of my users have CRTs, or plasmas with funny native resolutions, and they need very specific custom resolutions. E.g. things like 1366x768 with 75Hz etc. There's currently no way to "create" such funny resolutions with Catalyst controls or ADL. I think that's a really important missing feature. IMHO there should be an official way to create custom resolutions. Basically I'd like to be able to do something like this:
ADL_Display_CreateCustomResolution(width, height, bitdepth, refreshRate, interlacedOrProgressive, frontPorch, syncWidth, pixelClock, etc...)
This should work to create any wild resolution I want. The ATI/AMD driver should not care if the resolution seems "plausible" or not, as long as it's technically possible. You can't possibly know all useful modes that any user with any display worldwide could find useful.
Just one example: For my own needs, I'd like to have true 1080p23, 1080p24 and 1080p25 modes. Not all displays support 1080p25, but some do, and it's perfect for PAL HD broadcasted movies. In my situation, Catalyst offers 1080i48 and 1080i50, but I have neither 1080p23, 1080p24 or 1080p25.
BTW, NVAPI has such APIs and they work well...