Commit 96f96adb authored by Lisa's avatar Lisa

feat: add desktop observe and refresh agent bundle

parent c45b0361
...@@ -87,7 +87,7 @@ cd "$TMP_EXTRACT" ...@@ -87,7 +87,7 @@ cd "$TMP_EXTRACT"
# === EMBEDDED TARBALL (base64) === # === EMBEDDED TARBALL (base64) ===
cat <<'TARBALL_DATA' | base64 -d | tar xzf - cat <<'TARBALL_DATA' | base64 -d | tar xzf -
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
TARBALL_DATA TARBALL_DATA
# Copy agent script # Copy agent script
......
...@@ -380,6 +380,9 @@ class ComputerControllerBase: ...@@ -380,6 +380,9 @@ class ComputerControllerBase:
def screenshot(self, output_path: Optional[str] = None) -> Dict[str, Any]: def screenshot(self, output_path: Optional[str] = None) -> Dict[str, Any]:
raise NotImplementedError raise NotImplementedError
def region_screenshot(self, x: int, y: int, width: int, height: int, output_path: Optional[str] = None) -> Dict[str, Any]:
raise NotImplementedError
def mouse_move(self, x: int, y: int) -> Dict[str, Any]: def mouse_move(self, x: int, y: int) -> Dict[str, Any]:
raise NotImplementedError raise NotImplementedError
...@@ -398,6 +401,18 @@ class ComputerControllerBase: ...@@ -398,6 +401,18 @@ class ComputerControllerBase:
def get_active_window(self) -> Dict[str, Any]: def get_active_window(self) -> Dict[str, Any]:
raise NotImplementedError raise NotImplementedError
def screen_info(self) -> Dict[str, Any]:
raise NotImplementedError
def list_windows(self) -> Dict[str, Any]:
raise NotImplementedError
def window_geometry(self, window_id: Optional[str] = None) -> Dict[str, Any]:
raise NotImplementedError
def clipboard_get(self) -> Dict[str, Any]:
raise NotImplementedError
# ── POSIX computer control (xdotool + import/ImageMagick) ────────────────── # ── POSIX computer control (xdotool + import/ImageMagick) ──────────────────
class PosixComputerController(ComputerControllerBase): class PosixComputerController(ComputerControllerBase):
...@@ -405,27 +420,74 @@ class PosixComputerController(ComputerControllerBase): ...@@ -405,27 +420,74 @@ class PosixComputerController(ComputerControllerBase):
def __init__(self): def __init__(self):
self.display = os.environ.get('DISPLAY', ':0') self.display = os.environ.get('DISPLAY', ':0')
self.xdotool = shutil.which('xdotool')
self.xwininfo = shutil.which('xwininfo')
self.xprop = shutil.which('xprop')
self.xrandr = shutil.which('xrandr')
self.xclip = shutil.which('xclip')
self.xsel = shutil.which('xsel')
self.import_cmd = shutil.which('import')
self.scrot = shutil.which('scrot')
def screenshot(self, output_path: Optional[str] = None) -> Dict[str, Any]: def screenshot(self, output_path: Optional[str] = None) -> Dict[str, Any]:
return self.region_screenshot(0, 0, 0, 0, output_path=output_path, full_root=True)
def region_screenshot(self, x: int, y: int, width: int, height: int, output_path: Optional[str] = None, full_root: bool = False) -> Dict[str, Any]:
import base64
try:
if self.import_cmd:
if full_root or width <= 0 or height <= 0:
if output_path: if output_path:
r = self._run(f'import -display {self.display} -window root "{output_path}"') r = self._run(f'{self.import_cmd} -display {self.display} -window root "{output_path}"')
return {'success': r['success'], 'path': output_path, 'error': r.get('error')} return {'success': r['success'], 'path': output_path, 'error': r.get('error')}
result = subprocess.run(
f'{self.import_cmd} -display {self.display} -window root png:-',
shell=True, capture_output=True, timeout=30
)
else: else:
import base64 crop = f'{int(width)}x{int(height)}+{int(x)}+{int(y)}'
try: if output_path:
r = self._run(f'{self.import_cmd} -display {self.display} -window root -crop {crop} "{output_path}"')
return {'success': r['success'], 'path': output_path, 'x': int(x), 'y': int(y), 'width': int(width), 'height': int(height), 'error': r.get('error')}
result = subprocess.run( result = subprocess.run(
f'import -display {self.display} -window root png:-', f'{self.import_cmd} -display {self.display} -window root -crop {crop} png:-',
shell=True, capture_output=True, timeout=30 shell=True, capture_output=True, timeout=30
) )
if result.returncode == 0: if result.returncode == 0:
return { payload = {
'success': True, 'format': 'png', 'success': True,
'format': 'png',
'data': base64.b64encode(result.stdout).decode('ascii'), 'data': base64.b64encode(result.stdout).decode('ascii'),
'size': len(result.stdout) 'size': len(result.stdout),
} }
if not full_root and width > 0 and height > 0:
payload.update({'x': int(x), 'y': int(y), 'width': int(width), 'height': int(height)})
return payload
return {'success': False, 'error': (result.stderr.decode('utf-8', errors='replace') if isinstance(result.stderr, bytes) else result.stderr) or 'screenshot failed'}
if self.scrot:
tmp_path = output_path or f'/tmp/hermes-screenshot-{int(time.time())}.png'
cmd = [self.scrot]
if not full_root and width > 0 and height > 0:
cmd += ['-a', f'{int(x)},{int(y)},{int(width)},{int(height)}']
cmd += [tmp_path]
proc = subprocess.run(cmd, capture_output=True, text=True, timeout=30)
if proc.returncode != 0:
return {'success': False, 'error': (proc.stderr or proc.stdout or 'scrot screenshot failed').strip()}
data = Path(tmp_path).read_bytes()
payload = {'success': True, 'format': 'png', 'data': base64.b64encode(data).decode('ascii'), 'size': len(data)}
if output_path:
payload['path'] = output_path
else:
try:
os.unlink(tmp_path)
except Exception:
pass
if not full_root and width > 0 and height > 0:
payload.update({'x': int(x), 'y': int(y), 'width': int(width), 'height': int(height)})
return payload
except Exception as e: except Exception as e:
return {'success': False, 'error': str(e)} return {'success': False, 'error': str(e)}
return {'success': False, 'error': 'screenshot failed'} return {'success': False, 'error': 'No screenshot backend available'}
def mouse_move(self, x: int, y: int) -> Dict[str, Any]: def mouse_move(self, x: int, y: int) -> Dict[str, Any]:
return self._run(f'xdotool mousemove {x} {y}') return self._run(f'xdotool mousemove {x} {y}')
...@@ -435,16 +497,18 @@ class PosixComputerController(ComputerControllerBase): ...@@ -435,16 +497,18 @@ class PosixComputerController(ComputerControllerBase):
def mouse_position(self) -> Dict[str, Any]: def mouse_position(self) -> Dict[str, Any]:
out = self._run('xdotool getmouselocation --shell') out = self._run('xdotool getmouselocation --shell')
pos = {} pos: Dict[str, Any] = {}
if out['success']: if out['success']:
for line in out['stdout'].splitlines(): for line in out['stdout'].splitlines():
if '=' in line: if '=' in line:
k, v = line.split('=', 1) k, v = line.split('=', 1)
pos[k] = int(v) try:
pos[k.lower()] = int(v)
except ValueError:
pos[k.lower()] = v
return {'success': out['success'], 'position': pos, 'error': out.get('error')} return {'success': out['success'], 'position': pos, 'error': out.get('error')}
def type_text(self, text: str) -> Dict[str, Any]: def type_text(self, text: str) -> Dict[str, Any]:
# Escape single quotes for shell
safe = text.replace("'", "'\"'\"'") safe = text.replace("'", "'\"'\"'")
return self._run(f"xdotool type --delay 1 '{safe}'") return self._run(f"xdotool type --delay 1 '{safe}'")
...@@ -454,16 +518,139 @@ class PosixComputerController(ComputerControllerBase): ...@@ -454,16 +518,139 @@ class PosixComputerController(ComputerControllerBase):
def get_active_window(self) -> Dict[str, Any]: def get_active_window(self) -> Dict[str, Any]:
win_id = self._run('xdotool getactivewindow') win_id = self._run('xdotool getactivewindow')
if win_id['success']: if win_id['success']:
title = self._run(f'xdotool getwindowname {win_id["stdout"]}') window_id = win_id['stdout'].strip()
return {'success': True, 'window_id': win_id['stdout'], title = self._run(f'xdotool getwindowname {window_id}')
'title': title.get('stdout', ''), 'error': title.get('error')} payload = {'success': True, 'window_id': window_id, 'title': title.get('stdout', ''), 'error': title.get('error')}
geom = self.window_geometry(window_id)
if geom.get('success'):
payload.update({k: v for k, v in geom.items() if k not in ('success',)})
return payload
return win_id return win_id
def screen_info(self) -> Dict[str, Any]:
if self.xrandr:
out = self._run(f'{self.xrandr} --current')
if out['success']:
screens = []
current = None
for line in out['stdout'].splitlines():
line = line.strip()
if ' connected' in line:
parts = line.split()
name = parts[0]
geom = None
for part in parts[2:]:
if 'x' in part and '+' in part:
geom = part
break
screen = {'name': name, 'connected': True, 'raw': line}
if geom:
try:
size, xpos, ypos = geom.split('+', 2)
width_s, height_s = size.split('x', 1)
screen.update({'width': int(width_s), 'height': int(height_s), 'x': int(xpos), 'y': int(ypos)})
except Exception:
pass
screens.append(screen)
if current is None:
current = screen
payload = {'success': True, 'screens': screens, 'screen_count': len(screens), 'display': self.display}
if current:
payload['primary'] = current
return payload
geom = self._run('xdotool getdisplaygeometry')
if geom['success']:
parts = geom['stdout'].split()
if len(parts) == 2:
try:
width, height = map(int, parts)
return {'success': True, 'screens': [{'name': 'display', 'width': width, 'height': height, 'x': 0, 'y': 0}], 'screen_count': 1, 'display': self.display, 'primary': {'name': 'display', 'width': width, 'height': height, 'x': 0, 'y': 0}}
except Exception:
pass
return {'success': False, 'error': 'Unable to determine screen info'}
def list_windows(self) -> Dict[str, Any]:
out = self._run('xdotool search --onlyvisible --name ".*"')
if not out['success']:
return {'success': False, 'error': out.get('error') or out.get('stderr') or 'Failed to enumerate windows'}
windows = []
for win_id in out['stdout'].splitlines():
win_id = win_id.strip()
if not win_id:
continue
title = self._run(f'xdotool getwindowname {win_id}')
geom = self.window_geometry(win_id)
entry = {'window_id': win_id, 'title': title.get('stdout', ''), 'success': title.get('success', False)}
if geom.get('success'):
entry.update({k: v for k, v in geom.items() if k not in ('success',)})
windows.append(entry)
return {'success': True, 'windows': windows, 'window_count': len(windows)}
def window_geometry(self, window_id: Optional[str] = None) -> Dict[str, Any]:
target = str(window_id).strip() if window_id else ''
if not target:
active = self._run('xdotool getactivewindow')
if not active['success']:
return active
target = active['stdout'].strip()
if self.xwininfo:
out = self._run(f'{self.xwininfo} -id {shlex.quote(target)}')
if out['success']:
payload: Dict[str, Any] = {'success': True, 'window_id': target}
for line in out['stdout'].splitlines():
line = line.strip()
if line.startswith('Absolute upper-left X:'):
payload['x'] = int(line.split(':', 1)[1].strip())
elif line.startswith('Absolute upper-left Y:'):
payload['y'] = int(line.split(':', 1)[1].strip())
elif line.startswith('Width:'):
payload['width'] = int(line.split(':', 1)[1].strip())
elif line.startswith('Height:'):
payload['height'] = int(line.split(':', 1)[1].strip())
name = self._run(f'xdotool getwindowname {target}')
if name['success']:
payload['title'] = name.get('stdout', '')
return payload
out = self._run(f'xdotool getwindowgeometry --shell {target}')
if not out['success']:
return {'success': False, 'error': out.get('error') or out.get('stderr') or 'Failed to get window geometry'}
payload = {'success': True, 'window_id': target}
for line in out['stdout'].splitlines():
if '=' in line:
k, v = line.split('=', 1)
key = k.strip().lower()
try:
payload[key] = int(v.strip())
except ValueError:
payload[key] = v.strip()
name = self._run(f'xdotool getwindowname {target}')
if name['success']:
payload['title'] = name.get('stdout', '')
return payload
def clipboard_get(self) -> Dict[str, Any]:
commands = []
if self.xclip:
commands.append([self.xclip, '-selection', 'clipboard', '-o'])
if self.xsel:
commands.append([self.xsel, '--clipboard', '--output'])
if not commands:
return {'success': False, 'error': 'No clipboard backend available (xclip/xsel missing)'}
for cmd in commands:
try:
proc = subprocess.run(cmd, capture_output=True, text=True, timeout=10)
if proc.returncode == 0:
return {'success': True, 'text': proc.stdout, 'backend': Path(cmd[0]).name}
except Exception as e:
last_error = str(e)
return {'success': False, 'error': locals().get('last_error', 'Clipboard read failed')}
def _run(self, cmd: str) -> Dict[str, Any]: def _run(self, cmd: str) -> Dict[str, Any]:
try: try:
r = subprocess.run(cmd, shell=True, capture_output=True, text=True, timeout=30) env = os.environ.copy()
return {'success': r.returncode == 0, 'stdout': r.stdout.strip(), env['DISPLAY'] = self.display
'stderr': r.stderr.strip(), 'exit_code': r.returncode} r = subprocess.run(cmd, shell=True, capture_output=True, text=True, timeout=30, env=env)
return {'success': r.returncode == 0, 'stdout': r.stdout.strip(), 'stderr': r.stderr.strip(), 'exit_code': r.returncode}
except Exception as e: except Exception as e:
return {'success': False, 'error': str(e)} return {'success': False, 'error': str(e)}
...@@ -602,6 +789,9 @@ class CameraControllerBase: ...@@ -602,6 +789,9 @@ class CameraControllerBase:
def capture_video(self, params: Dict[str, Any]) -> Dict[str, Any]: def capture_video(self, params: Dict[str, Any]) -> Dict[str, Any]:
raise NotImplementedError raise NotImplementedError
def inject_video(self, params: Dict[str, Any]) -> Dict[str, Any]:
raise NotImplementedError
class PosixAudioController(AudioControllerBase): class PosixAudioController(AudioControllerBase):
"""Linux audio support via ffmpeg + available host backends.""" """Linux audio support via ffmpeg + available host backends."""
...@@ -926,6 +1116,25 @@ class PosixCameraController(CameraControllerBase): ...@@ -926,6 +1116,25 @@ class PosixCameraController(CameraControllerBase):
def _list_device_paths(self) -> List[Path]: def _list_device_paths(self) -> List[Path]:
return sorted(Path('/dev').glob('video*'), key=lambda p: p.name) return sorted(Path('/dev').glob('video*'), key=lambda p: p.name)
def _is_v4l2loopback_device(self, device_path: Path, details: Optional[str] = None) -> bool:
haystack = details or ''
if not haystack and self.v4l2_ctl:
try:
proc = subprocess.run(
[self.v4l2_ctl, '--device', str(device_path), '--all'],
capture_output=True,
text=True,
timeout=15,
)
haystack = '\n'.join(part for part in [proc.stdout, proc.stderr] if part)
except Exception:
haystack = ''
lowered = haystack.lower()
return 'v4l2 loopback' in lowered or 'v4l2loopback' in lowered
def _list_virtual_device_paths(self) -> List[Path]:
return [device for device in self._list_device_paths() if self._is_v4l2loopback_device(device)]
def _encode_file(self, path: str) -> Dict[str, Any]: def _encode_file(self, path: str) -> Dict[str, Any]:
data = Path(path).read_bytes() data = Path(path).read_bytes()
return { return {
...@@ -1008,21 +1217,27 @@ class PosixCameraController(CameraControllerBase): ...@@ -1008,21 +1217,27 @@ class PosixCameraController(CameraControllerBase):
info['available'] = probe['success'] info['available'] = probe['success']
if probe.get('output'): if probe.get('output'):
info['details'] = probe['output'] info['details'] = probe['output']
info['is_virtual'] = self._is_v4l2loopback_device(device_path, info.get('details'))
return info return info
def capability_info(self) -> Dict[str, Any]: def capability_info(self) -> Dict[str, Any]:
devices = self._list_device_paths() devices = self._list_device_paths()
virtual_devices = self._list_virtual_device_paths()
return { return {
'platform': 'linux', 'platform': 'linux',
'backend': 'v4l2-ffmpeg', 'backend': 'v4l2-ffmpeg',
'available': bool(devices), 'available': bool(devices),
'device_count': len(devices), 'device_count': len(devices),
'virtual_device_count': len(virtual_devices),
'supports_frame_capture': True, 'supports_frame_capture': True,
'supports_video_capture': True, 'supports_video_capture': True,
'supports_video_injection': bool(virtual_devices),
'can_inject_camera': bool(virtual_devices),
'ffmpeg': bool(self.ffmpeg), 'ffmpeg': bool(self.ffmpeg),
'ffprobe': bool(self.ffprobe), 'ffprobe': bool(self.ffprobe),
'v4l2_ctl': bool(self.v4l2_ctl), 'v4l2_ctl': bool(self.v4l2_ctl),
'devices': [str(p) for p in devices], 'devices': [str(p) for p in devices],
'virtual_devices': [str(p) for p in virtual_devices],
} }
def list_cameras(self) -> Dict[str, Any]: def list_cameras(self) -> Dict[str, Any]:
...@@ -1036,6 +1251,7 @@ class PosixCameraController(CameraControllerBase): ...@@ -1036,6 +1251,7 @@ class PosixCameraController(CameraControllerBase):
def get_camera_status(self) -> Dict[str, Any]: def get_camera_status(self) -> Dict[str, Any]:
devices = self.list_cameras() devices = self.list_cameras()
virtual_devices = [cam['path'] for cam in devices.get('cameras', []) if cam.get('is_virtual')]
payload = { payload = {
'success': True, 'success': True,
'backend': 'v4l2-ffmpeg', 'backend': 'v4l2-ffmpeg',
...@@ -1044,6 +1260,8 @@ class PosixCameraController(CameraControllerBase): ...@@ -1044,6 +1260,8 @@ class PosixCameraController(CameraControllerBase):
'v4l2_ctl': bool(self.v4l2_ctl), 'v4l2_ctl': bool(self.v4l2_ctl),
'camera_count': devices.get('camera_count', 0), 'camera_count': devices.get('camera_count', 0),
'cameras': devices.get('cameras', []), 'cameras': devices.get('cameras', []),
'virtual_devices': virtual_devices,
'can_inject_camera': bool(virtual_devices),
} }
if payload['camera_count'] == 0: if payload['camera_count'] == 0:
payload['available'] = False payload['available'] = False
...@@ -1061,6 +1279,20 @@ class PosixCameraController(CameraControllerBase): ...@@ -1061,6 +1279,20 @@ class PosixCameraController(CameraControllerBase):
raise PlatformError('No /dev/video* devices found') raise PlatformError('No /dev/video* devices found')
return str(devices[0]) return str(devices[0])
def _pick_virtual_device(self, params: Dict[str, Any]) -> str:
device = params.get('device') or params.get('device_path') or params.get('target_device')
if device:
device_path = Path(str(device)).expanduser()
if not device_path.exists():
raise PlatformError(f'Virtual camera device not found: {device_path}')
if not self._is_v4l2loopback_device(device_path):
raise PlatformError(f'Device is not a v4l2loopback virtual camera: {device_path}')
return str(device_path)
devices = self._list_virtual_device_paths()
if not devices:
raise PlatformError('No v4l2loopback virtual camera devices found')
return str(devices[0])
def capture_frame(self, params: Dict[str, Any]) -> Dict[str, Any]: def capture_frame(self, params: Dict[str, Any]) -> Dict[str, Any]:
device = self._pick_device(params) device = self._pick_device(params)
fmt = str(params.get('format', 'png')).lower() fmt = str(params.get('format', 'png')).lower()
...@@ -1123,6 +1355,69 @@ class PosixCameraController(CameraControllerBase): ...@@ -1123,6 +1355,69 @@ class PosixCameraController(CameraControllerBase):
payload['measured_duration'] = media_duration payload['measured_duration'] = media_duration
return payload return payload
def inject_video(self, params: Dict[str, Any]) -> Dict[str, Any]:
target_device = self._pick_virtual_device(params)
source_path = params.get('source_path') or params.get('path')
if not source_path:
return {'success': False, 'error': 'inject_video requires params.source_path or params.path'}
source = Path(str(source_path)).expanduser()
if not source.exists():
return {'success': False, 'error': f'Video source not found: {source}'}
width = params.get('width')
height = params.get('height')
fps = params.get('fps')
duration = params.get('duration')
loop = bool(params.get('loop', False))
pixel_format = str(params.get('pixel_format', 'yuv420p'))
input_format = str(params.get('input_format', '')).strip()
cmd = [self.ffmpeg, '-y', '-v', 'error']
if loop:
cmd += ['-stream_loop', '-1']
if input_format:
cmd += ['-f', input_format]
cmd += ['-re', '-i', str(source)]
vf_parts = []
if width and height:
vf_parts.append(f'scale={int(width)}:{int(height)}')
if vf_parts:
cmd += ['-vf', ','.join(vf_parts)]
if fps:
cmd += ['-r', str(fps)]
bounded_duration = None
if duration is not None:
bounded_duration = max(1, min(int(duration), 3600))
cmd += ['-t', str(bounded_duration)]
cmd += ['-pix_fmt', pixel_format, '-f', 'v4l2', target_device]
timeout = max(30, bounded_duration + 30) if bounded_duration is not None else 90
try:
proc = subprocess.run(cmd, capture_output=True, text=True, timeout=timeout)
except subprocess.TimeoutExpired:
return {
'success': False,
'error': 'inject_video timed out; use params.duration for bounded injection or run shorter sources',
}
except Exception as e:
return {'success': False, 'error': str(e)}
if proc.returncode != 0:
return {'success': False, 'error': (proc.stderr or proc.stdout or 'video injection failed').strip()}
payload = {
'success': True,
'device': target_device,
'source_path': str(source),
'loop': loop,
'pixel_format': pixel_format,
}
if width and height:
payload['video_size'] = f'{int(width)}x{int(height)}'
if fps:
payload['fps'] = fps
if bounded_duration is not None:
payload['duration'] = bounded_duration
media_duration = self._media_duration(str(source))
if media_duration is not None:
payload['source_duration'] = media_duration
return payload
def make_camera_controller(config: Dict[str, Any]) -> Optional[CameraControllerBase]: def make_camera_controller(config: Dict[str, Any]) -> Optional[CameraControllerBase]:
if not config.get('enable_camera_control'): if not config.get('enable_camera_control'):
...@@ -1445,15 +1740,31 @@ class NodeAgent: ...@@ -1445,15 +1740,31 @@ class NodeAgent:
try: try:
if action in ('active_window', 'get_active_window'): if action in ('active_window', 'get_active_window'):
result = self.computer.get_active_window() result = self.computer.get_active_window()
elif action == 'mouse_position': elif action in ('cursor_position', 'mouse_position'):
result = self.computer.mouse_position() result = self.computer.mouse_position()
elif action == 'screen_info':
result = self.computer.screen_info()
elif action == 'window_geometry':
result = self.computer.window_geometry(params.get('window_id'))
elif action == 'list_windows':
result = self.computer.list_windows()
elif action == 'clipboard_get':
result = self.computer.clipboard_get()
elif action == 'screenshot': elif action == 'screenshot':
result = self.computer.screenshot(params.get('output_path')) result = self.computer.screenshot(params.get('output_path'))
elif action == 'region_screenshot':
result = self.computer.region_screenshot(
int(params.get('x', 0)),
int(params.get('y', 0)),
int(params.get('width', 0)),
int(params.get('height', 0)),
params.get('output_path')
)
else: else:
result = {'success': False, 'error': f'Unknown desktop_observe action: {action}'} result = {'success': False, 'error': f'Unknown desktop_observe action: {action}'}
except Exception as e: except Exception as e:
result = {'success': False, 'error': str(e)} result = {'success': False, 'error': str(e)}
_log_tool_completed('observe', action, bool(result.get('success')), result.get('error'))
payload = {'type': 'desktop_observe_result', 'id': cmd_id, 'action': action} payload = {'type': 'desktop_observe_result', 'id': cmd_id, 'action': action}
payload.update(result) payload.update(result)
await self._send_json(ws, payload) await self._send_json(ws, payload)
...@@ -1536,6 +1847,8 @@ class NodeAgent: ...@@ -1536,6 +1847,8 @@ class NodeAgent:
result = self.camera.capture_frame(params) result = self.camera.capture_frame(params)
elif action == 'capture_video': elif action == 'capture_video':
result = self.camera.capture_video(params) result = self.camera.capture_video(params)
elif action == 'inject_video':
result = self.camera.inject_video(params)
else: else:
result = {'success': False, 'error': f'Unknown camera_control action: {action}'} result = {'success': False, 'error': f'Unknown camera_control action: {action}'}
except Exception as e: except Exception as e:
......
...@@ -87,7 +87,7 @@ cd "$TMP_EXTRACT" ...@@ -87,7 +87,7 @@ cd "$TMP_EXTRACT"
# === EMBEDDED TARBALL (base64) === # === EMBEDDED TARBALL (base64) ===
cat <<'TARBALL_DATA' | base64 -d | tar xzf - cat <<'TARBALL_DATA' | base64 -d | tar xzf -
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
TARBALL_DATA TARBALL_DATA
# Copy agent script # Copy agent script
......
...@@ -581,6 +581,9 @@ class CameraControllerBase: ...@@ -581,6 +581,9 @@ class CameraControllerBase:
def capture_video(self, params: Dict[str, Any]) -> Dict[str, Any]: def capture_video(self, params: Dict[str, Any]) -> Dict[str, Any]:
raise NotImplementedError raise NotImplementedError
def inject_video(self, params: Dict[str, Any]) -> Dict[str, Any]:
raise NotImplementedError
class PosixAudioController(AudioControllerBase): class PosixAudioController(AudioControllerBase):
"""Linux audio support via ffmpeg + available host backends.""" """Linux audio support via ffmpeg + available host backends."""
...@@ -865,6 +868,371 @@ def make_audio_controller(config: Dict[str, Any]) -> Optional[AudioControllerBas ...@@ -865,6 +868,371 @@ def make_audio_controller(config: Dict[str, Any]) -> Optional[AudioControllerBas
return None return None
class WindowsCameraController(CameraControllerBase):
"""Windows camera support via OpenCV + ffmpeg + pyvirtualcam."""
def __init__(self):
self.ffmpeg = shutil.which('ffmpeg')
self.ffprobe = shutil.which('ffprobe')
self.cv2 = self._import_cv2()
self.pyvirtualcam = self._import_pyvirtualcam()
self.backend_name = self._detect_backend_name()
self.device_indexes = self._discover_device_indexes()
self.virtual_camera_ready = self.pyvirtualcam is not None
if not self.device_indexes and not self.virtual_camera_ready:
raise PlatformError('no physical cameras discovered and pyvirtualcam unavailable for injection')
def _import_cv2(self):
try:
import cv2 # type: ignore
return cv2
except Exception:
return None
def _import_pyvirtualcam(self):
try:
import pyvirtualcam # type: ignore
return pyvirtualcam
except Exception:
return None
def _detect_backend_name(self) -> Optional[str]:
if self.pyvirtualcam is None:
return None
backend = getattr(self.pyvirtualcam, 'Backend', None)
if backend is None:
return 'pyvirtualcam'
for name in ('obs', 'unitycapture'):
value = getattr(backend, name.upper(), None) or getattr(backend, name, None)
if value is not None:
try:
with self.pyvirtualcam.Camera(width=640, height=480, fps=5, backend=value):
return name
except Exception:
continue
return 'auto'
def _discover_device_indexes(self, max_devices: int = 10) -> List[int]:
if self.cv2 is None:
return []
indexes: List[int] = []
cap_backend = getattr(self.cv2, 'CAP_DSHOW', 700)
for idx in range(max_devices):
cap = self.cv2.VideoCapture(idx, cap_backend)
try:
if cap is not None and cap.isOpened():
ok, _ = cap.read()
if ok:
indexes.append(idx)
except Exception:
pass
finally:
try:
cap.release()
except Exception:
pass
return indexes
def _parse_int(self, value: Any, default: int) -> int:
try:
return int(value)
except Exception:
return default
def _parse_float(self, value: Any, default: float) -> float:
try:
return float(value)
except Exception:
return default
def _encode_file(self, path: str) -> Dict[str, Any]:
data = Path(path).read_bytes()
return {
'path': path,
'size_bytes': len(data),
'data_base64': base64.b64encode(data).decode('ascii'),
}
def _media_duration(self, path: str) -> Optional[float]:
if not self.ffprobe:
return None
try:
proc = subprocess.run([
self.ffprobe, '-v', 'error', '-show_entries', 'format=duration',
'-of', 'default=noprint_wrappers=1:nokey=1', path
], capture_output=True, text=True, timeout=15)
if proc.returncode != 0:
return None
return round(float((proc.stdout or '').strip()), 3)
except Exception:
return None
def _expand_output_path(self, path: Optional[str], suffix: str) -> str:
if path:
return str(Path(path).expanduser())
stamp = int(time.time())
return str(Path(tempfile.gettempdir()) / f'hermes-camera-{stamp}{suffix}')
def _pick_device_index(self, params: Dict[str, Any]) -> int:
value = params.get('device_index')
if value is None:
device = params.get('device') or params.get('device_path')
if device is not None:
try:
value = int(device)
except Exception:
raise PlatformError(f'Windows camera device must be an integer index, got: {device}')
if value is not None:
idx = int(value)
if idx not in self.device_indexes:
raise PlatformError(f'Camera index not available: {idx}')
return idx
if not self.device_indexes:
raise PlatformError('No Windows camera devices discovered')
return self.device_indexes[0]
def _capture_device_info(self, idx: int) -> Dict[str, Any]:
info = {
'index': idx,
'name': f'camera-{idx}',
'path': str(idx),
'exists': True,
'readable': True,
'writable': False,
'is_virtual': False,
}
if self.cv2 is None:
info['available'] = False
info['probe_error'] = 'opencv-python not installed'
return info
cap_backend = getattr(self.cv2, 'CAP_DSHOW', 700)
cap = self.cv2.VideoCapture(idx, cap_backend)
try:
info['available'] = bool(cap is not None and cap.isOpened())
if info['available']:
width = int(cap.get(self.cv2.CAP_PROP_FRAME_WIDTH) or 0)
height = int(cap.get(self.cv2.CAP_PROP_FRAME_HEIGHT) or 0)
fps = float(cap.get(self.cv2.CAP_PROP_FPS) or 0.0)
if width > 0 and height > 0:
info['default_video_size'] = f'{width}x{height}'
if fps > 0:
info['default_fps'] = round(fps, 3)
finally:
try:
cap.release()
except Exception:
pass
return info
def capability_info(self) -> Dict[str, Any]:
return {
'platform': 'windows',
'backend': 'opencv-dshow',
'available': bool(self.device_indexes or self.virtual_camera_ready),
'device_count': len(self.device_indexes),
'virtual_device_count': 1 if self.virtual_camera_ready else 0,
'supports_frame_capture': bool(self.cv2 and self.device_indexes),
'supports_video_capture': bool(self.cv2 and self.device_indexes),
'supports_video_injection': bool(self.virtual_camera_ready),
'can_inject_camera': bool(self.virtual_camera_ready),
'capture_backend': 'opencv-dshow' if self.cv2 else None,
'injection_backend': 'pyvirtualcam' if self.virtual_camera_ready else None,
'virtual_camera_backend': self.backend_name,
'ffmpeg': bool(self.ffmpeg),
'ffprobe': bool(self.ffprobe),
'opencv': bool(self.cv2),
'pyvirtualcam': bool(self.pyvirtualcam),
'devices': [str(idx) for idx in self.device_indexes],
'virtual_devices': [self.backend_name or 'pyvirtualcam'] if self.virtual_camera_ready else [],
}
def list_cameras(self) -> Dict[str, Any]:
cameras = [self._capture_device_info(idx) for idx in self.device_indexes]
if self.virtual_camera_ready:
cameras.append({
'index': None,
'name': self.backend_name or 'pyvirtualcam',
'path': self.backend_name or 'pyvirtualcam',
'exists': True,
'readable': False,
'writable': True,
'available': True,
'is_virtual': True,
'backend': 'pyvirtualcam',
})
return {
'success': True,
'backend': 'opencv-dshow',
'camera_count': len(cameras),
'cameras': cameras,
}
def get_camera_status(self) -> Dict[str, Any]:
devices = self.list_cameras()
virtual_devices = [cam['path'] for cam in devices.get('cameras', []) if cam.get('is_virtual')]
payload = {
'success': True,
'backend': 'opencv-dshow',
'ffmpeg': bool(self.ffmpeg),
'ffprobe': bool(self.ffprobe),
'opencv': bool(self.cv2),
'pyvirtualcam': bool(self.pyvirtualcam),
'camera_count': devices.get('camera_count', 0),
'cameras': devices.get('cameras', []),
'virtual_devices': virtual_devices,
'can_inject_camera': bool(virtual_devices),
}
if payload['camera_count'] == 0:
payload['available'] = False
payload['reason'] = 'No Windows camera capture or virtual camera backend available'
else:
payload['available'] = True
return payload
def capture_frame(self, params: Dict[str, Any]) -> Dict[str, Any]:
if self.cv2 is None:
return {'success': False, 'error': 'capture_frame requires opencv-python on Windows'}
idx = self._pick_device_index(params)
fmt = str(params.get('format', 'png')).lower()
if fmt not in ('png', 'jpg', 'jpeg', 'bmp'):
return {'success': False, 'error': f'Unsupported frame format: {fmt}'}
suffix = '.jpg' if fmt == 'jpeg' else f'.{fmt}'
path = self._expand_output_path(params.get('output_path') or params.get('path'), suffix)
cap_backend = getattr(self.cv2, 'CAP_DSHOW', 700)
cap = self.cv2.VideoCapture(idx, cap_backend)
try:
if not cap.isOpened():
return {'success': False, 'error': f'Failed to open camera index {idx}'}
width = params.get('width')
height = params.get('height')
if width:
cap.set(self.cv2.CAP_PROP_FRAME_WIDTH, int(width))
if height:
cap.set(self.cv2.CAP_PROP_FRAME_HEIGHT, int(height))
ok, frame = cap.read()
if not ok or frame is None:
return {'success': False, 'error': f'Failed to capture frame from camera index {idx}'}
if not self.cv2.imwrite(path, frame):
return {'success': False, 'error': f'Failed to write frame to {path}'}
finally:
try:
cap.release()
except Exception:
pass
payload = {'success': True, 'device': str(idx), 'device_index': idx, 'format': fmt}
payload.update(self._encode_file(path))
return payload
def capture_video(self, params: Dict[str, Any]) -> Dict[str, Any]:
if not self.ffmpeg:
return {'success': False, 'error': 'capture_video requires ffmpeg on Windows'}
idx = self._pick_device_index(params)
duration = max(1, min(int(params.get('duration', 5)), 600))
fmt = str(params.get('format', 'mp4')).lower()
extension = 'mkv' if fmt == 'matroska' else fmt
if extension not in ('mp4', 'mkv', 'webm'):
return {'success': False, 'error': f'Unsupported video format: {fmt}'}
path = self._expand_output_path(params.get('output_path') or params.get('path'), f'.{extension}')
width = params.get('width')
height = params.get('height')
fps = params.get('fps')
cmd = [self.ffmpeg, '-y', '-v', 'error', '-f', 'dshow']
if width and height:
cmd += ['-video_size', f'{int(width)}x{int(height)}']
if fps:
cmd += ['-framerate', str(fps)]
cmd += ['-i', f'video=Integrated Camera', '-t', str(duration), path]
alt_cmd = [self.ffmpeg, '-y', '-v', 'error', '-f', 'dshow', '-video_device_number', str(idx)]
if width and height:
alt_cmd += ['-video_size', f'{int(width)}x{int(height)}']
if fps:
alt_cmd += ['-framerate', str(fps)]
alt_cmd += ['-i', 'video=dummy', '-t', str(duration), path]
proc = subprocess.run(alt_cmd, capture_output=True, text=True, timeout=duration + 30)
if proc.returncode != 0:
return {'success': False, 'error': (proc.stderr or proc.stdout or 'video capture failed').strip()}
payload = {'success': True, 'device': str(idx), 'device_index': idx, 'format': extension, 'duration': duration}
payload.update(self._encode_file(path))
media_duration = self._media_duration(path)
if media_duration is not None:
payload['measured_duration'] = media_duration
return payload
def inject_video(self, params: Dict[str, Any]) -> Dict[str, Any]:
if self.pyvirtualcam is None:
return {'success': False, 'error': 'inject_video requires pyvirtualcam on Windows'}
source_path = params.get('source_path') or params.get('path')
if not source_path:
return {'success': False, 'error': 'inject_video requires params.source_path or params.path'}
source = Path(str(source_path)).expanduser()
if not source.exists():
return {'success': False, 'error': f'Video source not found: {source}'}
if self.cv2 is None:
return {'success': False, 'error': 'inject_video requires opencv-python on Windows'}
width = self._parse_int(params.get('width'), 0)
height = self._parse_int(params.get('height'), 0)
fps = self._parse_float(params.get('fps'), 0.0)
duration = params.get('duration')
loop = bool(params.get('loop', False))
cap = self.cv2.VideoCapture(str(source))
try:
if not cap.isOpened():
return {'success': False, 'error': f'Failed to open video source: {source}'}
src_width = int(cap.get(self.cv2.CAP_PROP_FRAME_WIDTH) or 0)
src_height = int(cap.get(self.cv2.CAP_PROP_FRAME_HEIGHT) or 0)
src_fps = float(cap.get(self.cv2.CAP_PROP_FPS) or 0.0)
width = width or src_width or 640
height = height or src_height or 480
fps = fps or (src_fps if src_fps and src_fps > 1 else 30.0)
backend_value = None
if self.backend_name and self.backend_name not in ('auto', 'pyvirtualcam'):
backend_enum = getattr(self.pyvirtualcam, 'Backend', None)
if backend_enum is not None:
backend_value = getattr(backend_enum, self.backend_name.upper(), None)
bounded_duration = max(1, min(int(duration), 3600)) if duration is not None else None
start = time.time()
frames_sent = 0
with self.pyvirtualcam.Camera(width=width, height=height, fps=fps, backend=backend_value) as cam:
while True:
ok, frame = cap.read()
if not ok or frame is None:
if loop:
cap.set(self.cv2.CAP_PROP_POS_FRAMES, 0)
continue
break
if frame.shape[1] != width or frame.shape[0] != height:
frame = self.cv2.resize(frame, (width, height))
frame_rgb = self.cv2.cvtColor(frame, self.cv2.COLOR_BGR2RGB)
cam.send(frame_rgb)
cam.sleep_until_next_frame()
frames_sent += 1
if bounded_duration is not None and (time.time() - start) >= bounded_duration:
break
except Exception as e:
return {'success': False, 'error': str(e)}
finally:
try:
cap.release()
except Exception:
pass
payload = {
'success': True,
'device': self.backend_name or 'pyvirtualcam',
'source_path': str(source),
'loop': loop,
'video_size': f'{width}x{height}',
'fps': round(fps, 3),
'frames_sent': frames_sent,
'backend': self.backend_name or 'pyvirtualcam',
}
if bounded_duration is not None:
payload['duration'] = bounded_duration
media_duration = self._media_duration(str(source))
if media_duration is not None:
payload['source_duration'] = media_duration
return payload
class PosixCameraController(CameraControllerBase): class PosixCameraController(CameraControllerBase):
"""Linux camera support via ffmpeg + V4L2 device nodes.""" """Linux camera support via ffmpeg + V4L2 device nodes."""
...@@ -878,6 +1246,25 @@ class PosixCameraController(CameraControllerBase): ...@@ -878,6 +1246,25 @@ class PosixCameraController(CameraControllerBase):
def _list_device_paths(self) -> List[Path]: def _list_device_paths(self) -> List[Path]:
return sorted(Path('/dev').glob('video*'), key=lambda p: p.name) return sorted(Path('/dev').glob('video*'), key=lambda p: p.name)
def _is_v4l2loopback_device(self, device_path: Path, details: Optional[str] = None) -> bool:
haystack = details or ''
if not haystack and self.v4l2_ctl:
try:
proc = subprocess.run(
[self.v4l2_ctl, '--device', str(device_path), '--all'],
capture_output=True,
text=True,
timeout=15,
)
haystack = '\n'.join(part for part in [proc.stdout, proc.stderr] if part)
except Exception:
haystack = ''
lowered = haystack.lower()
return 'v4l2 loopback' in lowered or 'v4l2loopback' in lowered
def _list_virtual_device_paths(self) -> List[Path]:
return [device for device in self._list_device_paths() if self._is_v4l2loopback_device(device)]
def _encode_file(self, path: str) -> Dict[str, Any]: def _encode_file(self, path: str) -> Dict[str, Any]:
data = Path(path).read_bytes() data = Path(path).read_bytes()
return { return {
...@@ -960,21 +1347,27 @@ class PosixCameraController(CameraControllerBase): ...@@ -960,21 +1347,27 @@ class PosixCameraController(CameraControllerBase):
info['available'] = probe['success'] info['available'] = probe['success']
if probe.get('output'): if probe.get('output'):
info['details'] = probe['output'] info['details'] = probe['output']
info['is_virtual'] = self._is_v4l2loopback_device(device_path, info.get('details'))
return info return info
def capability_info(self) -> Dict[str, Any]: def capability_info(self) -> Dict[str, Any]:
devices = self._list_device_paths() devices = self._list_device_paths()
virtual_devices = self._list_virtual_device_paths()
return { return {
'platform': 'linux', 'platform': 'linux',
'backend': 'v4l2-ffmpeg', 'backend': 'v4l2-ffmpeg',
'available': bool(devices), 'available': bool(devices),
'device_count': len(devices), 'device_count': len(devices),
'virtual_device_count': len(virtual_devices),
'supports_frame_capture': True, 'supports_frame_capture': True,
'supports_video_capture': True, 'supports_video_capture': True,
'supports_video_injection': bool(virtual_devices),
'can_inject_camera': bool(virtual_devices),
'ffmpeg': bool(self.ffmpeg), 'ffmpeg': bool(self.ffmpeg),
'ffprobe': bool(self.ffprobe), 'ffprobe': bool(self.ffprobe),
'v4l2_ctl': bool(self.v4l2_ctl), 'v4l2_ctl': bool(self.v4l2_ctl),
'devices': [str(p) for p in devices], 'devices': [str(p) for p in devices],
'virtual_devices': [str(p) for p in virtual_devices],
} }
def list_cameras(self) -> Dict[str, Any]: def list_cameras(self) -> Dict[str, Any]:
...@@ -988,6 +1381,7 @@ class PosixCameraController(CameraControllerBase): ...@@ -988,6 +1381,7 @@ class PosixCameraController(CameraControllerBase):
def get_camera_status(self) -> Dict[str, Any]: def get_camera_status(self) -> Dict[str, Any]:
devices = self.list_cameras() devices = self.list_cameras()
virtual_devices = [cam['path'] for cam in devices.get('cameras', []) if cam.get('is_virtual')]
payload = { payload = {
'success': True, 'success': True,
'backend': 'v4l2-ffmpeg', 'backend': 'v4l2-ffmpeg',
...@@ -996,6 +1390,8 @@ class PosixCameraController(CameraControllerBase): ...@@ -996,6 +1390,8 @@ class PosixCameraController(CameraControllerBase):
'v4l2_ctl': bool(self.v4l2_ctl), 'v4l2_ctl': bool(self.v4l2_ctl),
'camera_count': devices.get('camera_count', 0), 'camera_count': devices.get('camera_count', 0),
'cameras': devices.get('cameras', []), 'cameras': devices.get('cameras', []),
'virtual_devices': virtual_devices,
'can_inject_camera': bool(virtual_devices),
} }
if payload['camera_count'] == 0: if payload['camera_count'] == 0:
payload['available'] = False payload['available'] = False
...@@ -1013,6 +1409,20 @@ class PosixCameraController(CameraControllerBase): ...@@ -1013,6 +1409,20 @@ class PosixCameraController(CameraControllerBase):
raise PlatformError('No /dev/video* devices found') raise PlatformError('No /dev/video* devices found')
return str(devices[0]) return str(devices[0])
def _pick_virtual_device(self, params: Dict[str, Any]) -> str:
device = params.get('device') or params.get('device_path') or params.get('target_device')
if device:
device_path = Path(str(device)).expanduser()
if not device_path.exists():
raise PlatformError(f'Virtual camera device not found: {device_path}')
if not self._is_v4l2loopback_device(device_path):
raise PlatformError(f'Device is not a v4l2loopback virtual camera: {device_path}')
return str(device_path)
devices = self._list_virtual_device_paths()
if not devices:
raise PlatformError('No v4l2loopback virtual camera devices found')
return str(devices[0])
def capture_frame(self, params: Dict[str, Any]) -> Dict[str, Any]: def capture_frame(self, params: Dict[str, Any]) -> Dict[str, Any]:
device = self._pick_device(params) device = self._pick_device(params)
fmt = str(params.get('format', 'png')).lower() fmt = str(params.get('format', 'png')).lower()
...@@ -1075,10 +1485,84 @@ class PosixCameraController(CameraControllerBase): ...@@ -1075,10 +1485,84 @@ class PosixCameraController(CameraControllerBase):
payload['measured_duration'] = media_duration payload['measured_duration'] = media_duration
return payload return payload
def inject_video(self, params: Dict[str, Any]) -> Dict[str, Any]:
target_device = self._pick_virtual_device(params)
source_path = params.get('source_path') or params.get('path')
if not source_path:
return {'success': False, 'error': 'inject_video requires params.source_path or params.path'}
source = Path(str(source_path)).expanduser()
if not source.exists():
return {'success': False, 'error': f'Video source not found: {source}'}
width = params.get('width')
height = params.get('height')
fps = params.get('fps')
duration = params.get('duration')
loop = bool(params.get('loop', False))
pixel_format = str(params.get('pixel_format', 'yuv420p'))
input_format = str(params.get('input_format', '')).strip()
cmd = [self.ffmpeg, '-y', '-v', 'error']
if loop:
cmd += ['-stream_loop', '-1']
if input_format:
cmd += ['-f', input_format]
cmd += ['-re', '-i', str(source)]
vf_parts = []
if width and height:
vf_parts.append(f'scale={int(width)}:{int(height)}')
if vf_parts:
cmd += ['-vf', ','.join(vf_parts)]
if fps:
cmd += ['-r', str(fps)]
bounded_duration = None
if duration is not None:
bounded_duration = max(1, min(int(duration), 3600))
cmd += ['-t', str(bounded_duration)]
cmd += ['-pix_fmt', pixel_format, '-f', 'v4l2', target_device]
timeout = max(30, bounded_duration + 30) if bounded_duration is not None else 90
try:
proc = subprocess.run(cmd, capture_output=True, text=True, timeout=timeout)
except subprocess.TimeoutExpired:
return {
'success': False,
'error': 'inject_video timed out; use params.duration for bounded injection or run shorter sources',
}
except Exception as e:
return {'success': False, 'error': str(e)}
if proc.returncode != 0:
return {'success': False, 'error': (proc.stderr or proc.stdout or 'video injection failed').strip()}
payload = {
'success': True,
'device': target_device,
'source_path': str(source),
'loop': loop,
'pixel_format': pixel_format,
}
if width and height:
payload['video_size'] = f'{int(width)}x{int(height)}'
if fps:
payload['fps'] = fps
if bounded_duration is not None:
payload['duration'] = bounded_duration
media_duration = self._media_duration(str(source))
if media_duration is not None:
payload['source_duration'] = media_duration
return payload
def make_camera_controller(config: Dict[str, Any]) -> Optional[CameraControllerBase]: def make_camera_controller(config: Dict[str, Any]) -> Optional[CameraControllerBase]:
if not config.get('enable_camera_control'): if not config.get('enable_camera_control'):
return None return None
if is_windows():
try:
controller = WindowsCameraController()
caps = controller.capability_info()
if not caps.get('available'):
_log_disabled('camera_control', 'no usable Windows camera backend available')
return None
return controller
except Exception as e:
_log_disabled('camera_control', str(e))
return None
if is_linux(): if is_linux():
try: try:
controller = PosixCameraController() controller = PosixCameraController()
...@@ -1472,6 +1956,8 @@ class NodeAgent: ...@@ -1472,6 +1956,8 @@ class NodeAgent:
result = self.camera.capture_frame(params) result = self.camera.capture_frame(params)
elif action == 'capture_video': elif action == 'capture_video':
result = self.camera.capture_video(params) result = self.camera.capture_video(params)
elif action == 'inject_video':
result = self.camera.inject_video(params)
else: else:
result = {'success': False, 'error': f'Unknown camera_control action: {action}'} result = {'success': False, 'error': f'Unknown camera_control action: {action}'}
except Exception as e: except Exception as e:
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment