我正在寻找一个使用 C 或 Cpp 在 Linux 中捕获屏幕的程序。有人可以帮助提供一个框架结构或程序来帮助我吗?
感谢致敬。
如何使用 ffmpeg 捕获屏幕: http://ffmpeg.org/trac/ffmpeg/wiki/How%20to%20grab%20the%20desktop%20%28screen%29%20with%20FFmpeg
使用 x11grab 设备:
ffmpeg -f x11grab -r 25 -s 1024x768 -i :0.0+100,200 输出.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。 http://www.ffmpeg.org/download.html
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)