2011-01-13 118 views
2

我有一個720x576的源視頻大小,頂部和底部都是黑色矩形。在ubuntu上用ffmpeg在視頻中裁剪黑條更改視頻大小

我想刪除黑色矩形並將輸出視頻大小設置爲640x352。

我試圖-vf cropdetect,它給了價值爲640:192:0:80。

但是,把相同的值在crop=<parameter>改變輸出視頻大小。

我該如何解決這個問題?

例如爲:

ffmpeg -i all_the_best_test.mpg -s 640x352 -deinterlace -b 500k -minrate 500k \ 
-maxrate 500k -aspect 1.82 -force_fps -vcodec libx264 -me_method 10 \ 
-vf crop=640:192:0:80 -r 25 -acodec libfaac -ac 2 -ar 44100 -ab 96k -subq 6 \ 
-vpre medium /vod/Movies/final/allthebest-crop-2.mp4 
+0

假設這仍然是一個問題,您是什麼意思的「更改視頻大小」?寬高比錯了?由於cropdetect說電影內容是640x192,但你說你想要640x352,所以你不太清楚你想要的輸出是什麼。你只想要更小的黑色酒吧?不同的寬高比? – blahdiblah 2012-07-09 23:01:58

回答

0

如果指定-s 640x352作爲第一個命令適用於輸出,你期待的ffmpeg將處理它持續多久?從你的結果來看,我認爲它必須先應用它(對於黑框仍然完好的電影)。所以黑色框架會隨着電影一起調整大小。然後,您將原始大小的電影中檢測到的作物應用於這部新的較小電影。如果不繪製某些東西很難解釋,但是這會扭曲您的高寬比,如果作物被稱爲要保留的幾何圖形,請從邊緣切出一些內容(請記住,在應用原始裁剪之前將視頻縮小了)。換句話說,它不只是扭曲,但人們應該有一些失蹤的頭髮和附件和東西?

爲什麼不做一個簡單的測試用例。如果我在這裏拍攝黑色框架電影的基本方法,它的效果非常好。

步驟1保持不變。做ffmpeg -i movie.mp4 -vf cropdetect temp.mp4並閱讀它對作物的看法,比如你的crop = 640:192:0:80。

步驟2:簡化命令行測試:ffmpeg的-i movie.mp4 -vf作物= 640:192:0:80 movie_without_borders.mp4。確保在播放器中播放結果,播放器將自己的邊界設置爲文件大小(或者可以配置爲這樣做 - 如果您在播放器中按2則)。新電影不失真,黑色邊框消失。

對於我的測試文件,發生了兩種尺寸變化。首先,顯然,新的幾何尺寸是我們爲作物指定的。其次,文件大小略有下降,可能是因爲有一小部分空間用於保存黑匣子。使用libx264和相對壓縮的低質量文件沒有太多的移動,剪出一個黑色的盒子,其面積與圖片縮小的文件大小從3.99到3.76(n = 1 ..)相等。但很可能你的意思是這張照片似乎「扭曲」了。