You are not logged in.

#1 2020-01-20 15:49:16

quequotion
Member
From: Oita, Japan
Registered: 2013-07-29
Posts: 813
Website

[SOLVED] Add libmfx to gst-libav depends() (fix broken AV in epiphany)

When attempting to watch videos on many sites, they fail to play* and epiphany outputs this warning:

(WebKitWebProcess:2): GStreamer-WARNING **: [timestamp]: Failed to load plugin '/usr/lib/gstreamer-1.0/libgstlibav.so': libmfx.so.1: cannot open shared object file: No such file or directory

ie, it is not a direct dependency of epiphany, but of gst-libav?

After installing libmfx from [community], the warnings disappear and videos work.

Relevant package versions:
extra/gst-libav 1.16.2-1
community/libmfx 1.25-3
extra/epiphany 3.34.3.1-1

*In various ways; not sure what differentiates the particular types of failure. For most, the progress bar proceeds as if they were playing while the display is black--sometimes with audio and sometimes without, although a speaker icon indicates the presence of an audio track; GIFVs usually freeze on their first frame and remain there forever (a rare few play); some videos freeze on their preview thumbnail instead of going black.

SOLVED: libmfx ended up being added to depends() in gst-libav's dependency ffmpeg and intel-media-sdk's depends(), not in regard to this issue, which was caused by webkit2gtk's use of bubblewrap to sandbox itself--ignoring the libmfx provided by the older version of intel-media-sdk in /opt/.

Last edited by quequotion (2020-01-25 14:07:29)

Offline

#2 2020-01-20 15:53:34

Scimmia
Fellow
Registered: 2012-09-01
Posts: 11,561

Re: [SOLVED] Add libmfx to gst-libav depends() (fix broken AV in epiphany)

gst-libav depends on ffmpeg, which depends on intel-media-sdk, so this is already covered.

Online

#3 2020-01-20 21:23:52

quequotion
Member
From: Oita, Japan
Registered: 2013-07-29
Posts: 813
Website

Re: [SOLVED] Add libmfx to gst-libav depends() (fix broken AV in epiphany)

Scimmia wrote:

gst-libav depends on ffmpeg, which depends on intel-media-sdk, so this is already covered.

I see that:

pacman -Qi intel-media-sdk
Name            : intel-media-sdk
Version         : 19.4.0-1
Description     : API to access hardware-accelerated video decode, encode and filtering on Intel
                  platforms with integrated graphics
Architecture    : x86_64
URL             : https://github.com/Intel-Media-SDK/MediaSDK/
Licenses        : MIT
Groups          : None
Provides        : libmfx
Depends On      : gcc-libs  libdrm  libva  wayland  intel-media-driver
Optional Deps   : ocl-icd: for rotate_opencl plugin
                  intel-compute-runtime: for rotate_opencl plugin
