Use ffmpeg with docker and nvidia powers to transcode in Debian 11 Bullseye
Go to file
ale 1f58a7fc5a
Some checks reported errors
continuous-integration/drone/push Build was killed
refactor and .drone.yml
2024-11-04 00:43:07 +01:00
.drone.yml refactor and .drone.yml 2024-11-04 00:43:07 +01:00
docker-compose.yml refactor and .drone.yml 2024-11-04 00:43:07 +01:00
Dockerfile update version 2024-11-04 00:02:27 +01:00
README.md refactor and .drone.yml 2024-11-04 00:43:07 +01:00

docker-ffmpeg-gpu

Use ffmpeg with docker and nvidia powers to transcode in Debian 11 Bullseye, based on this nice docker project

             (__) 
             (oo) 
       /------\/ 
      / |    ||   
     *  /\---/\ 
        ~~   ~~   
..."Have you mooed today?"...

Requisites

This project needs docker and docker-compose working with nvidia runtime

Build

$ git clone https://git.manalejandro.com/ale/docker-ffmpeg-gpu
$ cd docker-ffmpeg-gpu && docker-compose build --force-rm

Pull docker image

$ docker pull registry.manalejandro.com/docker-ffmpeg-gpu

Usage

You can use "/ffmpeg" or "/ffmpeg-pascal" for architecture version

$ docker-compose up -d
$ docker-compose run --rm --entrypoint /ffmpeg nvidia-ffmpeg -hwaccels -v 0

Hardware acceleration methods:
vdpau
cuda
vaapi

Sample using CUDA for encoding:

$ docker-compose run --rm --entrypoint /ffmpeg nvidia-ffmpeg -vsync 0 -i /folder/input -c:a copy -c:v h264_nvenc /folder/output

Full hardware transcode with NVDEC and NVENC:

$ docker-compose run --rm --entrypoint /ffmpeg nvidia-ffmpeg -vsync 0 -hwaccel nvdec -hwaccel_output_format cuda -extra_hw_frames 10 -i /folder/input -c:a copy -c:v h264_nvenc /folder/output

Shutdown

$ docker-compose down

License

MIT