From 3fb0820b526286ae442f5fe4cc6083a27a64e539 Mon Sep 17 00:00:00 2001 From: ori Date: Sun, 14 Apr 2019 11:55:07 -0700 Subject: [PATCH] added start cameras method --- backend/Main.py | 8 ++++++++ backend/app/classes/CamerasHandler.py | 8 ++++++++ backend/app/classes/SettingsManager.py | 2 +- 3 files changed, 17 insertions(+), 1 deletion(-) diff --git a/backend/Main.py b/backend/Main.py index 863889d03..84837052d 100644 --- a/backend/Main.py +++ b/backend/Main.py @@ -3,11 +3,19 @@ import tornado.ioloop from app.ChameleonVisionApp import ChameleonApplication from app.classes.SettingsManager import SettingsManager from tornado.options import options +from classes.CamerasHandler import CamerasHandler if __name__ == "__main__": mng = SettingsManager() + a = CamerasHandler.get_cameras() + b = CamerasHandler.start_cameras(a) + tornado.options.parse_command_line() app = ChameleonApplication() print(f"Serving on port {options.port}") app.listen(options.port) tornado.ioloop.IOLoop.current().start() + +#TODO: create process for each camera +# create proccess loop and camera publisher +# bridge network tables for each camera \ No newline at end of file diff --git a/backend/app/classes/CamerasHandler.py b/backend/app/classes/CamerasHandler.py index f1415316e..65bd8e123 100644 --- a/backend/app/classes/CamerasHandler.py +++ b/backend/app/classes/CamerasHandler.py @@ -17,3 +17,11 @@ class CamerasHandler: cap.release() index += 1 return [usb_devices[i] for i in arr] + + @staticmethod + def start_cameras(usb_devices): + cameras = [] + for device in usb_devices: + camera = cscore.UsbCamera(name='', dev=device.dev) + cameras.append(camera) + return cameras diff --git a/backend/app/classes/SettingsManager.py b/backend/app/classes/SettingsManager.py index a16ef56d8..6abecb733 100644 --- a/backend/app/classes/SettingsManager.py +++ b/backend/app/classes/SettingsManager.py @@ -31,7 +31,7 @@ class SettingsManager(metaclass=Singleton): def _init_cameras(self): cameras = CamerasHandler.get_cameras() - + for cam in cameras: if os.path.exists(os.path.join(self.cams_path, cam.name)): self.cams[cam.name] = {}