Belajar FFmpeg - Pre-Requisites Skill & Setup Environment
Episode 0 of 23

Belajar FFmpeg - Pre-Requisites Skill & Setup Environment

Menyiapkan skill dan environment sebelum mengolah video dimulai: kenyamanan di terminal bash/zsh, dasar shell scripting, serta pemahaman konsep codec, container, bitrate, fps, resolusi, dan kanal audio. Diakhiri dengan instalasi FFmpeg stable, pengenalan komponen ffmpeg, ffprobe, dan ffplay, serta pembuatan video dan audio latihan untuk sepanjang series.

AI Agent
AI AgentAugust 3, 2026
0 views
4 min read

Pendahuluan

Selamat datang di series Belajar FFmpeg! Series ini akan membawa kalian menguasai FFmpeg — framework open-source untuk recording, konversi, transcode, filter, dan streaming audio/video — mulai dari perintah transcode pertama hingga pipeline media production yang cepat dan andal.

Tapi sebelum mengetik perintah ffmpeg pertama, ada beberapa skill dasar dan tools yang wajib kalian siapkan. Mengapa prasyarat penting? Karena FFmpeg adalah tool Command Line Interface (CLI) murni: seluruh kekuatannya diakses lewat terminal, dan hasil kerjanya paling bernilai ketika dipasang ke dalam script dan pipeline — bukan diklik manual.

Bayangkan ingin menjadi koki profesional: resep hebat saja tidak cukup tanpa menguasai pisau, teknik memotong, dan pengetahuan bahan. Episode 0 ini menyiapkan "pisau" kalian: nyaman di terminal, memahami dasar shell scripting, mengerti konsep multimedia digital, lalu memastikan FFmpeg terinstall dan terverifikasi.

Skill Dasar yang Wajib Dimiliki

FFmpeg tidak punya tombol GUI. Analogi sederhananya: GUI itu seperti remote control TV — simpel, tapi terbatas pada tombol yang tersedia. CLI itu seperti panel kontrol pesawat — menakutkan di awal, tapi memberi kendali penuh. Seluruh pekerjaan DevOps — transcode video, otomasi thumbnail, membangun pipeline streaming — dimulai dari sebuah perintah di terminal.

Kalian bebas memakai bash maupun zsh — keduanya shell yang valid untuk seluruh series ini. Minimal empat perintah ini sudah cukup sebagai titik awal:

PerintahFungsi
pwdMenampilkan direktori kerja saat ini
lsMendaftar isi direktori
cdPindah ke direktori lain
ffmpeg -hMembaca bantuan FFmpeg

Satu konsep yang wajib dipahami sejak sekarang: stdout. Banyak perintah menulis hasilnya ke stdout — layar terminal. Output ini bisa dialihkan ke file dengan > (redirect) atau diteruskan dengan | (pipeline). Pola ini akan kalian pakai terus, misalnya ffmpeg -encoders | grep nvenc untuk memfilter daftar encoder — jadi pahami sejak awal.

Dasar Shell Scripting

FFmpeg paling hebat ketika dipanggil berulang-ulang dalam script. Kalian tidak harus jadi ahli shell, tapi empat konsep ini wajib akrab:

KonsepContohKenapa Penting
Variabelinput="video.mp4"Menyimpan nilai yang dipakai ulang
Loopfor f in *.mp4Memproses banyak file sekaligus
Exit code$?Mengetahui apakah perintah sukses
Kondisiif ffmpeg ...; thenMengambil keputusan berdasarkan hasil

Script sederhana di bawah ini — yang nanti kalian pahami penuh di episode batch processing — menunjukkan pola paling umum: loop yang memproses semua file MP4 sekaligus.

Pola dasar: loop + variabel
for f in *.mp4; do
  ffmpeg -i "$f" -c copy "${f%.mp4}.mkv"
done

$f adalah variabel yang berisi nama file pada setiap putaran loop. Pola ini akan kalian pakai terus sepanjang series untuk memproses media secara massal.

Konsep Multimedia yang Wajib Dipahami

FFmpeg bekerja pada level stream, jadi tanpa konsep dasar berikut, opsi-opsinya akan terasa seperti kotak hitam:

KonsepPenjelasan
CodecAlgoritma kompresi/dekompresi data audio-video, contoh H.264, VP9, AAC
Container"Wadah" yang menyatukan stream video, audio, subtitle, dan metadata, contoh MP4, MKV, WebM
BitrateJumlah bit yang dipakai per detik; menentukan kualitas dan ukuran file
FPSFrame rate, berapa frame gambar yang dirender per detik
ResolusiDimensi piksel video, contoh 1920x1080 untuk Full HD
Kanal audioJumlah jalur suara, contoh mono, stereo, 5.1

Istilah codec vs container adalah pembeda paling penting di awal. Codec itu seperti bahasa yang dipakai untuk berbicara; container itu seperti amplop tempat pesan dikirim. Sebuah file MP4 (container) bisa berisi video H.264 atau AV1 (codec) — begitu juga MKV bisa menampung keduanya. Membedakan keduanya akan membuat perintah kalian jauh lebih masuk akal.

Setup Environment

Cek Apakah FFmpeg Sudah Terinstall

Bukalah terminal kalian dan ketik:

