ffmpeg 對 視頻進行縮放和裁剪操作


使用ffmpeg進行放大和縮小視頻用的是scale過濾器

# 將視頻縮小到寬200高100
ffmpeg -i test.mp4 -vf scale=w=200:h=100 "C:\Users\amin\Desktop\test2.mp4"

vf表示視頻過濾器(video filter),該操作中由於寬高比和原來的視頻不同,會造成像素的寬高比不同

如果想要保持原來的寬高比,可以傳遞-1作為參數,使用iw和ih分別表示原來視頻的寬度和高度。

如下指令生成的視頻的寬度為原來的1.5倍,但是限制視頻的最大寬度為5000像素。

參數解釋:min 的意思就是取最小的,如果設置的寬度大於5000就取最小的5000

ffmpeg -i test.mp4 -vf scale=w='min(5000,iw*1.5)':h=1280  "C:\Users\amin\Desktop\test2.mp4"

# 同理,限制視頻寬度最小多少
ffmpeg -i test.mp4 -vf scale=w='max(1920,iw*1)':h=-1  "C:\Users\amin\Desktop\test2.mp4"

如果只想設置寬度,同時保持原來的寬高比

ffmpeg -i test.mp4 -vf scale=w='min(5000,iw*1.5)':h=-1  "C:\Users\amin\Desktop\test2.mp4"

 同理設置高也一樣

ffmpeg -i test.mp4 -vf scale=w=-1:h='min(720,ih*1)'  "C:\Users\amin\Desktop\test2.mp4"

裁剪視頻

裁剪的意思就是從原來的視頻中截取矩形區域生成新視頻,需要用到crop過濾器

iw表示輸入視頻的寬度。

ih表示輸入視頻的高度。

ow表示輸出視頻的寬度。

oh表示輸出視頻的高度。

x表示水平位置,默認數值為(ih - oh) / 2 。

y表示豎直位置,默認數值為(ih - oh) / 2 。

它可以把視頻從指定的x、y位置裁剪成指定的w、h。坐標系是基於左上點開始的。

ffmpeg -i test.mp4 -vf crop=w=500:h=500:x=120:y=340  "C:\Users\amin\Desktop\test2.mp4"

這里也可以使用iw 和ih

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM