Progress Scope & Status Project
Daftar cakupan pekerjaan dari sisi Web Player Custom maupun persiapan server VPS. Pengembangan terus disesuaikan berdasarkan arahan dan keinginan Project Owner.
Catatan Alur Pekerjaan (Workflow Deployment):
Server Ubuntu akan disediakan oleh pihak client. Sisi kodingan Web Player Custom dan skrip konfigurasi server (MediaMTX, AzuraCast, FFmpeg 24/7, Nginx SSL) sudah disiapkan. Begitu server VPS Ubuntu & subdomain diberikan, instalasi server siap dilakukan dan tampilan web player disesuaikan sepenuhnya sesuai instruksi Project Owner.
A. Sisi Server Streaming Video (VPS Ubuntu)
Konfigurasi MediaMTX, RTMP/HLS, Nginx SSL, FFmpeg 24/7 looper daemon.
1. Install & konfigurasi RTMP/HLS server (MediaMTX / Nginx-RTMP)
File `mediamtx.yml` dan script setup telah disiapkan. Siap dieksekusi begitu akses VPS Ubuntu diserahkan.
2. Setup SSL/HTTPS untuk subdomain streaming (misal: live.rtm.tl)
Konfigurasi Nginx Reverse Proxy & automatisasi SSL Certbot disiapkan di `nginx-streaming.conf`.
3. Sistem auto-looping playlist video MP4 → siaran 24/7 M3U8 (HLS)
Service `ffmpeg-tv-loop.service` disiapkan untuk memutar playlist video MP4 nonstop ke HLS stream.
4. Menyediakan RTMP URL + Stream Key untuk live manual dari OBS Studio
Routing RTMP path `/live/{stream_key}` di MediaMTX disiapkan untuk live stream dari OBS Studio.
5. M3U8 teruji bisa diputar di web player & VLC
Struktur segmen HLS dipastikan kompatibel diputar pada Web Player (hls.js) dan VLC Media Player.
B. Radio Online (VPS yang sama)
Pengaturan server radio AzuraCast/Icecast2, AutoDJ 24/7, dan Live DJ takeover.
1. Install server radio streaming (Icecast2 / AzuraCast / Shoutcast)
Script automatisasi Docker install AzuraCast & Icecast2 disiapkan di `setup-vps.sh`.
2. Setup AutoDJ 24/7: playlist MP3 looping otomatis + jadwal acara
Arsitektur Liquidsoap AutoDJ 24/7 disiapkan untuk pemutaran MP3 dan penjadwalan siaran.
3. Menyediakan URL stream radio (MP3/AAC) untuk web player & aplikasi radio
Format stream MP3/AAC disesuaikan agar kompatibel dengan Web Player, TuneIn, & Radio Garden.
4. Fitur Live DJ: penyiar bisa mengambil alih siaran live dari PC/HP (Mixxx / BUTT)
Konfigurasi Icecast Live Source disiapkan untuk penyiaran langsung dari Mixxx / BUTT.
5. Setup SSL/HTTPS untuk subdomain radio (misal: radio.rtm.tl)
Proxy reverse Nginx ke port Icecast via SSL Certbot disiapkan di `nginx-streaming.conf`.
C. Sisi Web Player Custom
Pengembangan web player custom Next.js untuk tontonan TV HLS & radio online.
1. Membuat halaman tontonan live video (HLS player: hls.js / Video.js)
Halaman `/tv` & `TVPlayer.tsx` lengkap dengan hls.js, live indicator, bitrate selector, PIP & Fullscreen.
2. Membuat halaman dengarkan radio online (audio player)
Halaman `/radio` & `RadioPlayer.tsx` dengan Canvas Frequency Visualizer, controls, & metadata song info.
3. Desain halaman mengikuti tampilan (referensi UI)
Tampilan UI modern, light mode responsive, navbar navigasi, jadwal siaran, & diagram arsitektur.