如何在 FFmpeg 中模拟 OpenFile?

How can I simulate OpenFile in FFmpeg?

大部分gif抓图软件抓取屏幕,然后将它们一张一张的单帧图片文件保存在磁盘上,然后读入内存并组合成gif,使得整个过程非常缓慢。

我想到了用 DirectX 截屏(这样我们也可以截取 directx window 更快,因为它直接操作屏幕 d3d 设备)API 得到位图,然后将它们保存到

directx截屏部分是already.But我发现ffmpeg是使用OpenFile读取图片文件的,所以这里可以模拟OpenFile吗? 如果答案是肯定的,我们怎么办?

您可以打开命名管道并将其用作源。

一个例子: ffmpeg -f rawvideo -vcodec ravideo -s $width$x$height$ -r $framerate -pix_fmt $pixelFormat$ -i "\.\pipe$pipeName$" Output.gif

您必须修复要提供给 FFmpeg 的帧的格式,因此 -s-pix_fmt 参数。