如何使用FFMPEG将不同尺寸/宽高比的图片制作成视频幻灯片?
FFMPEG幻灯片制作参数修正方案
你当前使用的命令仅对图片做了宽高偶数值适配,没有做等比缩放和分辨率适配,导致不同尺寸的图片在编码时被强制拉伸匹配输出分辨率,出现宽高比失调问题。
修正后可用命令
ffmpeg -r 1/5 -start_number 0 -i "C:\Source_Directory_Pictures\Image_%d.jpg" -c:v libx264 -vf "scale=w=min(1920\, iw*1080/ih):h=min(1080\, ih*1920/iw),pad=w=1920:h=1080:x=(1920-iw)/2:y=(1080-ih)/2:color=black,format=yuv420p" -r 30 "F:\Destination_Output\Test_Output.mp4"
参数说明
- 开头的
-r 1/5:控制单张图片显示时长为5秒,需调整为10秒时修改为-r 1/10即可 - 滤镜核心逻辑:先对原始图片做等比缩放,保证缩放后的图片宽高均不超出19201080的目标分辨率范围,再将缩放后的图片放置在19201080画布的正中央,空余区域填充纯色
scale=w=min(1920\, iw*1080/ih):h=min(1080\, ih*1920/iw):等比缩放计算规则,自动适配横竖屏图片的缩放比例pad=w=1920:h=1080:x=(1920-iw)/2:y=(1080-ih)/2:color=black:填充画布规则,color=black可替换为你需要的填充色,比如白色对应color=white,自定义十六进制色值使用color=#RRGGBB格式即可format=yuv420p:统一像素格式,保证输出视频兼容绝大多数普通播放器
- 末尾的
-r 30:指定输出视频的帧率为30fps,可根据需求自行调整
内容的提问来源于stack exchange,提问作者user2797606
相关产品推荐
相关产品推荐

