Konversi & Potong Video dengan FFmpeg

Gary Almas Samaita


Konversi video terkadang menjadi kebutuhan yang mendadak datang. Tidak seperti pengguna Windows yang memiliki banyak alternatif software konversi video, pengguna Linux seperti saya mungkin tidak begitu memiliki banyak pilihan. Salah satu yang paling sering saya gunakan adalah konversi secara online. Tapi, kalau mendadak kebutuhan datang dan koneksi internet bikin sakit hati? Repot sekali.. Sedikit terpaksa, saya pun mencoba menggunakan FFmpeg.

Pada dasarnya, FFmpeg adalah software dan library yang dirancang khusus untuk menangani data multimedia. Salah satunya tentu saja data video. Untuk dapat melakukan instalasi FFmpeg, kamu bisa akses langsung websitenya, FFmpeg.

Meski tersedia dalam rupa software yang lebih manusiawi, saya memilih mencoba menggunakan FFmpeg tanpa GUI. Sehingga, apabila saya perlu menggunakan software FFmpeg ini, maka saya perlu menggunakan perintah via terminal. Kalau kata Mad Dog sih, biar greget.

Tapi kalau kamu cenderung ingin dimanusiakan, kamu bisa coba beberapa front-end FFmpeg seperti Avanti ini.

Banyak parameter yang bisa diatur demi mencapai kebutuhan. Namun, khusus saat ini, saya hanya menggunakan fungsi untuk konversi format video dan memotong video dalam durasi tertentu.

Agar lebih mudah menggunakan FFmpeg, copy dulu file video yang akan kamu konversi atau potong ke folder lain, lalu arahkan terminal ke folder tersebut.

Konversi Video

Ketika ingin merubah format video dari satu ke format lainnya, kamu bisa mengetikkan perintah ini dalam terminal:

ffmpeg -i [input_file] [output_file]

input_file adalah file video yang ingin kamu konversikan menjadi output_file. Sehingga kamu perlu mendefinisikan nama file output sekaligus format yang kamu harapkan.

Contoh:
Kamu perlu mengkonversikan video dari format AVI menjadi MP4, maka kamu bisa ketikkan:

ffmpeg -i samaita.avi samaita.mp4

Udah. Gitu aja. Sederhana sekali kan?

Update 6 Desember 2015
cara konversi di atas akan menyebabkan kualitas file konversi turun drastis. Agar hal ini tak terjadi, kamu bisa lakukan konversi tanpa reencoding dengan:

ffmpeg -i [input_file] -acodec copy -vcodec copy [output_file]

Memotong Video

Ingin membuat potongan video dari video lain? Tanpa perlu membuka software video editor, kamu langsung bisa melakukannya dengan FFmpeg dari terminal. Ketikkan saja perintah ini:

ffmpeg -ss [start_seconds] -t [duration_seconds] -i [input_file] [outputfile]

start_seconds adalah waktu mulai dari video yang akan kamu potong. Lalu berapa banyak durasi yang akan diambil dengan menentukan duration_seconds.

Contoh:
Katakanlah kamu akan mengambil 15 detik pertama dari video liburanmu, maka yang kamu ketikkan:

ffmpeg -ss 00:00:00.000 -t 00:00:15.000 -i liburan_asoy.avi potongan_liburan_asoy.avi

Fungsi diatas sudah saya coba dan berhasil. Namun, secara otomatis FFmpeg melakukan kompresi dengan encode ulang video yang dipotong, sehingga kualitas video pun berubah tak seperti yang saya inginkan. Agar FFmpeg hanya memotong video tanpa mengotak-atik kualitas video, maka saya pun mengetikkan:

ffmpeg  -i liburan_asoy.avi -vcodec copy -acodec copy -ss 00:00:00.000 -t 00:00:15.000 potongan_liburan_asoy.avi

Saya pun sempat mencoba untuk melakukan konversi dan pemotongan video sekaligus dalam satu perintah, yakni dengan perintah memotong video namun mengubah format file output. Ternyata, hanya error yang saya dapat. Entah karena memang tak bisa dilakukan atau ada parameter yang keliru saya atur.

Kedua fungsi ini sudah cukup memenuhi keperluan konversi video yang biasanya masih saya lakukan secara online. Tapi saya rasa, masih banyak yang bisa saya aplikasikan ke kegiatan sehari-hari.

3 komentar :

  1. mas gimana klo ingin memotong motong video tiap 10 detik dari awal sampe akhir ? bisa tolong scriptnya bisa kirim ke sini bestdeal.astore@gmail.com

    BalasHapus
    Balasan
    1. Maaf baru memberikan respon, kamu bisa gunakan script ini:

      ffmpeg -i myvideo.avi -vf fps=1/10 img%03d.jpg

      penjelasan script yang lebih detail bisa kamu temukan di email ya :)

      Hapus
  2. Mas Gary, saya juga mau penjelasan tentang criptx cara potong video tiap 10 detik dari awal-akhir.
    Tolong dikirm ke email saya fahmisadik95@gmail.com

    BalasHapus