Required By     : ffmpeg
Optional For    : None
Conflicts With  : None
Replaces        : None
Installed Size  : 28.74 MiB
Packager        : Daniel Bermond <dbermond@archlinux.org>
Build Date      : Sat 04 Jan 2020 04:08:47 AM JST
Install Date    : Mon 13 Jan 2020 11:13:26 PM JST
Install Reason  : Installed as a dependency for another package
Install Script  : Yes
Validated By    : Signature
pacman -Ql intel-media-sdk
intel-media-sdk /etc/
intel-media-sdk /etc/ld.so.conf.d/
intel-media-sdk /etc/ld.so.conf.d/intel-media-sdk.conf
intel-media-sdk /etc/profile.d/
intel-media-sdk /etc/profile.d/intel-media-sdk.sh
intel-media-sdk /opt/
intel-media-sdk /opt/intel/
intel-media-sdk /opt/intel/mediasdk/
intel-media-sdk /opt/intel/mediasdk/bin/
intel-media-sdk /opt/intel/mediasdk/bin/asg-hevc
intel-media-sdk /opt/intel/mediasdk/bin/hevc_fei_extractor
intel-media-sdk /opt/intel/mediasdk/include/
intel-media-sdk /opt/intel/mediasdk/include/mfx/
intel-media-sdk /opt/intel/mediasdk/include/mfx/mfxadapter.h
intel-media-sdk /opt/intel/mediasdk/include/mfx/mfxastructures.h
intel-media-sdk /opt/intel/mediasdk/include/mfx/mfxaudio++.h
intel-media-sdk /opt/intel/mediasdk/include/mfx/mfxaudio.h
intel-media-sdk /opt/intel/mediasdk/include/mfx/mfxbrc.h
intel-media-sdk /opt/intel/mediasdk/include/mfx/mfxcamera.h
intel-media-sdk /opt/intel/mediasdk/include/mfx/mfxcommon.h
intel-media-sdk /opt/intel/mediasdk/include/mfx/mfxdefs.h
intel-media-sdk /opt/intel/mediasdk/include/mfx/mfxdispatcherprefixedfunctions.h
intel-media-sdk /opt/intel/mediasdk/include/mfx/mfxenc.h
intel-media-sdk /opt/intel/mediasdk/include/mfx/mfxfei.h
intel-media-sdk /opt/intel/mediasdk/include/mfx/mfxfeihevc.h
intel-media-sdk /opt/intel/mediasdk/include/mfx/mfxjpeg.h
intel-media-sdk /opt/intel/mediasdk/include/mfx/mfxla.h
intel-media-sdk /opt/intel/mediasdk/include/mfx/mfxmvc.h
intel-media-sdk /opt/intel/mediasdk/include/mfx/mfxpak.h
intel-media-sdk /opt/intel/mediasdk/include/mfx/mfxpcp.h
intel-media-sdk /opt/intel/mediasdk/include/mfx/mfxplugin++.h
intel-media-sdk /opt/intel/mediasdk/include/mfx/mfxplugin.h
intel-media-sdk /opt/intel/mediasdk/include/mfx/mfxsc.h
intel-media-sdk /opt/intel/mediasdk/include/mfx/mfxscd.h
intel-media-sdk /opt/intel/mediasdk/include/mfx/mfxsession.h
intel-media-sdk /opt/intel/mediasdk/include/mfx/mfxstructures.h
intel-media-sdk /opt/intel/mediasdk/include/mfx/mfxvideo++.h
intel-media-sdk /opt/intel/mediasdk/include/mfx/mfxvideo.h
intel-media-sdk /opt/intel/mediasdk/include/mfx/mfxvp8.h
intel-media-sdk /opt/intel/mediasdk/include/mfx/mfxvp9.h
intel-media-sdk /opt/intel/mediasdk/include/mfx/mfxvstructures.h
intel-media-sdk /opt/intel/mediasdk/lib/
intel-media-sdk /opt/intel/mediasdk/lib/libcttmetrics.so
intel-media-sdk /opt/intel/mediasdk/lib/libmfx.so
intel-media-sdk /opt/intel/mediasdk/lib/libmfx.so.1
intel-media-sdk /opt/intel/mediasdk/lib/libmfx.so.1.31
intel-media-sdk /opt/intel/mediasdk/lib/libmfxhw64.so
intel-media-sdk /opt/intel/mediasdk/lib/libmfxhw64.so.1
intel-media-sdk /opt/intel/mediasdk/lib/libmfxhw64.so.1.31
intel-media-sdk /opt/intel/mediasdk/lib/mfx/
intel-media-sdk /opt/intel/mediasdk/lib/mfx/libmfx_h264la_hw64.so
intel-media-sdk /opt/intel/mediasdk/lib/mfx/libmfx_hevc_fei_hw64.so
intel-media-sdk /opt/intel/mediasdk/lib/mfx/libmfx_hevcd_hw64.so
intel-media-sdk /opt/intel/mediasdk/lib/mfx/libmfx_hevce_hw64.so
intel-media-sdk /opt/intel/mediasdk/lib/mfx/libmfx_vp8d_hw64.so
intel-media-sdk /opt/intel/mediasdk/lib/mfx/libmfx_vp9d_hw64.so
intel-media-sdk /opt/intel/mediasdk/lib/mfx/libmfx_vp9e_hw64.so
intel-media-sdk /opt/intel/mediasdk/lib/pkgconfig/
intel-media-sdk /opt/intel/mediasdk/lib/pkgconfig/libmfx.pc
intel-media-sdk /opt/intel/mediasdk/lib/pkgconfig/libmfxhw64.pc
intel-media-sdk /opt/intel/mediasdk/lib/pkgconfig/mfx.pc
intel-media-sdk /opt/intel/mediasdk/share/
intel-media-sdk /opt/intel/mediasdk/share/mfx/
intel-media-sdk /opt/intel/mediasdk/share/mfx/plugins.cfg
intel-media-sdk /opt/intel/mediasdk/share/mfx/samples/
intel-media-sdk /opt/intel/mediasdk/share/mfx/samples/libcttmetrics.so
intel-media-sdk /opt/intel/mediasdk/share/mfx/samples/libmfx_wayland.so
intel-media-sdk /opt/intel/mediasdk/share/mfx/samples/libsample_plugin_opencl.so
intel-media-sdk /opt/intel/mediasdk/share/mfx/samples/libsample_rotate_plugin.so
intel-media-sdk /opt/intel/mediasdk/share/mfx/samples/libvpp_plugin.a
intel-media-sdk /opt/intel/mediasdk/share/mfx/samples/metrics_monitor
intel-media-sdk /opt/intel/mediasdk/share/mfx/samples/ocl_rotate.cl
intel-media-sdk /opt/intel/mediasdk/share/mfx/samples/sample_decode
intel-media-sdk /opt/intel/mediasdk/share/mfx/samples/sample_encode
intel-media-sdk /opt/intel/mediasdk/share/mfx/samples/sample_fei
intel-media-sdk /opt/intel/mediasdk/share/mfx/samples/sample_hevc_fei
intel-media-sdk /opt/intel/mediasdk/share/mfx/samples/sample_hevc_fei_abr
intel-media-sdk /opt/intel/mediasdk/share/mfx/samples/sample_multi_transcode
intel-media-sdk /opt/intel/mediasdk/share/mfx/samples/sample_vpp
intel-media-sdk /usr/
intel-media-sdk /usr/share/
intel-media-sdk /usr/share/licenses/
intel-media-sdk /usr/share/licenses/intel-media-sdk/
intel-media-sdk /usr/share/licenses/intel-media-sdk/LICENSE

And yet one must install libmfx:

