Yo halo cuy, gue bakal bahas terkait Sistem yang udah gue bangun mulai dari alasan, alur, komponen hingga kekurangan dan kelebihan Sistem yang gue bangun ini.
Berawal dari keresahan gue terkait keamanan dimana ketika keluar rumah dalam waktu yang cukup lama, seperti ketika gue dinas keluar kota (tuntutan pekerjaan). Gue sedikit takut atas keamanan lingkungan gue yang bisa dibilang kurang aman.
Setelah Sistem ini gue bangun dan ulik-ulik beberapa hari, menurut gue Sistem ini dapat digunakan untuk mengatasi keresahan gue itu, dengan beberapa fitur dari bawaan dari CCTV itu sendiri dan juga Arsitektur Sitem yang udah gue bangun. oke cuy langsung aja ke pembahasan.
Komponen yang digunakan
Ya namanya juga Sistem, Sistem yang gue tau itu "secara umum", merupakan kumpulan komponen yang saling terhubung untuk mencapai suatu tujuan. jadi sistem itu pasti ada komponen-komponennya. untuk komponen gue kelompokkan menjadi 2 jenis ada Perangkat Keras dan Software dan Layanan Cloud
Perangakat Keras
Dari perangakat keras untuk saat ini gue pake 3 komponen ini aja belum termasuk wifi. Untuk STB Armbian itu gue beli jadi di Tokped, dengan begitu gue gak perlu repot buat install Armbian (Linux) ke STB nya, jadi tinggal bikin script buat Sistemnya aja. Disini gue beli CCTV dengan tipe yang berbeda walaupun secara fisik dan penggunaan gak ada bedanya yang gue rasaain sejauh ini, gue iseng-isenga aja biar tau bedanya toh harganya gak beda jauh :v.
Oh ya kemungkinan kedepannya bakal gue tambahin komponen baru sepert Unit Power Supply dan juga NAS untuk keamanan lebih lanjut. Untuk saat ini gue buat dengan 3 Komponen ini, karena kaitannya sama budget hehehe, dan juga saat ini bisa fokus dulu untuk fungsi record dan uploadnya dulu, next bisa gue tambahin lagi. Berikut Aktual Komponennya yang gue beli sercara online.
| Nama | Harga |
| (SERVER) STB ZTE B860H V2 Firmware Armbian Server |
Rp 153.440 |
| (CCTV) TAPO C200 |
Rp 233.350
|
| (CCTV) TAPO TC70 | Rp 236.200 |
Software & Layanan Cloud
Untuk menjalan kan Sistem tentu dibutuhkan Software untuk mengatur itu semua, Softwarenya gue jalanin dengan menggunakan script bash yang bisa di Download di Github Repository gue https://github.com/junaedimg/armbian-cctv-cloud. Nah untuk Untuk softwarenya lainnya sebagai berikut :
| Nama |
Fungsi |
| Armbian (Linux) |
Sistem Operasi STB |
| FFmpeg |
Rekam video CCTV lewat RTSP
|
| rclone | Uploder ke Cloud |
| Google Drive | Cloud Service / Platform |
Alur dan Cara kerja

