Bir videoyu mpeg4e dönüştürmek
ffmpeg -i 4126_20071228004214.mp4 -f avi -vcodec mpeg4 -b 637k -acodec mp3 -ab 32k ../sonuc/32k_4126_20071228004214.mp4
libx264 ile multithread kullanarak (ffmpeg static build ile: http://dl.dropboxusercontent.com/u/24633983/ffmpeg/index.html ; http://dl.dropbox.com/u/24633983/ffmpeg/builds/ffmpeg-linux64-20130508.tar.bz2)
../ffmpeg -i "shuttle-flip.mp4" -codec:v libx264 -quality good -cpu-used 0 -b:v 4000k -profile:v baseline -level 30 -y -maxrate 4000k -y -bufsize 2000k -vf scale=-1:1080 -threads 2 -codec:a libvo_aacenc -b:a 128k "fullhd.mp4"
webm için
../ffmpeg -i "shuttle-flip.mp4" -codec:v libvpx -quality good -cpu-used 0 -b:v 2000k -qmin 10 -qmax 42 -maxrate 2000k -y -bufsize 2000k -vf scale=-1:720 -threads 2 -codec:a libvorbis -b:a 128k "webm.webm"
Not:-preset değerinin slow olması sıkıştırmanın oldukça iyi yapılacağı anlamına gelmektedir.
Yapılan denemede, slow ile oluşan dosya 570M iken ultrafast ile oluşan dosyanın 1.1G olduğu gözlemlenmiştir. Fakat slowda encoding süresi 59m58.255s iken ultrafastde encoding 9m6.937s zamanda tamamlanmıştır. -preset degeri ultrafast,veryfast,faster,fast,medium, slow,slower,veryslow,placebo olabilir.
Not: Daha detaylı bilhi için “x264 –help” kullanılabilir.
Not: -crf değeri ne kadar kayıp verilebileceğini belirler.
Verilen değer küçüldükçe kayıp azalır. Makul değerler 18-28 arasıdır. 0 değeri kayıpsızdır.
ffmpeg -i input -acodec copy -vcodec libx264 -preset slow -crf 22 output.mp4
Animasyon için tune edilmiş bir örnek:
ffmpeg -i input -acodec copy -vcodec libx264 -preset medium -tune animation -profile baseline -level 3.0 -crf 20 output.mp4
Değişik level kullanımları mümkündür.
Örneğin:
iPhone, iPod 5.5G --level 30 --profile baseline --vbv-bufsize 10000 --vbv-maxrate 10000 iPod --level 1.3 --no-cabac --vbv-bufsize 768 --vbv-maxrate 768 PSP --level 2.1 --vbv-bufsize 4000 --vbv-maxrate 4000 Zune --level 30 --no-cabac --vbv-bufsize 10000 --vbv-maxrate 10000 AppleTV --level 3.1 --no-cabac --vbv-bufsize 14000 --vbv-maxrate 14000 PS3-Xbox360 --level 4.1 --vbv-bufsize 62500 --vbv-maxrate 62500
Dosyanın bitrate verilerek belirli bir boyutta sonuçlanmasını sağlamak için 2 fazlı dönüşüm yapılabilir. Örneğin
Not:bitratei sabitlemek yerine crf kullanmak tavsiye edilir. Zira farklı bitratelerde aynı kalitede görüntü elde edilebilir. Kaynak
ffmpeg -i input -pass 1 -vcodec libx264 -preset fast -b 512k -f mp4 -an -y /dev/null \ && ffmpeg -i input -pass 2 -vcodec libx264 -preset fast -b 512k -acodec libfaac \ -ab 128k -ac 2 output.mp4
Kayıpsız H264 oluşturmak için:
ffmpeg -i input -vcodec libx264 -preset ultrafast -crf 0 -acodec copy output.mkv
Not: Kayıpsız video oluştururken -preset değeriyle yapılan denemelerde
-preset ultrafast iken
oluşan dosya 8.5G (9108193825) ve gerekli zaman 23m54.441s
-preset medium iken
oluşan dosya 6.6G (7070383360) ve gerekli zaman 99m18.887s
-preset placebo iken
oluşan dosya 6.6G (7036744106) ve gerekli zaman 433m10.011s
FFMpeg in static buildi. Herhangi bir bağımlılığı yoktur.
Static build referansı ve yeni versiyonları…
Bir cevap yazın