FFmpeg: Automasi Split Video Berdasarkan Durasi

Shell Script Fast Processing Balikpapan

Pernah punya video berdurasi jam-jam-an tapi cuma butuh dipecah jadi potongan 20 detik buat konten media sosial? Melakukannya manual satu per satu adalah siksaan. Di sinilah FFmpeg menunjukkan performa terbaiknya sebagai raja multimedia.

Dengan menggabungkan kekuatan FFmpeg dan sedikit logika Bash Script, kita bisa membuat mesin pemotong otomatis yang bekerja dalam hitungan detik tanpa mengurangi kualitas video aslinya (no re-encoding).

split_video.sh
#!/bin/bash
# Konfigurasi Awal
INPUT="input.mp4"
DURATION=20 # Durasi tiap potongan (dalam detik)
# Mendapatkan durasi total file menggunakan ffprobe
LEN=$(ffprobe -v error -show_entries format=duration -of csv=p=0 "$INPUT")
COUNT=0
START=0
echo "Memulai proses pemotongan durasi total: $LEN detik..."
# Loop pemotongan otomatis
while (( $(echo "$START < $LEN" | bc -l) )); do
 OUTPUT="part_$COUNT.mp4"
 ffmpeg -hide_banner -loglevel error -i "$INPUT" -ss $START -t $DURATION -c copy "$OUTPUT"
 echo "Berhasil membuat: $OUTPUT"
 START=$(echo "$START + $DURATION" | bc)
 COUNT=$((COUNT+1))
done
echo "Otomasi selesai! Semua bagian telah terpotong."

Bagaimana Skrip Ini Bekerja?

Jangan biarkan baris kode di atas mengintimidasi kamu. Logikanya sangat sederhana jika kita bedah satu per satu:

Pro Tip: Jika kamu ingin membagi video untuk keperluan WhatsApp Story atau TikTok, sesuaikan variabel DURATION menjadi 15 atau 60 sesuai batas durasi platform tersebut.