Okay so I’m just some video editing dude with very litle programming experience and I want an FFMPEG build with ALL the nv stuff enabled. Basically what I want is described here
FFmpeg supports hardware accelerated decoding and encoding via the h264_cuvid, hevc_cuvid and h264_nvenc, hevc_nvenc modules. Activating support for hardware acceleration when building from source requires some extra steps:
Clone the FFmpeg git repository https://git.ffmpeg.org/ffmpeg.git
Download and install a compatible driver from the NVIDIA web site
Download and install the CUDA toolkit
Clone the nv-codec-headers repository and install using this repository as header-only: make install
Configure FFmpeg using the following command (use correct CUDA library path):
./configure --enable-cuda --enable-cuvid --enable-nvenc --enable-nonfree --enable-libnpp --extra-cflags=-I/usr/local/cuda/include --extra-ldflags=-L/usr/local/cuda/lib64
Build with multiple processes to increase build speed and suppress excessive output: make -j -s
But because I don’t really know what I am doing, I am struggling to get a build done for windows 10.
vanila windows binaries for ffmpeg on the web only include partial suport (encorder only), I want to be able to use the decoder and filters on the GPU as well.
- Does anyone know where I can download a win64 build of FFMPEG that has full nv enablement?
- Is someone able to show me a more detailed tutorial on how to build it with windows 10?
I had acrack at it, and I got past the configure stage using MinGW but could not do the build with ‘make’.
C:\ffmpeg_nv\ffmpeg (master -> origin)
λ sh configure --enable-cuda --enable-cuvid --enable-nvenc --enable-nonfree --enable-libnpp --extra-cflags=-I/usr/local/cuda/include --extra-ldflags=-L/usr/local/cuda/lib64
Native MSYS builds are discouraged, please use the MINGW environment.
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 "ffbuild/config.log" produced by configure as this will help
solve the problem.
rm: cannot remove '/tmp/ffconf.LLr9KvtV': Device or resource busy
C:\ffmpeg_nv\ffmpeg (master -> origin)
λ make -j -s
Makefile:2: ffbuild/config.mak: No such file or directory
Makefile:40: /tools/Makefile: No such file or directory
Makefile:41: /ffbuild/common.mak: No such file or directory
Makefile:97: /libavutil/Makefile: No such file or directory
Makefile:97: /ffbuild/library.mak: No such file or directory
Makefile:99: /fftools/Makefile: No such file or directory
Makefile:100: /doc/Makefile: No such file or directory
Makefile:101: /doc/examples/Makefile: No such file or directory
Makefile:166: /tests/Makefile: No such file or directory
make: *** No rule to make target '/tests/Makefile'. Stop.
C:\ffmpeg_nv\ffmpeg (master -> origin)
λ