Sistem CCTV + OCR/QR Auto-Recording yang realistis dan scalable untuk 50 meja packaging dengan integrasi lengkap dari hardware hingga aplikasi admin.
Stream video real-time dari setiap meja packaging
Deteksi otomatis QR code dan nomor resi
Pemicu otomatis saat QR/Resi terdeteksi
Perekaman otomatis selama 30 detik
Kompresi dan penamaan file sesuai nomor resi
Upload file video ke server penyimpanan
Akses melalui panel admin untuk pencarian dan playback
Semua CCTV diakses via RTSP URL, contoh:
rtsp://user:password@192.168.1.20:554/Streaming/Channels/101
Gunakan:
| Kebutuhan | Teknologi |
|---|---|
| QR Code | OpenCV + ZBar |
| OCR Resi | Tesseract OCR |
| Akurasi tinggi | YOLOv8 + PaddleOCR |
| Edge AI | NVIDIA Jetson (opsional) |
Saat QR terdeteksi:
ffmpeg -rtsp_transport tcp -i rtsp://cam \
-t 30 \
-vcodec libx264 -preset fast -crf 26 \
-acodec aac \
resi123456.mp4
-t 30 → record 30 detik-crf 24–28 → kompresi (good quality){no_resi}_{timestamp}.mp4
Contoh:
JNE123456789_2025-12-13_14-05-22.mp4
[ CCTV ]
↓ RTSP
[ OCR Service (Python) ]
↓ Event
[ Video Recorder Service ]
↓
[ Object Storage ]
↓
[ Backend API ]
↓
[ Admin Web ]
packages| Field | Tipe |
|---|---|
| id | bigint |
| resi | varchar (indexed) |
| camera_id | int |
| recorded_at | datetime |
| video_path | text |
| file_size_mb | decimal |
| status | enum |
| created_at | timestamp |
cameras| Field | Tipe |
|---|---|
| id | int |
| name | varchar |
| rtsp_url | text |
| meja_no | int |
| active | boolean |
| Skala | Solusi |
|---|---|
| Kecil | Local HDD + RAID |
| Menengah | MinIO (S3 compatible) |
| Besar | AWS S3 / GCP |
| Masalah | Solusi |
|---|---|
| OCR salah baca | ROI + lighting |
| Beban server | Queue & async |
| Duplicate scan | Cache resi (TTL) |
| Storage penuh | Auto delete > X hari |
| CCTV down | Health check |