Kamis, 26 Maret 2009

FFmpeg Tutorial

Selayang Pandang

FFmpeg merupakan salah satu perangkat lunak/program yang dapat mengkonversi berbagai macam format video dan audio. Pada awalnya FFmpeg dibangun dan dikembangkan untuk sistem operasi GNU/Linux. Tapi sekarang ia juga tersedia di dalam banyak sistem operasi, termasuk OS X, Windows, dan Amiga.

Kelebihan yang dimiliki program ini ialah kecepatan, ketelitian, dan keakuratan pada saat melakukan mengkonversi. Di samping itu, pengguna juga bisa mengkustomisasi output hasil konversi. Sehingga format dari hasil konversi tadi benar-benar sesuai yang diinginkan.

Pengoperasian FFmpeg dilakukan melalui
command prompt, yakni dengan mengetik perintah 'ffmpeg' dan parameter-parameter di belakangnya. Bantuan mengenai bagaimana cara mengoperasikan FFmpeg dapat diketahui dengan cara mengetik perintah sebagai berikut:

ffmpeg -h



Dasar Pengoperasian

FFmpeg dapat dioperasikan dengan cara yang sangat sederhana. Contoh di bawah ini adalah cara bagaimana mengkonversi video dengan format mp4 menjadi format avi.

ffmpeg -i input.mp4 -f avi output.avi

Opsi '-i' adalah parameter untuk input. File 'input.mp4' dijadikan sebagai file yang akan dikonversi. Opsi '-f' adalah perintah untuk format output. Artinya video input dengan format mp4 dikonversi ke format avi. Yang terakhir adalah nama file yang diberikan oleh pengguna (user), yaitu 'output.avi'. User memiliki kebebasan untuk menentukan nama file sebagai output. Yang terpenting adalah ekstensi file '.avi' harus diikutsertakan jika anda adalah pengguna Windows. Tetapi jika anda adalah pengguna Linux, tidak mengikut sertakan ekstensi '.mpg' pun tidak jadi soal.

FFmpeg juga mampu membuat output file benar-benar memiliki kualitas yang sama dengan input file. Dengan menambahkan perintah '-sameq' maka output file akan benar-benar mirip dengan input filenya. Tetapi dengan format yang berbeda.


ffmpeg -i input.mp4 -f avi -sameq output.avi


Adakalanya kita ingin file output sesuai dengan apa yang kita inginkan. Misalnya kita menginginkan video atau audio bitrate tertentu. Ini bisa dilakukan dengan menambah opsi '-b' untuk video bitrate dan opsi '-ab' untuk audio bitrate, seperti contoh berikut ini:

ffmpeg -i input.mp4 -f mpeg2video -b 1800k ab 128k output.mpg

Opsi '-b 1800k' memerintahkan supaya
video output yang dighasilkan memiliki kualitas video bitrate sebesar 1800 Kb. '-ab 128k' hampir sama seperti sebelumnya, hanya saja perintah ini diperuntukan untuk kualitas suara. Jadi perintah ini dimaksudkan supaya audio outputnya memiliki bitrate sebesar 128 Kb.

FFmpeg juga bisa digunakan untuk menghasilkan output untuk keperluan pembuatan VCD, SVCD, maupun DVD. Untuk keperluan-keperluan tadi, FFmpeg menyediakan perintah yang sederhana. Secara otomatis format outputnya disesuaikan dengan kebutuhan untuk membuat format-format tadi. Contoh pembuatan format untuk dimuat dalam kepingan VCD, SVCD, dan DVD:

ffmpeg -i input.mp4 -f vcd output.mpg
ffmpeg -i input.mp4 -f svcd output.mpg
ffmpeg -i input.mp4 -f dvd output.mpg


Pengkonversian sebuah format video menjadi format VCD, SVCD, dan DVD bisa juga dilakukan secara manual, yaitu dengan cara memasukan pengaturan parameter yang lebih lengkap. Parameter-parameter tersebut adalah video dan audio bitrate; frame per detik (fps); resolusi layar.



Format VCD

Untuk NTSC:
ffmpeg -i input.mp4 -vcodec mpeg1video -b 1150k -r 29.97 -acodec mp3 -ab 224k -ar 44100 -s 352x240 output.mpg

