wader / static-ffmpeg

Multi-arch docker image with ffmpeg/ffprobe binaries built as hardened static PIE binaries with no external dependencies
https://hub.docker.com/r/mwader/static-ffmpeg/
MIT License
255 stars 62 forks source link

Added Hardware interface VAAPI and QSV #494

Open ryanwclark1 opened 1 month ago

ryanwclark1 commented 1 month ago

LibVA - implementation for VAAPI LibVPL - Intel Video Processing Library Updated Readme with source library link

FFMPEG wiki on VAAPI FFMPEG wiki on Quicksync/QSV

wader commented 1 month ago

Thanks! looks good, only have some minor comments. I don't the hardware to test this, but i assume you have tried? :)

Does this usually require volume mount in some /dev device into the container to work? something to add to the README?

ryanwclark1 commented 1 month ago

Thanks! looks good, only have some minor comments. I don't the hardware to test this, but i assume you have tried? :)

Does this usually require volume mount in some /dev device into the container to work? something to add to the README?

@wander, I tested using the Intel ARC 310 and 380. I did not try with an AMD GPU which can use the VAAPI interface, I do have one and will report back on this. NVIDIA, as I'm sure you know, is separate and distinct.

My tests were done using a separate base image with some additional user space tools/drivers and copying in the ffmpeg binary, I used --device /dev/dri in the docker run command to pass my gpu into the container. I will test using the "Run directly" and the "Shell Alias" methods described in the README. Will report back.

wader commented 1 month ago

Thanks! looks good, only have some minor comments. I don't the hardware to test this, but i assume you have tried? :) Does this usually require volume mount in some /dev device into the container to work? something to add to the README?

@wander, I tested using the Intel ARC 310 and 380. I did not try with an AMD GPU which can use the VAAPI interface, I do have one and will report back on this. NVIDIA, as I'm sure you know, is separate and distinct.

👍

There is draft PR https://github.com/wader/static-ffmpeg/pull/482 about nvidia but it seems to be a mess to get working with musl, and i guess it might involve linking with some random binary from nvidia? not great if so.

My tests were done using a separate base image with some additional user space tools/drivers and copying in the ffmpeg binary, I used --device /dev/dri in the docker run command to pass my gpu into the container. I will test using the "Run directly" and the "Shell Alias" methods described in the README. Will report back.

Great! just some short example how to use it would be good and enough i think.

wader commented 1 month ago

Hey! did you look anything into adding some kind of how-to-use section to the README?

wader commented 1 month ago

Force pushed fixed for ^2 and rebase conflict with master. Only thing left is maybe some docs about --device etc

wader commented 1 day ago

Try to get this merged?