[go: up one dir, main page]

Menu

#4 Suggestion: Use "Monitor Name" from EDID if possible?

1.0
open
nobody
None
2017-11-04
2017-10-31
Stian
No

Hi,
this is a nice tool. Just a small suggestion to use the "Monitor Name" as reported in EDID if possible, as it is shown in MultiMonitorTool. If not most monitors and TVs will often show as just "Generic PNP monitor" which makes it really hard to know which is selected.

If you have the time to make this it would be great, if not no worries.

regards,
Stian

Discussion

  • Ohad Schneider

    Ohad Schneider - 2017-11-03

    Hi Stian,

    You raise a good point. I should be able to do this using SetupAPI and EDIDParser / KaiTai. Or maybe even run MultiMonitorTool / MonitorInfoView and parse their output csv/xml (to save myself the Win32 P/Invoke headache).

    When I get the time, I'm hoping to move this project to GitHub and make some changes, so I'll take a crack at this one too.

    In the meanting, since this "blind identification" is just a one-time thing it's not the end of the world...

    Thanks,
    Ohad

     

    Last edit: Ohad Schneider 2017-11-03
  • Stian

    Stian - 2017-11-04

    Thanks for the reply Ohad,
    it's just a small suggestion, like I said, and the program works fine as long as I can identify which monitor is which. I've actually had two bat files doing the same for a couple of years now, but I think this program was a good alternative way to handle it.

    The bat files orginally used Nircmd, but I've since changed to using Multimonitortool and Setvolumeview from Nirsoft, mainly since Setvolumeview supports using a sub-string of the device name instead of the name as set by Windows.

    Windows (10) has an annoying tendency to rename HDMI/DP-connected devices from time to time, so for instance "DENON-AVRHD" would become "DENON-AVRHD-C", or "\DISPLAY-1" become "\DISPLAY-3"... And I notice in the command line for TVGameLauncher link it used the Windows-renamed name - and if it renames again, it would stop working.

    Neither Multimonitortool nor Nircmd supports using the EDID name of the monitor however, so for video I am stuck with using \DISPLAY-1 and occasionally has to change it because of a monitor ID rename.

    This is why I think it would be a good idea to get EDID names - however it might lead to an issue when the user has more than one monitor with the same name, for instance I have one "ROG PG279Q" but would like to get a second one. I think the only thing "guaranteed" to be unique and unchanged and unique is probably the Device ID or possibly serial# but not all devices give their serial either...

    Thanks again for your very useful little piece of software!

    cheers,
    Stian

     

    Last edit: Stian 2017-11-04
    • Ohad Schneider

      Ohad Schneider - 2017-11-04

      Hi Stian,

      By EDID support I meant displaying the EDID information as a visual aid, not actually using them for monitor resolution (like you said they are not guaranteed to be unique). For the same reason, I won't try and use a substring of the device name for audio. I need something that is guaranteed to be unique by the OS.

      BTW, TVGL is using nircmd uder the covers which expects identifiers like \.\DISPLAY2.

      So if Windows changes the identifiers I'm afraid you'll have to modify the shortcut or run TVGL again, there is a limit to what this simple tool is going to do. Perhaps there is a way to prevent Windows from doing that? It never happened to me so far thankfully...

      Best,
      Ohad

       
  • Stian

    Stian - 2017-11-04

    Yeah, Windows10 tends to rename them, I think it's if you disconnect them at least, and sometimes just for some random reason. Not often enough that's it's a big problem, but I'd still like to get a permanent solution to it.

    And yes, I definitely see it would be an issue to pass the EDID Name to Nircmd or others because they would need to be unique. However, I think if you connect two devices of the same type they would still be named uniquely (by Windows), so it might work.

    Maybe use the EDID name for display and then use the fully unique "Monitor ID" or "Device ID" for display?

    MONITOR\ACIFF24{4d36e96e-e325-11ce-bfc1-08002be10318}\0004
    PCI\VEN_10DE&DEV_13C2&SUBSYS_31601462&REV_A1

    But these names are a mess to deal with of course :)

    I even tried posting on Superuser, didn't get a good answer, thought I had solved it but no the problem came back. You can see Windows appends random numbers/letter to the device names:
    https://superuser.com/questions/1040785/how-to-stop-windows-10-renaming-audio-devices

    Anyway your tool works fine as-is and "hopefully" stupid Windows won't rename the devices in the near future, maybe it was a bug and now fixed :)

    regards,
    Stian

     

    Last edit: Stian 2017-11-04
  • Ohad Schneider

    Ohad Schneider - 2017-11-04

    Again, I'm using nircmd which accepts the .\DISPLAY2. syntax so this is what I'll keep on using as the underlying identifier. EDID would be used for display purposes.

    And hey, Windows is not stupid ;)

     

Log in to post a comment.