Найти в Дзене

Компилирую ffmpeg в Debian c поддержкой Nvidia CUDA

Всё нижеописанное делаю под рутом.

1. Установить CUDA toolkit

2. создаю отдельную папку

3. в этой папке вызываю: git clone https://git.videolan.org/git/ffmpeg/nv-codec-headers.git

4. устанавливаю библиотеки от vlc: cd nv-codec-headers && make install && cd ..

5. скачиваю исходники ffmpeg: git clone https://git.ffmpeg.org/ffmpeg.git ffmpeg/

6. ставл дополнительные пакеты: apt-get install build-essential yasm cmake libtool libc6 libc6-dev unzip wget libnuma1 libnuma-dev

7. перехожу в папку с ffmpeg'ом: cd ffmpeg/

8. запускаю конфигуратор: ./configure --enable-nonfree --enable-cuda-nvcc --enable-libnpp --extra-cflags=-I/usr/local/cuda/include --extra-ldflags=-L/usr/local/cuda/lib64 --disable-static --enable-shared

9. компилирую ffmpeg: make -j 4

10. устанавливаю ffmpeg в системе (по умолчанию в /usr/local/bin): make install

11. убеждаюсь, что /usr/local/lib есть в списке путей к библиотекам. Если нет, добавляю:

11.а cat "/usr/local/lib" > /etc/ld.so.conf.d/local_lib.conf

11.б ldconfig

12. проверяю поддержку железных акселераторов: /usr/local/bin/ffmpeg -hwaccels

Прирост производительности на видеокарте Nvidia 1650 составил приблизительно 290%

Полезные ссылки:

https://docs.nvidia.com/video-technologies/video-codec-sdk/ffmpeg-with-nvidia-gpu/

https://docs.nvidia.com/cuda/cuda-installation-guide-linux/index.html

https://github.com/FFmpeg/FFmpeg