windows Qt 录屏 录音

启动录屏录音:

复制代码
connect(&m_Process, &QProcess::readyReadStandardOutput, [&]() {
    qDebug() << "Standard output:" << QString::fromLocal8Bit(m_Process.readAllStandardOutput());
});

connect(&m_Process, &QProcess::readyReadStandardError, [&]() {
    QString qstr = QString::fromLocal8Bit(m_Process.readAllStandardError());
    qDebug() << "Standard error:" << qstr;
});

connect(&m_Process, QOverload<int, QProcess::ExitStatus>::of(&QProcess::finished), [=](int exitCode, QProcess::ExitStatus exitStatus) {
    qDebug() << "Process finished with exit code" << exitCode << " " << exitStatus;
});

//转码参数
QStringList arguments;
arguments << "-f" << "gdigrab"
    << "-framerate" << "30"
    << "-i" << "desktop"
    << "-f" << "dshow"
    << "-i" << QString("audio=%1").arg(m_strAudioDeviceName.c_str())
    << qstrFolder;

m_Process.setProcessChannelMode(QProcess::MergedChannels);
m_Process.start("ffmpeg", arguments);

结束录屏、录音:

复制代码
if (m_Process.isOpen()) {
    m_Process.write("q");
}

音频设备名称通过windows c++ 获取当前音频输入设备-CSDN博客 获取

相关推荐
小成202303202651 小时前
C++~07补充
开发语言·c++
LaoWaiHang1 小时前
关于Qt中鼠标左键事件被子控件截留的处理
qt
Helix2502 小时前
Ansible混合环境自动化:Windows与Linux统一配置管理实战
windows·自动化·ansible·playbook·配置管理·winrm·混合环境
Java开发追求者3 小时前
windows快速安装docker
windows·docker·安装·1024程序员节
2401_885885044 小时前
国际语音C#接口怎么写?.NET环境下实现国际语音验证码批量下发
开发语言·c#·.net
程序猿乐锅4 小时前
【从0-1学习Python | 第七篇】Python 面向对象基础
开发语言·笔记·后端·python·学习·1024程序员节
Wang's Blog4 小时前
Java 项目实战: 交友项目 - 查询圈子个人动态:查询我的动态需求分析
java·开发语言·交友
凯瑟琳.奥古斯特4 小时前
力扣1016高效解法:剪枝优化技巧
开发语言·c++·算法·leetcode·职场和发展
坤坤子吖5 小时前
C++继承:友元、静态成员、多继承与组合
开发语言·c++·笔记·学习·1024程序员节