วันพุธ, ตุลาคม 21, 2552

compile ffmpeg 0.5 สำหรับ ubuntu 9.04

เนื่องจาก ffmpeg ตัวล่าสุดไม่มี vhook ซะแล้ว ทำให้ต้องดั้นด้นไปเอา ffmpeg ตัวเก่ามา compile เอง วิธีการก็มีดังนี้

ขั้นแรกต้องชี้ source list ไปที่ midibuntu ก่อน เนื่องจาก package ที่ต้องการมีหลายตัวที่ไม่สามารถมาอยู่ใน ubuntu ได้ เนื่องจากข้อกำหนดของ ubuntu ที่ไม่รับ library ที่ไม่ opensource ดังนั้นเราเลยต้องไปเอามาจาก midibuntu แทน

$ sudo wget http://www.medibuntu.org/sources.list.d/hardy.list \ 
--output-document=/etc/apt/sources.list.d/medibuntu.list
$ sudo apt-get update && sudo apt-get install medibuntu-keyring && sudo apt-get update

ติดตั้ง libamr
$ sudo apt-get install libamrnb-dev libamrwb-dev

ติดตั้ง libnut
$ svn co svn://svn.mplayerhq.hu/nut/src/trunk/ nut
$ cd nut
$ make
$ sudo make install
ติดตั้ง libimlib2
$ sudo apt-get install libimlib2-dev libimlib2

ติดตั้งอื่นๆ
$ sudo apt-get install libfaac-dev libfaad-dev libschroedinger-dev libtheora-dev libvorbis-dev libxv-dev libxvmc-dev

ติดตั้ง mp3 library
$ sudo apt-get install libmp3lame-dev

ใครที่ใช้ ubuntu 8.04 ให้สั่ง sudo apt-get install liblame-dev แทน ใหม่กว่านั้นใช้คำสั่งข้างบนได้

compile ffmpeg
$ wget http://ffmpeg.org/releases/ffmpeg-0.5.tar.bz2
$ bunzip2 ffmpeg-0.5.tar.bz2
$ tar -xvf ffmpeg-0.5.tar
$ cd ffmpeg-0.5
$ ./configure --prefix=/usr/local --enable-gpl --enable-nonfree  \
--enable-postproc  --enable-avfilter-lavf --enable-pthreads \
--enable-x11grab --enable-bzlib --enable-libamr-nb \ 
--enable-libamr-wb --enable-libdc1394 --enable-libfaac \ 
--enable-libfaad --enable-libfaadbin --enable-libgsm \
--enable-libmp3lame --enable-libnut --enable-libschroedinger \
--enable-libtheora --enable-libvorbis --enable-zlib 

ถ้ามี library x264, xvid และไม่ต้องการใช้ vhook ให้เอาคำสั่งข้างล่างมารวมตอนสั่ง configure ด้วย
--enable-libx264 --enable-libxvid  --enable-avfilter --enable-shared

$ wget http://ffmpeg.org/releases/ffmpeg-0.5.tar.bz2
$ make
$ sudo make install

กำหนด Library path
$ sudo vi /etc/profile

เพิ่มข้อความนี้ไว้ที่บรรทัดสุดท้าย
LD_LIBRARY_PATH=/usr/local/lib:$LD_LIBRARY_PATH
export LD_LIBRARY_PATH
แล้วสั่ง
$ source /etc/profile
$ sudo ldconfig

เป็นอันเสร็จ ถ้าจะทดลองสามารถใช้คำสั่งแบบนี้ได้
ffmpeg -i input.wmv -vhook '/usr/lib/vhook/imlib2.so -x 0 -y 0 \
-i watermark.png' output.avi

reference:
juliensimon
download ffmpeg
blog comments powered by Disqus