pacman -Ql libmfx
libmfx /usr/
libmfx /usr/include/
libmfx /usr/include/mfx/
libmfx /usr/include/mfx/mfxastructures.h
libmfx /usr/include/mfx/mfxaudio.h
libmfx /usr/include/mfx/mfxbrc.h
libmfx /usr/include/mfx/mfxcamera.h
libmfx /usr/include/mfx/mfxcommon.h
libmfx /usr/include/mfx/mfxdefs.h
libmfx /usr/include/mfx/mfxenc.h
libmfx /usr/include/mfx/mfxfei.h
libmfx /usr/include/mfx/mfxfeihevc.h
libmfx /usr/include/mfx/mfxjpeg.h
libmfx /usr/include/mfx/mfxla.h
libmfx /usr/include/mfx/mfxmvc.h
libmfx /usr/include/mfx/mfxpak.h
libmfx /usr/include/mfx/mfxplugin.h
libmfx /usr/include/mfx/mfxsc.h
libmfx /usr/include/mfx/mfxsession.h
libmfx /usr/include/mfx/mfxstructures.h
libmfx /usr/include/mfx/mfxvideo.h
libmfx /usr/include/mfx/mfxvp8.h
libmfx /usr/include/mfx/mfxvp9.h
libmfx /usr/include/mfx/mfxvstructures.h
libmfx /usr/lib/
libmfx /usr/lib/libmfx.so
libmfx /usr/lib/libmfx.so.1
libmfx /usr/lib/libmfx.so.1.0.0
libmfx /usr/lib/pkgconfig/
libmfx /usr/lib/pkgconfig/libmfx.pc
libmfx /usr/share/
libmfx /usr/share/licenses/
libmfx /usr/share/licenses/libmfx/
libmfx /usr/share/licenses/libmfx/LICENSE

Else video in epiphany remains broken.

Last edited by quequotion (2020-01-21 01:06:35)

Offline

#4 2020-01-21 03:28:30

Scimmia
Fellow
Registered: 2012-09-01
Posts: 11,561

Re: [SOLVED] Add libmfx to gst-libav depends() (fix broken AV in epiphany)

Sounds more like your linker is broken

Online

#5 2020-01-23 08:14:04

quequotion
Member
From: Oita, Japan
Registered: 2013-07-29
Posts: 813
Website

Re: [SOLVED] Add libmfx to gst-libav depends() (fix broken AV in epiphany)

Scimmia wrote:

Sounds more like your linker is broken

I didn't build the packages from source; just installed them from their respective binary repositories with pacman.

Offline

#6 2020-01-23 11:13:04

Lone_Wolf
Forum Moderator
From: Netherlands, Europe
Registered: 2005-10-04
Posts: 11,925

Re: [SOLVED] Add libmfx to gst-libav depends() (fix broken AV in epiphany)

gst-libav was last built on 2019-12-06 20:43 UTC , ffmpeg gained intel-media-sdk as dep on     2020-01-04 12:05:51 .

libmfx is being splitoff from intel-media-sdk and ffmpeg-testing already depends on libfmx with intel-media-sdk as optdepend.
libmfx in community will switch to having the same version of libfmx as intel-media-sdk.

quequotion, I suggest you file a bug report to ensure gst-libav will be rebuilt against newest ffmpeg .


Disliking systemd intensely, but not satisfied with alternatives so focusing on taming systemd.


(A works at time B)  && (time C > time B ) ≠  (A works at time C)

Offline

#7 2020-01-23 12:33:22

Scimmia
Fellow
Registered: 2012-09-01
Posts: 11,561

Re: [SOLVED] Add libmfx to gst-libav depends() (fix broken AV in epiphany)

quequotion wrote:
Scimmia wrote:

Sounds more like your linker is broken

I didn't build the packages from source; just installed them from their respective binary repositories with pacman.

Which has noting to do with what I said. The version of intel-media-sdk in question puts a file in /etc/ld.so.conf.d/ so that the dynamic linker can find the libraries. If that didn't work, you've broken something.

Online

#8 2020-01-23 12:35:35

Scimmia
Fellow
Registered: 2012-09-01
Posts: 11,561

Re: [SOLVED] Add libmfx to gst-libav depends() (fix broken AV in epiphany)

Lone_Wolf wrote:

quequotion, I suggest you file a bug report to ensure gst-libav will be rebuilt against newest ffmpeg .

I would strongly suggest that you don't, since that has nothing to do with anything here.

Online

#9 2020-01-23 15:46:13

quequotion
Member
From: Oita, Japan
Registered: 2013-07-29
Posts: 813
Website

Re: [SOLVED] Add libmfx to gst-libav depends() (fix broken AV in epiphany)

Scimmia wrote:

I would strongly suggest that you don't, since that has nothing to do with anything here.

Full disclosure, the very reason I have not yet done so was anticipating just this very teeth-pulling process of proving that the issue I am experiencing is real and valid.

My current arch installation isn't absolutely vanilla, but it is rather fresh. I find it unlikely that my "linker is broken", but if you know of a way to prove that please help by providing a means to demonstrate it as I do not know of any.

Lone_Wolf wrote:

quequotion, I suggest you file a bug report to ensure gst-libav will be rebuilt against newest ffmpeg .

Sounds like there are a few more teeth to pull before that's going to work out.

Offline

#10 2020-01-23 17:58:00

eschwartz
Fellow
Registered: 2014-08-08
Posts: 4,097

