简单的自定义录屏工具

在csdn上写文章,需要配一些操作动态图,需要针对电脑录屏,可能是整个屏幕录屏,也可能是某窗口,甚至是某一小块区域。

动态图最好是gif格式,方便直接嵌入文章中。

一、设计

窗口类widget
简单的自定义录屏工具_第1张图片

切屏类Capturescreen
录屏类RecordScreen
线程类MyThread

【选择区域】:调用Capturescreen完成对屏幕自定义选择,回车键确认,ESC退出截屏简单的自定义录屏工具_第2张图片

void Capturescreen::keyPressEvent(QKeyEvent *event)
{
    // Esc 键退出截图;
    if (event->key() == Qt::Key_Escape)
    {
        close();
    }
    // Eeter键完成截图;
    if (event->key() == Qt::Key_Return || event->key() == Qt::Key_Enter)
    {
        emit signalCompleteCature(m_capturePixmap);
        emit signalCompleteCatureInfo(selectedRect);
        close();

        m_beginPoint = m_endPoint = QPoint(0,0);
    }
}

【开始录制】:最多录制<1小时(37.5分钟),每秒40帧
【结束录制】:把每一帧保存成img下图片,并调用ffmpeg.exe合成test.mp4
简单的自定义录屏工具_第3张图片
【本地文件夹】:方便打开mp4所在文件夹
【mp4Togif】: 调用ffmpeg.exe把mp4转成gif格式,通过参数配置,保证不失真

二、演示

操作演示录屏

录屏效果
简单的自定义录屏工具_第4张图片

程序下载

https://download.csdn.net/download/chen_227/87570258
不需要积分

你可能感兴趣的:(qt,C++,ffmpeg,qt,开发语言)