gpt4 book ai didi

c++ - 使用 Qt 可以同时处理多个应用程序的输入音频吗?

转载 作者:行者123 更新时间:2023-11-30 05:21:24 24 4
gpt4 key购买 nike

我想使用 QAudioRecorder从麦克风录制音频。我的问题是,如果有正在进行的 Skype 通话或其他应用程序会尝试使用麦克风,这是否会导致某些错误,或者该应用程序和我的应用程序是否会收到相同的音频输入数据?

同样,我可以使用QCameraQMediaRecorder访问已经在使用的网络摄像头吗?

最佳答案

是的,那会工作得很好,不会有任何错误。两个应用程序将接收相同的音频输入数据。我测试了使用 Windows 的录音机程序和使用以下代码构建的简单 Qt 程序同时录制相同的内容,结果是两个输出文件都正确录制了声音:

#include <QApplication>
#include <QAudioRecorder>
#include <QPushButton>
#include <QUrl>

int main(int argc, char **argv){
QApplication app(argc, argv);
QAudioRecorder *audioRecorder = new QAudioRecorder;

QAudioEncoderSettings audioSettings;
audioSettings.setCodec("audio/amr");
audioSettings.setQuality(QMultimedia::HighQuality);

audioRecorder->setEncodingSettings(audioSettings);
audioRecorder->setOutputLocation(QUrl::fromLocalFile("C:\\Users\\dduck\\Desktop\\test.amr"));

QPushButton b("Start");

QObject::connect(&b, &QPushButton::clicked, [&](){
if(b.text() == "Start"){
audioRecorder->record();
b.setText("Stop");
}
else{
audioRecorder->stop();
app.quit();
}
});

b.show();
return app.exec();
}

我认为如果您在运行 Skype 的同时运行该程序,它也可以工作。

是的,Qt 程序可以在处理其他程序的同时处理输入音频。

关于c++ - 使用 Qt 可以同时处理多个应用程序的输入音频吗?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/40166655/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com