From e83e965290f96b8bb3d405fcf79139d3e51a2413 Mon Sep 17 00:00:00 2001 From: Emiliana <38952746+emilianavt@users.noreply.github.com> Date: Mon, 10 Feb 2020 20:26:46 +0100 Subject: [PATCH] Reading from standard input should now work correctly. --- input_reader.py | 12 ++++++------ 1 file changed, 6 insertions(+), 6 deletions(-) diff --git a/input_reader.py b/input_reader.py index 0967aed..15feb52 100644 --- a/input_reader.py +++ b/input_reader.py @@ -2,7 +2,7 @@ import re import sys import os import cv2 -import numpy +import numpy as np import escapi def list_cameras(): @@ -83,7 +83,7 @@ class RawReader: bytes = sys.stdin.buffer.read(self.len) read_bytes += len(bytes) frame.extend(bytes) - return np.frombuffer(frame, dtype=np.uint8).reshape((self.height, self.width, 3)) + return True, np.frombuffer(frame, dtype=np.uint8).reshape((self.height, self.width, 3)) def close(self): self.open = False @@ -91,12 +91,12 @@ class InputReader(): def __init__(self, capture, raw_rgb, width, height, fps): self.reader = None try: - if os.path.exists(capture): + if raw_rgb > 0: + self.reader = RawReader(width, height) + elif os.path.exists(capture): self.reader = VideoReader(capture) elif capture == str(int(capture)): self.reader = CameraReader(int(capture), width, height, fps) - else: - self.reader = RawReader(width, height) except Exception as e: print("Error: " + str(e)) @@ -110,4 +110,4 @@ class InputReader(): def read(self): return self.reader.read() def close(self): - self.reader.close() \ No newline at end of file + self.reader.close()