Я пытаюсь записать и сохранить аудиофайл, используя Qt
c++
и вот мой код для этой цели.
QAudioRecorder * audioRecorder = new QAudioRecorder();
if(audioRecorder->state() == audioRecorder->StoppedState)
{
// Set recording Settings
QAudioEncoderSettings settings;
settings.setCodec("audio/pcm"); // Not sure what to put here
settings.setSampleRate(16000);
settings.setBitRate(32);
settings.setQuality(QMultimedia::HighQuality);
settings.setEncodingMode(QMultimedia::ConstantQualityEncoding);
audioRecorder->setEncodingSettings(settings);
//Set Audio Input
audioRecorder->setAudioInput(audioRecorder->defaultAudioInput());
// Sets Output location where to store the file
QUrl url("hello.wav");
audioRecorder->setOutputLocation(QUrl::fromLocalFile("hello.wav"));
audioRecorder->setContainerFormat("mp3");
audioRecorder->record();
qDebug()<<audioRecorder->state();
}
else
{
qDebug()<<"stopped";
}
Но это не сохраняет файл, а показывает сообщение no service found for - "org.qt-project.qt.audiosource"
,
Как я могу сохранить аудио файл?
Вы должны установить некоторые Qt Multimedia Backend — проверьте этот список (подходит для используемой версии Qt) и выберите бэкэнд для вашей операционной системы.
Других решений пока нет …