Coba perhatikan diagram diatas, diagram tersebut menggambarkan alur dari Sistem. Diawali dari Camera CCTV Merekam hingga berakhir pada Video tersimpan di Google drive Cloud. Untuk detailnya penjelasannya sebagai berikut:
1. Camera A (Tapo C200) dan Camera B (Tapo C70)
Kamera tidak langsung menyimpan rekaman ke cloud. Video dikirim dalam bentuk stream menggunakan protokol RTSP ke perangkat (STB) untuk diproses lebih lanjut. Dua kamera berfungsi sebagai sumber video.
-
Mengirimkan video secara realtime
-
Menggunakan protokol RTSP (Real-Time Streaming Protocol)
-
Terhubung ke jaringan lokal WiFi
2. Router / Switch
Router berfungsi sebagai penghubung jaringan. Perannya:
-
Memberikan IP lokal ke kamera dan STB
-
Menyediakan koneksi internet
-
Menghubungkan seluruh perangkat dalam satu jaringan
Tanpa router, STB tidak bisa mengakses RTSP dari kamera.
3. Set Top Box (Armbian)
Disinilah inti dari sistem. Perangkat STB menjalankan:
-
FFmpeg → untuk merekam stream RTSP
-
Segment recording → membagi video tiap 30 detik
-
Pengelompokan file berdasarkan tanggal & jam
-
rclone → untuk upload otomatis ke Google Drive
Secara struktur folder akan jadi seperti ini.
/
├── opt/
│ └── cctv/
│ ├── config.conf # File konfigurasi utama
│ ├── record.sh # Script perekaman RTSP (FFmpeg)
│ ├── upload.sh # Script upload ke Google Drive (rclone)
│ ├── run.sh # Entry point untuk mulai manual
│ ├── run_auto.sh # Entry point untuk systemd (auto start)
│ ├── record.out # Output mentah FFmpeg (debug)
│ ├── upload.out # Output mentah rclone (debug)
│ └── cctv.service # File service systemd
│
├── var/
│ └── log/
│ └── cctv/
│ ├── cam1_record.log
│ ├── cam1_upload.log
│ ├── cam2_record.log
│ └── cam2_upload.log
│
└── cctv/
└── recordings/
├── cam1/
│ └── YYYY-MM-DD/
│ └── HH/
│ └── YYYY-MM-DD_HH-MM-SS.mp4
│
├── cam2/
│ └── YYYY-MM-DD/
│ └── HH/
│ └── YYYY-MM-DD_HH-MM-SS.mp4
│
└── cam3/
└── YYYY-MM-DD/
└── HH/
└── YYYY-MM-DD_HH-MM-SS.mp4
4. Google Drive (Cloud Storage)
Setelah direkam dan disimpan sementara di lokal:
-
File akan diupload otomatis ke Google Drive
-
File lokal dihapus setelah upload sukses
-
Data tersimpan di cloud sebagai arsip
Stuktur folder Video CCTV di Google Drive akan terbentuk seperti di local STB
Google Drive
└── CCTV/
├── cam1/
│ └── YYYY-MM-DD/
│ └── HH/
│ └── YYYY-MM-DD_HH-MM-SS.mp4
│
├── cam2/
│ └── YYYY-MM-DD/
│ └── HH/
│ └── YYYY-MM-DD_HH-MM-SS.mp4
│
└── cam3/
└── YYYY-MM-DD/
└── HH/
└── YYYY-MM-DD_HH-MM-SS.mp4
Instalasi
Untuk menjalankan Sistem pertama Copy / Download Project ke /opt/cctv. Kemudian di Camera A dan B perlu Aktifkan Protokol RTSP melalui aplikasi yaitu Tapo Bisa di download di Playstore secara resmi, Gue gak tunjukin caranya karena ini tergantung masing-masing dari Product CCTV yang digunakan jadi caranya beda-beda. Setelah aktif masukan pada script IP, Username dan Password RTSP nya kedalam Config. Contohnya seperti berikut.
########################################
# MULTI CAMERA SETTINGS
########################################
# Format:
# "CAMERA_NAME|RTSP_URL"
CAMERAS=(
"cam1|rtsp://marojahan:m200jg961@192.168.1.99:554/stream2"
"cam2|rtsp://marojahan2:m200jg961@192.168.1.98:554/stream2"
)
URL Stream dari masing-masing Product CCTV bisa jadi beda-beda, kenapa gue pakai /stream2 kenapa gak /stream123 ? di Tapo sendiri tersedia 2 stream pertama /stream1 untuk vidio dengan kualitas tinggi dan /stream2 dengan kualitas yang rendah.
Gue pilih /stream2 untuk menghemat Ruang Penyimpanan. Secara script juga gue udah nyiapin cara untuk On/Off Audio yang disimpan, Kalau mau lebih menghemat Ruang Penyimpanan bisa setting Off pada Config dengan contoh seperti berikut :
########################################
# AUDIO MODE
########################################
# yes = encode audio to AAC
# no = disable audio (recommended for low CPU)
USE_AUDIO="yes"
Setelah Config di isi lanjut kepenginstalan Packagenya yang diperlukan, FFmpeg dan rclone pada STB.
apt update
apt install ffmpeg rclone -y
Dan juga untuk Configurasi rclonenya.
rclone config
Setelah Configurasi selesai tinggal memberikan akses ke script yang sudah di download.
# Permission (pertama kali)
chmod +x run.sh
chmod +x stop.sh
Kemudian tinggal test jalankan
# Menjalankan sistem saat manual
./run.sh
Nah kemudian jika Sistem sudah bisa dijalankan secara manual, tinggal jalankan secara otomatis, pertama copy service terlebih dahulu.
sudo cp /opt/cctv/cctv.service /etc/systemd/system/
Kemudian setelah itu tinggal aktifkan service .
sudo systemctl daemon-reload
systemctl enable cctv
systemctl start cctv
sudo systemctl restart cctv
Kelebihan dan kekuarangan
Setiap sistem gue rasa gak ada yang sempurna ketika diimplementasikan diawal, makanya ada yang namanya testing dan update. Berikut adalah beberapa kelebihan dan kekurangan dari sistem yang gue bangun.
Kelebihan
-
Kelebihan dari Sistem ini sedikit lebih aman dalam operasionalnya dibanding hanya mengandalkan product CCTV saja, kenapa? karena dengan ada nya fitur Auto Upload berdasarkan Segmentai yang diatur dalam kasus ini tiap 30 detik, ketika ada kasus perusakan atau pencurian CCTV video sudah aman didalam cloud
- Mudah dalam penelurusan Video karena sudah diarsip dan File Tersegmentas berdasarkan Tanggal dan Jam
- Fleksibel & Mudah Dikembangkan
-
Bisa tambah kamera
-
Bisa ganti cloud storage
-
Bisa atur bitrate sesuai kebutuhan
-
Tidak terkunci vendor tertentu
-
- Sederhana namun efektif
- Auto Start Otomatis 24 jam, ketika matilampu atau baru dinyalakan.
Kekurangan
-
Bergantung pada Koneksi Internet, jika internet lambat atau mati:
-
Upload tertunda
-
Buffer lokal bisa cepat penuh
-
- Membutuhkan Storage Cloud yang cukup besar, dengan estimasi kasar ±6 GB per hari per kamera
-
1 kamera ≈ 180 GB/bulan
-
2 kamera ≈ 360 GB/bulan
-
- Setup Awal Butuh Pengetahuan Teknis, tidak seperti perangkat pabrikan pada umumnya.
Kesimpulan
Secara keseluruhan sistem ini menurut gue udah cukup OK buat dipakai. Karena ini implementasi pertama, atau bisa dibilang versi 1-nya jelas banyak kekurangannya. Tapi justru dari situ proses belajarnya dapet banget. dan nambah pemahan terkait instalasi CCTV yang gak bakal gue tau kalau gak gue coba langsung.
Oh ya gue juga gak tau apa bakal lancar/kuat kedepannya secara si STB ini gak digunakan sesuai peruntukannya alias ngide-ngide aja wkwk. Sistem ini kemungkinan masih gue kembangin juga dari sisi Perangkat dan Script. Dan lagi belum gue buatkan script untuk menyatukan Video yang sudah tersegmentasi dengan format yang gue pengen.
Sebenernya juga ada beberapa hal yang udah kepikiran buat ditambahin, misalnya UPS buat backup arus kalau listrik mati, dan NAS buat tambahan keamanan sebelum ke cloud. Jadi nanti ada semacam double backup, lebih aman kalau ada apa-apa.
Tapi untuk sekarang gue rasa cukup pakai cloud archive aja dulu. Kebetulan gue punya 2TB gratis dari Google, jadi ya gue manfaatin yang ada dulu. Dari pada kebanyakan mikir dan rencana dari awal, mending jalanin dulu, lihat hasilnya, baru nanti ditingkatin pelan-pelan.
Walaupun sistem ini belum pakai UPS dan NAS, dari implementasi langsung ini gue udah belajar lumayan banyak soal teknis instalasi CCTV, mulai dari RTSP, FFmpeg, rclone, sampai auto-run pakai systemd. Memang belum sekompleks sistem CCTV enterprise di luar sana, tapi buat skala personal / rumahan / eksperimen, menurut gue ini udah cukup banget.
Yapss kurang lebih segini aja cuy :v
