ffmpeg: error while loading shared libraries: libopenh264.so.5

Viewed 15793

I am using ffmpeg and getting this error

ffmpeg: error while loading shared libraries: libopenh264.so.5: cannot open shared object file: No such file or directory

I have already checked if the library exists and it does. I added it to /etc/ld.so.conf as mentioned in this previous question but it doesn't work.

6 Answers

Another approach that seemed easier and worked for me on Ubuntu 16.04 and python 3.8 was just calling:

conda update ffmpeg

from this post.

I faced this error when I run ffmpeg 4.2.2 under python 3.8 environment.

The root cause is that libopen264.so from python 3.8 is too new for ffmpeg 4.2.2. I can find libopen264.so.6 under the ~/anaconda3/envs/py38/lib/ (py38 is my conda virtual environment), but we only need an older version libopen264.so.5.

To solve the problem, I just make a softlink from my existing anaconda environment (python 3.7) as follows - and it works.

ln -s ~/anaconda3/lib/libopenh264.so ~/anaconda3/envs/py38/lib/libopenh264.so.5

I resolved this by:

  • Downloading the openh264 binary from GitHub
  • Copying/renaming the binary to my conda env, e.g. ~/anaconda3/envs/py38/lib/libopenh264.so.5 where py38 is the env name

I had the same issue, to fix it I removed all installs of ffmpeg:

sudo apt-get remove ffmpeg
sudo apt-get purge ffmpeg

After doing this, the output was still the same, which ffmpeg showed me I was using the one from anaconda, so I removed that one (renamed it)

Then I could do a clean install and now it works again:

sudo apt-get install ffmpeg

I copy ~/anaconda3/lib/libopenh264.so, paste to the same folder and rename it to libopenh264.so.5. And it works.

I did what Synthesis did, that is

sudo apt-get remove ffmpeg
sudo apt-get purge ffmpeg

However, I removed the Anaconda ffmpeg module

conda remove ffmpeg

The clean install then did the trick:

sudo apt-get install ffmpeg
Related