Error libmfx not found

ERROR: libmfx not found Usually it happens, if you forgot to specify pkg-config path (default for manual build is /opt/intel/mediasdk/lib/pkgconfig, and for apt-get is /usr/lib/x86_64-linux-gnu/pkg...

New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and
privacy statement. We’ll occasionally send you account related emails.

Already on GitHub?
Sign in
to your account


Closed

zhiga-rsp opened this issue

Dec 10, 2019

· 10 comments

Comments

@zhiga-rsp

ERROR: libmfx not found

Usually it happens, if you forgot to specify pkg-config path 
(default for manual build is /opt/intel/mediasdk/lib/pkgconfig, 
and for apt-get is /usr/lib/x86_64-linux-gnu/pkgconfig):

export PKG_CONFIG_PATH=/path/to/mediasdk/lib/pkgconfig

If you try this above, but problem still present, try to install. apt install pkg-config.
It helps for me on Ubuntu 19.10.
MSDK were installed from packages.

@dmitryermilov

Is libmfx.pc somewhere available on the system?

@zhiga-rsp

Yes
/usr/lib/x86_64-linux-gnu/pkgconfig/libmfx.pc

cat libmfx.pc

Name: mfx
Description: Intel(R) Media SDK Dispatcher
Version: 1.30

prefix=/usr
libdir=/usr/lib/x86_64-linux-gnu
includedir=/usr/include
Libs: -L${libdir} -lmfx -lstdc++ -ldl
Cflags: -I${includedir} -I${includedir}/mfx

@dmitryermilov

And what pkg-config --modversion libmfx outputs?

@dmitryermilov

@dmitryermilov

@zhiga-rsp

# pkg-config --modversion libmfx

1.30

@zhiga-rsp

@dmitryermilov

Alright. What is the output of ffbuild/config.log ?

@zhiga-rsp

Alright. What is the output of ffbuild/config.log ?
it needs more time for reproducing

@ConsoleYan

I have tried some step to solve this problem:
Step1. find your mfx.pc (mediaSDK)

$ ls `/opt/intel/mediasdk/lib/pkgconfig/`
libmfxhw64.pc  libmfx.pc      mfx.pc 

Step2. vim ~/.bashrc
export PKG_CONFIG_PATH=/opt/intel/mediasdk/lib/pkgconfig/

Step3.source ~/.bashrc

Then this error could be fix.

Hi,

I’m trying to use hardware acceleration with ffmpeg on a Ubuntu server and when I’m trying to configure ffmpeg before compile, i got this error :

ERROR: libmfx not found

I’m running Ubuntu 18.10 and a i7 6700K CPU.

I follow those two procedures :

https://www.intel.com/content/www/us/en/cloud-computing/quicksync-video-ffmpeg-install-valid.html

https://software.intel.com/en-us/articles/build-and-debug-open-source-media-stack

Here are the key command and results that make me think that libmfx is ok :

$ pkg-config --list-all| grep mfx
libmfx                libmfx - Intel Media Server Studio SDK
$ pkg-config --modversion libmfx
16.5

$ pkg-config —libs libmfx
-L/opt/intel/mediasdk/lib/lin_x64 -lmfx -lva -lstdc++ -ldl -lva-drm -ldrm Cflags: -I/opt/intel/mediasdk/include -I/usr/include/libdrm

$ cat /usr/lib/pkgconfig/libmfx.pc 
prefix=/opt/intel/mediasdk
exec_prefix=${prefix}
libdir=${prefix}/lib/lin_x64
includedir=${prefix}/include
Name: libmfx
Description: Intel Media Server Studio SDK
Version: 16.5
Libs: -L${libdir} -lmfx -lva -lstdc++ -ldl -lva-drm -ldrm Cflags: -I${includedir} -I/usr/include/libdrm

I got the last ffmpeg sources through git and try to configure :

$ ./configure --enable-nonfree --enable-libmfx
ERROR: libmfx not found

I got this error in ffbuild/config.log :

check_pkg_config libmfx libmfx mfx/mfxvideo.h MFXInit
test_pkg_config libmfx libmfx mfx/mfxvideo.h MFXInit
pkg-config --exists --print-errors libmfx
check_func_headers mfx/mfxvideo.h MFXInit -L/opt/intel/mediasdk/lib/lin_x64 -lmfx -lva -lstdc++ -ldl -lva-drm -ldrm Cflags: -I/opt/intel/mediasdk/include -I/usr/include/libdrm
test_ld cc -L/opt/intel/mediasdk/lib/lin_x64 -lmfx -lva -lstdc++ -ldl -lva-drm -ldrm Cflags: -I/opt/intel/mediasdk/include -I/usr/include/libdrm
test_cc -L/opt/intel/mediasdk/lib/lin_x64 Cflags: -I/opt/intel/mediasdk/include -I/usr/include/libdrm
BEGIN /tmp/ffconf.gJsgAWPJ/test.c
    1   #include <mfx/mfxvideo.h>
    2   #include <stdint.h>
    3   long check_MFXInit(void) { return (long) MFXInit; }
    4   int main(void) { int ret = 0;
    5    ret |= ((intptr_t)check_MFXInit) & 0xFFFF;
    6   return ret; }
END /tmp/ffconf.gJsgAWPJ/test.c
gcc -D_ISOC99_SOURCE -D_FILE_OFFSET_BITS=64 -D_LARGEFILE_SOURCE -D_POSIX_C_SOURCE=200112 -D_XOPEN_SOURCE=600 -DPIC -std=c11 -fomit-frame-pointer -fPIC -pthread -L/opt/intel/mediasdk/lib/lin_x64 Cflags: -I/opt/intel/mediasdk/include -I/usr/include/libdrm -c -o /tmp/ffconf.gJsgAWPJ/test.o /tmp/ffconf.gJsgAWPJ/test.c
gcc: error: Cflags:: No such file or directory
require libmfx mfx/mfxvideo.h MFXInit -llibmfx
check_lib libmfx mfx/mfxvideo.h MFXInit -llibmfx
check_func_headers mfx/mfxvideo.h MFXInit -llibmfx
test_ld cc -llibmfx
test_cc
BEGIN /tmp/ffconf.gJsgAWPJ/test.c
    1   #include <mfx/mfxvideo.h>
    2   #include <stdint.h>
    3   long check_MFXInit(void) { return (long) MFXInit; }
    4   int main(void) { int ret = 0;
    5    ret |= ((intptr_t)check_MFXInit) & 0xFFFF;
    6   return ret; }
END /tmp/ffconf.gJsgAWPJ/test.c
gcc -D_ISOC99_SOURCE -D_FILE_OFFSET_BITS=64 -D_LARGEFILE_SOURCE -D_POSIX_C_SOURCE=200112 -D_XOPEN_SOURCE=600 -DPIC -std=c11 -fomit-frame-pointer -fPIC -pthread -c -o /tmp/ffconf.gJsgAWPJ/test.o /tmp/ffconf.gJsgAWPJ/test.c
gcc -Wl,--as-needed -Wl,-z,noexecstack -o /tmp/ffconf.gJsgAWPJ/test /tmp/ffconf.gJsgAWPJ/test.o -llibmfx
/usr/bin/ld: cannot find -llibmfx
collect2: error: ld returned 1 exit status
ERROR: libmfx not found

Well, I don’t understand where could be the issue so any help and/or support will be warmly appreciated.

Cheers

#1 2015-06-22 11:06:50

zAo
Member
Registered: 2012-11-01
Posts: 26

pkg-config doesn’t find libmfx

Hi,

I’m trying to build ffmpeg with h264_qsv (QuickSync) support. In order to do that, I need libmfx. But pkg-config doesn’t find the libmfx files, although they are present:

PKG_CONFIG_PATH is filled with the correct path:

[root@nuc FFmpeg]# echo $PKG_CONFIG_PATH
/usr/lib/pkgconfig/

The libmfx files are there:

[root@nuc FFmpeg]# ls -l /usr/lib/pkgconfig/libmfx.*
-rw-r--r-- 1 root root 120284 Jun 20 19:25 /usr/lib/pkgconfig/libmfx.a
-rwxr-xr-x 1 root root    893 Jun 20 19:25 /usr/lib/pkgconfig/libmfx.la
-rw-r--r-- 1 root root    339 Jun 20 20:05 /usr/lib/pkgconfig/libmfx.pc

The libmfx.pc contents seems ok?

[root@nuc FFmpeg]# cat /usr/lib/pkgconfig/libmfx.pc
prefix=/usr/local
exec_prefix=${prefix}
libdir=${prefix}/lib
includedir=${prefix}/include

Name: libmfx
Description: Intel Media SDK Dispatched static library
Version: 2013
Requires:
Requires.private:
Conflicts:
Libs: -L${libdir} -lsupc++ ${libdir}/libmfx.a
Libs.private:
Cflags: -I${includedir} -I/media/downloads/opensource/SDK/include/

The header files are at the included in the SDK dir:

[root@nuc FFmpeg]# ls -l /media/downloads/opensource/SDK/include/
total 168
-rw-r--r-- 1 zao zao  4835 Jun  3 09:58 mfxastructures.h
-rw-r--r-- 1 zao zao  5479 Jun  3 09:58 mfxaudio++.h
-rw-r--r-- 1 zao zao  3493 Jun  3 10:02 mfxaudio.h
-rw-r--r-- 1 zao zao  4767 Jun  3 10:00 mfxcommon.h
-rw-r--r-- 1 zao zao  6306 Jun  3 09:58 mfxdefs.h
-rw-r--r-- 1 zao zao  2865 Jun  3 10:00 mfxenc.h
-rw-r--r-- 1 zao zao  2976 Jun  3 09:58 mfxjpeg.h
-rw-r--r-- 1 zao zao  2900 Jun  3 10:00 mfxla.h
-rw-r--r-- 1 zao zao  3048 Jun  3 09:58 mfxmvc.h
-rw-r--r-- 1 zao zao  2881 Jun  3 09:58 mfxpak.h
-rw-r--r-- 1 zao zao 28117 Jun  3 09:58 mfxplugin++.h
-rw-r--r-- 1 zao zao 11066 Jun  3 10:00 mfxplugin.h
-rw-r--r-- 1 zao zao  2647 Jun  3 09:58 mfxsession.h
-rw-r--r-- 1 zao zao 38541 Jun  3 10:00 mfxstructures.h
-rw-r--r-- 1 zao zao 10411 Jun  3 10:00 mfxvideo++.h
-rw-r--r-- 1 zao zao  6257 Jun  3 10:00 mfxvideo.h
-rw-r--r-- 1 zao zao  2690 Jun  3 09:58 mfxvp8.h
-rw-r--r-- 1 zao zao  1662 Jun  3 09:58 mfxvstructures.h

But configure cant’t find the files:

[root@nuc FFmpeg]# git pull
Already up-to-date.
[root@nuc FFmpeg]# ./configure --enable-libmfx --enable-nonfree --enable-iconv --arch=x86 --disable-debug --disable-shared --disable-doc --disable-w32threads --enable-gpl --enable-version3 --enable-runtime-cpudetect --enable-avfilter --enable-bzlib --enable-zlib --enable-librtmp --enable-gnutls --enable-avisynth --enable-frei0r --enable-filter=frei0r --enable-libbluray --enable-libcaca --enable-libopenjpeg --enable-fontconfig --enable-libfreetype --enable-libass --enable-libgsm --enable-libmodplug --enable-libmp3lame --enable-libopencore-amrnb --enable-libopencore-amrwb --enable-libvo-amrwbenc --enable-libschroedinger --enable-libsoxr --enable-libtwolame --enable-libspeex --enable-libtheora --enable-libutvideo --enable-libvorbis --enable-libvo-aacenc --enable-libopus --enable-libvidstab --enable-libvpx --enable-libwavpack --enable-libxavs --enable-libx264 --enable-libx265 --enable-libxvid --enable-libzvbi
ERROR: libmfx not found using pkg-config

If you think configure made a mistake, make sure you are using the latest
version from Git.  If the latest version fails, report the problem to the
ffmpeg-user@ffmpeg.org mailing list or IRC #ffmpeg on irc.freenode.net.
Include the log file "config.log" produced by configure as this will help
solve the problem.

Sorry for being new at this, but I really want to learn smile

Thanks in advance, zAo

#2 2015-06-22 11:18:39

ayekat
Member
Registered: 2011-01-17
Posts: 1,553
Website

Re: pkg-config doesn’t find libmfx

./configure wrote:

Include the log file «config.log» produced by configure as this will help solve the problem.

smile

Also, is there a specific reason why you are compiling something as the root user?

And:

zAo wrote:

[root@nuc FFmpeg]# ls -l /usr/lib/pkgconfig/libmfx.*
-rw-r--r-- 1 root root 120284 Jun 20 19:25 /usr/lib/pkgconfig/libmfx.a
-rwxr-xr-x 1 root root    893 Jun 20 19:25 /usr/lib/pkgconfig/libmfx.la
-rw-r--r-- 1 root root    339 Jun 20 20:05 /usr/lib/pkgconfig/libmfx.pc

Is there a reason why the .a and .la files are in /usr/lib/pkgconfig? Shouldn’t they usually be in /usr/lib?


{,META,RE}PKGBUILDS │ pacman-hacks (includes makemetapkg and remakepkg) │ dotfileslocaldir

#3 2015-06-22 11:31:04

Lone_Wolf
Member
From: Netherlands, Europe
Registered: 2005-10-04
Posts: 10,652

Re: pkg-config doesn’t find libmfx

*.a and *.la files are not supposed to be in /usr/lib/pkgconfig .

/usr/lib/pkgconfig/libmfx.pc expects files for libmfx to be present under /usr/local , /usr/locall/lib & /usr/local/include .
I don’t see a package for libmfx in repos, AUR3 or AUR4, where did you get it from ?

AUR has several packages with intel sdk , which sdk are you trying to use ?


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)

