2011-08-07 87 views

回答

19

試試這個:

./ffmpeg -i video.mp4 -vf "scale=640:ih*640/iw, crop=640:480" -f mpegts udp://127.0.0.1:1234 

上面的代碼將第一縮放視頻640和保持縱橫比的高度,然後 作物640x480.

+1

作物如何選擇哪部分作物?是否保證始終採用視頻中的精確中心「640x480」? – user779159

0

你確實需要用數字來代替owoh,代表的寬度和高度分別縮放視頻。

+0

我需要動態改變種植窗口(我在ffmpeg上做了一些改動),我想根據實際的裁剪窗口來縮放它。據我瞭解,價值觀'流'和'哦'應該做這項工作,不是嗎? –

+0

沒有。你必須把數字放在文檔說'流'和'哦'的地方。 –

+0

而不是ow和oh(不是常量),你可以使用像out_w和out_h這樣的常量表達式。 – BrainSlugs83

2

我假設你得到:

Error when evaluating the expression 'oh'. 
Maybe the expression for out_w:'ow' or for out_h:'oh' is self-referencing. 

因爲你嘗試設置輸出W/H到輸出W/H?你想要做的是

ffmpeg -i video.mp4 -vf "crop=640:480,scale=iw:ih" -f mpegts udp://127.0.0.1:1234 

也就是說,設置輸出W/H到什麼輸入寬度(IW)和輸入高(IH)了。

請注意,如果源視頻小於您嘗試剪裁的尺寸(640:480),則會出現錯誤。您可以使用ffmpeg的表達式語法來首先檢查是否需要修剪/縮放以避免此錯誤。

相關問題