diff options
Diffstat (limited to 'py/gamma.py')
-rw-r--r-- | py/gamma.py | 39 |
1 files changed, 39 insertions, 0 deletions
diff --git a/py/gamma.py b/py/gamma.py new file mode 100644 index 0000000..69722ce --- /dev/null +++ b/py/gamma.py @@ -0,0 +1,39 @@ +#!/usr/bin/python3 + +import pykms +from helpers import * + +# This hack makes drm initialize the fbcon, setting up the default connector +card = pykms.Card() +card = 0 + +card = pykms.Card() + +conn = card.get_first_connected_connector() +mode = conn.get_default_mode() +crtc = conn.get_current_crtc() + +arr = bytearray(256*2*4) +view = memoryview(arr).cast("H") + +for i in range(256): + g = round(255 * pow(i / 255.0, 1 / 2.2)) + + view[i * 4 + 0] = g << 8 + view[i * 4 + 1] = g << 8 + view[i * 4 + 2] = g << 8 + view[i * 4 + 3] = 0 + +gamma = pykms.Blob(card, arr); + +set_props(crtc, { + "GAMMA_LUT": gamma.id, +}) + +input("press enter to remove gamma\n") + +set_props(crtc, { + "GAMMA_LUT": 0, +}) + +input("press enter to exit\n") |