3

我需要把这样的东西拉下来:

foo.user$ ffmpeg -i -y foo.mediafile -ss 0 -vframes 1 -an out.jpg | gm identify out.jpg

基本上,它需要使用 ffmpeg 制作视频帧或静止图像的缩略图,然后在其上运行 gm。我怎样才能直接将缩略图(或者不是缩略图,它需要相同的大小)直接通过管道传输到 gm 而无需写入 out.jpg。任何熟悉 ffmpeg 管道/gm 的人可以帮帮我吗?-谢谢!!

PS如果有帮助,这个过程是从服务器端Javascript运行的。

4

1 回答 1

4

自己回答:

ffmpeg -i test.jpg -f mjpeg -ss 0 -vframes 1 -an - 2>/dev/null | gm identify -ping -verbose -

这可以获取 test.jpg(或其他文件,.ogv,.png 等)并使用 ffmpeg 处理它,然后将其运行到 gm 中。重要的是破折号,它们充当匿名管道输出。同样重要的是 -f mjpeg,强制管道转换为 jpeg 格式。最后, 2>/dev/null 使第一个命令静音。

于 2011-07-28T02:01:35.747 回答