However, when I try to do do the same with a live video source encoded on a separate machine without an NVIDIA GPU, I get an error like this one:
sudo gst-launch-1.0 videotestsrc ! x264enc ! nvv4l2decoder ! nvv4l2h264enc ! fakesink
Setting pipeline to PAUSED ...
Pipeline is PREROLLING ...
Redistribute latency...
terminate called after throwing an instance of 'NVDECException'
what(): cuvidv4l2_handle_video_sequence_cb : Codec not supported on this GPU at src/cuvidv4l2_nvdec.cpp:223
Aborted
Wow, I really flubbed my wording there, sorry. This command was run on the NVIDIA machine to show the error that I am seeing with just one command. In reality, I’m encoding on a phone and UDPing it to the NVIDIA machine, which tries to decode and shows this error despite it having a Tesla T4 with driver which work pristinely in the filesrc example.
sudo gst-launch-1.0 udpsrc port=xxxx ! application/x-rtp ! rtph264depay ! h264parse ! nvv4l2decoder ! fakesink
Setting pipeline to PAUSED ...
Pipeline is live and does not need PREROLL ...
Setting pipeline to PLAYING ...
New clock: GstSystemClock
terminate called after throwing an instance of 'NVDECException'
what(): cuvidv4l2_handle_video_sequence_cb : Codec not supported on this GPU at src/cuvidv4l2_nvdec.cpp:223
Aborted