OpenRGB-python-FX
OpenRGB-python-FX copied to clipboard
Ambient.py
Hi,
running OpenRGB under Ubuntu I found the missing screen capture support in Ambient.py quite annoying (since the remaining scripts perform well under Linux) and patched together a workaround.
319d6335f23321c77931b5fc88dc8cde4c3dc3da uses X11 to get the PIL Image from the current screen, but for performance reasons it requires compiling some C code on the machine beforehand (all credit goes to https://stackoverflow.com/questions/69645/take-a-screenshot-via-a-python-script-on-linux). Having the compiled program, Ambient.py runs very well on my machine.
I also played around using k-means clustering instead of just the average RGB value to determine the LED-setting (fd8ea3a6ac8d93d1d43a24b298c9360125feb91f). This is somewhat experimental as it required smoothing out the colors over multiple frames (in this case 3) to prevent flickering due to sampling differences. It works well for me for gaming but it requires scikit-learn for clustering and is not tested on Win or Mac.
Hope you find something oft his useful. Cheers
This looks great so far :)
I am gonna throw in some try/except for imports and then it should be good to go
Ambient has the same issues on my windows machine but I guess the point of this MR is linux support so I am gonna merge it anyways
Make any adjustments you want to that and let me know when you think it is ready
Then I can test and merge if it is working as it should