From 37c83c0565232f1d4b9fabff03e0970b33657055 Mon Sep 17 00:00:00 2001 From: Calin Crisan Date: Sun, 19 Jul 2015 14:48:36 +0300 Subject: [PATCH] also check for persistent device path when determining if a v4l2 camera is already added --- src/handlers.py | 3 ++- src/v4l2ctl.py | 10 +++++----- 2 files changed, 7 insertions(+), 6 deletions(-) diff --git a/src/handlers.py b/src/handlers.py index 2a2cfe3..34966e7 100644 --- a/src/handlers.py +++ b/src/handlers.py @@ -525,7 +525,8 @@ class ConfigHandler(BaseHandler): if utils.v4l2_camera(data): configured_devices.add(data['videodevice']) - cameras = [{'id': d[0], 'name': d[1]} for d in v4l2ctl.list_devices() if d[0] not in configured_devices] + cameras = [{'id': d[1], 'name': d[2]} for d in v4l2ctl.list_devices() + if (d[0] not in configured_devices) and (d[1] not in configured_devices)] self.finish_json({'cameras': cameras}) diff --git a/src/v4l2ctl.py b/src/v4l2ctl.py index 3be3467..53de064 100644 --- a/src/v4l2ctl.py +++ b/src/v4l2ctl.py @@ -90,12 +90,12 @@ def list_devices(): for line in output.split('\n'): if line.startswith('\t'): device = line.strip() - device = find_persistent_device(device) - devices.append((device, name)) + persistent_device = find_persistent_device(device) + devices.append((device, persistent_device, name)) - logging.debug('found device %(name)s: %(device)s' % { - 'name': name, 'device': device}) - + logging.debug('found device %(name)s: %(device)s, %(persistent_device)s' % { + 'name': name, 'device': device, 'persistent_device': persistent_device}) + else: name = line.split('(')[0].strip() -- 2.39.5