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博客 获取

相关推荐
艺杯羹43 分钟前
Windows原生软件锁设计:从暴力杀进程丢数据到零轮询事件驱动架构
windows·系统架构·开源·开源软件·内存管理·开源协议
张张123y2 小时前
DSH 插件调试避坑:client.js 设置面板、热重载与高频报错排查表
开发语言·javascript·人工智能·开源·ecmascript·后端开发·ai agent
冻柠檬飞冰走茶5 小时前
字母移动游戏题解:贪心求最长可保留连续子串(附 C 实现)
c语言·开发语言·数据结构·算法·动态规划
FRing035 小时前
vue2干货总结7(自定义指令、插槽、单页应用程序、路由的使用(VueRouter))
开发语言·前端·vue.js·vue2
雪落漂泊5 小时前
C++算法 二分查找篇(上)
开发语言·c++·算法
波力海苔夹心脆6756 小时前
C# WPF 资源字典详解:ResourceDictionary、MergedDictionaries 与自定义控件案例
开发语言·c#·wpf·入门教程·resource·资源字典
不会算法的笨小孩7 小时前
异常的使用以及会出现的问题
开发语言·c++·c++11·异常
csdn_aspnet9 小时前
Redis 入门:Windows、Mac安装指南
数据库·windows·redis·缓存·mac
Hhy_11079 小时前
《C++深度解构06》手撕 string —— 从底层内存管理到深浅拷贝彻底吃透
c语言·开发语言·c++·学习·visual studio
starzy19909 小时前
深入理解Scala函数定义:从方法到函数的类型跨越
开发语言·scala