C或C ++和Linux中的屏幕截图程序

我正在寻找一个使用C或Cpp在Linux中捕获屏幕的程序。 有人可以帮助给出一个可以帮助我的骨架结构或程序。

感谢致敬。

如何使用ffmpeg捕获屏幕:

使用x11grab设备:

ffmpeg -f x11grab -r 25 -s 1024×768 -i:0.0 + 100,200 output.flv

这将从桌面抓取图像,从左上角开始(x = 100,y = 200),宽度和高度为1024×768。

如果你也需要音频,你可以像这样使用alsa:

ffmpeg -f x11grab -r 25 -s 1024×768 -i:0.0 + 100,200 -f alsa -ac 2 -i pulse output.flv

所以你可以简单地将它放在capture.sh并从你的代码中运行它:

 #include  int main(){ std::system("./capture.sh"); } 

如果必须在不调用外部实用程序的情况下执行此操作,则可以直接使用libffmpeg。