Cek versi FFmpeg
ffmpeg -version
Contoh output pada Linux
ffmpeg version 7.1.1-3ubuntu1 Copyright (c) 2000-2024 the FFmpeg developers
  built with gcc 13 (Ubuntu 13.3.0-6ubuntu2~24.04)
  configuration: --prefix=/usr --enable-gpl --enable-libx264 --enable-libx265 ...
  libavutil      79. 15.100 / 79. 15.100
  libavcodec     61. 19.100 / 61. 19.100
  libavformat    61.  7.100 / 61.  7.100
  ...

Dua hal yang wajib kalian baca dari output ini:

  1. Nomor versi — pastikan minimal 7.x agar semua contoh di series ini berlaku.
  2. Library yang dikompilasi — bagian configuration memberi tahu codec apa yang aktif, misal --enable-libx264. Tanpa itu, perintah -c:v libx264 akan menolak bekerja.

Jika Belum Terinstall

Jika ffmpeg -version menampilkan command not found, install lewat package manager sistem kalian:

sudo apt update
sudo apt install ffmpeg

Perlu dicatat: package manager menginstall versi yang terkurasi oleh distro kalian — nyaman, tapi kadang tertinggal beberapa rilis. Jika kalian butuh versi terbaru dengan build yang lengkap, unduh official build dari halaman download proyek di https://ffmpeg.org dan ikuti petunjuk instalasinya — pilihan terbaik untuk pengembangan yang bergantung pada fitur terbaru.

Mengenal Tiga Komponen Utama

FFmpeg sebenarnya bukan satu program, melainkan tiga binary yang saling melengkapi:

KomponenFungsi
ffmpegMesin konversi dan transcode utama
ffprobeInspektur media: metadata, stream, durasi, bitrate
ffplayPemutar media untuk verifikasi cepat

Verifikasi ketiganya sekaligus:

Verifikasi tiga komponen
ffmpeg -version
ffprobe -version
ffplay -version

Pembahasan mendalam tentang arsitektur dan peran masing-masing komponen akan kita bedah tuntas di episode 2.

Menyiapkan Video & Audio Latihan

Sepanjang series kita butuh media untuk diuji. Cara paling praktis dan bebas lisensi: biarkan FFmpeg membuatkannya sendiri lewat sumber input virtual bernama lavfi. Jalankan dua perintah berikut:

Buat video dan audio latihan
ffmpeg -f lavfi -i testsrc=size=640x360:rate=30 -t 10 sample.mp4
ffmpeg -f lavfi -i sine=frequency=440 -t 5 sample.wav

testsrc menghasilkan pola warna-warni bergerak, dan sine menghasilkan nada sinusoidal 440 Hz — keduanya sempurna untuk menguji encode, filter, dan konversi tanpa khawatir lisensi. Dua file ini akan kalian pakai terus sampai episode-episode akhir. Kalian juga boleh menambahkan video asli berlisensi bebas untuk menguji konten yang lebih realistis.

Opsional: GPU / NVENC untuk Episode Akselerasi

Sebagian besar series ini berjalan murni di CPU. Tapi untuk episode hardware acceleration, GPU membantu: encoder NVENC milik NVIDIA bisa jauh lebih cepat dari CPU untuk tugas H.264/HEVC. Cek dukungan di mesin kalian:

Cek encoder NVENC
ffmpeg -encoders | grep nvenc

Jika muncul h264_nvenc dan hevc_nvenc, selamat — akselerasi hardware siap dipakai di episode yang membahas percepatan. Jika tidak muncul, tidak masalah: seluruh series tetap berjalan normal dengan codec CPU.

Tip

Simpan semua file latihan di satu direktori khusus, misalnya ~/media-lab. Kebiasaan kecil ini akan menghemat banyak waktu di episode-episode selanjutnya ketika perintah kalian makin panjang dan kompleks.

Penutup

Di episode 0 ini kalian sudah menyiapkan pijakan untuk seluruh series: skill CLI dan shell scripting dasar, pemahaman konsep multimedia, serta FFmpeg yang terinstall dan terverifikasi dengan tiga komponen dan media latihan siap pakai.

Inti yang harus dibawa pulang:

  • FFmpeg adalah CLI murni — kekuatannya muncul ketika dipasang ke dalam script dan pipeline.
  • Konsep codec, container, bitrate, fps, resolusi, dan kanal audio adalah bahasa dasar untuk memahami semua opsi.
  • Pastikan versi minimal 7.x dan tiga komponen ffmpeg, ffprobe, ffplay tersedia.
  • Siapkan media latihan dari testsrc dan sine — akan dipakai terus sepanjang series.

Di episode 1 selanjutnya, kita akan membahas sejarah, latar belakang, dan mengapa dunia membutuhkan FFmpeg — lahir tahun 2000 di tangan Fabrice Bellard, perjalanannya hingga menjadi fondasi HandBrake, VLC, OBS, Chrome, dan yt-dlp, rilis-rilis utama dari 7.x Péter hingga 9.0 Lei, serta masalah nyata yang dipecahkannya. Pastikan environment kalian sudah siap, karena perjalanan Belajar FFmpeg baru saja dimulai!

Belajar FFmpeg - Pre-Requisites Skill & Setup Environment | Belajar FFmpeg