Re: [SOLVED] Add libmfx to gst-libav depends() (fix broken AV in epiphany)

quequotion wrote:
Scimmia wrote:

I would strongly suggest that you don't, since that has nothing to do with anything here.

Full disclosure, the very reason I have not yet done so was anticipating just this very teeth-pulling process of proving that the issue I am experiencing is real and valid.

My current arch installation isn't absolutely vanilla, but it is rather fresh. I find it unlikely that my "linker is broken", but if you know of a way to prove that please help by providing a means to demonstrate it as I do not know of any.

Does ldconfig -p report any files in /opt/intel/mediasdk, e.g. ldconfig -p | grep libmfx.so

Lone_Wolf wrote:

quequotion, I suggest you file a bug report to ensure gst-libav will be rebuilt against newest ffmpeg .

Sounds like there are a few more teeth to pull before that's going to work out.

I mean, well, this is a lot worse even. Because gst-libav is not trying to link to ffmpeg, it is trying to link to libmfx... how will rebuilding the package fix this... even if rebuilding did do something, the "something" would be rebuilding it against *libmfx*.

The suggestion was bananas in the first place due to not being applicable to the way software works.


Managing AUR repos The Right Way -- aurpublish (now a standalone tool)

Offline

#11 2020-01-23 22:57:56

Lone_Wolf
Forum Moderator
From: Netherlands, Europe
Registered: 2005-10-04
Posts: 11,925

Re: [SOLVED] Add libmfx to gst-libav depends() (fix broken AV in epiphany)

eschwartz wrote:

The suggestion was bananas in the first place due to not being applicable to the way software works.

My goal for posting in this thread was and is to solve problems , not figuring out the way software works.

Situation :
epiphany crashes on system of user quequotion
error mesage points to libgstlibav.so not able to use libmfx.so.1
Quequotion finds that installing libfmx from community solves this.
libgstlibav.so belongs to gst-libav 1.16.2-1 , build date december 6 2019.

Probable cause : gst-libav 1.16.2-1 appears to be linked against libmfx community package although libmfx is not a dependency .

archlinux has 2 libmfx implementations, one in intel-media-sdk and one in libmfx package.
ffmpeg very recently gained a dependency on libmfx from intel-media-sdk .

ffmpeg + intel-media-sdk maintaIners decided to
- make intel-media-sdk a split pacakge, so ffmpeg can depend on libmfx from intel-media-sdk.
intel-media-sdk can then become an optional dependency for ffmpeg.
the libmfx package in community will be replaced by the libmfx

Suppose gst-libav is rebuild against latest archlinux ffmpeg package .
ffmpeg will pull in latest libmfx
gst-libav is linked against current ffmpeg and libmfx.

User installs rebuilt gst-libav which pulls in latest ffmpeg which pulls in libmfx.
User no longer gets crashes from epiphany due to gst-libav problem with missing libmfx .

problem solved.


Quequotion ,
I know STRONGLY ADVISE you to create a bug report asking for a rebuild of gst-libav and refer to this thread in the BR.
If any archlinux bug wrangler tries to close the BR, block the BR or prevents the gst-libav maintainer from dealing with this bug in any way :

Contact forum administrators and ask them to use archlinux internal channels to get the info from this thread to gst-libav maintainer directly.


--------------------------------------
Personal sidenote to any readers :
Yes, I was angry when I wrote this reply.
I tried to keep things civil, if i failed in that I apologise.


Disliking systemd intensely, but not satisfied with alternatives so focusing on taming systemd.


(A works at time B)  && (time C > time B ) ≠  (A works at time C)

Offline

#12 2020-01-23 23:43:11

quequotion
Member
From: Oita, Japan
Registered: 2013-07-29
Posts: 813
Website

Re: [SOLVED] Add libmfx to gst-libav depends() (fix broken AV in epiphany)

eschwartz wrote:

Does ldconfig -p report any files in /opt/intel/mediasdk, e.g. ldconfig -p | grep libmfx.so

It does:

ldconfig -p | grep libmfx.so
899:	libmfx.so.1 (libc6,x86-64) => /opt/intel/mediasdk/lib/libmfx.so.1
900:	libmfx.so.1 (libc6,x86-64) => /usr/lib/libmfx.so.1
901:	libmfx.so (libc6,x86-64) => /opt/intel/mediasdk/lib/libmfx.so
902:	libmfx.so (libc6,x86-64) => /usr/lib/libmfx.so
Lone_Wolf wrote:

I know STRONGLY ADVISE you to create a bug report asking for a rebuild of gst-libav and refer to this thread in the BR.

Ok, I will do that. Here it is!

Last edited by quequotion (2020-01-24 00:06:31)

Offline

#13 2020-01-24 00:48:33

Scimmia
Fellow
Registered: 2012-09-01
Posts: 11,561

Re: [SOLVED] Add libmfx to gst-libav depends() (fix broken AV in epiphany)

Congratulations, Lone_Wolf, you just got quequotion's bug tracker account disabled.

When you have no clue what you're talking about, you should really stay out of it.

Last edited by Scimmia (2020-01-24 00:53:22)

Online

#14 2020-01-24 02:11:27

eschwartz
Fellow
Registered: 2014-08-08
Posts: 4,097

