Hi,
Our vendor has supplied us with a new JP5.1 image for their custom xavier box.
I think there is a folder missing from the nvidia container runtime mapping? I see a lot of errors with gstreamer complaining about /lib/modules/5.10.104-tegra missing. This error goes away after adding the mapping or updating the /etc/nvidia-container-runtime/l4t.csv. Not sure if this is a spurious error or if important.
Even after fixing the above I still get strange failures when I use gstreamer with python inside container. This all worked fine on JP4.6 - and the only change I made now is to update the base used (tried l4t-base:35.2.1 and deepstream-l4t:6.2-base).
Strangely when I run gst-launch-1.0 videotestsrc ! nvvidconv ! nvv4l2h265enc ! fakesink - this works fine. Also gst-inspect-1.0 nvv4l2h265enc works fine in container - canāt see any blacklisted plugins.
It seems to be able to load most plugins fine, just not nvv4l2h265enc in this case.
0:00:03.821581130 1 0x192a3320 INFO GST_PLUGIN_LOADING gstplugin.c:902:_priv_gst_plugin_load_file_for_registry: plugin ā/usr/lib/aarch64-linux-gnu/gstreamer-1.0/libgstnvvidconv.soā loaded
0:00:03.821651437 1 0x192a3320 INFO GST_ELEMENT_FACTORY gstelementfactory.c:360:gst_element_factory_create: creating element ānvvidconvā named āconvertorā
0:00:03.822160870 1 0x192a3320 INFO GST_ELEMENT_PADS gstelement.c:671:gst_element_add_pad:GstBaseTransform@0x19b73570 adding pad āsinkā
0:00:03.822225257 1 0x192a3320 INFO GST_ELEMENT_PADS gstelement.c:671:gst_element_add_pad:GstBaseTransform@0x19b73570 adding pad āsrcā
2023-03-06 20:35:08 INFO Creating H265 Encoder
0:00:03.854722083 1 0x192a3320 WARN GST_PLUGIN_LOADING gstplugin.c:527:gst_plugin_register_func: plugin ā/usr/lib/aarch64-linux-gnu/gstreamer-1.0/libgstnvvideo4linux2.soā failed to initialise
0:00:03.854840073 1 0x192a3320 WARN GST_PLUGIN_LOADING gstplugin.c:1330:gst_plugin_load_by_name: load_plugin error: File ā/usr/lib/aarch64-linux-gnu/gstreamer-1.0/libgstnvvideo4linux2.soā appears to be a GStreamer plugin, but it failed to initialize
0:00:03.854918573 1 0x192a3320 WARN GST_PLUGIN_LOADING gstpluginfeature.c:132:gst_plugin_feature_load: Failed to load plugin containing feature ānvv4l2h265encā.
0:00:03.855143864 1 0x192a3320 WARN GST_ELEMENT_FACTORY gstelementfactory.c:398:gst_element_factory_create: loading plugin containing feature encoder returned NULL!
0:00:03.855255805 1 0x192a3320 INFO GST_ELEMENT_FACTORY gstelementfactory.c:463:gst_element_factory_make: couldnāt create instance!
2023-03-06 20:35:08 ERROR Unable to create encoder
How can I find out why this plugin failed to initialise?
I tried to make a minimal sample with python using gst_parse_launch but that worked fine - just as with gst-launch-1.0. So maybe the problem lies with the python GObject factory?
The code that is failing:
encoder = Gst.ElementFactory.make(ānvv4l2h265encā, āencoderā)
if not encoder:
logger.error(" Unable to create encoder")
return(-1)