我需要使用ffprobe获取图像文件的宽度和高度,并需要使用批处理(Windows)将其存储在变量中,以便稍后使用这些值。
我试过这么做,
@echo off
for /f "tokens=1-2" %%i in ('ffprobe -v error -of flat=s=_ -select_streams v:0 -show_entries stream=width,height %1') do set W=%%i & set H=%%j
echo %W%
echo %H%
但未能执行与
Argument '_' provided as input filename, but 's' was already specified.
p.s.我也用类似的方法试过imagemagick identify,但是identify在返回GIF文件的高度时似乎有一个bug
4条答案
按热度按时间o7jaxewo1#
我已经设法调整你的脚本,它的工作,你可以尝试这种方式:
chhqkbe12#
我认为答案是过度杀戮。只有一个
ffprobe
命令,没有写入文件,没有控制台消息:最后是环境变量
mypicture_width
和mypicture_height
。您可以通过以下方式进行检查:如果你的图片大小是640x480,当然。
e4yzc0pl3#
只需转义
=
字符^
并拆分以检索w和h(可能有一种方法可以同时检索它们,但我不知道)。46scxncf4#
输出文件的名称和它的宽度+高度到终端。