2012-05-25 37 views
0

重新編碼到現在爲止我用這個腳本來重新編碼我撕裂我的盒(TV解碼器):如何與ffmpeg的(有限X264)

^_^ (~) -> cat ~/++/src/convert.sh 
#! /bin/bash 

name=$(path -r "$1") # it gives the file name without the extension 

[ "$1" = *.mp4 ] && ffmpeg -i "$name".mp4 -vcodec copy -acodec copy "$name".mkv 
x264 --preset veryfast --tune animation --crf 18 --vf resize:720,576,16:15 -o "$name".tmp.mkv "$name".mkv 
mkvmerge -o "$name [freeplayer sd]".mkv "$name".tmp.mkv --no-video "$1" 
rm -rf "$name".tmp.mkv 
[ "$1" = *.mp4 ] && rm -rf "$name".mkv 
exit 0 

#EOF 

它可以在我的Ubuntu和ArchLinux的筆記本電腦。但它不會在我的桌面女巫運行Fedora。谷歌表示,由rpmfusion提供的x264軟件包不支持lavf和ffms2。 而且我不能放棄它,因爲smplayer(女巫我喜歡)需要它。

好的,所以我必須編譯它。谷歌然後說:「你必須建立ffmpeg,ffms2和x264確保標誌被正確引用。」那麼,沒有工作(ffms2無法找到LIBAV - 即使當我告訴在哪裏 - 並且x264沒有配置lavf ...)

我的問題是:我可以單獨使用ffmpeg來執行我的腳本。我有ffmpeg版本0.8.11,x264 0.116.2048 59cb2eb和gcc:4.6.1 20110804(紅帽4.6.1-7)

編輯:好吧,我發現:ffmpeg -i輸入文件-acodec副本-vcodec libx264 -preset非常快 - 調諧動畫[我沒有那部分]輸出

回答

1

我自己找到了。

ffmpeg -i input -s 720x576 -aspect 4:3 -vcodec libx264 -preset veryfast -tune animation -crf 18 -acodec copy -scodec copy output 

我的腳本變爲:

#! /bin/bash 
# 
name=$(path -r "$1") # it gives the file name without the extension 

ffmpeg -i "$1" -s 720x576 -aspect 4:3 -vcodec libx264 -preset veryfast -tune animation -crf 18 -acodec copy -scodec copy "$name".tmp.mkv 
mkvmerge -o "$name [freeplayer sd]".mkv "$name".tmp.mkv --no-video "$1" 
rm -rf "$name".tmp.mkv 
exit 0 
# 
#EOF 

現在它與任何容器的作品!你可以改變曲調並刪除「-scodec copy」部分,如果你將它用於動畫以外的其他事情(它會以任何方式工作)。你也可能會注意到我的電視是一個朋友4:3的比例。這可能也會改變。

看到你。