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

相关推荐
wanghowie2 分钟前
02.04.01 Java Stream API 进阶指南:从底层实现到性能优化
java·开发语言·性能优化
superman超哥11 分钟前
仓颉元编程进阶:编译期计算能力的原理与深度实践
开发语言·后端·仓颉编程语言·仓颉·仓颉语言·仓颉元编程·编译器计算能力
这周也會开心23 分钟前
Map集合的比较
java·开发语言·jvm
挖矿大亨27 分钟前
C++中的赋值运算符重载
开发语言·c++·算法
superman超哥30 分钟前
Rust 基本数据类型:类型安全的底层探索
开发语言·rust·rust基本数据类型·rust底层探索·类型安全
Liu-Eleven30 分钟前
Qt/C++开发嵌入式项目日志库选型
开发语言·c++·qt
A242073493037 分钟前
深入浅出JS事件:从基础原理到实战进阶全解析
开发语言·前端·javascript
烧冻鸡翅QAQ1 小时前
从0开始的游戏编程——开发前的编程语言准备(JAVAScript)
开发语言·javascript·游戏
saber_andlibert1 小时前
【C++转GO】文件操作+协程和管道
开发语言·c++·golang
Halo_tjn1 小时前
Java IO流实现文件操作知识点
java·开发语言·windows·算法