我需要ffmpeg
将视频流转换为图片,并且只有当它们不适合1000x1000的盒子时才能缩小它们的大小。
我的问题是,如果图像较小,ffmpeg会将图像的大小增加到1000的宽度或高度,而我不希望小图像被放大。 force_original_aspect_ratio=decrease
似乎在这里不起作用。有什么想法吗?
这是我的shell命令:
ffmpeg -i 'rtsp://184.72.239.149/vod/mp4:BigBuckBunny_175k.mov' -r 5 -vf scale=w=1000:h=1000:force_original_aspect_ratio=decrease -f image2 -qscale:v 1 ./output_%01d.jpg
答案 0 :(得分:0)
您可以将数学表达式用于更复杂的缩放规则,请尝试以下操作:-vf scale=w='min(iw,1000)':h=-2
答案 1 :(得分:0)
使用以下比例表达式
scale=`if(lte(iw,1000)*lte(ih,1000),iw,iw*1000/max(iw,ih)):if(lte(iw,1000)*lte(ih,1000),ih,ih*1000/max(iw,ih))`