Re: [SOLVED] Add libmfx to gst-libav depends() (fix broken AV in epiphany)

Lone_Wolf wrote:
eschwartz wrote:

The suggestion was bananas in the first place due to not being applicable to the way software works.

My goal for posting in this thread was and is to solve problems , not figuring out the way software works.

Solving problems without understanding the problem is... difficult. In particular, you are solving no problems here, because the problem is "how does loading shared libraries work", something which you're now saying you don't know and aren't interested in learning?


Lone_Wolf wrote:

Situation :
epiphany crashes on system of user quequotion
error mesage points to libgstlibav.so not able to use libmfx.so.1
Quequotion finds that installing libfmx from community solves this.
libgstlibav.so belongs to gst-libav 1.16.2-1 , build date december 6 2019.

Probable cause : gst-libav 1.16.2-1 appears to be linked against libmfx community package although libmfx is not a dependency .

You don't and cannot link to a "package". You link to a *file*. That file's name is "libmfx.so.1". It doesn't matter what the file is, the file could contain Microsoft Visual Studio as a shared library instead of libmfx and *it would solve the problem*. At least enough that you would not get the mentioned error. (You might get other errors, such as "ffmpeg: error while loading shared libraries: libmfx.so.1: cannot dynamically load position-independent executable" if Visual Studio is not actually a shared library, or "ffmpeg: symbol lookup error: /usr/lib/libavutil.so.56: undefined symbol: MFXVideoCORE_SetHandle, version LIBMFX_1.0" if it is a shared library but is missing functions that cannot be found now.)

Lone_Wolf wrote:

archlinux has 2 libmfx implementations, one in intel-media-sdk and one in libmfx package.
ffmpeg very recently gained a dependency on libmfx from intel-media-sdk .

/usr/bin/ffmpeg did not, nor did /usr/lib/libavcodec.so.58.54.100 or /usr/lib/libavfilter.so.7.57.100 or /usr/lib/libavutil.so.56.31.100, however, the ffmpeg package metadata did.

/usr/lib/libavcodec.so.58.54.100 and /usr/lib/libavfilter.so.7.57.100 and /usr/lib/libavutil.so.56.31.100 did add a dependency on the existence of a file named "libmfx.so.1", which will be looked for in several directories including /usr/lib and /opt/intel/mediasdk/lib/

Lone_Wolf wrote:

ffmpeg + intel-media-sdk maintaIners decided to
- make intel-media-sdk a split pacakge, so ffmpeg can depend on libmfx from intel-media-sdk.
intel-media-sdk can then become an optional dependency for ffmpeg.
the libmfx package in community will be replaced by the libmfx

Completely unrelated.

Lone_Wolf wrote:

Suppose gst-libav is rebuild against latest archlinux ffmpeg package .
ffmpeg will pull in latest libmfx
gst-libav is linked against current ffmpeg and libmfx.

Since ffmpeg has not changed, this is a meaningless sentence.
The ffmpeg shared libraries will still link to libmfx.so.1 the same way they used to.

Lone_Wolf wrote:

User installs rebuilt gst-libav which pulls in latest ffmpeg which pulls in libmfx.
User no longer gets crashes from epiphany due to gst-libav problem with missing libmfx .

The rebuilt gst-libav is no different from the old gst-libav. The ffmpeg package is pulled in, and the libmfx package is pulled in, and those packages happen to contain files in /usr/lib instead of /opt/intel/mediasdk/lib/, which may have the side effect of avoiding whatever is wrong with library resolution.

Lone_Wolf wrote:

Quequotion ,
I know STRONGLY ADVISE you to create a bug report asking for a rebuild of gst-libav and refer to this thread in the BR.
If any archlinux bug wrangler tries to close the BR, block the BR or prevents the gst-libav maintainer from dealing with this bug in any way :

Contact forum administrators and ask them to use archlinux internal channels to get the info from this thread to gst-libav maintainer directly.

BOTH bug wranglers have responded in the thread and told you not to. Who is this "any" you speak of...

Deliberately telling people to break the rules is bad-faith community behavior. Are you asking to get banned for attempting to stir up trouble?

You have already tricked someone else into getting their account penalized. Happy now?

quequotion wrote:
eschwartz wrote:

Does ldconfig -p report any files in /opt/intel/mediasdk, e.g. ldconfig -p | grep libmfx.so

It does:

ldconfig -p | grep libmfx.so
899:	libmfx.so.1 (libc6,x86-64) => /opt/intel/mediasdk/lib/libmfx.so.1
900:	libmfx.so.1 (libc6,x86-64) => /usr/lib/libmfx.so.1
901:	libmfx.so (libc6,x86-64) => /opt/intel/mediasdk/lib/libmfx.so
902:	libmfx.so (libc6,x86-64) => /usr/lib/libmfx.so

And for my part...

$ ldconfig -p | grep libmfx.so
	libmfx.so.1 (libc6,x86-64) => /opt/intel/mediasdk/lib/libmfx.so.1
	libmfx.so (libc6,x86-64) => /opt/intel/mediasdk/lib/libmfx.so

So, I did this to test out your issue: pacman -S epiphany gst-plugins-good gst-plugins-bad gst-libav

Then I tried running epiphany and playing some sample videos; they all worked, and I saw no errors on the console.

