""" Shared utilities for camera operations. """ import contextlib import os @contextlib.contextmanager def suppress_camera_errors(): """Context manager to temporarily suppress camera SDK error output""" # Save original file descriptors original_stderr = os.dup(2) original_stdout = os.dup(1) try: # Redirect stderr and stdout to devnull devnull = os.open(os.devnull, os.O_WRONLY) os.dup2(devnull, 2) # stderr os.dup2(devnull, 1) # stdout (in case SDK uses stdout) os.close(devnull) yield finally: # Restore original file descriptors os.dup2(original_stderr, 2) os.dup2(original_stdout, 1) os.close(original_stderr) os.close(original_stdout)