Ketika kita memutar suatu video, terkadang ada bagian momen penting yang perlu diambil. Entah itu momen lucu, konyol atau momen yang sangat perlu dikenang, dan momen tersebut ada pada menit-menit tertentu. Oleh karenanya, kita perlu memotong cuplikan video tersebut untuk dijadikan suatu kenangan atau sekadar bahan lucu-lucan.
Ada banyak sekali program atau aplikasi yang dapat menangani hal ini dengan mudah. Namun, perlu diketahui bahwa FFmpeg
juga dapat melakukan hal itu. FFmpeg
merupakan suatu aplikasi yang sangat powerful dalam hal penangan audio ataupun video. Jadi cukup dengan FFmpeg sebetulnya kita sudah dapat melakukan banyak hal. Sesuai judul artikel, kali ini saya akan memberikan sedikt tips-trik bagaimana cara memotong video menggunakan FFmpeg
dengan mudah.
Penyangkalan (Disclaimer)
Sebebelum beranjak ke praktek. Perlu diketahui skrip ini hanya dapat berjalan pada GNU/Linux. Hemat saya sepertinya di MacOS juga dapat dijalankan, namun saya belum mencobanya. Untuk Anda pengguna Windows, mungkin bisa memasang Linux Subsystem yang berada pada Windows 10.
Tahap Praktek
Sederhananya kita hanya perlu melakukan berikut di Terminal
:
ffmpeg -i in.mp4 -ss [start] -t [duration] -c copy out.mp4
Parameter -ss
ditulis dengan hh:mm:ss
contoh 00:02:31
, kemudian parameter -t
durasinya format sama hh:mm:ss
. Ingat Anda harus menghitung durasi video yang ingin Anda potong tersebut.
Contoh:
Ada video berdurasi 30 menit. Kemudian Anda ingin memotong mulai dari menit ke 00:10:00 sampai 00:20:15 maka durasinya berarti 10 menit 15 detik.
Jika Anda kesulitan untuk menghitung durasi. Berikut ini saya telah membuatkan skrip untuk menghitung durasi dengan mudah.
Buat berkas bernama timecalc
kemudian ubah permission-nya dengan menambahkan eksekusi.
touch timecalc && chmod +x timecalc && nano timecalc
Kemudian masukan skrip di bawah ini:
#!/bin/bash SEC1=`date +%s -d $1` SEC2=`date +%s -d $2` DIFFSEC=`expr ${SEC2} - ${SEC1}` RESULT=`date +%H:%M:%S -ud @${DIFFSEC}` echo $RESULT
Nah Anda bisa langsung mengsekusi timecalc
tersebut dengan perintah:
timecalc 00:01:24 00:07:45
Contohnya:
Agar Anda dapat mengeksekusi timecalc
tersebut di manapun Anda dapat menyalinnya ke /usr/bin
sudo cp ~/timecalc /usr/bin
Nah, sekarang Anda bisa langsung menghitung durasi lebih mudah dengan perintah berikut:
DUR="$(timecalc 00:12:06 00:15:04)" && ffmpeg -i input.mp4 -ss 00:12:06 -t $DUR -c copy out.mp4
Skrip di atas masih terlihat kurang sederhana, karena kita menjalankan skrip timecalc
yang diubah menjadi variable, kemudian baru memanggil ffmpeg
.
Saya membuat skrip lebih mudah lagi. Berikut skripnya
#!/bin/bash IFS='-' read -ra WAKTU <<< "$1" SEC1=`date +%s -d ${WAKTU[0]}` SEC2=`date +%s -d ${WAKTU[1]}` DIFFSEC=`expr ${SEC2} - ${SEC1}` DURASI=`date +%H:%M:%S -ud @${DIFFSEC}` ffmpeg -i $2 -ss ${WAKTU[0]} -t $DURASI -c copy $3
Anda simpan dengan nama, misalnya cutscane
Anda bisa langsung mengeksekusinya seperti berikut:
cutscane 00:18:30-00:20:50 in.mp4 out.mp4
Nah lebih mudah bukan? Jadi timecalc
nantinya bisa Anda hapus atau tetap dipergunakan mungkin untuk hal lain. Semoga bermanfaat.
Komentar