$ pacman -Q gst-plugins-good gst-plugins-bad epiphany intel-media-sdk libmfx
gst-plugins-good 1.16.2-1
gst-plugins-bad 1.16.2-1
epiphany 3.34.3.1-1
intel-media-sdk 19.4.0-1
intel-media-sdk 19.4.0-1

So I'm definitely running nothing but the libmfx in /opt/intel/mediasdk!

quequotion wrote:
Lone_Wolf wrote:

I know STRONGLY ADVISE you to create a bug report asking for a rebuild of gst-libav and refer to this thread in the BR.

Ok, I will do that. Here it is!

Don't do that... you did it. Against the express instructions of every single bug wrangler currently active in Arch Linux, who all replied to your thread. Because someone told you to do so using explicit wording to make it clear that you should pick a fight when the bug gets closed and "Contact forum administrators and ask them to use archlinux internal channels to get the info from this thread to gst-libav maintainer directly."


Managing AUR repos The Right Way -- aurpublish (now a standalone tool)

Offline

#15 2020-01-24 02:14:37

Scimmia
Fellow
Registered: 2012-09-01
Posts: 11,561

Re: [SOLVED] Add libmfx to gst-libav depends() (fix broken AV in epiphany)

I'm starting to wonder if firejail or something similar is causing the problem here.

Online

#16 2020-01-24 03:22:01

quequotion
Member
From: Oita, Japan
Registered: 2013-07-29
Posts: 813
Website

Re: [SOLVED] Add libmfx to gst-libav depends() (fix broken AV in epiphany)

Scimmia wrote:

quequotion's bug tracker account disabled

That's a little extreme, isn't it?

eschwartz wrote:

you did it...Because someone told you to do so using explicit wording to make it clear that you should pick a fight

No. I did it because he made, what appears to me, a logical case for how this issue may have occurred. I have no intention of picking a fight.

eschwartz wrote:

So, I did this to test out your issue: pacman -S epiphany gst-plugins-good gst-plugins-bad gst-libav

Then I tried running epiphany and playing some sample videos; they all worked, and I saw no errors on the console.

Thank you for performing an actual test.

I am not at my desktop at the moment. Have any of those packages been upgraded or repackaged since 2020-01-21 00:49:16? Also, if possible, which sites did you try? For a variety of formats in one place, a reddit feed makes a decent sampler. YouTube (HTML5?) seems to work regardless.

Scimmia wrote:

I'm starting to wonder if firejail or something similar is causing the problem here.

To my knowledge, I have not installed anything like that.

Last edited by quequotion (2020-01-24 03:51:27)

Offline

#17 2020-01-24 06:13:47

Scimmia
Fellow
Registered: 2012-09-01
Posts: 11,561

Re: [SOLVED] Add libmfx to gst-libav depends() (fix broken AV in epiphany)

How are you starting epiphany?

Online

#18 2020-01-24 06:32:36

quequotion
Member
From: Oita, Japan
Registered: 2013-07-29
Posts: 813
Website

Re: [SOLVED] Add libmfx to gst-libav depends() (fix broken AV in epiphany)

Scimmia wrote:

How are you starting epiphany?

Usually from the .desktop file, either by a dockitem in Plank or an icon in pantheon-applications-menu. To get the warning message, I ran it in pantheon-terminal.

Also, I hate to get off-topic, but how do I get my FlySpray account unlocked? Is there an appeal process?

Offline

#19 2020-01-24 06:34:43

Scimmia
Fellow
Registered: 2012-09-01
Posts: 11,561

Re: [SOLVED] Add libmfx to gst-libav depends() (fix broken AV in epiphany)

So you got this when running it from a terminal with just "epiphany"? What does `type -a epiphany` show?

Online

#20 2020-01-24 06:46:01

quequotion
Member
From: Oita, Japan
Registered: 2013-07-29
Posts: 813
Website

Re: [SOLVED] Add libmfx to gst-libav depends() (fix broken AV in epiphany)

Scimmia wrote:

So you got this when running it from a terminal with just "epiphany"?

Yes.

What does `type -a epiphany` show?

It will be several hours before I am home to use the PC, but I will try that and report back.

Offline

#21 2020-01-24 15:17:50

eschwartz
Fellow
Registered: 2014-08-08
Posts: 4,097

Re: [SOLVED] Add libmfx to gst-libav depends() (fix broken AV in epiphany)

Lone_Wolf wrote:

Quequotion ,
I know STRONGLY ADVISE you to create a bug report asking for a rebuild of gst-libav and refer to this thread in the BR.
If any archlinux bug wrangler tries to close the BR, block the BR or prevents the gst-libav maintainer from dealing with this bug in any way :

Contact forum administrators and ask them to use archlinux internal channels to get the info from this thread to gst-libav maintainer directly.


--------------------------------------
Personal sidenote to any readers :
Yes, I was angry when I wrote this reply.

quequotion wrote:

Ok, I will do that. Here it is!

eschwartz wrote:

Don't do that... you did it. Against the express instructions of every single bug wrangler currently active in Arch Linux, who all replied to your thread. Because someone told you to do so using explicit wording to make it clear that you should pick a fight when the bug gets closed and "Contact forum administrators and ask them to use archlinux internal channels to get the info from this thread to gst-libav maintainer directly."

quequotion wrote:

I have no intention of picking a fight.

