I think @kovacslt has also done this in the past too (with ffmpeg).
I have two versions of the same script - one for Intel GPU and one for AMD… The AMD one is faster on my 3-4 year old Radeon “RX 6600/6600 XT/6600M” (8 GB DDR5) than on my 2025 model Intel Arc A310 GPU (4 GB DDR6)…
Here’s AMD :
HWCOD=vaapi
...
HWDRV=/dev/dri/card1
...
ffpb -hwaccel $HWCOD -hwaccel_device \"$HWDRV\" -threads $THRD -i "$VID" -map 0 -c:v copy -c:a ac3 -c:s copy -c:v $CODEC -crf $FCT \"$NEWVID-$CODEC-crf$FCT\".mkv"
Here’s Intel :
HWCOD=vaapi
...
HWDRV=/dev/dri/renderD129
ffpb -hwaccel $HWCOD -hwaccel_device "$HWDRV" -threads $THRD -i "$VID" -map 0 -c:v copy -c:a ac3 -c:s copy -c:v $CODEC -crf $FCT "$NEWVID-$CODEC-crf$FCT".mkv
Note : “ffpb” is a python/pip tool that runs ffmpeg - but shows a progress meter…
I think the AMD is maybe about 2x faster? That’s anecdotal, but enough of a difference to notice.
I mostly do it with the amd version 'cause it’s faster… However - I use the Intel Arc A310 GPU hardware in JellyFin to transcode stuff on the fly to clients…
The horrible thing on my JellyFin server - the onboard GPU is also Intel - and it can be tricky figuring out which one is which… I can tell you - using the Arc A310 is way faster than the onboard Intel GPU… It was way back in January - but - I built the Linux server (Debian 13) with MATE desktop - and even the DM (login display manager) would block access to the GPU - and it’s a headless server anyway - so disabled the DM - I think it’s only enabled if it finds a display on the HDMI cable… But better to keep disabled…