QAudioDecoder возвращает недопустимый QAudioFormat в Xubuntu 18.04 - PullRequest
0 голосов
/ 03 апреля 2019

Я не могу заставить 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.

Есть идеи?Не могли бы вы мне помочь, пожалуйста?Заранее спасибо.

...