same bug as this: https://bugs.launchpad.net/ubuntu/+source/phonon/+bug/250772 but using fedora 16 x86_64, with phonon: phonon-backend-gstreamer-4.5.90-3.fc16.x86_64 phonon-4.5.57-3.20111031.fc16.x86_64 phonon-devel-4.5.57-3.20111031.fc16.x86_64 and qt: qt-4.8.0-0.23.rc1.fc16.x86_64
I doubt ubuntu's 2-year-old bug is relevant here, even if the symptoms seem the same.
(In reply to comment #1) > I doubt ubuntu's 2-year-old bug is relevant here, even if the symptoms seem the > same. Ok, but my program gives the same error: WARNING: bool Phonon::FactoryPrivate::createBackend() phonon backend plugin could not be loaded WARNING: bool Phonon::FactoryPrivate::createBackend() phonon backend plugin could not be loaded WARNING: bool Phonon::FactoryPrivate::createBackend() phonon backend plugin could not be loaded WARNING: bool Phonon::FactoryPrivate::createBackend() phonon backend plugin could not be loaded Phonon::createPath: Cannot connect Phonon::MediaObject(no objectName) to Phonon::AudioOutput(no objectName). WARNING: bool Phonon::FactoryPrivate::createBackend() phonon backend plugin could not be loaded
I write a simples test, using this command: Phonon::MediaObject *mediaObject = Phonon::createPlayer(Phonon::NoCategory, Phonon::MediaSource("./file.ogg")); mediaObject->play(); It worked in previous versions of qt on fedora, and still working on windows 7 with qt 4.7.4
The installation location of the Phonon stuff is the same in current Fedora 15 updates (Phonon 4.5.1) and current Fedora 16 updates (Phonon 4.5.57). I think your problem is related to, but not the same as the Ubuntu issue. What's going on is that Phonon installs to /usr/lib(64)/kde4/plugins/phonon_backend/, which is only added to the Qt plugin path for KDE Plasma sessions. I see 2 possible fixes: * unconditionally add this to the Qt plugin path (in /etc/profile.d, as we have been doing in the past, though only if KDE stuff was installed – we'd need to move this to kde-filesystem or something equally low-level instead to enforce this even for only Phonon) or * install the Phonon stuff to the default Qt plugin directory instead.
One way to find out for sure, set QT_PLUGIN_PATH=/usr/lib64/kde4/plugins does it work now?
From a irc chat with phonon dev: [12/05/11 07:19] <tdfischer> hmm [12/05/11 07:19] <tdfischer> QCoreApplication::addLibraryPath(QLatin1String(PHONON_LIBRARY_PATH)); [12/05/11 07:19] <tdfischer> if no platform plugin is loaded, that should cause QLibrary to look inside kde4/plugins So, in general, PHONON_LIBRARY_PATH should get searched regardless of whether one is in a plasma session or not. and my simple test using xfce + clementine (a qt-only phonon-using application) worked ok for me. So, it's hard to say yet.
According to the backend loading code in libphonon, it first checks if there is a platform plugin and if it provides a backend. If not, it then searches QCoreApplication::libraryPaths() + "/phonon_backend/" for the first loadable plugin. Prior to getting to this point, it adds PHONON_LIBRARY_PATH to that list, which is defined at buildtime to ${PLUGIN_INSTALL_DIR}/plugins. This feels to me like a buggy system, and not a libphonon bug. This code was added in 2008 according to git, and you seem to be the only person with this bug. Could you find out what QT_PLUGIN_PATH is and the value of libraryPath in any Trolltech.conf you find on your system?
echo $QT_PLUGIN_PATH returns an empty line. And none of the Trolltech.conf files has an line with libraryPath.
Created attachment 541013 [details] Trolltech.conf on /etc/ diretory
Created attachment 541014 [details] Trolltech.conf on $HOME/.config/ diretory
doing QT_PLUGIN_PATH=/usr/lib64/kde4/plugins doesnt solve the problem
You've some other problem then, resetting summary. Mind reproducing the test I tried? yum install clementine and, run it, (ideally with some audio files in ~/Music) what DE are you using? mind posting your code that doesn't work?
Or another simple test case, yum install qt-examples and run, /usr/lib64/qt4/examples/phonon/qmusicplayer
er, make that: /usr/lib64/qt4/examples/phonon/qmusicplayer/qmusicplayer
An strace log might also be helpful, to see where it's looking for the plugin.
Oh, and are you sure your app is 64-bit? 32-bit apps need the 32-bit phonon-backend-gstreamer multilib.
I installed phonon-backend-gstreamer 32-bits and dont work anyway.
Some error message using qmusicplayer
Created attachment 542091 [details] strace log of qmusicplayer
Well, I'll be a monkey's uncle, QT_PLUGIN_PATH= \ /usr/lib64/qt4/examples/phonon/qmusicplayer/qmusicplayer WARNING: bool Phonon::FactoryPrivate::createBackend() phonon backend plugin could not be loaded and, indeed, looking through my own strace, see no references to /usr/lib64/kde4/plugins but, QT_PLUGIN_PATH=/usr/lib64/kde4/plugins \ /usr/lib64/qt4/examples/phonon/qmusicplayer/qmusicplayer go figure. Now, here's the oops, methinks, PHONON_LIBRARY_PATH looks like a relative path according to cmake's generated files: phonon/CMakeFiles/phonon.dir/flags.make:... -DPHONON_LIBRARY_PATH=\"lib64/kde4/plugins\" I'd have expected this to be /usr/lib64/kde4/plugins instead.
Yup, according to FindKDE4Internal.cmake # PLUGIN_INSTALL_DIR - the subdirectory relative to the install prefix where plugins will be installed (default is ${KDE4_LIB_INSTALL_DIR}/kde4) So, Ill try prepending PREFIX in there somewhere diff -up phonon-4.5.57/phonon/CMakeLists.txt.plugindir phonon-4.5.57/phonon/CMakeLists.txt --- phonon-4.5.57/phonon/CMakeLists.txt.plugindir 2011-10-21 08:54:42.000000000 -0500 +++ phonon-4.5.57/phonon/CMakeLists.txt 2011-12-07 12:18:01.148682382 -0600 @@ -78,7 +78,7 @@ if (PHONON_NO_PLATFORMPLUGIN) add_definitions(-DQT_NO_PHONON_PLATFORMPLUGIN) endif (PHONON_NO_PLATFORMPLUGIN) -add_definitions(-DPHONON_LIBRARY_PATH="${PLUGIN_INSTALL_DIR}/plugins") +add_definitions(-DPHONON_LIBRARY_PATH="${CMAKE_INSTALL_PREFIX}/${PLUGIN_INSTALL_DIR}/plugins") automoc4_add_library(phonon SHARED ${phonon_LIB_SRCS}) target_link_libraries(phonon ${QT_QTCORE_LIBRARY} ${QT_QTGUI_LIBRARY}) this seems to do the trick, makes the case of unsetting QT_PLUGIN_PATH work for me without error.
phonon-4.5.57-4.20111031.fc16 has been submitted as an update for Fedora 16. https://admin.fedoraproject.org/updates/phonon-4.5.57-4.20111031.fc16
phonon-4.5.1-2.fc15 has been submitted as an update for Fedora 15. https://admin.fedoraproject.org/updates/phonon-4.5.1-2.fc15
Package phonon-4.5.1-2.fc15: * should fix your issue, * was pushed to the Fedora 15 testing repository, * should be available at your local mirror within two days. Update it with: # su -c 'yum update --enablerepo=updates-testing phonon-4.5.1-2.fc15' as soon as you are able to. Please go to the following url: https://admin.fedoraproject.org/updates/FEDORA-2011-16858/phonon-4.5.1-2.fc15 then log in and leave karma (feedback).
phonon-4.5.57-4.20111031.fc16 has been pushed to the Fedora 16 stable repository. If problems still persist, please make note of it in this bug report.
phonon-4.5.1-2.fc15 has been pushed to the Fedora 15 stable repository. If problems still persist, please make note of it in this bug report.
Problem on Fedora15 64bit : Using phonon-4.5.1-2.fc15 on X86_64 still not working. But downgrade to phonon-4.5.0-2.fc15 make things back in place (sudo yum downgrade phonon phonon-devel) This problem can be seen using /usr/lib64/qt4/examples/phonon/qmusicplayer/qmusicplayer
sounds like you're experiencing a separate problem then. The patch provided here was to fix something that has been broken in phonon since forever, 4.5.0 included. Just to restore some sanity here, Does, QT_PLUGIN_PATH=/usr/lib64/kde4/plugins \ /usr/lib64/qt4/examples/phonon/qmusicplayer/qmusicplayer make phonon-4.5.1 work for you?
Yes, QT_PLUGIN_PATH=/usr/lib64/kde4/plugins \ /usr/lib64/qt4/examples/phonon/qmusicplayer/qmusicplayer Works. But if this is a workaround, I'm not sure this is the best method (patch QT_PLUGIN_PATH prior launching our tools) Our tools use default Fedora provided Qt and Phonon packages, maybe those packages shall be configured to integrate together without any user configuration ?
OK, no that just confirms my backporting the patch for phonon-4.5 didn't work right. I'll have to look into it more. thanks for the confirmation.
phonon-4.5.1-3.fc15 has been submitted as an update for Fedora 15. https://admin.fedoraproject.org/updates/phonon-4.5.1-3.fc15
Package phonon-4.5.1-3.fc15: * should fix your issue, * was pushed to the Fedora 15 testing repository, * should be available at your local mirror within two days. Update it with: # su -c 'yum update --enablerepo=updates-testing phonon-4.5.1-3.fc15' as soon as you are able to. Please go to the following url: https://admin.fedoraproject.org/updates/FEDORA-2012-4052/phonon-4.5.1-3.fc15 then log in and leave karma (feedback).
Would you mind testing the update: # su -c 'yum update --enablerepo=updates-testing phonon and give some feedback if it works for you?
phonon-4.5.1-3.fc15 has been pushed to the Fedora 15 stable repository. If problems still persist, please make note of it in this bug report.