Untuk PAL/SECAM:


ffmpeg -i input.mp4 -vcodec mpeg1video -b 1150k -r 25.00 -acodec mp3 -ab 224k -ar 44100 -s 352x288 output.mpg




Format SVCD

Untuk NTSC:
ffmpeg -i input.mp4 -vcodec mpeg2video -b 2600k -r 29.97 -acodec mp3 -ab 384k -ar 44100 -s 480x480 output.mpg

Untuk PAL/SECAM:


ffmpeg -i input.mp4 -vcodec mpeg2video -b 2600k -r 25.00 -acodec mp3 -ab 384k -ar 44100 -s 480x576 output.mpg




Format DVD

Untuk NTSC:
ffmpeg -i input.mp4 -vcodec mpeg2video -b 6000k -r 29.97 -acodec ac3 -ab 224k -ar 44100 -s 720x480 output.mpg

Untuk PAL/SECAM:

ffmpeg -i input.mp4 -vcodec mpeg2video -b 6000k -r 25.00 -acodec ac3 -ab 224k -ar 44100 -s 720x576 output.mpg


Angka-angka di atas tentunya relatif. Jika kita sering membeli kepingan film DVD, video ataupun audio bitrate yang dimiliki tiap-tiap keping bisa berbeda-beda.




Memilah Audio dan Video

Fitur lain yang dimiliki oleh FFmpeg adalam kemampuan memilah audio dan video. Kita bisa saja hanya mengambil audio channel dari sebuah video file. Kemudian audio channel tadi dijadikan file tersendiri, misalnya mp3.

ffmpeg -i input.flv -vn -acodec pcm_s16le -ab 224k -ar 44100 output.wav


Atau kita hanya ingin mengambil video channel-nya saja.

ffmpeg -i input.flv -an -vcodec mpeg1video -b 1800k -r 25.00 output.mpg

Perintah '-vn' artinya adalah menyingkirkan video channel. Dengan demikian kita hanya mengambil audionya saja. Sebaliknya perintah '-an' berguna untuk menyingkirkan audio channel.



Memetakan Channel

Video yang bersumber dari DVD seringkali memiliki lebih dari 2 channel. Karena DVD sering memuat multi bahasa. Sehingga kita bisa merubah film ke dalam bahasa yang berbeda-beda pada saat film sedang diputar. Untuk mengkonversi 1 channel atau lebih dari sebuah video file, gunakanlah parameter '-map'.

ffmpeg -i video.vob -map 0:0 -map 0:3 -vcodec mpeg4 -b 1800k -r 25.00 -acodec mp3 -ab 224k -ar 48000 video.avi

Perintah diatas dimaksudkan untuk mengkonversi channel 0 ke dalam format mp4 dan channel 3 dikonversi ke dalam format mp3. Dimana channel 0 dari file 'video.vob' berisi video dan channel 3 berisi audio. Kemudian kedua channel tadi digabungkan ke dalam file 'video.avi'.

FFmpeg juga bisa digunakan mengkonversi video dan audio yang berasal dari sumber file yang berbeda menjadi satu file output.

ffmpeg -i video.mpg -i audio.mp2 -map 0:0 -map 1:0 -vcodec mpeg4 -b 1800k -r 25.00 -acodec mp3 -ab 224k -ar 44100 video.mp4

Tentu saja saya tidak dapat menuliskan seluruh fitur yang dimiliki FFmpeg di sini. Karena fitur-fitur yang dimiliki oleh FFmpeg teramat sangat banyak. Tulisan ini hanyalah sebagian kecil dari keseluruhan fiturnya. Tetapi dengan tulisan ini saya berharap para pembaca dapat berimprovisasi sendiri dalam penggunaannya.

Software ini bisa di-download di alamat: http://www.videohelp.com/tools/ffmpeg

Selasa, 17 Maret 2009

Cara Mendownload Video dengan Kualitas Tinggi dari Youtube

Buka halaman video youtube, misalnya:

http://www.youtube.com/watch?v=iZ1a3kwjubA


Setelah halaman terbuka, klik menu "View" -> "Page Source" atau ctrl+U jika anda menggunakan Mozilla. Perintah ini akan membuka halaman lengkap dengan semua tag html. Kemudian cari baris yang berisi kode javascript seperti di bawah ini:


