Cliff's notes: Question: Is there a way to write a script to clone a monitor to another monitor (rather than do so manually in Control Panel or ATI driver)?
I would like something similar to How can I script nvidia display setting changes?
============================ Long version: (I post more detail than necessary because I am open to suggestions for alternatives, e.g. EDID to fix this other than a band-aid fix I proposed.)
Let me describe the problem I have with my HDMI audio setup. I use ATI Radeon 6950 GPU, which has audio capability, act as sound device in Windows 7 for its HDMI/Display Port. The sound device is named ATI High Definition Audio device.
However, due to strange implementation of Windows or the driver I don't know whose fault this is, the HDMI audio does not work if there is no accompanying video signal. Currently I attach the HDMI to my AV receiver and video feed is not utilised. (I use DisplayPort for my main display and another auxilliary DVI display). To allow HDMI audio, I have to duplicate my auxilliary desktop as a cloned desktop to my AV receiver (Appears to be a 3rd monitor) so that a video feed signal exists such that the sound works.
This is where problems start. Whenever I turn off my AV receiver or my main monitor, DP/HDMI resyncs. This is when DP/HDMI detects change in connection, performs handshaking protocols and Windows reconfigures the monitor setup to a pre-stored profile. For example, only DP is alive but not HDMI when AV receiver is turned off, the display settings changes accordingly, screen flickers and settles. This is the root of the problem. Upon this, when the resync commences, the connections of all DP/HDMI links reset momentarily and when this happens, the ATI High Definition Audio driver also resets due to loss of link. The speaker icon changes to one with a cross, signifying sound card is unavailable.
Not only does it breaks every application that has active audio resources, due to a bug with the driver or Windows (don't know which), the profiles were not correctly stored and hence restored. If I turn my AV receiver on (from off state) to the profile state where all connections are alive, the profile where monitor is duplicated is not loaded properly and hence the video feed to the AV receiver is not automatically re-established. This mean the sound remains unavailable until I manually re-clone the desktop of my auxilliary monitor to my AV receiver. Similarly, if my desktop is turned off, the resync kicks in and the cloning of the desktop auto breaks.
This means I cannot listen to music with my main display off (even though it's not the one being cloned), or play computer games and go afk since turning off my main monitor breaks the sound and the game (link breakage for the former and resolution reset for latter). God these new interfaces are driving me nuts, can we go to simple plug and play no brainer DVI with audio support?
Sorry for the long post, my question is is there a way to write a script to clone a monitor to another monitor, so I don't have to do this recloning manually and I can automate it whenever the sound device is detected to be unavailable?
P.S. rant These new interfaces with DP/HDMI is worse than the old DVI/VGA connections. They try to be clever and user friendly to reconfigure the desktop arrangement for you, but they don't realise the flickering of the screens is more annoyance than anything. At least switching off a DVI monitor doesn't reset the resolutions, desktop loadout, etc, breaking any 3D applications within. /rant