nVidia GPU assisted HW transcoding
I began using Plex for OTA recording and live TV recently. Unfortunately, with live TV I've reached a limitation with transcoding horsepower, causing the stream to constantly buffer.
The transcode is for MPEG2 video coming from a HD Homerun Connect, translated to x264 for a Roku TV Plex app.
I've been following the hardware transcode discussions in a few other forums and it's not completely clear the state of HW accelerated transcoding, especially as you venture outside Windows and Quicksync based processors. The bits I've scraped together seem to say that Kepler class nvidia hardware and newer should be supported. That's the GTX6xx series and up. I'm using a GTX650 on a FreeNAS system.
I haven't been able to put a working setup together though. I can't even get the "Use HW transcoding" option in the Settings > Transcoder menu to appear.
Other discussions mentioned libvaapi as a prerequisite, but I don't see that anywhere in the FreeNAS based install (jail). I scanned all the files in /usr/pbi/plexmediaserver-amd64 and nothing of that name shows up.
I'm running the latest FreeBSD release, 18.104.22.16803. I've installed the necessary kernel modules for the nvidia card. The card is recognized by 'nvidia-smi'.
I think I need just a bit more understanding what the "Plex Transcoder" actually needs to enable HW acceleration in this scenario. It seems to be just a wrapper around FFmpeg when you run it directly. But I think that means it would have to be built with NVENC in mind to leverage it. Further, the nvidia driver install only provides libvdpau, which is only the decode half of the equation. I think the encoding half has to come from the nvidia SDK and built into FFmpeg.