WebUI
Browser-based interface for camera control, video streaming, and AI inference configuration.
Prerequisites
- Host PC with Chrome browser
- Board connected via Ethernet
- Board IP address:
10.0.0.1(default)
Network Setup
Configure your host PC network adapter to use a static IP in the same subnet as the board.
Windows Configuration
Set your Ethernet adapter to static IP:
| Parameter | Value |
|---|---|
| IP Address | 10.0.0.2 |
| Subnet Mask | 255.255.255.0 |
| Default Gateway | (leave empty or set to 10.0.0.1) |

:::tip Network Verification Verify connectivity before proceeding:
ping 10.0.0.1
:::
Starting the Server
SSH into the board and launch the WebUI server:
ssh root@10.0.0.1
camera-viewer-server

Expected output shows pipeline initialization and FPS statistics:
- Pipeline configuration warnings (if any)
- "Starting Pipeline..." message
- Real-time FPS display:
fpsdisplaysink_sensor0_sink0, DROP RATE: 0 FPS: 30.xxx
:::caution Memory Warning If your system has less than 3GB RAM, you may see a warning about clip data storage. The application requires at least 3GB for default in-memory clip storage. To use on lower-memory systems, configure clip data storage to SD card (A2 class minimum). :::
Accessing the Interface
- Open Google Chrome on your host PC
- Navigate to: http://10.0.0.1
The WebUI loads automatically and displays the live video stream.
Main Interface
The WebUI provides a live video preview with detection overlays and a collapsible control sidebar.

Interface Components
| Area | Description |
|---|---|
| Video Stream | Live camera feed with bounding box overlays |
| Left Sidebar | Menu navigation (Camera Setup, Image, AI, etc.) |
| Top Bar | Navigation between Camera and WebRTC views |
| Detection Overlay | Bounding boxes around detected objects |
| Timestamp | Current date/time overlay on video |
Menu Reference
Camera Setup
Configure basic camera parameters including orientation, stabilization, and frame settings.

| Parameter | Options/Range | Description |
|---|---|---|
| Rotate | 0°, 90°, 180°, 270° | Image rotation |
| Mirror | Off / Horizontal / Vertical / Both | Image mirroring |
| Digital Zoom | On/Off | Enable digital zoom |
| Anti Flicker | Off / 50Hz / 60Hz | Flicker reduction for lighting |
| Lens Distortion Correction | On/Off | Correct lens barrel distortion |
| Digital Image Stabilization | On/Off | Software-based stabilization |
| Electronic Image Stabilization | On/Off | Hardware-based stabilization |
| Frame Rate | 1-30 fps | Video frame rate |
| Resolution | 4K / 1080p / 720p | Output resolution |
Image
Adjust basic image quality parameters and ISP processing.

| Parameter | Range | Description |
|---|---|---|
| Auto ISP Algorithms | On/Off | Enable automatic ISP tuning |
| Saturation | 0-100 | Color saturation level |
| Contrast | 0-100 | Image contrast |
| Brightness | 0-100 | Image brightness |
| Sharpness | 0-100 | Edge enhancement |
| Grayscale | On/Off | Convert to black and white |
Advanced Control
Fine-tune exposure, white balance, and dynamic range settings.

| Parameter | Options/Range | Description |
|---|---|---|
| WDR | 0-100 | Wide Dynamic Range strength |
| AWB | Auto / Manual / Daylight / Fluorescent / Cloudy | Auto White Balance mode |
| Auto Exposure | On/Off | Automatic exposure control |
| Backlight Compensation | 0-100 | Compensate for backlit scenes |
| Gain | 1-3800 | Sensor gain (ISO equivalent) |
| Exposure Time | 2000-33000 μs | Manual exposure duration |
:::note Auto-Exposure Adjustment Values may be adjusted slightly on the backend for optimal auto-exposure performance. :::
AI
Select and configure AI inference algorithms for the video stream.

| Algorithm | Description |
|---|---|
| Off | Disable AI processing |
| Detection | Object detection with bounding boxes |
| Dynamic Privacy Mask | Automatically mask detected faces/persons |
| Face Landmarks | Detect and overlay facial feature points |
Image Enhancement
Apply AI-powered image enhancement profiles for different lighting conditions.

| Profile | Use Case |
|---|---|
| Daylight | Standard outdoor/daylight scenes |
| AI-ISP Gen1 | First-generation AI image signal processing |
| High Dynamic Range | High contrast scenes with bright/dark areas |
| AI-ISP Gen2 | Enhanced AI image signal processing |
Encoder
Configure video encoding parameters for streaming and recording.

Codec Settings
| Parameter | Options | Description |
|---|---|---|
| Codec | AVC (H.264) / HEVC (H.265) | Video compression standard |
Bitrate Control
| Parameter | Range | Description |
|---|---|---|
| QP Range | 1-51 | Quantization parameter min/max |
| Initial QP | Auto / Manual 1-51 | Starting QP value |
| Rate Control | CVBR / CBR / VBR | Bitrate control mode |
| Target Bit Rate | 0-40,000 kbps | Target encoding bitrate |
| I-Frame Interval | 1-1000 frames | Keyframe interval |
| Intra QP Delta | -51 to 51 | QP adjustment for I-frames |
| Fixed Intra QP | 0-51 | Fixed QP for I-frames |
Features
| Feature | Description |
|---|---|
| Smart ROI | Region of Interest encoding for better quality in detected areas |
:::tip Bitrate Recommendations
- 1080p30: 4000-8000 kbps
- 4K30: 15000-25000 kbps
- Lower bitrates for storage, higher for quality :::
Overlay
Configure text, timestamp, and privacy overlays on the video stream.

| Feature | Options | Description |
|---|---|---|
| Text | Multiple layers | Custom text overlays |
| Timestamp | On/Off | Date/time stamp on video |
| Logo | On/Off | Display logo overlay |
| Privacy Mask | On/Off | Black out masked regions |
Text Layer Options
For each text layer:
- Content: Custom text string
- Visibility: Show/hide toggle
- Position: Configurable placement
Configuration File
The WebUI stores settings in:
/etc/camera-viewer/config.json
:::caution Direct Editing Modifying the config file directly while the server is running may cause settings to be overwritten. Stop the server before manual edits. :::
Troubleshooting
Page Not Loading
| Symptom | Cause | Solution |
|---|---|---|
| Connection refused | Server not running | SSH to board and start camera-viewer-server |
| Timeout | Network issue | Verify IP settings (host: 10.0.0.2, board: 10.0.0.1) |
| DNS error | Wrong URL | Use IP address: http://10.0.0.1 not hostname |
No Video Display
| Symptom | Cause | Solution |
|---|---|---|
| Black screen | Camera not connected | Check camera module connection |
| Frozen frame | Pipeline stalled | Restart camera-viewer-server |
| Low FPS | Performance issue | Check CPU load with top, reduce resolution |
Connection Drops
- Check Ethernet cable integrity
- Verify power supply stability (5V/3A)
- Monitor with
dmesg -won the board for errors
Next Steps
- Media Library - Custom application development
- YOLO Demo - Object detection configuration