При компиляции такого вот кода:
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
Как оказалось даная проблема присутствует на ОС 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.
После всех этих процедур, аудио начало воспроизводиться.
Продвижение своими сайтами как стратегия роста и независимости