Rotoclear C Pro Server Documentation
Welcome to the comprehensive documentation for the Rotoclear C Pro server system - an industrial-grade camera control and streaming platform for industrial imaging applications.
Overview
C Pro is a high-performance camera server built with the Nim programming language, providing:
- Real-time video streaming via RTSP, WebRTC, and ONVIF protocols
- High-quality recording with multiple formats and metadata tagging
- Advanced camera control for professional imaging applications
- Multi-camera support with picture-in-picture capabilities
- Flexible deployment across embedded and desktop platforms
- Comprehensive API for integration with external systems
Quick Links
Getting Started
- Getting Started Guide - Installation and first steps
- Build and Deploy - Build from source
Architecture
- System Overview - High-level architecture
- State Management - Observable state system
- Camera Pipeline - Video capture and processing
- Metadata Storage - SQLite-based metadata system
Configuration
- Factory Configuration - Build-time configuration
- Deployment Variants - Product variants (DEFAULT, DEMO, DEV, EDU, rc_DMG, VB)
- License Configuration - License management
- Network Setup - Network configuration
Camera System
- Hardware Interface - V4L2, UVC, GPIO, motors, lighting
- Streaming - RTSP, WebRTC, multi-stream
- Recording - Recording modes, metadata, tags
- Image Processing - Enhancement, overlays, FPGA acceleration
API Reference
- HTTP API - REST endpoints
- WebSocket API - Real-time state updates
- RTSP Streaming - RTSP protocol details
- State Observables - Complete observable reference
Security
- Authentication - User authentication methods
- Permissions - Role-based access control
- SSL Certificates - TLS/SSL configuration
Operations
- Monitoring - System monitoring
- Troubleshooting - Common issues and solutions
- Performance - Performance tuning
System Features
Video Capabilities
- Resolutions: Up to 4K (3840x2160) at 60 FPS
- Formats: H.264, H.265, MJPEG
- Recording Modes: Standard video, timelapse, slow motion
- Streaming Protocols: RTSP, WebRTC, ONVIF
- Multi-Camera: Dual camera support with PIP mode
Storage & Organization
- Local Storage: Internal and USB storage
- Network Storage: NFS and SMB support
- Metadata System: SQLite-based with full-text search
- Tag & Categories: Organize recordings with tags and categories
- Automatic Cleanup: Retention policies and space management
Hardware Integration
- Camera Interfaces: V4L2, USB (UVC), MIPI CSI-2
- Motor Control: Rotation platform with auto-detection
- Lighting: PWM-controlled LED lighting
- Sensors: Temperature, proximity, position sensors
- HDMI Output: Real-time display output
Security Features
- Authentication: Basic, Digest, Bearer token, Session-based
- Authorization: Fine-grained permission system with RBAC
- Encryption: SSL/TLS for all network communication
- Audit Logging: Comprehensive security event logging
Deployment Options
- Embedded Systems: Optimized for ARM-based embedded platforms
- Desktop Systems: Development and testing on x86/x64
- Docker: Containerized deployment (optional)
- Multiple Variants: 6 pre-configured deployment variants
Deployment Variants
| Variant | Purpose | Use Case |
|---|---|---|
| DEFAULT | Base configuration | Standard deployments |
| DEMO | Evaluation | Trade shows, trials |
| DEV | Development | Software development |
| EDU | Educational | Medical schools, training |
| rc_DMG | DMG Product Line | Surgical microscopy |
| VB | Custom OEM | Customer-specific |
Architecture Highlights
Observable State System
Reactive state management with persistent storage:
- 50+ system observables
- Automatic persistence
- Permission-based access control
- Real-time updates via WebSocket
Modular Design
Component-based architecture:
- Camera Server: V4L2/GStreamer integration
- Web Server: HTTP and WebSocket APIs
- ONVIF Service: Standards-compliant protocol support
- State Manager: Centralized observable state
- Storage Manager: Recording and metadata handling
Performance
- Hardware Acceleration: V4L2 encoders, FPGA processing
- Low Latency: <100ms glass-to-glass latency
- Concurrent Streams: Multiple simultaneous clients
- Efficient Storage: H.264/H.265 compression
Technology Stack
- Programming Language: Nim (compiled to native code)
- Framework: Corun (async I/O framework)
- Video Pipeline: GStreamer
- Database: SQLite for metadata
- Storage: LevelDB for persistent state
- Protocols: HTTP, WebSocket, RTSP, WebRTC, ONVIF
- Build System: Nim compiler with custom build scripts
Support & Resources
Documentation
- API Examples - Multi-language client examples
- Integration Guide - ONVIF integration
Development
Recent Updates
Comprehensive Documentation Release
Complete architectural documentation covering all system components, configuration options, security model, and operational procedures.
License
See License Configuration for licensing information and terms.
Version: 1.0.0
Last Updated: December 2025