var fullscreenUrl = '/watch_fullscreen?fs=1&q=hd%2520meteor...';


Copy sebagian kode tersebut mulai dari tanda tanya (?) sampai akhir string. Tanda kutip (') dan titik koma (;) di bagian belakang string juga tidak perlu diikut sertakan.


Untuk mendownload video dengan kualitas standar ketik alamat url sebagai berikut:

http://www.youtube.com/get_video


Kemudian tambahkan url tadi dengan sebagian kode javascript dengan cara paste di belakangnya. Sehingga url tadi menjadi:


http://www.youtube.com/get_video?fs=1&
q=meteor%2520impact%2520hd&
fexp=900145&
plid=AARlXCFJ0JDGM1oX&
iv_storage_server=http%3A%2F%2Fwww.google.com%2Freviews%2Fy%2F&
creator=xxrisx331&
sourceid=ys&
video_id=Et0KdWAdKEE&
l=12&
sk=J1_a5CF9eOy1dTqHkV4jhBuPRWRRXVcSC&
fmt_map=22%2F2000000%2F9%2F0%2F115%2C34%2F0%2F9%2F0%2F115%2C5%2F0
%2F7%2F0%2F0&
t=vjVQa1PpcFOjfIxe5t-5Krwt3bOebJUIS7E3N4PomCE%3D&
hl=en&cr=US&vq=1&
iv_module=http%3A%2F%2Fs.ytimg.com%2Fyt%2Fswf%2Fiv_module-
vfl82880.swf&
title=HD Meteor Impact!


Sebenarnya untuk bisa men-download video dari youtube hanya membutuhkan perintah get_video dan 3 buah parameter, yaitu: video_id, fmt_map, dan t. Sehingga url tadi bisa diringkas menjadi:


http://www.youtube.com/get_video?
video_id=Et0KdWAdKEE&
fmt_map=22%2F2000000%2F9%2F0%2F115%2C34%2F0%2F9%2F0%2F115%2C5%2F0
%2F7%2F0%2F0&
t=vjVQa1PpcFOjfIxe5t-5Krwt3bOebJUIS7E3N4PomCE%3D


Tapi jika anda tak mau meringkasnya pun tak menjadi soal. Karena browser tetap akan men-download video itu.

Format video yang akan diperoleh adalah format flash video atau dikenal dengan nama format flv.

Kalau anda ingin mendapatkan kualitas video yang lebih baik, anda hanya perlu menambahkan parameter fmt=18 pada alamat url tadi. Format yang akan diperoleh adalah format mpeg 4 atau mp4.


http://www.youtube.com/get_video?
video_id=Et0KdWAdKEE&
fmt_map=22%2F2000000%2F9%2F0%2F115%2C34%2F0%2F9%2F0%2F115%2C5%2F0
%2F7%2F0%2F0&
t=vjVQa1PpcFOjfIxe5t-5Krwt3bOebJUIS7E3N4PomCE%3D&
fmt=18


Kadang ada video-video tertentu yang di-upload oleh user dengan kualitas HD. Bagaimana cara mengetahui bahwa sebuah video memiliki kualitas HD sangatlah mudah. Lihat di bagian kanan bawah layar dari flash player. Letaknya bersebelahan dengan volume control. Jika video tersebut memiliki kualitas HD, maka akan terdapat tombol HD di tempat itu. Jika tidak ada, berarti video itu tidak memiliki versi kualitas HD.



Untuk dapat men-download video berkualitas HD caranya hampir sama dengan mendapatkan video dengan kualitas mp4. Anda hanya tinggal menambahkan parameter fmt=22 saja. Sehingga alamat url-nya menjadi:


http://www.youtube.com/get_video?
video_id=Et0KdWAdKEE&
fmt_map=22%2F2000000%2F9%2F0%2F115%2C34%2F0%2F9%2F0%2F115%2C5%2F0
%2F7%2F0%2F0&
t=vjVQa1PpcFOjfIxe5t-5Krwt3bOebJUIS7E3N4PomCE%3D&
fmt=22


Nah, selamat men-download. Semoga bermanfaat.