Package conflict between NVIDIA ffmpeg and libpostproc-dev

Hi there,

I’m having issues with NVIDIA ffmpeg package as it is having a conflict with libpostproc-dev and subsequently all of libpostproc-dev’s dependencies such as libav*.

below is the error message

After this operation, 56.2 MB of additional disk space will be used.
debconf: delaying package configuration, since apt-utils is not installed
(Reading database … 206247 files and directories currently installed.)
Preparing to unpack …/ffmpeg_7%3a4.4.2-nvidia_arm64.deb …
Unpacking ffmpeg (7:4.4.2-nvidia) …
Replacing files in old package libavcodec-dev:arm64 (7:4.4.2-0ubuntu0.22.04.1+esm4) …
Replacing files in old package libavdevice-dev:arm64 (7:4.4.2-0ubuntu0.22.04.1+esm4) …
Replacing files in old package libavfilter-dev:arm64 (7:4.4.2-0ubuntu0.22.04.1+esm4) …
Replacing files in old package libavformat-dev:arm64 (7:4.4.2-0ubuntu0.22.04.1+esm4) …
Replacing files in old package libavutil-dev:arm64 (7:4.4.2-0ubuntu0.22.04.1+esm4) …
dpkg: error processing archive /var/cache/apt/archives/ffmpeg_7%3a4.4.2-nvidia_arm64.deb (–unpack):
trying to overwrite ‘/usr/include/aarch64-linux-gnu/libpostproc/postprocess.h’, which is also in package libpostproc-dev:arm64 7:4.4.2-0ubuntu0.22.04.1+esm4
dpkg-deb: error: paste subprocess was killed by signal (Broken pipe)
Errors were encountered while processing:
/var/cache/apt/archives/ffmpeg_7%3a4.4.2-nvidia_arm64.deb
E: Sub-process /usr/bin/dpkg returned an error code (1)

Hi,
Thanks for reporting it. Please share the steps. So that we can set up developer kit to reproduce the error and check.

Hi,
Would like to confirm if we understand the issue. So if libpostproc-dev is in the command, the error is shown. And if there is no libpostproc-dev, the ffmpeg package can be installed. Is this understanding correct?

It fails with libpostproc-dev removed. Error:
dpkg: error processing archive /var/cache/apt/archives/ffmpeg_7%3a4.4.2-nvidia_arm64.deb (–unpack):
trying to overwrite ‘/usr/include/aarch64-linux-gnu/libpostproc/postprocess.h’, which is also in package libpostproc-dev:arm64 7:4.4.2-0ubuntu0.22.04.1+esm4

I am running into the exact same issue while trying to build torchaudio. Ive been following the steps provided by Pytorch → Building on Jetson — Torchaudio 2.3.0 documentation

After the install fails I am unable to uninstall ffmpeg or repair the install. I have Jetpack 6.0, Linux R36.3, and Ubuntu 22.04. Is there a diffrence in the ffmpeg from the Ubuntu repo vs. NVIDIA repo?

Hi @DaneLLL,

libpostproc-dev is a base package and is a dependency for most of the libav*-dev, and maybe a few more.
if i only install ffmpeg i believe the installation goes fine, and the opposite is also true. Saying that ffmpeg is blocking a lot of other packages from installing.

Hi,
We are checking this issue. Will update the status.

Here’s a method to force fix so that apt becomes functional again. Not the global fix as that’ll between ffmpeg and libpostproc-dev deb packages. The following worked on orin agx developer kit 32gb. sudo dpkg -i --force-overwrite /var/cache/apt/archives/libpostproc-dev_7%3a4.4.2-0ubuntu0.22.04.1_arm64.deb
sudo apt --fix-broken install

2 Likes

Hi,
The ffmpeg deb is refreshed. Please try again.

Hi @DaneLLL,

Sorry mate, no luck. I’m getting a different error now this time from libavcodec.

FYI, im trying to build torcgvision, and my script is available here. jetsonOrinNano/setup.sh at main · cranky-cyborg/jetsonOrinNano · GitHub

Hi,
If you don’t re-flash the whole system, please remove the installed ffmpeg deb first:

$ sudo apt remove ffmpeg
$ sudo apt update
$ sudo apt-get -y install ffmpeg libavutil-dev libavcodec-dev libavformat-dev libavdevice-dev libavfilter-dev libswscale-dev libswresample-dev libswresample-dev libpostproc-dev libjpeg-dev libpng-dev libopenblas-base libopenmpi-dev

Same error, i’ll re-flash and try again

Did apt remove, update, install ffmpeg. Looks like they linked to a file that is not available to aarch64/arm64 r36.3. (ffmpeg: error while loading shared libraries: libdav1d.so.7: cannot open shared object file: No such file or directory).

Did they compile ffmpeg on an x86_64 machine? because on my hp workstation the file the updated for Jetson ffmpeg wants is:

/usr/lib/x86_64-linux-gnu/libdav1d.so.7.0.0: ELF 64-bit LSB shared object, x86-64, version 1 (SYSV), dynamically linked, BuildID[sha1]=c1cbf344111237f101e726679363918a0a83fdd3, stripped

Hi,
The ffmpeg deb is for Jetson platforms. It does not work on x86 machines.

1 Like

I get the same error when i try to run ffmpeg on Orin NX 16Gb

ffmpeg -version

ffmpeg: error while loading shared libraries: libdav1d.so.7: cannot open shared object file: No such file or director

I checked for the available version, it is libdav1d.so.5 , how to install libdav1d.so.7?

I’m having the same issue. Straight after a Jetpack 6.0 install on Orin AGX, I installed ffmpeg and it cannot find libdav1d.so.7:

 ffmpeg -i
ffmpeg: error while loading shared libraries: libdav1d.so.7: cannot open shared object file: No such file or directory
3 Likes

I have the same problem. It looks like the repository for l4t r36.3 does not provide libdav1d library with version 7 but only 5 (libdav1d5).

This is also impacting gstreamer, which is what I really need. We cannot downgrade to JP 5.1.3 because we need the TRT version in JP 6.0.

I got around this for now by directly installing the ffmpeg from another ppa.

  1. vim /etc/apt/sources.list.d/nvidia-l4t-apt-source.list
  2. Comment the line - deb https://repo.download.nvidia.com/jetson/ffmpeg r36.3 main
  3. sudo add-apt-repository ppa:savoury1/ffmpeg4
  4. sudo apt-get update
  5. sudo apt remove ffmpeg
  6. sudo apt install ffmpeg.

This is a temp fix and looses all the nvidia optimizations

2 Likes

I’m sorry for sounding rude, but is’nt a Raspberry Pi a cheaper version (and well supported) of Jetson Orin Nano without any CUDA optimisation?

My frustration is that i’ve now reflashed my board, resetup the whole and still unable to get the ffmpeg working.