FFMPEG录屏(1)----录制桌面
https://blog.csdn.net/peilinok/article/details/102981560 首先录制桌面有很多种方法,原生windows api进行GDI抓屏,Mirror,Direct等,本文针对ffmpeg gdi抓屏进行介绍,也开始录屏软件开发之旅。 准备ffmpeg,无所谓是动态库、静态库,请自行前往下载并引入工程。 在本系列文章中,一些FFMPEG的结构、函数并不会做过多说明,请自行了解,重点放在了桌面录制的整体流程。 参考资料: ffmpeg 源代码简单分析 初始化FFMPEG av_register_all(); avdevice_register_all(); 准备屏幕参数,包含了帧率、录制区域的起始坐标、大小、是否绘制鼠标等参数。 char buff_video_size[50] = { 0 }; sprintf_s(buff_video_size, 50, "%dx%d", rect.right - rect.left, rect.bottom - rect.top); AVDictionary *options = NULL; av_dict_set_int(&options, "framerate", fps, AV_DICT_MATCH_CASE); av_dict_set_int(&options, "offset_x", rect