Is it already Opposite Day where you live? In my part of the world, Opposite Day is tomorrow.

quequotion wrote:

Also, I hate to get off-topic, but how do I get my FlySpray account unlocked? Is there an appeal process?

It's reasonable to assume Scimmia has locked your account in order to prevent you from continuing to pick fights with the bug wranglers, or for the sake of argument, to prevent you from being the unwitting patsy of someone else who is tricking you into picking fights.

The informal appeal process might look something like "give me a reason to think you've changed".

...

Per your comment on IRC: "How am I to know that you [Scimmia] and eschwartz are the only two people involved in ArchLinux who might be able to help with my bug? I understand closing the bug, if it really is invalid, but the reporting guidelines do not mention that there are two specific people who must authorize reports to be made"

Why do you think it matters how many people there are... do you think if there is another bug wrangler, then even though two of the three have told you not to do so, the fact that the third was silent or absent means that "I wasn't unanimously told not to do it, therefore I am free to ignore them because Lone_Wolf told me to pick a fight"?

We don't need to "authorize your report". See above under "picking a fight".

quequotion wrote:

I am not at my desktop at the moment. Have any of those packages been upgraded or repackaged since 2020-01-21 00:49:16? Also, if possible, which sites did you try? For a variety of formats in one place, a reddit feed makes a decent sampler. YouTube (HTML5?) seems to work regardless.

No, they have not been upgraded, because I explicitly pointed out "So I'm definitely running nothing but the libmfx in /opt/intel/mediasdk!" Do you think I did a partial upgrade so that I have an old version of intel-media-sdk but new versions of everything else?

And I am not doing this game with you! I am not an epiphany user, I don't habitually use inferior browsers, and if you are not happy with the anonymous videos I tried, then you will give me an exact url for an exact video which you have the problem with, so that I have an exact test case that you can guarantee causes you issues. You did not provide any such information in your OP, you just said "many videos". hmm

...

On the firejail thing, epiphany does use bubblewrap, which I know because bubblewrap is broken by default on Arch, so when I first tried running epiphany it literally displayed a blank window and a ridiculous console error from bwrap, and I had to explicitly switch from the "bubblewrap" package which assumes you're crazy enough to allow unprivileged userns to random processes, to the "bubblewrap-suid" package which runs the vetted bwrap security sandbox code using setuid to acquire the same privileges and drop the ones it doesn't need, which works everywhere.

I would certainly be willing to accept I tested the wrong videos, but if so, I'll still blame the actual issue on webkit2gtk using some sort of ad-hoc guess-all-the-libdirs-and-don't-respect-ldconfig approach to configuring bwrap. It's totally what I'd expect them to do.
(Notice how this still has nothing to do with "rebuilding gst-libav". Also this will just generally be broken in various cases.)

Last edited by eschwartz (2020-01-24 15:26:54)


Managing AUR repos The Right Way -- aurpublish (now a standalone tool)

Offline

#22 2020-01-24 18:10:13

quequotion
Member
From: Oita, Japan
Registered: 2013-07-29
Posts: 813
Website

Re: [SOLVED] Add libmfx to gst-libav depends() (fix broken AV in epiphany)

eschwartz wrote:

No, they have not been upgraded, because I explicitly pointed out "So I'm definitely running nothing but the libmfx in /opt/intel/mediasdk!" Do you think I did a partial upgrade so that I have an old version of intel-media-sdk but new versions of everything else?

They haven't been upgraded "because you [said something]" is not equivalent to checking to see if any of those package versions are different from the time when I started the thread (if I posted something like that, I'd never hear the end of it). What I needed to know is if all of those packages are exactly the same versions as I have had problems with (I have been at work all day and not able to check for myself). I am doing an upgrade as I type this, and I note that ffmpeg has been upgraded, to 1:4.2.2-2; odds are your test was run with different package versions than what I was having problems with--it's entirely possible that the newer version of ffmpeg no longer has the issue that the older one did. I will find out shortly.

eschwartz wrote:

where you live? In my part of the world, Opposite Day is tomorrow.

I have already attempted to explain to you my legitimate, non-confrontational reasoning for filing the bug report. Your refusal to do anything other than have a conflict is not on me. I really am only interested in having the issue resolved; and, although I recognize the mistakes I have made, I do not understand why every single thing I say or do has to be met with such fierce outrage and unreasonable sanction all of the time. Being wrong is not malicious. I admit to being wrong, and being wrong often, but I have no intention of starting conflicts nor doing harm to any aspect of ArchLinux or its community. I am not this person you think that I am. Really. I am not.

eschwartz wrote:

It's reasonable to assume Scimmia has locked your account in order to prevent you from continuing to pick fights with the bug wranglers

Read above. I did not pick any fight with anyone. I made a bug report according to what I honestly believed to be a rational explanation for the bug I am experiencing. I am not aware of any documentd policy that states doing so against the wishes of you and Scimma is a violation that warrants having an account permanently disabled.

eschwartz wrote:

Why do you think it matters how many people there are... do you think if there is another bug wrangler, then even though two of the three have told you not to do so, the fact that the third was silent or absent means that "I wasn't unanimously told not to do it, therefore I am free to ignore them because Lone_Wolf told me to pick a fight"?

