LinuxQuestions.org

LinuxQuestions.org (/questions/)
-   Linux From Scratch (https://www.linuxquestions.org/questions/linux-from-scratch-13/)
-   -   Phonon-backend-gstreamer-4.8.0 (https://www.linuxquestions.org/questions/linux-from-scratch-13/phonon-backend-gstreamer-4-8-0-a-4175527066/)

re_nelson 12-02-2014 03:10 AM

Phonon-backend-gstreamer-4.8.0
 
Before I spend much more time on this annoyance, I want to find out if others are experiencing the same issue. Details will come after I describe the situation in a simplified howto form:

1). In KDE SC 4 (4.14.3), set "System Settings-Multimedia->Backend" to "GStreamer" rather than the default of "VLC". Make a note of the "GStreamer" version displayed on that panel.

2). Logout for the setting to take effect.

3). Upon logging back in, visit "System Settings-Multimedia->Device Preference". Choose the first device in the right pane and then press "Test".

Is there sound or does the "Test" button remain pressed?

Now for the details. When the Phonon developers advanced from version 4.7.2 to 4.8.0 of the GStreamer backend, they changed from the older gstreamer-0.10 to the newer 1.0 version. At or near that timeframe, they also opted to prefer VLC over GStreamer.

For various reasons (some of which involve Amarok), I prefer to stick with "GStreamer". But the change from linking against gstreamer-0.10 to gstreamer-1.0 results in no audio in spite of gstreamer-1.4.4 and all of its plugins built cleanly. Digging deeper, this stderr message occurs with Amarok when attempting playback:

Code:

GStreamer-CRITICAL **: void gst_mini_object_unref(GstMiniObject *): assertion `GST_IS_MINI_OBJECT (mini_object)' failed
Evidently it's not limited to just my (B)LFS (SVN) system. PC-BSD 10.1, FreeBSD-10.1, Gentoo2 ~amd64 are other systems where the problem also occurs. The one system where it works is Arch, which like my LFS system uses the latest versions. Systems where the GStreamer backend work include Fedora 20 and CentOS-7 but they use a pre-4.8.0 version of the phonon-gstreamer backend. And I can likewise "fix" it by reverting to 4.7.2.

This is already a lengthy post and I'll cut it off here unless more detail is desired from anyone. Pragmatically, I'm satisfied by regressing to 4.7.2 but since LFS is designed for the innately curious, well, I'm intrigued by this problem. The first problem I've had in nearly a year.

ReaperX7 12-02-2014 04:00 AM

I've had trouble with KDE getting to set the default backend on my end.

re_nelson 12-02-2014 04:03 AM

Quote:

Originally Posted by ReaperX7 (Post 5278065)
I've had trouble with KDE getting to set the default backend on my end.

What do you mean by "trouble"? Please describe the steps you took and the results after taking those steps.

ReaperX7 12-02-2014 04:09 AM

I selected GStreamer as my default backend and about 10 minutes later a popup appeared saying my audio backend was switched on me. Checked the Phonon backend settings and it was reset somehow automatically.

re_nelson 12-02-2014 04:18 AM

Quote:

Originally Posted by ReaperX7 (Post 5278067)
I selected GStreamer as my default backend and about 10 minutes later a popup appeared saying my audio backend was switched on me. Checked the Phonon backend settings and it was reset somehow automatically.

I presume it was switched back to VLC? Right?

What are you versions for these components?

1). Phonon
2). Phonon-backend-{GStreamer,VLC}
3). QT4
4). KDE
5). gtreamer-1 (1.4.4 or earlier?)
6). gstreamer-0.10

And during the interval when you DID have GStreamer as the backend, what transpired when you hit the "Test" button?

re_nelson 12-02-2014 04:50 AM

I came across a links that seems to get to the crux of the problem topical to this thread:

https://bugs.archlinux.org/task/41908

Looking at the linkage of shared libraries and running a trace, I see there's a conflict arising with gstreamer-0.10 and the newer 1.X.X series. The BLFS book states:

Code:

GStreamer 1.0 series is not API or ABI compatible with GStreamer 0.10 series and both can be installed on the same system.
That was the indeed case until phonon-4.8.0 came along to muddy the waters. Looks like the libQtWebKit shared library from QT4's 3rdparty source may need to be replaced with this one:

Code:

gitorious.org/webkit/webkit
If that's the remedy, I'll let Bruce know of my findings. OTHO, sticking with the older 4.7.2 phonon-gtreamer package is an alternate remedy.

ReaperX7 12-02-2014 04:51 AM

Yep, VLC.

I'm using the BLFS 7.6 versions.

When I tested it, the audio sounded.

re_nelson 12-02-2014 05:16 AM

Quote:

Originally Posted by ReaperX7 (Post 5278081)
I'm using the BLFS 7.6 versions.

One last thing to satisfy my curiosity. What version does your libQtWebKit.so.4 shared library link against for [b]libgstapp]/b]? Is it 0.10 or 1.0?

re_nelson 12-02-2014 02:20 PM

As noted in the Arch PKGBUILD scripts, the remedy is to build qt4 with "no-webkit" and build the new standalone version of qtwebkit which links against the newer gstreamer-1 rather than gstreamer-0.10.

The BLFS instructions are correct in that both the 1 and 0.10 versions can co-exist but the libQtWebkit.so must be built independently, not the 3rdparty version packaged into qt4.

Here are the two links I found useful on remedy this and thus marked the thread as SOLVED:

https://projects.archlinux.org/svnto...h=packages/qt4
https://projects.archlinux.org/svnto...kages/qtwebkit

bl0tt0 01-19-2015 10:15 PM

Sorry to bring up a dead thread like this, but what configure flags did you use in the SlackBuild to get it to run with -no-webkit? I've been trying to get qt4 to build with -no-webkit for the last couple of days, and it errors out every time. Oddly, I was getting the same errors when simply building qt4 from ABS in Arch as well.

re_nelson 01-19-2015 10:52 PM

Quote:

Originally Posted by bl0tt0 (Post 5303762)
Sorry to bring up a dead thread like this, but what configure flags did you use in the SlackBuild to get it to run with -no-webkit? I've been trying to get qt4 to build with -no-webkit for the last couple of days, and it errors out every time. Oddly, I was getting the same errors when simply building qt4 from ABS in Arch as well.

The patch to prevent building against webkit is here:

http://sourceforge.net/p/cygwin-port...o-webkit.patch

bl0tt0 01-20-2015 09:35 AM

Awesome! Thanks for that link. Odd that the patch isn't included in the Arch PKGBUILD...

re_nelson 01-20-2015 11:24 AM

Quote:

Originally Posted by bl0tt0 (Post 5303988)
Awesome! Thanks for that link. Odd that the patch isn't included in the Arch PKGBUILD...

That surprised me as well. It took some digging to find the patch but it sure resolved everything thereafter.


All times are GMT -5. The time now is 11:10 PM.