I’m trying to use gstreamer to get some rtsp data.
I have a pipeline as the following:
gst-launch-1.0 -v rtspsrc location="rtsp://somelink" ! rtph265depay ! h265parse ! avdec_h265 ! videoconvert ! appsink"
Please note that the decoder and converter are
avdec_h265 ! videoconvert. It works but I can notice the CPU load increase.
So I want to use nvidia’s hardware accelerated gstreamer plugins like
nvvidconv, so my pipeline now is like this:
gst-launch-1.0 rtspsrc location="rtsp://somelink" ! rtph265depay ! h265parse ! nvv4l2decoder ! nvvidconv ! appsink"
but I got this error
WARNING: erroneous pipeline: could not link nvvconv0 to appsink0
Then I guess maybe I can’t use
nvvidconv, so I keep use
videoconvert but use
nvv4l2decoder, like this:
gst-launch-1.0 rtspsrc location="rtsp://somelink" ! rtph265depay ! h265parse ! nvv4l2decoder ! videoconvert ! appsink"
to my surprise, it now has error like this:
WARNING: erroneous pipeline: could not link videoconvert0 to appsink0
I’m surprised because videoconvert ! appsink used to work together in pipeline_ok_1.
My target is very simple: use hardware accelerated decoder/convert (either gstreamer or ffmpeg is ok) and then get the data and I need to process it later.