Custom Transcoder Arguments/Gstreamer Support for NVIDIA Jetson

Like many people, I saw the NVIDIA Jetson Nano and instantly thought “That’d make a great HW-accelerated Plex Server” and as I (and many others) have learned, it’s never that simple. That being said, I’m determined to make this work or be thoroughly convinced that it is not possible. This is what I understand so far:

  1. Jetson doesn’t support the NVIDIA driver for linux, only supporting video codec acceleration through Gstreamer. (This means no NVDEC or NVENC)

  2. There’s a Github that created a patched FFMPEG for Jetson that patches FFMPEG to use Gstreamer or it created a new “NVENC equivalent” called nvmpi (I’m not so sure about this because I’m not so smart)

  3. My assumption is that if FFMPEG can be patched for Jetson support then it should be possible to apply the same patch to the Plex-FFMPEG source, and then create a new plex transcoder with custom arguments à la UnicornTranscoder

I know nothing is ever as easy as it seems but it feels like there’s a solid foundation here. Please let me know if you’ve got any suggestions, questions, comments, concerns, criticisms, or critiques.

To be clear, I don’t think Plex would ever consider itself doing hardware transcoding (because the option to enable it is unavailable without quicksync or NVENC available) but the “software transcoding” it’s doing would be using custom FFMPEG arguments that utilize the Jetson’s video-acceleration capabilities.

Yeah, having Jetson support would be outstanding.
I wonder if there is any way we could start a bounty to have this done =)