我可以使用以下命令使用ffmpeg从视频中提取图像,并将其保存到文件系统中:
... | ffmpeg -i - -f image2 'img-%03d.png'
我想将这些图像通过管道传输到另一个应用程序,而不是将它们保存到文件系统中-在管道中如何分离它们并不重要,因为它将是我自己控制的NodeJS脚本。
以下内容不起作用:
... | ffmpeg -i - -f image2 pipe: | ...
错误与
[image2 @ 0xe1cfc0] Could not get frame filename number 2 from pattern 'pipe:' (either set updatefirst or use a pattern like %03d within the filename pattern)
av_interleaved_write_frame(): Invalid argument
有什么方法可以在不使用文件系统的情况下使用ffmpeg提取从视频中提取的图像?
就在这里!
添加参数-f image2pipe
,并将输出文件名指定为单个连字符(-
在此上下文中,其含义为stdout
),并将输入文件名也指定为单个连字符(此处-i -
,其含义为stdin
),并显式指定输出格式(例如,对于png :)-c:v png
,这是一个完整的示例:
ffmpeg -i - -ss 00:00:3 -s 650x390 -vframes 1 -c:v png -f image2pipe -
本文收集自互联网,转载请注明来源。
如有侵权,请联系[email protected] 删除。
我来说两句