On the topic of hardware acceleration, after much trial and error, I found that manually updating Shinobi via CLI did the trick to get FFMPEG working for encoding recordings.
Open console on Shinobi Docker
Type the following:
git reset --hard
git pull
npm install --unsafe-perm
Then restart your docker container.
However, it is finicky - if you try to change an H265 stream from your camera to H264 for display on both the dashboard, and recording as well, then it failed. For my set up, I set my camera to H264 and copied through to the dashboard and recording, no Hwacceleration used.
I also found that when encoding vs. copying for recording purposes, my CPU use actually went up. With 2 cameras, CPU use is minimal anyway.
I would have liked to use H265 for recordings to minimize size, but that introduces alot of codec issues with trying to view the files in browsers (which don't support 265), etc. Oh well.
I think the ideal use for GPU acceleration with Shinobi is with the object detection plugin (Yolo). This can be set up with SOI's guide on YT, as well as this link: https://hub.shinobi.video/articles/view/JtJiGkdbcpAig40
The Yolo.js plugin does appear to be doing "something" when I do watch nvidia-smi in console, and walk in front of the camera(s). So, I guess that can be considered something.