#4 2015-06-22 11:41:57

zAo
Member
Registered: 2012-11-01
Posts: 26

Re: pkg-config doesn’t find libmfx

No particular reason to compile with root, but some files were owned by root and I wanted to exclude security related problems.

I uploaded config.log here: http://sbkg0002.home.xs4all.nl/config.log

The libmfx files are also in /usr/lib/, but I made copies to differt places since I didn’t know what I was doing smile

[zao@nuc FFmpeg]$ ls -l /usr/lib/libmfx.*
-rw-r--r-- 1 root root 120284 Jun 22 11:40 /usr/lib/libmfx.a
-rwxr-xr-x 1 root root    893 Jun 22 11:40 /usr/lib/libmfx.la

Edit:
Libmfx is from here:
https://github.com/lu-zero/mfx_dispatch

Last edited by zAo (2015-06-22 11:43:31)

#5 2015-06-22 11:47:34

Trilby
Inspector Parrot
Registered: 2011-11-29
Posts: 27,833
Website

Re: pkg-config doesn’t find libmfx

zAo wrote:

… some files were owned by root and I wanted to exclude security related problems.

That will not exclude security problems.  It will create them.  If your solution to a problem you don’t understand is to try again with root, you will sooner or later, completely destroy your system (if you haven’t already).  Stop.

zAo wrote:

but I made copies to differt places

Remove these to fix the damage you have already done.  Start again and do this properly with a PKGBUILD.

zAo wrote:

I didn’t know what I was doing

Then ask before you start flailing aimlessly moving things around and running commands as root.  Now anyone who wants to help you probably has to spend more time working around the damage you’ve done to yourself rather than just helping your through the relatively easy and proper way to reach your end goals.


«UNIX is simple and coherent…» — Dennis Ritchie, «GNU’s Not UNIX» —  Richard Stallman

#6 2015-06-22 11:53:32

zAo
Member
Registered: 2012-11-01
Posts: 26

Re: pkg-config doesn’t find libmfx

I did most of the compiling with my own userid, but after one attempt with root, the ownership of the files went messy. Thanks for the advice; I will try to start from scratch.

Any ideas why pkg-config doesn’t detect the files?

@Lone_wolf: thanks. I don’t see any Intel Media SDK in AUR? I copied the needed files from a install on a other machine (to /media/downloads/opensource/SDK/ as seen in the .pc)

#7 2015-06-22 12:14:10

Lone_Wolf
Member
From: Netherlands, Europe
Registered: 2005-10-04
Posts: 10,652

Re: pkg-config doesn’t find libmfx

Looking at the mfx_dispatch site, the intel media SDK may only be needed on windows while libva does the same job for linux.

First step is to create a package for mfx_dispatch .


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)

#8 2015-06-22 12:24:05

zAo
Member
Registered: 2012-11-01
Posts: 26

Re: pkg-config doesn’t find libmfx

