我正在寻找一个使用C或Cpp在Linux中捕获屏幕的程序。有人可以帮助给出一个可以帮助我的骨架结构或程序。
谢谢和问候。
答案 0 :(得分:2)
How to capture screen with ffmpeg:
使用x11grab设备:
ffmpeg -f x11grab -r 25 -s 1024x768 -i:0.0 + 100,200 output.flv
这将从桌面抓取图像,从左上角开始 拐角处(x = 100,y = 200),宽度和高度为1024x768。
如果您也需要音频,可以使用alsa:
ffmpeg -f x11grab -r 25 -s 1024x768 -i:0.0 + 100,200 -f alsa -ac 2 -i 脉冲输出.flv
因此,您只需将其放在capture.sh
中并从代码中运行它:
#include <cstdlib>
int main(){ std::system("./capture.sh"); }
如果必须在不调用外部实用程序的情况下执行此操作,则可以使用libffmpeg directly.