Bu makalede birçoğumuzun gerek duyduğu multimedia formatlarını birbirine çevirmeye yarayan bir betikten yararlanarak nasıl kolay bir şekilde filmlerimizi Dİvx xvid mpeg4 çevireceğimizi anlatmaya çalışacağım
İlkönce sistemimizde aşağıda yazılı olan codecler yüklenmiş olması gerekmektedir.
Bu codecleri yükledikten sonra [ http://linux.softpedia.com/get/Desktop-Environment/Tools/avi-and-mp4-converter-32163.shtml script] bu adrsten scripti indirebilirsiniz veya aşağıda kodları bir script dosyasını içine ekleyip /home/kullanıcı/.gnome2/nautilus-scripts/ klasörünün altına kopyalıyoruz. Scripte vermiş olduğunuz isimle menünün Betikler alanı altında görebilirsiniz.
Script içeriği:
newname="New file name" title="video convert (flv/avi/mpeg/rm to avi/mpeg-4)" titlewh="Resolution of input video" Wide="wide" High="height" avi_codec="Choose output codec" audio_codec="Choose output audio" bit_rate="Choose the bitrate of video (700 if mp4)" abit="mp3 bitrate" audio="audio encode(MPEG-4 will stick to acc)" wrong="wrong input, skipping" warning="huh?" wide=640 high=480 tmp=0 tmp1=0 tmp2=0 bar1=0 bar=0 bar2=0 consw="640"
iftowide() { ffmpeg -i "$1" -target ntsc-dvd -padtop "$((bar1))" -padbottom "$((bar2))" -s "$wide"x"$high" -aspect 4:3 -b 1152 -padcolor 000000 -acodec copy "`basename "$1"`.mpg" } wh() { wide=`gdialog --title "$titlewh" --inputbox "$Wide" 200 100 2>&1` high=`gdialog --title "$titlewh" --inputbox "$High" 200 100 2>&1` tmp=wide/4 tmp1=tmp*3 tmp2=tmp1-high if [ $((tmp2%4)) -eq 0 ]; then bar1=tmp2/2 bar2=bar1 else bar=tmp2/2 bar1=bar+1 bar2=bar-1 fi }
DivXmp3_encode() { mencoder "$1" -ovc lavc -lavcopts vcodec=mpeg4:vbitrate="$get_bitrate":mbd=2:v4mv:autoaspect -vf pp=lb -oac mp3lame -lameopts cbr:br="$get_audio" -o "`basename "$1"`.avi" } DivXAC_encode() { mencoder "$1" -ovc lavc -lavcopts vcodec=mpeg4:vbitrate="$get_bitrate":mbd=2:v4mv:autoaspect -vf pp=lb -channels 6 -oac lavc -lavcopts acodec=ac3:abitrate=384 -o "`basename "$1"`.avi" } XviDmp3_encode() { mencoder "$1" -ovc xvid -xvidencopts bitrate="$get_bitrate":autoaspect -vf pp=lb -oac mp3lame -lameopts cbr:br="$get_audio" -o "`basename "$1"`.avi" } XviDAC_encode() { mencoder "$1" -ovc xvid -xvidencopts bitrate="$get_bitrate":autoaspect -vf pp=lb -channels 6 -oac lavc -lavcopts acodec=ac3:abitrate=384 -o "`basename "$1"`.avi" } MP4_encode() { ffmpeg -i "$1" -f mp4 -vcodec mpeg4 -maxrate 1000 -b 700 -qmin 3 -qmax 5 -bufsize 4096 -g 300 -acodec aac -ab 160 -ar 48000 -s 640x480 -aspect 4:3 "`basename "$1"`.mp4" } MP4() { if file "$1" | grep -q "Macromedia Flash Video"; then
get_audio="64" DivXmp3_encode "$1" MP4_encode "$1.avi" rm -f "$1.avi" elif file "$1" | grep -q "RealMedia file"; then get_audio="128" DivXmp3_encode "$1" MP4_encode "$1.avi" rm -f "$1.avi" else MP4_encode "$1" fi
} MP4w() { if [ "$((wide))" -gt "$consw" ] ; then
if file "$1" | grep -q "RealMedia file"; then get_audio="128" DivXmp3_encode "$1" iftowide "$1.avi" rm -f "$1.avi" MP4_encode "$1.avi.mpg" rm -f "$1.avi.mpg" else iftowide "$1" MP4_encode "$1.mpg" rm -f "$1.mpg" fi
else
if file "$1" | grep -q "Macromedia Flash Video"; then get_audio="64" DivXmp3_encode "$1" MP4W_encode "$1.avi" rm -f "$1.avi" elif file "$1" | grep -q "RealMedia file"; then get_audio="128" DivXmp3_encode "$1" MP4W_encode "$1.avi" rm -f "$1.avi" else MP4W_encode "$1" fi
fi } MP4W_encode() { ffmpeg -i "$1" -f mp4 -vcodec mpeg4 -maxrate 1000 -b 700 -qmin 3 -qmax 5 -bufsize 4096 -g 300 -acodec aac -ab 160 -ar 48000 -padtop "$((bar1))" -padbottom "$((bar2))" -s "$wide"x"$high" -aspect 4:3 -padcolor 000000 "`basename "$1"`.mp4" }
get_codec=`zenity --title="$title" --list --radiolist --column="" --column="$avi_codec" FALSE "DivX" TRUE "XviD" FALSE "MPEG-4" FALSE "MPEG-4 from widescreen"` get_bitrate=`zenity --title="$get_codec" --list --radiolist --column="" --column="$bit_rate" FALSE "2500" FALSE "1800" FALSE "1152" TRUE "700" FALSE "500" `
case "$get_codec" in DivX) get_acode=`zenity --title="$audio" --list --radiolist --column="" --column="$audio_codec" FALSE "AC3 5.1" TRUE "mp3lame" `
case "$get_acode" in mp3lame) get_audio=`zenity --title="$audio" --list --radiolist --column="" --column="$abit" FALSE "320" FALSE "192" FALSE "160" TRUE "128" FALSE "64" ` ;; esac
XviD) get_acode=`zenity --title="$audio" --list --radiolist --column="" --column="$audio_codec" FALSE "AC3 5.1" TRUE "mp3lame" `
case "$get_acode" in mp3lame) get_audio=`zenity --title="$audio" --list --radiolist --column="" --column="$abit" FALSE "320" FALSE "192" FALSE "160" TRUE "128" FALSE "64" ` ;; esac
"MPEG-4 from widescreen") wide=`gdialog --title "$titlewh" --inputbox "$Wide" 200 100 2>&1` high=`gdialog --title "$titlewh" --inputbox "$High" 200 100 2>&1` tmp=wide/4 tmp1=tmp*3 tmp2=tmp1-high if [ $((tmp2%4)) -eq 0 ]; then bar1=tmp2/2 bar2=bar1 else bar=tmp2/2 bar1=bar+1 bar2=bar-1 fi
esac
while [ "$1" ]; do
case "$get_codec" in MPEG-4) MP4 "$1" ;; "MPEG-4 from widescreen") MP4w "$1" ;; DivX) case "$get_acode" in mp3lame) DivXmp3_encode "$1" ;; "AC3 5.1") DivXAC_encode "$1" ;; esac ;; XviD) case "$get_acode" in mp3lame) XviDmp3_encode "$1" ;; "AC3 5.1") XviDAC_encode "$1" ;; esac ;; esac shift
done
*Görsel olarak yapılacak işlemler
Bu işlemleri yaptıktan sonra çevireceğimiz dosyamızın üzerin gelip mouse un sağ tuşunu tıklayıp Betikler menüsün altındaki betiğimizi tıklıyoruz.
Karşımıza çıkacak ikinci seçenek çevirelecek format türü
Bu alanda görüntü kalitesinin ne seviyede olmasını istiyorsak o seçeneği işaretliyoruz.
Son kısım ise ses kalitesini belirttiğimiz alanımız.
Bu işlemleri yaptıktan sonra çevirmek istediğiniz dosyanın bulunduğu klasöre istemiş olduğunu formatta ve kalitede dosyanızı çevirmeye başlayacak. İyi eğlenceler.
Hazırlayan : Sinan TEMUR