bendavid / aiopylgtv

Library to control webOS based LG Tv devices
MIT License
143 stars 47 forks source link

enable/disable VRR / instant game response on the TV #64

Open kongomongo opened 1 year ago

kongomongo commented 1 year ago

Hi there,

I have been using this wonderful tool in combination with Kodi to switch from expert2 to/from game to enable TruMotion when I am not gaming on a LG C9.

Now with a different NVidia card I am also running 120Hz and G-SYnc/VRR/Instant Game Response. However now it seems with instant game response on I cannot use TruMotion anymore as all options are greyed out. I am also unable to DISABLE instant game response on the Windows side of things. Neither disabling G-Sync, nor using 60Hz standard Resolution works to disable VRR. The only thing that helps is when I disable Instant Game Response within the LG Picture Menu and TURN OFF Instant Game Response on the respective HDMI port.

This makes things pretty ugly. Does anyone know of a way to disable Instant Game Response programmatically ?

THANKS!

kongomongo commented 1 year ago

Did some more digging... I have found this:

https://github.com/chros73/bscpylgtv/blob/master/bscpylgtv/webos_client.py

async def set_other_settings(self, settings):
...
"gameOptimizationHDMI2": "on",

Using ColorControl.exe I was able to find out this is exactly the setting I need to toggle to turn off/on VRR. How would I go on to toggle this setting in aiopylgtv?

I guess I need to do a luna_request? But how?

 uri = "com.webos.settingsservice/setSystemSettings"

params = {"category": "other", "settings": {"gameOptimizationHDMI2": "off"}}

return await self.luna_request(uri, params)

works! Heureka!