I don't think it matters how many people there are--I didn't even know how many there are until today. There is no policy that states "follow the orders of BugWranglers lest your FlySpray account be disabled without warning". On top of that, if you want to get really techincal and nitpick, Scimmia used the words "strongly suggest", not explicitly "don't do that", and by the time you did explicitly say "don't do that", it was already done.

This is not a game. I do not play such games. I am only interested in having the issue fixed--no really, that is all I care about. I am not here to cause conflicts, or defy orders, or any of the drama that has been inflicted upon me. I just want to resolve the issue.

eschwartz wrote:

You did not provide any such information in your OP, you just said "many videos". hmm

Because the vast majority are broken (without installing community/libmfx), ie "many", but not necessarly all. Perhaps I should have been more specific: Youtube, in particular, works, while most everything else does not.

eschwartz wrote:

On the firejail thing, epiphany does use bubblewrap, which I know because bubblewrap is broken by default on Arch, so when I first tried running epiphany it literally displayed a blank window and a ridiculous console error from bwrap, and I had to explicitly switch from the "bubblewrap" package which assumes you're crazy enough to allow unprivileged userns to random processes, to the "bubblewrap-suid" package which runs the vetted bwrap security sandbox code using setuid to acquire the same privileges and drop the ones it doesn't need, which works everywhere.

Ok, useful stuff. I have never heard of bubblewrap, and now I see that it is indeed installed. Never had a problem like you describe, but good to know there is something that could cause such a problem.

eschwartz wrote:

I would certainly be willing to accept I tested the wrong videos, but if so, I'll still blame the actual issue on webkit2gtk using some sort of ad-hoc guess-all-the-libdirs-and-don't-respect-ldconfig approach to configuring bwrap. It's totally what I'd expect them to do.
(Notice how this still has nothing to do with "rebuilding gst-libav". Also this will just generally be broken in various cases.)

That is within the realm of possiblity. I thought of the issue as with gst-libav finding libmfx because of the warning message output by epiphany, but of course there are times when the warning message one sees is not actually the problem that is occuring but a symptom of it.

Scimmia wrote:

What does `type -a epiphany` show?

type -a epiphany
epiphany is /usr/bin/epiphany
epiphany is /bin/epiphany

Last edited by quequotion (2020-01-25 03:24:49)

Offline

#23 2020-01-24 18:48:18

Scimmia
Fellow
Registered: 2012-09-01
Posts: 11,561

Re: [SOLVED] Add libmfx to gst-libav depends() (fix broken AV in epiphany)

Eli found this: https://github.com/WebKit/webkit/blob/d … #L722-L730

Webkit is breaking the linker search paths.

Online

#24 2020-01-24 19:31:24

eschwartz
Fellow
Registered: 2014-08-08
Posts: 4,097

Re: [SOLVED] Add libmfx to gst-libav depends() (fix broken AV in epiphany)

I pinky promise that none of them were upgraded or repackaged in the past 20 days...

Anyway, since I *have* done updates today since the last time I posted to this thread, you'll be delighted to know that for unrelated reasons, intel-media-sdk has been updated to now use /usr/lib/libmfx.so.1 instead of /opt/intel/mediasdk/lib/libmfx.so.1

So, webkit2gtk should no longer be breaking libavutil/libavfilter/libavcodec, therefore gst-libav will be correctly loaded inside of the webkit2gtk bubblewrap sandbox because all needed paths are whitelisted for binding into the security sandbox.

Now webkit2gtk is still basically broken for other use cases, but since it doesn't affect your use case, this thread is solved (pending your confirmation).

n.b. ffmpeg was only updated in order to change its "depends" metadata, as it now optionally depends on intel-media-sdk and hard depends on libmfx. gstreamer has not been updated at all.


Managing AUR repos The Right Way -- aurpublish (now a standalone tool)

Offline

#25 2020-01-25 14:36:15

quequotion
Member
From: Oita, Japan
Registered: 2013-07-29
Posts: 813
Website

Re: [SOLVED] Add libmfx to gst-libav depends() (fix broken AV in epiphany)

Scimmia wrote:

Webkit is breaking the linker search paths.

So this wasn't anything that I did, but should have affected anyone using those versions of webkit2gtk and intel-media-sdk. Neither was it a system-wide problem wth my linker, but webkit2gtk breaking only its own linking.

When you first stated that it was a problem with my linker, I assumed you were talking about linking during build time (ie, as if I'd built ffmpeg or gst-libav against the wrong version of libmfx or using a misconfigured ld; somehow leaving them stuck looking for the library in the wrong place), which is why I responded that I had not built the packages from source. I couldn't imagine that shared library linking was generally broken because that would have catastrophic consequences for my installation that I had not observed. It was only broken for one package, by itself; and now we know.

eschwartz wrote:

intel-media-sdk has been updated

To depend on community/libmfx, as of today's upgrade.

eschwartz wrote:

Now webkit2gtk is still basically broken for other use cases, but since it doesn't affect your use case, this thread is solved (pending your confirmation).

Marked as [SOLVED].

eschwartz wrote:

n.b. ffmpeg was only updated in order to change its "depends" metadata, as it now optionally depends on intel-media-sdk and hard depends on libmfx. gstreamer has not been updated at all.

So, rather than adding it as a dependency to gst-libav directly, it was added as a dependency to a dependency of it, which was apparently someone's plan all along. Neat.

Offline

Board footer

Powered by FluxBB