我不能使QAudioDecoder(Qt 5.9.5)在Xubuntu 18.04上工作。具体来说,无论我尝试使用哪个文件,我总是得到QAudioDecoder :: audioFormat()返回的音频格式无效。
例如,以下普通程序以“无效的原始音频格式”结尾:
int main(int argc, char **argv)
{
QApplication app (argc, argv);
const char sampleAudioFilename[] =
"/home/alx/Downloads/M1F1-Alaw-AFsp.wav";
QAudioDecoder* track = new QAudioDecoder();
qInfo("%s%s","Opening ",sampleAudioFilename);
track->setSourceFilename(sampleAudioFilename);
track->start();
if (track->error() != QAudioDecoder::NoError) {
qFatal("%s",track->errorString().toStdString().data());
}
QAudioFormat originalFormat = track->audioFormat();
if (!originalFormat.isValid()) {
qFatal("Not valid original audio format");
}
return (0);
}
有趣的是,即使track->error()
的属性无效,originalFormat
也不会返回任何问题。
我以前安装了发行版上所有与gstreamer和libgstreamer相关的软件包。确实,我能够通过命令行gstreamer的工具(例如
gst-play-1.0 -v /home/alx/Downloads/M1F1-Alaw-AFsp.wav
以及与VLC一起播放。
有什么主意吗?请问你能帮帮我吗? 预先谢谢你。