Accelerated GStreamer

Newbie here. I am getting started with GStreamer and have run some examples from the command line and also a couple tutorials C programs from the open source GStreamer/site. I am trying to learn about NVidia Accelerated GStreamer. Is the Nvidia Accelerated GStreamer different from the open source GStreamer? If so, how?

Hi,
We have our own plugins which use hardware accelration and can hook with public gstreamer plugins. So that you can construct the use-case more quickly.

For example, you can run RTSP streaming:

$ gst-launch-1.0 rtspsrc location=rtsp://wowzaec2demo.streamlock.net/vod/mp4:BigBuckBunny_115k.mov ! rtph264depay ! h264parse ! nvv4l2decoder ! nvvidconv ! video/x-raw, format=I420 ! xvimagesink

And use rtspsrc and rtph264depay to extract the H264 stream from the RTP packets.

If you use jetson_multimedia_api, there is no existing code and you would need to implement the stack.

Thanks DaneLLL for the message. Can you suggest how I can compare the performance of a NVidia plug-in with an open source plug-in?

Hi,
The nvv4l2decoder plugin is hardware decoder. You can compare the decoding performance to software decoder avdec_h264 plugin.

Thanks DaneLLL - I am not able to run the command - I think I am missing some components?

sudo gst-launch-1.0 rtspsrc location=rtsp://wowzaec2demo.streamlock.net/vod/mp4:BigBuckBunny_115k.mov ! rtph264depay ! h264parse ! nvv4l2decoder ! nvvidconv ! video/x-raw, format=I420 ! xvimagesink
[sudo] password for a64:

(gst-plugin-scanner:6900): GStreamer-WARNING **: 07:55:40.878: adding type GstEvent multiple times

(gst-plugin-scanner:6900): GStreamer-WARNING **: 07:55:42.596: Failed to load plugin ‘/usr/lib/aarch64-linux-gnu/gstreamer-1.0/deepstream/libnvdsgst_udp.so’: librivermax.so.0: cannot open shared object file: No such file or directory

(gst-plugin-scanner:6900): GStreamer-WARNING **: 07:55:42.671: Failed to load plugin ‘/usr/lib/aarch64-linux-gnu/gstreamer-1.0/deepstream/libnvdsgst_inferserver.so’: libtritonserver.so: cannot open shared object file: No such file or directory

(gst-plugin-scanner:6900): GStreamer-WARNING **: 07:55:42.794: Failed to load plugin ‘/usr/lib/aarch64-linux-gnu/gstreamer-1.0/deepstream/libnvdsgst_deepstream_bins.so’: libgstrtspserver-1.0.so.0: cannot open shared object file: No such file or directory
GLib (gthread-posix.c): Unexpected error from C library during ‘pthread_setspecific’: Invalid argument. Aborting.
Setting pipeline to PAUSED …
Opening in BLOCKING MODE
Pipeline is live and does not need PREROLL …
Progress: (open) Opening Stream
Pipeline is PREROLLED …
Prerolled, waiting for progress to finish…
Progress: (connect) Connecting to rtsp://wowzaec2demo.streamlock.net/vod/mp4:BigBuckBunny_115k.mov
ERROR: from element /GstPipeline:pipeline0/GstRTSPSrc:rtspsrc0: Could not open resource for reading and writing.
Additional debug info:
…/gst/rtsp/gstrtspsrc.c(8130): gst_rtspsrc_retrieve_sdp (): /GstPipeline:pipeline0/GstRTSPSrc:rtspsrc0:
Failed to connect. (Timeout while waiting for server response)
ERROR: pipeline doesn’t want to preroll.
Setting pipeline to NULL …
Freeing pipeline …

Hi,
Looks like the RTSP server is invalid. Please try local video file playback:

$ gst-launch-1.0 filesrc location=test.mp4 ! qtdemux ! h264parse ! nvv4l2decoder ! nvvidconv ! video/x-raw, format=I420 ! xvimagesink

Please replace test.mp4 with your video file name.

1 Like

This topic was automatically closed 14 days after the last reply. New replies are no longer allowed.