Mpv stopped working after system update

I got a new system update today with 200+ packages to update
and after I installed everything I wanted to play a video using mpv and I saw it was not opening
I tried running it through the terminal and I get the following error:

mpv: error while loading shared libraries: libSvtAv1Enc.so.0: cannot open shared object file: No such file or directory

then I noticed the update installed the original MPV from the official repositories although I use mpv-full from AUR, I tried building removing the official mpv and building mpv-full again and I got a build error with the following errors:

/usr/bin/ld: warning: libSvtAv1Enc.so.0, needed by /usr/lib/gcc/x86_64-pc-linux-gnu/12.1.0/…/…/…/…/lib/libavcodec.so, not found (try using -rpath or -rpath-link)
/usr/bin/ld: warning: libsrt.so.1.4, needed by /usr/lib/gcc/x86_64-pc-linux-gnu/12.1.0/…/…/…/…/lib/libavformat.so, not found (try using -rpath or -rpath-link)

I tried looking where those so files come from and I found that libSvtAv1Enc comes from svt-av1 which I have installed from Official Repositories (extra)
and libsrt comes from srt which I also have installed from Official Repositories (extra)

running:

ls /usr/lib | grep -E libsrt|libSvt

return

libsrtp2.so
libsrtp2.so.1
libsrt.so
libsrt.so.1.5
libsrt.so.1.5.0
libSvtAv1Dec.so
libSvtAv1Dec.so.0
libSvtAv1Dec.so.0.8.7
libSvtAv1Enc.so
libSvtAv1Enc.so.1
libSvtAv1Enc.so.1.1.0
libSvtHevcEnc.so
libSvtHevcEnc.so.1
libSvtVp9Enc.so
libSvtVp9Enc.so.1

so I clearly have those libraries installed.

I tried reinstalling mpv, mpv-full, libSvt, libSrt and anything I could think of that might relate
but nothing fixed the problem.

how can I fix the problem, and if it’s not fixable by reinstalling or installing some extras
how can I find what package created the problem in the first place?

edit: using symbolic linking solved the problem
i.e.

sudo ln -s libsrt.so.1.5 libsrt.so.1.4
sudo ln -s libSvtAv1Enc.so libSvtAv1Enc.so.0

but it feels like a bandaid solution
is there a way to fix it without symbolic linking?

I don´t think so.

:smiley:

Have you rebooted since the update?

at first, I didn’t reboot cause I was lazy, and then when I saw the first error message I thought it was related to some libraries that were updated so I did reboot thinking it’ll solve the problem but it didn’t.

Which version of ffmpeg do you use?

LANG=C pacman -Qi ffmpeg
Name            : ffmpeg-full
Version         : 5.0.1-1
Description     : Complete solution to record, convert and stream audio and video (all possible features including libfdk-aac)
Architecture    : x86_64
URL             : https://www.ffmpeg.org/
Licenses        : custom: nonfree and unredistributable
Groups          : None
Provides        : libavcodec.so=59-64  libavdevice.so=59-64  libavfilter.so=8-64  libavformat.so=59-64  libavutil.so=57-64  libpostproc.so=56-64  libswscale.so=6-64  libswresample.so=4-64  ffmpeg
Depends On      : alsa-lib  avisynthplus  bzip2  frei0r-plugins  libgcrypt  gmp  gnutls  ladspa  libass  aom  aribb24  libbluray  libbs2b  libcaca  celt  libcdio-paranoia  codec2  dav1d  libdc1394  libavc1394  libfdk-aac  fontconfig
                  freetype2  fribidi  glslang  spirv-tools  libgme  gsm  libiec61883  libilbc  jack  kvazaar  libmodplug  lame  opencore-amr  openjpeg2  opus  libpulse  librabbitmq-c  rav1e  librsvg  rubberband  rtmpdump  smbclient
                  snappy  libsoxr  speex  srt  libssh  svt-hevc  svt-av1  svt-vp9  tesseract  libtheora  twolame  v4l-utils  vid.stab  vmaf  libvorbis  libvpx  libwebp  x264  x265  libxcb  xvidcore  libxml2  zimg  zeromq  zvbi  lv2
                  lilv  xz  libmysofa  openal  ocl-icd  libgl  sndio  sdl2  vapoursynth  vulkan-icd-loader  libxv  libx11  libxext  zlib  cuda  libomxil-bellagio  libdrm  intel-media-sdk  libva  libvdpau  chromaprint-fftw  davs2
                  flite1  libklvanc-git  openh264  libopenmpt-svn  librist  shine  uavs3d-git  vo-amrwbenc  xavs  xavs2  pocketsphinx  rockchip-mpp  lensfun-git
Optional Deps   : None
Required By     : alass  ames  ffmpegthumbs  firefox  gst-libav  kfilemetadata  mpv-full  obs-studio  qt5-webengine  retroarch  vapoursynth
Optional For    : alsa-plugins  audacity  gegl  kdenlive  libde265  mlt  wine-staging  yt-dlp
Conflicts With  : ffmpeg
Replaces        : None
Installed Size  : 35.90 MiB
Packager        : Unknown Packager
Build Date      : Fri 10 Jun 2022 16:32:38
Install Date    : Fri 10 Jun 2022 16:42:09
Install Reason  : Explicitly installed
Install Script  : No
Validated By    : None

As it’s an AUR package, did you rebuild it after the update?

Build date of June 10th, indicates you didn’t.

TIL I had to rebuild the package
I rebuilt the package at then deleted the symbolic links and it seems like mpv still perfectly works.
thank you.

Is there a way to rebuild packages automatically, since getting major updates that upgrade all the system packages might break stuff again (apparently other software also broke .e.g RDKit), I would like to have a way that it’ll rebuild all the relevant packages again if possible, and not discover one by one which got broke

If it only needs rebuilding, then no.
If that gives you too much of a hassle on the long run, you should prefer repository packages, as those are rebuilt by the package maintainers when needed.

This topic was automatically closed 2 days after the last reply. New replies are no longer allowed.