connect to pixelflut via direct socket
parent
185adf8df1
commit
1d53c4a731
@ -0,0 +1,44 @@
|
|||||||
|
#!/usr/bin/env python3
|
||||||
|
import sys
|
||||||
|
import io
|
||||||
|
import socket
|
||||||
|
sys.path.append('..')
|
||||||
|
from waves import create_wpotd
|
||||||
|
|
||||||
|
SERVER_IP = '192.168.178.75'
|
||||||
|
SERVER_PORT = 1234
|
||||||
|
|
||||||
|
def chunker(seq, size):
|
||||||
|
return (seq[pos:pos + size] for pos in range(0, len(seq), size))
|
||||||
|
|
||||||
|
#buf = io.BytesIO()
|
||||||
|
#surface = create_wpotd(buf)
|
||||||
|
#
|
||||||
|
#data = surface.get_data()
|
||||||
|
#pixels = data.hex()
|
||||||
|
#
|
||||||
|
#x, y = 0, 0
|
||||||
|
#for hexpx in chunker(pixels, 8):
|
||||||
|
# if x > 1919:
|
||||||
|
# x = 0
|
||||||
|
# y += 1
|
||||||
|
# pxstr = f'PX {x} {y} {hexpx[:6]}'
|
||||||
|
# x += 1
|
||||||
|
# print(pxstr)
|
||||||
|
|
||||||
|
def surface_to_pixelflut(surface):
|
||||||
|
data = surface.get_data()
|
||||||
|
pixels = data.hex()
|
||||||
|
|
||||||
|
x, y = 0, 0
|
||||||
|
with socket.socket(socket.AF_INET, socket.SOCK_STREAM) as s:
|
||||||
|
s.connect((SERVER_IP, SERVER_PORT))
|
||||||
|
for hexpx in chunker(pixels, 8):
|
||||||
|
if x > 1919:
|
||||||
|
x = 0
|
||||||
|
y += 1
|
||||||
|
pxstr = f'PX {x} {y} {hexpx[:6]}\n'
|
||||||
|
x += 1
|
||||||
|
if hexpx[6:8] == '00':
|
||||||
|
continue
|
||||||
|
s.sendall(pxstr.encode())
|
Loading…
Reference in New Issue