import zmq
import numpy as np
import cv2


context = zmq.Context()
socket = context.socket(zmq.SUB)
socket.connect("tcp://localhost:5556")
socket.setsockopt_string(zmq.SUBSCRIBE, '')

while True:
    message = socket.recv()
    np_array = np.frombuffer(message, dtype=np.uint8)
    frame = cv2.imdecode(np_array, cv2.IMREAD_COLOR)
    cv2.imshow("Received", frame)
    if cv2.waitKey(1) == 27:
        break

cv2.destroyAllWindows()
