""" Utility functions for stream readers. """ import logging import os # Keep OpenCV errors visible but allow FFmpeg stderr logging os.environ["OPENCV_LOG_LEVEL"] = "ERROR" logger = logging.getLogger(__name__) # Color codes for pretty logging class Colors: GREEN = '\033[92m' YELLOW = '\033[93m' RED = '\033[91m' BLUE = '\033[94m' PURPLE = '\033[95m' CYAN = '\033[96m' WHITE = '\033[97m' BOLD = '\033[1m' END = '\033[0m' def log_success(camera_id: str, message: str): """Log success messages in green""" logger.info(f"{Colors.GREEN}[{camera_id}] {message}{Colors.END}") def log_warning(camera_id: str, message: str): """Log warnings in yellow""" logger.warning(f"{Colors.YELLOW}[{camera_id}] {message}{Colors.END}") def log_error(camera_id: str, message: str): """Log errors in red""" logger.error(f"{Colors.RED}[{camera_id}] {message}{Colors.END}") def log_info(camera_id: str, message: str): """Log info in cyan""" logger.info(f"{Colors.CYAN}[{camera_id}] {message}{Colors.END}")