QMediaPlayer. Не воспроизводит аудио

549
22 января 2017, 15:27

При компиляции такого вот кода:

QMediaPlayer *player = new QMediaPlayer;
    player->setMedia(QUrl::fromLocalFile(":/music.mp3"));
    player->play();

Программа выдает:

defaultServiceProvider::requestService(): no service found for - "org.qt-project.qt.mediaplayer"

И аудио не работает. Как решить даную проблему?

ОС Ubuntu 16.04; Qt 5.7.0. Qt Creator 4.1.0

Answer 1

Как оказалось даная проблема присутствует на ОС Ubuntu 14 и выше. На Windows, насколько я проверял, этой проблемы не должно быть (во всяком случае у меня нет). Решил я это дело переустановкой GStreamer'a версии 0.10 (apt-get install gstreamer0.10).

Так же, (в моем случае), данный код: QUrl::fromLocalFile(":/music.mp3") не локализирует папку з проектом и не находит нужный файл. Поэтому нужно указывать полный путь к файлу: QUrl::fromLocalFile(QApplication::applicationDirPath() + "/music.wav"). Еще важный момент - мой GStreamer не захотел работать с форматом .mp3, поэтому декодировал его в .wav. После всех этих процедур, аудио начало воспроизводиться.

READ ALSO
ZeroMQ не отправляет сообщения

ZeroMQ не отправляет сообщения

Подскажите по библиотеке Zmq(Она же 0mq, и она же Zeromq)

299
Дождаться завершения потока

Дождаться завершения потока

Потоки создаются в цикле, и их количество заранее не известно

298
Работа с массивами С++

Работа с массивами С++

Дано массив A размером N (1 < N < 10^ 9)Найти такое максимальное К, что А[i] % k = A[j] % k , для всех {i,j}

323
Явное указание постоянства ссылок, в чем смысл?

Явное указание постоянства ссылок, в чем смысл?

Как известно, ссылки нельзя переназначать, поскольку они все время ссылаются на один и тот же объект и, следовательно, всегда постоянныОднако...

298