Did a restart from scratch: removed all *mfx* files from /usr/*, removed all build files and downloaded them again. Apart from make install, everything is run as my desktop user.

[zao@nuc mfx_dispatch]$ mkdir build && cd build
[zao@nuc build]$ cmake .. -DCMAKE_INSTALL_PREFIX=/usr/local
-- The C compiler identification is GNU 5.1.0
-- The CXX compiler identification is GNU 5.1.0
-- Check for working C compiler: /usr/bin/cc
-- Check for working C compiler: /usr/bin/cc -- works
-- Detecting C compiler ABI info
-- Detecting C compiler ABI info - done
-- Detecting C compile features
-- Detecting C compile features - done
-- Check for working CXX compiler: /usr/bin/c++
-- Check for working CXX compiler: /usr/bin/c++ -- works
-- Detecting CXX compiler ABI info
-- Detecting CXX compiler ABI info - done
-- Detecting CXX compile features
-- Detecting CXX compile features - done
-- Intel Media SDK is here: /media/downloads/git/mfx_dispatch
-- Configuring done
-- Generating done
-- Build files have been written to: /media/downloads/git/mfx_dispatch/build

Start build

[zao@nuc build]$ make -j
Scanning dependencies of target mfx
[  8%] [ 16%] [ 25%] [ 50%] [ 41%] [100%] [ 41%] [ 66%] [ 66%] [ 75%] [ 83%] [ 91%] Building CXX object CMakeFiles/mfx.dir/src/mfx_dxva2_device.cpp.o
Building CXX object CMakeFiles/mfx.dir/src/main.cpp.o
Building CXX object CMakeFiles/mfx.dir/src/mfx_library_iterator.cpp.o
Building CXX object CMakeFiles/mfx.dir/src/mfx_library_iterator_linux.cpp.o
Building CXX object CMakeFiles/mfx.dir/src/mfx_critical_section.cpp.o
Building CXX object CMakeFiles/mfx.dir/src/mfx_load_dll.cpp.o
Building CXX object CMakeFiles/mfx.dir/src/mfx_dispatcher_log.cpp.o
Building CXX object CMakeFiles/mfx.dir/src/mfx_function_table.cpp.o
Building CXX object CMakeFiles/mfx.dir/src/mfx_critical_section_linux.cpp.o
Building CXX object CMakeFiles/mfx.dir/src/mfx_load_dll_linux.cpp.o
Building CXX object CMakeFiles/mfx.dir/src/mfx_dispatcher.cpp.o
Building CXX object CMakeFiles/mfx.dir/src/mfx_win_reg_key.cpp.o
Linking CXX static library libmfx.a
[100%] Built target mfx

Install

[zao@nuc build]$ sudo make install
[100%] Built target mfx
Install the project...
-- Install configuration: ""
-- Installing: /usr/local/include/mfxjpeg.h
-- Installing: /usr/local/include/mfxplugin++.h
-- Installing: /usr/local/include/mfxastructures.h
-- Installing: /usr/local/include/mfxla.h
-- Installing: /usr/local/include/mfxenc.h
-- Installing: /usr/local/include/mfxcommon.h
-- Installing: /usr/local/include/mfxplugin.h
-- Installing: /usr/local/include/mfxvp8.h
-- Installing: /usr/local/include/mfxdefs.h
-- Installing: /usr/local/include/mfxmvc.h
-- Installing: /usr/local/include/mfxstructures.h
-- Installing: /usr/local/include/mfxvideo.h
-- Installing: /usr/local/include/mfxvstructures.h
-- Installing: /usr/local/include/mfxaudio++.h
-- Installing: /usr/local/include/mfxpak.h
-- Installing: /usr/local/include/mfxvideo++.h
-- Installing: /usr/local/include/mfxaudio.h
-- Installing: /usr/local/include/mfxsession.h
-- Installing: /usr/local/lib/pkgconfig/libmfx.pc
-- Installing: /usr/local/lib/libmfx.a

pkg-config doesn’t find the right files:

[zao@nuc build]$ pkg-config --list-all| grep mfx
[zao@nuc build]$ echo $?
1

I know that building via PKGBUILD is much cleaner, but -for me- it add additional levels of complexity.

Any tips or ideas? Thanks for your patience smile

#9 2015-06-22 12:45:51

Trilby
Inspector Parrot
Registered: 2011-11-29
Posts: 27,833
Website

Re: pkg-config doesn’t find libmfx

If you can build manually you can make a PKGBUILD.  Really.  Do it.

But in either case, you’ll either need to specify the DESTDIR for the install, or adjust pkg-config to look in /usr/local/…


«UNIX is simple and coherent…» — Dennis Ritchie, «GNU’s Not UNIX» —  Richard Stallman

#10 2015-06-22 12:51:44

Lone_Wolf
Member
From: Netherlands, Europe
Registered: 2005-10-04
Posts: 10,652

Re: pkg-config doesn’t find libmfx

-- Installing: /usr/local/lib/pkgconfig/libmfx.pc

run pkg-config —variable pc_path pkg-config

on my system :

$ pkg-config --variable pc_path pkg-config
/usr/lib/pkgconfig:/usr/share/pkgconfig
~

If your system outputs the same,  that means pkg-config doesn’t look in  /usr/local/lib/pkgconfig  .

Creating an mfx_dispatch package that installs all files in the correct locations is best solution, but if you still don’t want to do that :

pkg-config supports several environment variables, check pkg-config manpage for details.


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)

#11 2015-06-22 14:27:43

Trilby
Inspector Parrot
Registered: 2011-11-29
Posts: 27,833
Website

Re: pkg-config doesn’t find libmfx

zAo wrote:

[zao@nuc build]$ cmake .. -DCMAKE_INSTALL_PREFIX=/usr/local

Sorry I missed this the first time — but you explicitly told it to install to /usr/local.  Why did you do that?  Do you want it in /usr/local?  If so, you need to configure pkg-config as described above.  I’d just install it normally to /usr/ instead — using a PKGBUILD.


«UNIX is simple and coherent…» — Dennis Ritchie, «GNU’s Not UNIX» —  Richard Stallman

#12 2015-06-22 14:28:48

zAo
Member
Registered: 2012-11-01
Posts: 26

Re: pkg-config doesn’t find libmfx

Thanks Lone_Wolf. I rebuild for /usr/lib since my pc_path is the same:

[zao@nuc FFmpeg]$ pkg-config --variable pc_path pkg-config
/usr/lib/pkgconfig:/usr/share/pkgconfig
[zao@nuc FFmpeg]$ ls -l /usr/lib/pkgconfig/libmfx.pc
-rw-r--r-- 1 root root 330 Jun 22 14:13 /usr/lib/pkgconfig/libmfx.pc

Still no juice. I also tried with $PKG_CONFIG_LIBDIR and checked all the paths in /usr/lib/pkgconfig/libmfx.pc, but pkg-config still can’t find it.

A build for /usr (used /usr/local since its in the read.me) couldn’t be found.

Last edited by zAo (2015-06-22 14:31:09)

#13 2015-06-22 14:29:41

Trilby
Inspector Parrot
Registered: 2011-11-29
Posts: 27,833
Website

Re: pkg-config doesn’t find libmfx

What is the actual output from pkg-config commands after you have installed mfx to /usr/ ?


«UNIX is simple and coherent…» — Dennis Ritchie, «GNU’s Not UNIX» —  Richard Stallman

#14 2015-06-22 14:35:05

zAo
Member
Registered: 2012-11-01
Posts: 26

Re: pkg-config doesn’t find libmfx

Trilby wrote:

What is the actual output from pkg-config commands after you have installed mfx to /usr/ ?

From make install you mean?

[zao@nuc build]$ sudo make install
[100%] Built target mfx
Install the project...
-- Install configuration: ""
-- Installing: /usr/include/mfxjpeg.h
-- Installing: /usr/include/mfxplugin++.h
-- Installing: /usr/include/mfxastructures.h
-- Installing: /usr/include/mfxla.h
-- Installing: /usr/include/mfxenc.h
-- Installing: /usr/include/mfxcommon.h
-- Installing: /usr/include/mfxplugin.h
-- Installing: /usr/include/mfxvp8.h
-- Installing: /usr/include/mfxdefs.h
-- Installing: /usr/include/mfxmvc.h
-- Installing: /usr/include/mfxstructures.h
-- Installing: /usr/include/mfxvideo.h
-- Installing: /usr/include/mfxvstructures.h
-- Installing: /usr/include/mfxaudio++.h
-- Installing: /usr/include/mfxpak.h
-- Installing: /usr/include/mfxvideo++.h
-- Installing: /usr/include/mfxaudio.h
-- Installing: /usr/include/mfxsession.h
-- Installing: /usr/lib/pkgconfig/libmfx.pc
-- Installing: /usr/lib/libmfx.a

The .pc points to those same locations:

[zao@nuc FFmpeg]$ cat /usr/lib/pkgconfig/libmfx.pc
prefix=/usr
exec_prefix=${prefix}
libdir=${prefix}/lib
includedir=${prefix}/include

Name: libmfx
Description: Intel Media SDK Dispatched static library
Version: 2013
Requires:
Requires.private:
Conflicts:
Libs: -L${libdir} -lsupc++ ${libdir}/libmfx.a
Libs.private:
Cflags: -I${includedir} -I/media/downloads/git/mfx_dispatch

Last edited by zAo (2015-06-22 14:36:52)

#15 2015-06-22 14:40:25

Trilby
Inspector Parrot
Registered: 2011-11-29
Posts: 27,833
Website

Re: pkg-config doesn’t find libmfx

No, I mean what I said.  What is the actual output from the pkg-config command after you’ve installed properly?  I just installed mfx using a PKGBUILD, and it works fine:

$ pkg-config --cflags libmfx
-I/tmp/mfx/src/mfx 

$ pkg-config --libs libmfx                                                                                                                                                            
-lsupc++ /usr/lib/libmfx.a

«UNIX is simple and coherent…» — Dennis Ritchie, «GNU’s Not UNIX» —  Richard Stallman

#16 2015-06-22 15:12:53

zAo
Member
Registered: 2012-11-01
Posts: 26

Re: pkg-config doesn’t find libmfx

Thanks. It seems to be fine:

[zao@nuc FFmpeg]$ pkg-config --libs libmfx
-lsupc++ /usr/lib/libmfx.a
[zao@nuc FFmpeg]$  pkg-config --cflags libmfx
-I/media/downloads/git/mfx_dispatch

Are you willing to share your PKGBUILD?

Does your pkg-config —list-all| grep mfx show mfx?

Thanks again!

Last edited by zAo (2015-06-22 15:23:16)

#17 2015-06-22 18:55:14

Trilby
Inspector Parrot
Registered: 2011-11-29
Posts: 27,833
Website

Re: pkg-config doesn’t find libmfx

Here it is, but it is not quite ready to go to the AUR — so if you chose to submit it, be sure to read up a bit on that.  But it works well enough for local use:

_gitname="mfx"
pkgname="${_gitname}-git"
pkgver=0.18.e1594a0
pkgrel=1
pkgdesc=""
url=""
arch=('x86_64' 'i686')
license=('custom')
makedepends=('cmake' 'git')
source=("${_gitname}::git+https://github.com/lu-zero/mfx_dispatch.git")
sha256sums=('SKIP')

pkgver() {
        cd "${srcdir}/${_gitname}";
        echo "0.$(git rev-list --count HEAD).$(git describe --always )"
}

build() {
        cd "${srcdir}/${_gitname}";
        cmake -DCMAKE_INSTALL_PREFIX=/usr
        make
}

package() {
        cd "${srcdir}/${_gitname}";
        install -Dm644 COPYING "${pkgdir}/usr/share/licenses/mfx-git/COPYING"
        make PREFIX=/usr DESTDIR="${pkgdir}" install
}

And, yes, mfx is shown in the list output.


«UNIX is simple and coherent…» — Dennis Ritchie, «GNU’s Not UNIX» —  Richard Stallman

#18 2015-06-25 14:06:56

zAo
Member
Registered: 2012-11-01
Posts: 26

Re: pkg-config doesn’t find libmfx

Thanks again Lone_Wolf. For future users wondering:
In the ffmpeg config.log there was a hint:

gcc: warning: /usr/lib/libmfx.a: linker input file unused because linking not done
gcc -Wl,-O1,--sort-common,--as-needed,-z,relro -Wl,--as-needed -Wl,-z,noexecstack -I/media/downloads/pkg/mfx-git/src/mfx /usr/lib/libmfx.a -o /tmp/ffconf.cbRsRzcG /tmp/ffconf.8BdWlwFh.o -lsupc++ -lgsm -lfreetype -lfontconfig -lfreetype -lcaca -lbluray -lass -lgnutls -ldl -lm -llzma -lbz2 -lz -pthread
ERROR: libmfx not found using pkg-config

It was due to the use of a wrong Intel Media SDK . After installing the correct one (2015R2) and linking the ‘include’ directory to mfx_dispatch/mfx, ffmpeg compiled. (more here: https://github.com/lu-zero/mfx_dispatch/issues/4)

The problem now is that, if you start ffmpeg with h264_qsv, it cannot initiate a MFX session, but I don’t know why or how to approach that.

I give up for now.

#19 2015-07-04 06:25:52

Naoya
Member
Registered: 2015-07-04
Posts: 1

Re: pkg-config doesn’t find libmfx

The must satisfy the following conditions for using QSV.

— Install the Intel Media SDK.
— Meet the hardware specifications required by the Media SDK(Haswell core i3 is lowest)
— Apply patch included in the Intel Media SDK to the kernel.
— Apply patch included in the Intel Media SDK to the libdrm.
— Apply patch included in the Intel Media SDK to the libva.
— You must use the iHD (intel proprietary version, not i965) as VAAPI driver.

Even If meets all the conditions, it will not work.
Because libmfx on linux has serval issues.
http://stackoverflow.com/questions/2991 … red-object
https://github.com/lu-zero/mfx_dispatch/issues/11

Thanks.

This howto shows how you can use ffmpeg to hardware accelerate the video decoding and encoding if you have the proper Intel processor. Some of the Intel processors have GPU unit in them, which can be used to decode and encode video streams and it is pretty fast! High end Intel CPU could encode around 20 h264 (using faster preset) video streams on a single processor mini server as SUPERMICRO system using X11SSV-M4F.
Here are the steps how to enable the hardware options and what and how to install the software to hardware encode a video stream successful under linux – CentOS 7 distro.

For the first four steps just follow the howto “Install Intel Media Studio SDK and GPU driver from Intel Media Server Studio 2018 R1 – CentOS 7 (7.4.1708)” Here we include only the headers of the steps, because they are important part of this howto.
Installing Media Server Studio your system will get validated stack of software by Intel to build application against Media SDK interface:

  • libmfx.a dispatcher – the API for your application
  • libmfxhw64.so hardware implementation
  • related libraries (including OpenCL)
  • specific versions for libva and libdrm
  • user mode driver
  • modified i915 graphics driver module
  • kernel patches

Here are the steps:

STEP 1) Enable internal graphics in your system.

We have an article on the topic – Enable internal graphics in SUPERMICRO servers

STEP 2) Install the right CentOS 7 – 7.4.1708

We have an article on the topic – Howto do a netinstall of CentOS 7 (7.4.1708) – minimal server installation

STEP 3) Download Intel Media Server Studio 2018 R1

We have an article on the topic – Download, what is in the package Intel Media Server Studio 2018 R1 and which Linux distro it supports

STEP 4) Install Intel Media Studio SDK from Intel Media Server Studio 2018 R1

“Install Intel Media Studio SDK and GPU driver from Intel Media Server Studio 2018 R1 – CentOS 7 (7.4.1708)”

STEP 5) Tune pkgconfig libmfx (Intel library, installed with the Media Server Studio)

Create a file:

/usr/lib64/pkgconfig/libmfx.pc

with the following content:

prefix=/opt/intel/mediasdk
exec_prefix=${prefix}
libdir=${prefix}/lib/lin_x64
includedir=${prefix}/include
 
Name: libmfx
Description: Intel Media SDK
Version: 16.8
Libs: -L${libdir} -lmfx -lva -lstdc++ -ldl -lva-drm -ldrm
Cflags: -I${includedir} -I/usr/include/libdrm

STEP 6) Move the Media SDK include files in a mfx sub-directory

This is required because ffmpeg expect these files to be in a sub-directory

[root@srv ~]# mkdir /opt/intel/mediasdk/include/mfx
[root@srv ~]# cp /opt/intel/mediasdk/include/*.h /opt/intel/mediasdk/include/mfx/

STEP 7) Install yasm – a dependency for the ffmpeg software.

[root@srv ~]# wget http://www.tortall.net/projects/yasm/releases/yasm-1.3.0.tar.gz
[root@srv ~]# tar xzf yasm-1.3.0.tar.gz
[root@srv ~]# cd yasm-1.3.0
[root@srv yasm-1.3.0]# export CFLAGS="-O2 -march=native -msse3 -fomit-frame-pointer -pipe"
[root@srv yasm-1.3.0]# export CXXFLAGS="${CFLAGS}"
[root@srv yasm-1.3.0]# export CHOST="x86_64-pc-linux-gnu"
[root@srv yasm-1.3.0]# export LDFLAGS="-Wl,-O1"
[root@srv yasm-1.3.0]# ./configure
checking for a BSD-compatible install... /usr/bin/install -c
checking whether build environment is sane... yes
checking for a thread-safe mkdir -p... /usr/bin/mkdir -p
checking for gawk... gawk
....
....
....
[root@srv yasm-1.3.0]# make -j8
gcc -std=gnu99  -I.  
  -c -o genperf.o `test -f tools/genperf/genperf.c || echo './'`tools/genperf/genperf.c
gcc -std=gnu99  -I.  
  -c -o gp-perfect.o `test -f tools/genperf/perfect.c || echo './'`tools/genperf/perfect.c
gcc -std=gnu99  -I.  
  -c -o gp-phash.o `test -f libyasm/phash.c || echo './'`libyasm/phash.c
gcc -std=gnu99  -I.  
  -c -o gp-xmalloc.o `test -f libyasm/xmalloc.c || echo './'`libyasm/xmalloc.c
gcc -std=gnu99  -I.  
  -c -o gp-xstrdup.o `test -f libyasm/xstrdup.c || echo './'`libyasm/xstrdup.c
gcc -std=gnu99  -I.  
  -c -o re2c-main.o `test -f tools/re2c/main.c || echo './'`tools/re2c/main.c
gcc -std=gnu99  -I.  
  -c -o re2c-code.o `test -f tools/re2c/code.c || echo './'`tools/re2c/code.c
....
....
....
[root@srv yasm-1.3.0]# make install
make  install-recursive
make[1]: Entering directory `/root/yasm-1.3.0'
....
....
....
[root@srv yasm-1.3.0]#
[root@srv yasm-1.3.0]# ldconfig
[root@srv yasm-1.3.0]# cd ../
[root@srv ~]#

STEP 8) Download ffmpeg version 2.8.X and compile it

it is important to use this branch 2.8.X because we’ve tested with the others 3.2.X, 3.3.X, 3.4.X and there were errors and we unable to use the the GPU unit to accelerate our video decoding and encoding. Here is the different ffmpeg release https://ffmpeg.org/download.html#releases or you can use the github to download https://github.com/FFmpeg/FFmpeg/releases

[root@srv ~]# wget https://www.ffmpeg.org/releases/ffmpeg-2.8.14.tar.bz2
[root@srv ~]# tar xjf ffmpeg-2.8.14.tar.bz2
[root@srv ~]# cd ffmpeg-2.8.14
[root@srv ffmpeg-2.8.14]# export CFLAGS="-O2 -march=native -msse3 -fomit-frame-pointer -pipe"
[root@srv ffmpeg-2.8.14]# export CXXFLAGS="${CFLAGS}"
[root@srv ffmpeg-2.8.14]# export CHOST="x86_64-pc-linux-gnu"
[root@srv ffmpeg-2.8.14]# export LDFLAGS="-Wl,-O1"
[root@srv ffmpeg-2.8.14]# ./configure --enable-libmfx --prefix=/usr/local/ffmpeg-qsv
install prefix            /usr/local/ffmpeg-qsv
source path               .
C compiler                gcc
C library                 glibc
ARCH                      x86 (generic)
big-endian                no
runtime cpu detection     yes
yasm                      yes
MMX enabled               yes
MMXEXT enabled            yes
3DNow! enabled            yes
3DNow! extended enabled   yes
SSE enabled               yes
SSSE3 enabled             yes
AVX enabled               yes
XOP enabled               yes
FMA3 enabled              yes
FMA4 enabled              yes
i686 features enabled     yes
CMOV is fast              yes
EBX available             yes
EBP available             yes
debug symbols             yes
strip symbols             yes
optimize for size         no
optimizations             yes
static                    yes
shared                    no
postprocessing support    no
new filter support        yes
network support           yes
threading support         pthreads
safe bitstream reader     yes
SDL support               no
opencl enabled            no
texi2html enabled         no
perl enabled              yes
pod2man enabled           yes
makeinfo enabled          no
makeinfo supports HTML    no

Enabled programs:
ffmpeg                  ffprobe                 ffserver

External libraries:
iconv                   lzma                    zlib
libmfx

Enabled decoders:
aac                     ayuv                    frwu
aac_fixed               bethsoftvid             g2m
aac_latm                bfi                     g723_1
aasc                    bink                    g729
ac3                     binkaudio_dct           gif
ac3_fixed               binkaudio_rdft          gsm
adpcm_4xm               bintext                 gsm_ms
adpcm_adx               bmp                     h261
adpcm_afc               bmv_audio               h263
adpcm_ct                bmv_video               h263i
adpcm_dtk               brender_pix             h263p
adpcm_ea                c93                     h264
adpcm_ea_maxis_xa       cavs                    h264_qsv
adpcm_ea_r1             ccaption                hap
adpcm_ea_r2             cdgraphics              hevc
adpcm_ea_r3             cdxl                    hevc_qsv
adpcm_ea_xas            cinepak                 hnm4_video
adpcm_g722              cljr                    hq_hqa
adpcm_g726              cllc                    hqx
adpcm_g726le            comfortnoise            huffyuv
adpcm_ima_amv           cook                    iac
adpcm_ima_apc           cpia                    idcin
adpcm_ima_dk3           cscd                    idf
adpcm_ima_dk4           cyuv                    iff_byterun1
adpcm_ima_ea_eacs       dca                     iff_ilbm
adpcm_ima_ea_sead       dds                     imc
adpcm_ima_iss           dfa                     indeo2
adpcm_ima_oki           dirac                   indeo3
adpcm_ima_qt            dnxhd                   indeo4
adpcm_ima_rad           dpx                     indeo5
adpcm_ima_smjpeg        dsd_lsbf                interplay_dpcm
adpcm_ima_wav           dsd_lsbf_planar         interplay_video
adpcm_ima_ws            dsd_msbf                jacosub
adpcm_ms                dsd_msbf_planar         jpeg2000
adpcm_sbpro_2           dsicinaudio             jpegls
adpcm_sbpro_3           dsicinvideo             jv
adpcm_sbpro_4           dss_sp                  kgv1
adpcm_swf               dvbsub                  kmvc
adpcm_thp               dvdsub                  lagarith
adpcm_thp_le            dvvideo                 loco
adpcm_vima              dxa                     mace3
adpcm_xa                dxtory                  mace6
adpcm_yamaha            eac3                    mdec
aic                     eacmv                   metasound
alac                    eamad                   microdvd
alias_pix               eatgq                   mimic
als                     eatgv                   mjpeg
amrnb                   eatqi                   mjpegb
amrwb                   eightbps                mlp
amv                     eightsvx_exp            mmvideo
anm                     eightsvx_fib            motionpixels
ansi                    escape124               movtext
ape                     escape130               mp1
apng                    evrc                    mp1float
ass                     exr                     mp2
asv1                    ffv1                    mp2float
asv2                    ffvhuff                 mp3
atrac1                  ffwavesynth             mp3adu
atrac3                  fic                     mp3adufloat
atrac3p                 flac                    mp3float
aura                    flashsv                 mp3on4
aura2                   flashsv2                mp3on4float
avrn                    flic                    mpc7
avrp                    flv                     mpc8
avs                     fourxm                  mpeg1video
avui                    fraps                   mpeg2_qsv
mpeg2video              prores                  tscc2
mpeg4                   prores_lgpl             tta
mpegvideo               ptx                     twinvq
mpl2                    qcelp                   txd
msa1                    qdm2                    ulti
msmpeg4v1               qdraw                   utvideo
msmpeg4v2               qpeg                    v210
msmpeg4v3               qtrle                   v210x
msrle                   r10k                    v308
mss1                    r210                    v408
mss2                    ra_144                  v410
msvideo1                ra_288                  vb
mszh                    ralf                    vble
mts2                    rawvideo                vc1
mvc1                    realtext                vc1_qsv
mvc2                    rl2                     vc1image
mxpeg                   roq                     vcr1
nellymoser              roq_dpcm                vima
nuv                     rpza                    vmdaudio
on2avc                  rv10                    vmdvideo
opus                    rv20                    vmnc
paf_audio               rv30                    vorbis
paf_video               rv40                    vp3
pam                     s302m                   vp5
pbm                     sami                    vp6
pcm_alaw                sanm                    vp6a
pcm_bluray              sgi                     vp6f
pcm_dvd                 sgirle                  vp7
pcm_f32be               shorten                 vp8
pcm_f32le               sipr                    vp9
pcm_f64be               smackaud                vplayer
pcm_f64le               smacker                 vqa
pcm_lxf                 smc                     wavpack
pcm_mulaw               smvjpeg                 webp
pcm_s16be               snow                    webvtt
pcm_s16be_planar        sol_dpcm                wmalossless
pcm_s16le               sonic                   wmapro
pcm_s16le_planar        sp5x                    wmav1
pcm_s24be               srt                     wmav2
pcm_s24daud             ssa                     wmavoice
pcm_s24le               stl                     wmv1
pcm_s24le_planar        subrip                  wmv2
pcm_s32be               subviewer               wmv3
pcm_s32le               subviewer1              wmv3image
pcm_s32le_planar        sunrast                 wnv1
pcm_s8                  svq1                    ws_snd1
pcm_s8_planar           svq3                    xan_dpcm
pcm_u16be               tak                     xan_wc3
pcm_u16le               targa                   xan_wc4
pcm_u24be               targa_y216              xbin
pcm_u24le               tdsc                    xbm
pcm_u32be               text                    xface
pcm_u32le               theora                  xl
pcm_u8                  thp                     xsub
pcm_zork                tiertexseqvideo         xwd
pcx                     tiff                    y41p
pgm                     tmv                     yop
pgmyuv                  truehd                  yuv4
pgssub                  truemotion1             zero12v
pictor                  truemotion2             zerocodec
pjs                     truespeech              zlib
png                     tscc                    zmbv
ppm

Enabled encoders:
a64multi                huffyuv                 png
a64multi5               jpeg2000                ppm
aac                     jpegls                  prores
ac3                     ljpeg                   prores_aw
ac3_fixed               mjpeg                   prores_ks
adpcm_adx               movtext                 qtrle
adpcm_g722              mp2                     r10k
adpcm_g726              mp2fixed                r210
adpcm_ima_qt            mpeg1video              ra_144
adpcm_ima_wav           mpeg2_qsv               rawvideo
adpcm_ms                mpeg2video              roq
adpcm_swf               mpeg4                   roq_dpcm
adpcm_yamaha            msmpeg4v2               rv10
alac                    msmpeg4v3               rv20
alias_pix               msvideo1                s302m
amv                     nellymoser              sgi
apng                    pam                     snow
ass                     pbm                     sonic
asv1                    pcm_alaw                sonic_ls
asv2                    pcm_f32be               srt
avrp                    pcm_f32le               ssa
avui                    pcm_f64be               subrip
ayuv                    pcm_f64le               sunrast
bmp                     pcm_mulaw               svq1
cinepak                 pcm_s16be               targa
cljr                    pcm_s16be_planar        tiff
comfortnoise            pcm_s16le               tta
dca                     pcm_s16le_planar        utvideo
dnxhd                   pcm_s24be               v210
dpx                     pcm_s24daud             v308
dvbsub                  pcm_s24le               v408
dvdsub                  pcm_s24le_planar        v410
dvvideo                 pcm_s32be               vorbis
eac3                    pcm_s32le               wavpack
ffv1                    pcm_s32le_planar        webvtt
ffvhuff                 pcm_s8                  wmav1
flac                    pcm_s8_planar           wmav2
flashsv                 pcm_u16be               wmv1
flashsv2                pcm_u16le               wmv2
flv                     pcm_u24be               xbm
g723_1                  pcm_u24le               xface
gif                     pcm_u32be               xsub
h261                    pcm_u32le               xwd
h263                    pcm_u8                  y41p
h263p                   pcx                     yuv4
h264_qsv                pgm                     zlib
hevc_qsv                pgmyuv                  zmbv

Enabled hwaccels:
h263_vaapi              hevc_vaapi              vc1_qsv
h264_qsv                mpeg2_qsv               vc1_vaapi
h264_vaapi              mpeg2_vaapi             wmv3_vaapi
hevc_qsv                mpeg4_vaapi

Enabled parsers:
aac                     dvdsub                  mpegvideo
aac_latm                flac                    opus
ac3                     g729                    png
adx                     gsm                     pnm
bmp                     h261                    rv30
cavsvideo               h263                    rv40
cook                    h264                    tak
dca                     hevc                    vc1
dirac                   mjpeg                   vorbis
dnxhd                   mlp                     vp3
dpx                     mpeg4video              vp8
dvbsub                  mpegaudio               vp9
dvd_nav

Enabled demuxers:
aa                      g723_1                  mpjpeg
aac                     g729                    mpl2
ac3                     gif                     mpsub
act                     gsm                     msnwc_tcp
adf                     gxf                     mtv
adp                     h261                    mv
adx                     h263                    mvi
aea                     h264                    mxf
afc                     hevc                    mxg
aiff                    hls                     nc
amr                     hnm                     nistsphere
anm                     ico                     nsv
apc                     idcin                   nut
ape                     idf                     nuv
apng                    iff                     ogg
aqtitle                 ilbc                    oma
asf                     image2                  paf
asf_o                   image2_alias_pix        pcm_alaw
ass                     image2_brender_pix      pcm_f32be
ast                     image2pipe              pcm_f32le
au                      image_bmp_pipe          pcm_f64be
avi                     image_dds_pipe          pcm_f64le
avr                     image_dpx_pipe          pcm_mulaw
avs                     image_exr_pipe          pcm_s16be
bethsoftvid             image_j2k_pipe          pcm_s16le
bfi                     image_jpeg_pipe         pcm_s24be
bfstm                   image_jpegls_pipe       pcm_s24le
bink                    image_pictor_pipe       pcm_s32be
bintext                 image_png_pipe          pcm_s32le
bit                     image_qdraw_pipe        pcm_s8
bmv                     image_sgi_pipe          pcm_u16be
boa                     image_sunrast_pipe      pcm_u16le
brstm                   image_tiff_pipe         pcm_u24be
c93                     image_webp_pipe         pcm_u24le
caf                     ingenient               pcm_u32be
cavsvideo               ipmovie                 pcm_u32le
cdg                     ircam                   pcm_u8
cdxl                    iss                     pjs
cine                    iv8                     pmp
concat                  ivf                     pva
data                    jacosub                 pvf
daud                    jv                      qcp
dfa                     latm                    r3d
dirac                   live_flv                rawvideo
dnxhd                   lmlm4                   realtext
dsf                     loas                    redspark
dsicin                  lrc                     rl2
dss                     lvf                     rm
dts                     lxf                     roq
dtshd                   m4v                     rpl
dv                      matroska                rsd
dvbsub                  mgsts                   rso
dxa                     microdvd                rtp
ea                      mjpeg                   rtsp
ea_cdata                mlp                     sami
eac3                    mlv                     sap
epaf                    mm                      sbg
ffm                     mmf                     sdp
ffmetadata              mov                     sdr2
filmstrip               mp3                     segafilm
flac                    mpc                     shorten
flic                    mpc8                    siff
flv                     mpegps                  sln
fourxm                  mpegts                  smacker
frm                     mpegtsraw               smjpeg
g722                    mpegvideo               smush
sol                     tmv                     wav
sox                     truehd                  wc3
spdif                   tta                     webm_dash_manifest
srt                     tty                     webvtt
stl                     txd                     wsaud
str                     vc1                     wsvqa
subviewer               vc1t                    wtv
subviewer1              vivo                    wv
sup                     vmd                     xa
swf                     vobsub                  xbin
tak                     voc                     xmv
tedcaptions             vplayer                 xwma
thp                     vqf                     yop
tiertexseq              w64                     yuv4mpegpipe

Enabled muxers:
a64                     ipod                    pcm_s32be
ac3                     ircam                   pcm_s32le
adts                    ismv                    pcm_s8
adx                     ivf                     pcm_u16be
aiff                    jacosub                 pcm_u16le
amr                     latm                    pcm_u24be
apng                    lrc                     pcm_u24le
asf                     m4v                     pcm_u32be
asf_stream              matroska                pcm_u32le
ass                     matroska_audio          pcm_u8
ast                     md5                     psp
au                      microdvd                rawvideo
avi                     mjpeg                   rm
avm2                    mkvtimestamp_v2         roq
bit                     mlp                     rso
caf                     mmf                     rtp
cavsvideo               mov                     rtp_mpegts
crc                     mp2                     rtsp
dash                    mp3                     sap
data                    mp4                     segment
daud                    mpeg1system             singlejpeg
dirac                   mpeg1vcd                smjpeg
dnxhd                   mpeg1video              smoothstreaming
dts                     mpeg2dvd                sox
dv                      mpeg2svcd               spdif
eac3                    mpeg2video              spx
f4v                     mpeg2vob                srt
ffm                     mpegts                  stream_segment
ffmetadata              mpjpeg                  swf
filmstrip               mxf                     tee
flac                    mxf_d10                 tg2
flv                     mxf_opatom              tgp
framecrc                null                    truehd
framemd5                nut                     uncodedframecrc
g722                    oga                     vc1
g723_1                  ogg                     vc1t
gif                     oma                     voc
gxf                     opus                    w64
h261                    pcm_alaw                wav
h263                    pcm_f32be               webm
h264                    pcm_f32le               webm_chunk
hds                     pcm_f64be               webm_dash_manifest
hevc                    pcm_f64le               webp
hls                     pcm_mulaw               webvtt
ico                     pcm_s16be               wtv
ilbc                    pcm_s16le               wv
image2                  pcm_s24be               yuv4mpegpipe
image2pipe              pcm_s24le

Enabled protocols:
async                   hls                     rtmpt
cache                   http                    rtp
concat                  httpproxy               srtp
crypto                  icecast                 subfile
data                    md5                     tcp
ffrtmphttp              mmsh                    udp
file                    mmst                    udplite
ftp                     pipe                    unix
gopher                  rtmp

Enabled filters:
acrossfade              dctdnoiz                paletteuse
adelay                  deband                  pan
adrawgraph              decimate                perms
aecho                   deflate                 pixdesctest
aeval                   dejudder                psnr
aevalsrc                deshake                 qp
afade                   detelecine              random
aformat                 dilation                removegrain
ainterleave             drawbox                 removelogo
allpass                 drawgraph               replaygain
allrgb                  drawgrid                reverse
allyuv                  dynaudnorm              rgbtestsrc
alphaextract            earwax                  rotate
alphamerge              edgedetect              scale
amerge                  elbg                    scale2ref
amix                    equalizer               select
amovie                  erosion                 sendcmd
anull                   extractplanes           separatefields
anullsink               fade                    setdar
anullsrc                fftfilt                 setfield
apad                    field                   setpts
aperms                  fieldmatch              setsar
aphasemeter             fieldorder              settb
aphaser                 flanger                 showcqt
aresample               format                  showfreqs
areverse                fps                     showinfo
aselect                 framepack               showpalette
asendcmd                framerate               showspectrum
asetnsamples            framestep               showvolume
asetpts                 gradfun                 showwaves
asetrate                haldclut                showwavespic
asettb                  haldclutsrc             shuffleplanes
ashowinfo               hflip                   sidechaincompress
asplit                  highpass                signalstats
astats                  histogram               silencedetect
astreamsync             hqx                     silenceremove
atadenoise              hstack                  sine
atempo                  hue                     smptebars
atrim                   idet                    smptehdbars
avectorscope            il                      split
bandpass                inflate                 ssim
bandreject              interleave              swapuv
bass                    join                    tblend
bbox                    lenscorrection          telecine
biquad                  life                    testsrc
blackdetect             lowpass                 thumbnail
blend                   lut                     tile
cellauto                lut3d                   transpose
channelmap              lutrgb                  treble
channelsplit            lutyuv                  trim
chorus                  mandelbrot              unsharp
codecview               mergeplanes             vectorscope
color                   movie                   vflip
colorbalance            negate                  vignette
colorchannelmixer       noformat                volume
colorkey                noise                   volumedetect
colorlevels             null                    vstack
compand                 nullsink                w3fdif
concat                  nullsrc                 waveform
copy                    overlay                 xbr
crop                    pad                     yadif
curves                  palettegen              zoompan
dcshift

Enabled bsfs:
aac_adtstoasc           imx_dump_header         mpeg4_unpack_bframes
chomp                   mjpeg2jpeg              noise
dump_extradata          mjpega_dump_header      remove_extradata
h264_mp4toannexb        mov2textsub             text2movsub
hevc_mp4toannexb        mp3_header_decompress

Enabled indevs:
dv1394                  lavfi                   v4l2
fbdev                   oss

Enabled outdevs:
fbdev                   oss                     v4l2

License: LGPL version 2.1 or later
Creating config.mak, config.h, and doc/config.texi...
[root@conv11 ffmpeg-2.8.14]# make -j 8
CC      libavdevice/oss.o
CC      libavdevice/alldevices.o
CC      libavdevice/avdevice.o
CC      libavdevice/lavfi.o
CC      libavdevice/dv1394.o
....
....
....
LD      ffmpeg_g
LD      ffprobe_g
LD      ffserver_g
CP      ffserver
STRIP   ffserver
CP      ffprobe
CP      ffmpeg
STRIP   ffprobe
STRIP   ffmpeg
[root@conv11 ffmpeg-2.8.14]# make install
INSTALL doc/ffmpeg.1
INSTALL doc/ffprobe.1
INSTALL doc/ffserver.1
INSTALL doc/ffmpeg-all.1
....
....
....
INSTALL libavutil/tea.h
INSTALL libavutil/lzo.h
INSTALL libavutil/avconfig.h
INSTALL libavutil/ffversion.h
INSTALL libavutil/libavutil.pc
[root@conv11 ffmpeg-2.8.14]#

And now you have a ffmpeg installation build against Intel API libmfx dispatcher, which could benefit from the hardware acceleration in decoding and encoding video streams. Thus using a Intel QuickSync technology.

STEP 9) ffmpeg example – how to use the GPU hardware decoding and encoding

[root@conv11 ffmpeg-2.8.14]# cd
[root@conv11 ~]# wget http://distribution.bbb3d.renderfarming.net/video/mp4/bbb_sunflower_1080p_60fps_stereo_abl.mp4
[root@conv11 ~]# /usr/local/ffmpeg-qsv/bin/ffmpeg -vcodec h264_qsv -i bbb_sunflower_1080p_60fps_stereo_abl.mp4 -vcodec h264_qsv -b:v 600k -maxrate 1200K -s 1280x720 -aspect 16:9 -preset medium -maxrate 500K -g 50 -strict -2 -c:a aac -b:a 96k -ar 44100 -f mpegts -threads 0 output.mp4
ffmpeg version 2.8.14 Copyright (c) 2000-2018 the FFmpeg developers
  built with gcc 4.8.5 (GCC) 20150623 (Red Hat 4.8.5-16)
  configuration: --enable-libmfx --prefix=/usr/local/ffmpeg-qsv
  libavutil      54. 31.100 / 54. 31.100
  libavcodec     56. 60.100 / 56. 60.100
  libavformat    56. 40.101 / 56. 40.101
  libavdevice    56.  4.100 / 56.  4.100
  libavfilter     5. 40.101 /  5. 40.101
  libswscale      3.  1.101 /  3.  1.101
  libswresample   1.  2.101 /  1.  2.101
libva info: VA-API version 1.0.0
libva info: va_getDriverName() returns 0
libva info: User requested driver 'iHD'
libva info: Trying to open /opt/intel/mediasdk/lib64/iHD_drv_video.so
libva info: Found init function __vaDriverInit_1_0
libva info: va_openDriver() returns 0
Input #0, mov,mp4,m4a,3gp,3g2,mj2, from 'bbb_sunflower_1080p_60fps_stereo_abl.mp4':
  Metadata:
    major_brand     : isom
    minor_version   : 1
    compatible_brands: isomavc1
    creation_time   : 2013-12-16 18:03:30
    title           : Big Buck Bunny, Sunflower version
    artist          : Blender Foundation 2008, Janus Bager Kristensen 2013
    comment         : Creative Commons Attribution 3.0 - http://bbb3d.renderfarming.net
    genre           : Animation
    composer        : Sacha Goedegebure
  Duration: 00:10:34.53, start: 0.000000, bitrate: 6490 kb/s
    Stream #0:0(und): Video: h264 (High) (avc1 / 0x31637661), nv12, 1920x2160, 6005 kb/s, 60 fps, 60 tbr, 60k tbn, 60k tbc (default)
    Metadata:
      creation_time   : 2013-12-16 18:03:30
      handler_name    : GPAC ISO Video Handler
    Stream #0:1(und): Audio: mp3 (mp4a / 0x6134706D), 48000 Hz, stereo, s16p, 160 kb/s (default)
    Metadata:
      creation_time   : 2013-12-16 18:03:37
      handler_name    : GPAC ISO Audio Handler
    Stream #0:2(und): Audio: ac3 (ac-3 / 0x332D6361), 48000 Hz, 5.1(side), fltp, 320 kb/s (default)
    Metadata:
      creation_time   : 2013-12-16 18:03:37
      handler_name    : GPAC ISO Audio Handler
    Side data:
      audio service type: main
libva info: VA-API version 1.0.0
libva info: va_getDriverName() returns 0
libva info: User requested driver 'iHD'
libva info: Trying to open /opt/intel/mediasdk/lib64/iHD_drv_video.so
libva info: Found init function __vaDriverInit_1_0
libva info: va_openDriver() returns 0
Output #0, mpegts, to 'output.mp4':
  Metadata:
    major_brand     : isom
    minor_version   : 1
    compatible_brands: isomavc1
    composer        : Sacha Goedegebure
    title           : Big Buck Bunny, Sunflower version
    artist          : Blender Foundation 2008, Janus Bager Kristensen 2013
    comment         : Creative Commons Attribution 3.0 - http://bbb3d.renderfarming.net
    genre           : Animation
    encoder         : Lavf56.40.101
    Stream #0:0(und): Video: h264 (h264_qsv), nv12, 1280x720 [SAR 1:1 DAR 16:9], q=2-31, 600 kb/s, 60 fps, 90k tbn, 60 tbc (default)
    Metadata:
      creation_time   : 2013-12-16 18:03:30
      handler_name    : GPAC ISO Video Handler
      encoder         : Lavc56.60.100 h264_qsv
    Stream #0:1(und): Audio: aac, 44100 Hz, 5.1(side), fltp, 96 kb/s (default)
    Metadata:
      creation_time   : 2013-12-16 18:03:37
      handler_name    : GPAC ISO Audio Handler
      encoder         : Lavc56.60.100 aac
Stream mapping:
  Stream #0:0 -> #0:0 (h264 (h264_qsv) -> h264 (h264_qsv))
  Stream #0:2 -> #0:1 (ac3 (native) -> aac (native))
Press [q] to stop, [?] for help
libva info: VA-API version 1.0.0
libva info: va_getDriverName() returns 0
libva info: User requested driver 'iHD'
libva info: Trying to open /opt/intel/mediasdk/lib64/iHD_drv_video.so
libva info: Found init function __vaDriverInit_1_0
libva info: va_openDriver() returns 0
[h264_qsv @ 0x3587360] A decode call did not consume any dataitrate=1162.5kbits/s    
    Last message repeated 14 times
frame=38072 fps=126 q=-0.0 Lsize=   90023kB time=00:10:34.48 bitrate=1162.3kbits/s    
video:71572kB audio:7436kB subtitle:0kB other streams:0kB global headers:0kB muxing overhead: 13.942102%
[root@conv11 ~]# /usr/local/ffmpeg-qsv/bin/ffmpeg -i output.mp4
ffmpeg version 2.8.14 Copyright (c) 2000-2018 the FFmpeg developers
  built with gcc 4.8.5 (GCC) 20150623 (Red Hat 4.8.5-16)
  configuration: --enable-libmfx --prefix=/usr/local/ffmpeg-qsv
  libavutil      54. 31.100 / 54. 31.100
  libavcodec     56. 60.100 / 56. 60.100
  libavformat    56. 40.101 / 56. 40.101
  libavdevice    56.  4.100 / 56.  4.100
  libavfilter     5. 40.101 /  5. 40.101
  libswscale      3.  1.101 /  3.  1.101
  libswresample   1.  2.101 /  1.  2.101
Input #0, mpegts, from 'output.mp4':
  Duration: 00:10:34.57, start: 1.400000, bitrate: 1162 kb/s
  Program 1 
    Metadata:
      service_name    : Big Buck Bunny, Sunflower version
      service_provider: FFmpeg
    Stream #0:0[0x100]: Video: h264 (High) ([27][0][0][0] / 0x001B), yuv420p, 1280x720 [SAR 1:1 DAR 16:9], 60 fps, 60 tbr, 90k tbn, 120 tbc
    Stream #0:1[0x101](und): Audio: aac (LC) ([15][0][0][0] / 0x000F), 44100 Hz, 5.1, fltp, 100 kb/s

You can see ffmpeg is using VA-API and /opt/intel/mediasdk/lib64/iHD_drv_video.so for video acceleration encoding.

* Live stream decoding and encoding with hardware acceleration and outputting multiple output

The input stream is from a multicast source and the output is a wowza server

/usr/local/ffmpeg-qsv/bin/ffmpeg -vcodec h264_qsv -i 'udp://239.10.10.1:5000?fifo_size=1000000&overrun_nonfatal=1' -filter_complex '[0:v]yadif=1:0:0,split=3[v1][v2][v3];[v1]scale=1280:720,framerate=50[out1];[v2]scale=960:540,framerate=25[out2];[v3]scale=640:360,framerate=25[out3]' -map '[out1]' -map '[out2]' -map '[out3]' -map 0:a -streamid 0:0x151 -streamid 1:0x150 -streamid 2:0x149 -streamid 3:0x140 -vcodec h264_qsv -preset medium -maxrate:0 1900K -bufsize:0 2400K -b:v:0 1500k -maxrate:1 1200K -bufsize:1 1000K -b:v:1 1000k -maxrate:2 900K -bufsize:2 1000K -b:v:2 600k -g 50 -strict -2 -c:a aac -b:a 96k -ar 44100 -reorder_queue_size 32 -threads 8 -fflags +igndts -copyts -f mpegts 'udp://10.10.10.10:30000?pkt_size=2632&buffer_size=20000000&fifo_size=2000000'
ffmpeg version 2.8.14 Copyright (c) 2000-2018 the FFmpeg developers
  built with gcc 4.8.5 (GCC) 20150623 (Red Hat 4.8.5-16)
  configuration: --enable-libmfx --prefix=/usr/local/ffmpeg-qsv3
  libavutil      54. 31.100 / 54. 31.100
  libavcodec     56. 60.100 / 56. 60.100
  libavformat    56. 40.101 / 56. 40.101
  libavdevice    56.  4.100 / 56.  4.100
  libavfilter     5. 40.101 /  5. 40.101
  libswscale      3.  1.101 /  3.  1.101
  libswresample   1.  2.101 /  1.  2.101
[h264_qsv @ 0x21e6960] non-existing PPS 0 referenced
libva info: VA-API version 1.0.0
libva info: va_getDriverName() returns 0
libva info: User requested driver 'iHD'
libva info: Trying to open /opt/intel/mediasdk/lib64/iHD_drv_video.so
libva info: Found init function __vaDriverInit_1_0
libva info: va_openDriver() returns 0
    Last message repeated 1 times
Input #0, mpegts, from 'udp://239.10.10.33:5000?fifo_size=1000000&overrun_nonfatal=1':
  Duration: N/A, start: 1375.213422, bitrate: N/A
  Program 74 
    Metadata:
      service_name    : Test 1 HD
      service_provider: Test
    Stream #0:0[0x734]: Video: h264 (High) ([27][0][0][0] / 0x001B), nv12, 1920x1080, 25 fps, 25 tbr, 90k tbn, 90k tbc
    Stream #0:1[0x744]: Audio: mp2 ([3][0][0][0] / 0x0003), 48000 Hz, stereo, s16p, 256 kb/s
[Parsed_framerate_7 @ 0x2413620] time base:1/180000 -> 1/180000 exact:1
[Parsed_framerate_7 @ 0x2413620] fps -> fps:25/1 scene score:7.000000 interpolate start:15 end:240
[Parsed_framerate_5 @ 0x2438d20] time base:1/180000 -> 1/180000 exact:1
[Parsed_framerate_5 @ 0x2438d20] fps -> fps:25/1 scene score:7.000000 interpolate start:15 end:240
[Parsed_framerate_3 @ 0x2934640] time base:1/180000 -> 1/180000 exact:1
[Parsed_framerate_3 @ 0x2934640] fps -> fps:50/1 scene score:7.000000 interpolate start:15 end:240
libva info: VA-API version 1.0.0
libva info: va_getDriverName() returns 0
libva info: User requested driver 'iHD'
libva info: Trying to open /opt/intel/mediasdk/lib64/iHD_drv_video.so
libva info: Found init function __vaDriverInit_1_0
libva info: va_openDriver() returns 0
libva info: VA-API version 1.0.0
libva info: va_getDriverName() returns 0
libva info: User requested driver 'iHD'
libva info: Trying to open /opt/intel/mediasdk/lib64/iHD_drv_video.so
libva info: Found init function __vaDriverInit_1_0
libva info: va_openDriver() returns 0
libva info: VA-API version 1.0.0
libva info: va_getDriverName() returns 0
libva info: User requested driver 'iHD'
libva info: Trying to open /opt/intel/mediasdk/lib64/iHD_drv_video.so
libva info: Found init function __vaDriverInit_1_0
libva info: va_openDriver() returns 0
Output #0, mpegts, to 'udp://10.10.10.10:30000?pkt_size=2632&buffer_size=20000000&fifo_size=2000000':
  Metadata:
    encoder         : Lavf56.40.101
    Stream #0:0: Video: h264 (h264_qsv), nv12, 1280x720, q=2-31, 1500 kb/s, 50 fps, 90k tbn, 50 tbc
    Metadata:
      encoder         : Lavc56.60.100 h264_qsv
    Stream #0:1: Video: h264 (h264_qsv), nv12, 960x540, q=2-31, 1000 kb/s, 25 fps, 90k tbn, 25 tbc
    Metadata:
      encoder         : Lavc56.60.100 h264_qsv
    Stream #0:2: Video: h264 (h264_qsv), nv12, 640x360, q=2-31, 600 kb/s, 25 fps, 90k tbn, 25 tbc
    Metadata:
      encoder         : Lavc56.60.100 h264_qsv
    Stream #0:3: Audio: aac, 44100 Hz, stereo, fltp, 96 kb/s
    Metadata:
      encoder         : Lavc56.60.100 aac
Stream mapping:
  Stream #0:0 (h264_qsv) -> yadif (graph 0)
  framerate (graph 0) -> Stream #0:0 (h264_qsv)
  framerate (graph 0) -> Stream #0:1 (h264_qsv)
  framerate (graph 0) -> Stream #0:2 (h264_qsv)
  Stream #0:1 -> #0:3 (mp2 (native) -> aac (native))
Press [q] to stop, [?] for help
libva info: VA-API version 1.0.0
libva info: va_getDriverName() returns 0
libva info: User requested driver 'iHD'
libva info: Trying to open /opt/intel/mediasdk/lib64/iHD_drv_video.so
libva info: Found init function __vaDriverInit_1_0
libva info: va_openDriver() returns 0
[h264_qsv @ 0x21ea740] A decode call did not consume any data=00:23:14.04 bitrate=  46.6kbits/s    
frame=  937 fps= 59 q=-0.0 Lq=-0.0 q=-0.0 size=    8267kB time=00:23:14.57 bitrate=  48.6kbits/s    
video:7225kB audio:228kB subtitle:0kB other streams:0kB global headers:0kB muxing overhead: 10.923792%

* Troubleshooting

If you get a build error like this, you skipped the (STEP 6) Move the Media SDK include files in a mfx sub-directory. This is required because ffmpeg expect these files to be in a sub-directory. Just move the files in a sub-directory mfx as it is shown in (STEP 6)

gcc -Wl,-O1 -Wl,--as-needed -Wl,-z,noexecstack -o /tmp/ffconf.7IhNLjmP/test /tmp/ffconf.7IhNLjmP/test.o -lm -ldl -llzma -lz -pthread -pthread
use_pkg_config libmfx libmfx mfx/mfxvideo.h MFXInit
check_pkg_config libmfx libmfx mfx/mfxvideo.h MFXInit
pkg-config --exists --print-errors libmfx
check_func_headers mfx/mfxvideo.h MFXInit -I/opt/intel/mediasdk/include -I/usr/include/libdrm -L/opt/intel/mediasdk/lib/lin_x64 -lmfx -lva -lstdc++ -ldl -lva-drm -ldrm
check_ld cc -I/opt/intel/mediasdk/include -I/usr/include/libdrm -L/opt/intel/mediasdk/lib/lin_x64 -lmfx -lva -lstdc++ -ldl -lva-drm -ldrm
check_cc -I/opt/intel/mediasdk/include -I/usr/include/libdrm -L/opt/intel/mediasdk/lib/lin_x64
BEGIN /tmp/ffconf.7IhNLjmP/test.c
    1   #include <mfx/mfxvideo.h>
    2   #include <stdint.h>
    3   long check_MFXInit(void) { return (long) MFXInit; }
    4   int main(void) { int ret = 0;
    5    ret |= ((intptr_t)check_MFXInit) & 0xFFFF;
    6   return ret; }
END /tmp/ffconf.7IhNLjmP/test.c
gcc -D_ISOC99_SOURCE -D_FILE_OFFSET_BITS=64 -D_LARGEFILE_SOURCE -D_POSIX_C_SOURCE=200112 -D_XOPEN_SOURCE=600 -O2 -march=native -msse3 -fomit-frame-pointer -pipe -std=c11 -fomit-frame-pointer -pthread -I/opt/intel/mediasdk/include -I/usr/include/libdrm -L/opt/intel/mediasdk/lib/lin_x64 -c -o /tmp/ffconf.7IhNLjmP/test.o /tmp/ffconf.7IhNLjmP/test.c
/tmp/ffconf.7IhNLjmP/test.c:1:26: fatal error: mfx/mfxvideo.h: No such file or directory
 #include <mfx/mfxvideo.h>
                          ^
compilation terminated.
require libmfx mfx/mfxvideo.h MFXInit -llibmfx
check_lib libmfx mfx/mfxvideo.h MFXInit -llibmfx
check_func_headers mfx/mfxvideo.h MFXInit -llibmfx
check_ld cc -llibmfx
check_cc
BEGIN /tmp/ffconf.7IhNLjmP/test.c
    1   #include <mfx/mfxvideo.h>
    2   #include <stdint.h>
    3   long check_MFXInit(void) { return (long) MFXInit; }
    4   int main(void) { int ret = 0;
    5    ret |= ((intptr_t)check_MFXInit) & 0xFFFF;
    6   return ret; }
END /tmp/ffconf.7IhNLjmP/test.c
gcc -D_ISOC99_SOURCE -D_FILE_OFFSET_BITS=64 -D_LARGEFILE_SOURCE -D_POSIX_C_SOURCE=200112 -D_XOPEN_SOURCE=600 -O2 -march=native -msse3 -fomit-frame-pointer -pipe -std=c11 -fomit-frame-pointer -pthread -c -o /tmp/ffconf.7IhNLjmP/test.o /tmp/ffconf.7IhNLjmP/test.c
/tmp/ffconf.7IhNLjmP/test.c:1:26: fatal error: mfx/mfxvideo.h: No such file or directory
 #include <mfx/mfxvideo.h>
                          ^
compilation terminated.
ERROR: libmfx not found

#1 2021-02-01 20:35:13

esuhl
Member
Registered: 2018-09-07
Posts: 16

libmfx (Firefox dependency) now 64-bit only?

I just installed Arch32 on a laptop (different to one mentioned in other threads).

When I try to install firefox, it fails due to a missing dependency — libmfx:

$ sudo pacman -S libmfx
error: target not found: libmfx

I’m guessing that the latest update to libmfx has made it 64-bit only…? :-(

https://archlinux.org/packages/?sort=&q=libmfx
https://archlinux32.org/packages/?sort=&q=libmfx

————-
I was able to install an older version of libmfx from the archive, and then install firefox successfully:

$ sudo pacman -U --asdeps https://archive.archlinux32.org/packages/l/libmfx/libmfx-1.25-3.7-pentium4.pkg.tar.xz

—————

Am I diagnosing this correctly?  Should I file a bug report, or let someone know…?

Thanks :-)

Last edited by esuhl (2021-02-01 20:35:48)

#2 2021-02-01 23:37:58

levi
Moderator
From: Yorkshire, UK
Registered: 2018-06-16
Posts: 1,192

Re: libmfx (Firefox dependency) now 64-bit only?

Hmm, not sure quite what’s up with that.  I have libmfx installed because late last year it turned up as the latest version available, so I’m not sure why it’s been removed now.  In fact, I’m not sure if it has been removed, it still seems to be present in my repos (I think I’m using agoctl.org from france).

Perhaps it has been blocked from building.  I can’t find it on the build server search.


Architecture: pentium4, Testing repos: Yes, Hardware: EeePC 901+2GB RAM+OS half on the SD card.

#3 2021-02-02 07:26:25

deep42thought
Administrator
From: Jena, Germany
Registered: 2017-06-17
Posts: 615

Re: libmfx (Firefox dependency) now 64-bit only?

I think, it’s a bug in the build scripts: I ran delete-packages yesterday to delete some to-be-removed packages, and apparently it deleted too much. I’ll reschedule intel-media-sdk (base package of libmfx)

#4 2021-02-27 04:16:10

dta
Member
Registered: 2021-02-27
Posts: 3

Re: libmfx (Firefox dependency) now 64-bit only?

Just reporting in a few weeks later to say that this still appears to be a problem.

Thank you esuhl for the workaround.  It works.

#5 2021-02-27 04:25:37

levi
Moderator
From: Yorkshire, UK
Registered: 2018-06-16
Posts: 1,192

Re: libmfx (Firefox dependency) now 64-bit only?

Hmm yes, now that my local repos have propogated it seems to have disappeared completely from them.  I still have libmfx 1.25-3.7 installed from back when it used to exist though, and since that’s the version that esuhi suggested installing from the package archive site, that suggests that the workaround is still good.

But I guess the rebuild of intel-media-sdk failed.


Architecture: pentium4, Testing repos: Yes, Hardware: EeePC 901+2GB RAM+OS half on the SD card.

#6 2021-02-27 05:29:50

mistersmee
Member
From: India
Registered: 2020-12-24
Posts: 65

Re: libmfx (Firefox dependency) now 64-bit only?

levi wrote:

Hmm yes, now that my local repos have propogated it seems to have disappeared completely from them.  I still have libmfx 1.25-3.7 installed from back when it used to exist though, and since that’s the version that esuhi suggested installing from the package archive site, that suggests that the workaround is still good.

But I guess the rebuild of intel-media-sdk failed.

Yes, it must have failed. Though libmfx is required for mpv too. We are good as long as the package does not disappear from the archive site. Can we unarchive the paackage somehow, as a stopgap until it builds? Move the package from the archive repo to the stable repos?

Because this poses an problem while installing a fresh install, if someone used mpv and firefox, and could not find this workaround, i.e. this forum issue, that would be bad.

#7 2021-02-27 06:16:50

levi
Moderator
From: Yorkshire, UK
Registered: 2018-06-16
Posts: 1,192

Re: libmfx (Firefox dependency) now 64-bit only?

It’s very unlikely to be deleted from the archive site.  Last time I looked, the set of packages on the archive site dated back to the genesis of archlinux32.  It could be populated to the repos from the archive site, but that would be certainly be a non-standard procedure.  Hopefully intel-media-sdk can be rebuilt soon and will work this time.

I doubt this will be a problem for new users.  Everyone using archlinux32 comes across this bbs sooner or later.  And strictly speaking, it doesn’t stop you doing an install, you should be able to follow all of the steps in the installation guide.  It’s only when after installation you try to build a usable operating system and set of apps.  I generally install lynx or links as my first web browser, because if I need to look up something before I get a working graphical desktop, I need a text mode browser.


Architecture: pentium4, Testing repos: Yes, Hardware: EeePC 901+2GB RAM+OS half on the SD card.

Recommend Projects

  • React photo

    React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo

    Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo

    Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo

    TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo

    Django

    The Web framework for perfectionists with deadlines.

  • Laravel photo

    Laravel

    A PHP framework for web artisans

  • D3 photo

    D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Visualization

    Some thing interesting about visualization, use data art

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo

    Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo

    Microsoft

    Open source projects and samples from Microsoft.

  • Google photo

    Google

    Google ❤️ Open Source for everyone.

  • Alibaba photo

    Alibaba

    Alibaba Open Source for everyone

  • D3 photo

    D3

    Data-Driven Documents codes.

  • Tencent photo

    Tencent

    China tencent open source team.

Понравилась статья? Поделить с друзьями:
  • Error level php ini
  • Error level f 400000031
  • Error level e 400070031
  • Error level e 400030035
  • Error level analysis программа