如何在ffmpeg中添加时间戳作为生成的图像文件名的一部分

如何在ffmpeg中添加时间戳作为生成的图像文件名的一部分,ffmpeg,filenames,Ffmpeg,Filenames,我试图使用ffmpeg从视频中提取png图像,并将时间戳添加到生成的图像文件名中 请参阅下面我正在使用的命令 ffmpeg -vcodec mpeg2video -f mpegts -i test_movie.ts -f image2 -vf "drawtext=fontfile=/Library/Fonts/Tahoma.ttf: timecode='$(date +%H\\:%M\\:%S).00': r=30: x=(w-tw)/2: y=h-(2*lh): fontcolor=white

我试图使用ffmpeg从视频中提取png图像,并将时间戳添加到生成的图像文件名中

请参阅下面我正在使用的命令

ffmpeg -vcodec mpeg2video -f mpegts -i test_movie.ts -f image2 -vf "drawtext=fontfile=/Library/Fonts/Tahoma.ttf: timecode='$(date +%H\\:%M\\:%S).00': r=30: x=(w-tw)/2: y=h-(2*lh): fontcolor=white: box=1: boxcolor=0x00000000@1" -vsync vfr -pattern_type glob ./compare_multiple_$(gdate +%H\_%M\_%S_%3N).png
但这并没有正确地附加文件名。它给出一个错误,如下所示:

[image2@0x7ff01301f600]无法从中获取帧文件名编号2 模式“./compare_multiple_10_09_58_490.png”(设置为updatefirst 或者在文件名模式中使用类似%03d的模式) av_交错_写入_帧():无效参数帧=10 fps=0.0 q=-0.0 Lsize=N/A时间=00:00:00.12比特率=N/A视频:1047kB音频:0kB 字幕:0kB其他流:0kB全局头:0kB多路复用开销: 未知转换失败


对于输出文件名模式,您可以使用:

ffmpeg -i ... -f image2 -strftime 1 "%Y-%m-%d_%H-%M-%S.png"

谢谢但我想在每一帧上生成一个文件,即每秒30帧,文件名中的值为毫秒。它没有必要的分辨率。我同意。。可以投票关闭或删除。