图像序列以
开头sdhdfd_plate_bg01_v001_fds_fdse_fdfd.1001
sdhdfd_plate_bg01_v001_fds_fdse_fdfd.1002
sdhdfd_plate_bg01_v001_fds_fdse_fdfd.1003
使用
ffmpeg -i D:/imagesequence/sdhdfd_plate/sdhdfd_plate_bg01_v001_fds_fdse_fdfd.%04d.jpg -vf "[in]drawtext=fontsize=32:fontcolor=White:fontfile='/Windows/Fonts/arial.ttf':text='shotName':x=(w)/2:y=(h)-50[out]" D:/Uss/Temp/sdhdfd_plate_bg01_v001_fds_fdse_fdfd.%04d.jpg
发生以下错误
D:/imagesequence/sdhdfd_plate/sdhdfd_plate_bg01_v001_fds_fdse_fdfd.%04d.jpg: N
o such file or directory
是否可以使用ffmpeg
转换这些类型的图像答案 0 :(得分:3)
似乎有几个原因导致这种情况无效。首先,正如pixelistik所指出的,如果你的图像实际上没有.jpg扩展名,那么它将无效(例如,如果它们实际上是png或其他东西)。
其次,您的图像序列必须从0或1开始,因此从1001开始将不起作用。您可以在UNIX shell中使用此批处理代码或类似代码将图像重命名为可行的序列。
x=1; for i in *jpg; do counter=$(printf %04d $x); ln "$i" sdhdfd_plate_bg01_v001_fds_fdse_fdfd."$counter".jpg; x=$(($x+1)); done
请注意,您必须位于包含图片的目录中,如果您不想包含其他图片,则必须将for i in *jpg
更改为for i in sdhdfd_plate_bg01_v001_fds_fdse_fdfd.*
。< / p>
答案 1 :(得分:0)
对于文件:
sdhdfd_plate_bg01_v001_fds_fdse_fdfd.1001.jpg
sdhdfd_plate_bg01_v001_fds_fdse_fdfd.1002.jpg
sdhdfd_plate_bg01_v001_fds_fdse_fdfd.1003.jpg
输入模式应该是:
sdhdfd_plate_bg01_v001_fds_fdse_fdfd.1%03d.jpg
这里的 1%03d
映射到:1001
、1002
、1003
...