GStreamer-CRITICAL **: 15:19:35.551: gst_structure_set: assertion 'IS_MUTABLE (structure) || field == NULL' failed

R32.1 lepord imaging imx334

(VideoSystem.notStripped:14028): GStreamer-CRITICAL **: 15:19:35.551: gst_structure_set: assertion ‘IS_MUTABLE (structure) || field == NULL’ failed

Thread 22 “nvv4l2h264enc0:” received signal SIGTRAP, Trace/breakpoint trap.
[Switching to Thread 0x7f58a311c0 (LWP 14158)]
raise (sig=5) at …/sysdeps/unix/sysv/linux/raise.c:51
51 …/sysdeps/unix/sysv/linux/raise.c: No such file or directory.
(gdb) bt
#0 0x0000007fb747f2f0 in raise (sig=5) at …/sysdeps/unix/sysv/linux/raise.c:51
#1 0x0000007fb73b4be0 in g_logv () at /usr/lib/aarch64-linux-gnu/
#2 0x0000007fb73b4de4 in g_log () at /usr/lib/aarch64-linux-gnu/
#3 0x0000007fb72da8d8 in gst_structure_set () at /usr/lib/aarch64-linux-gnu/
#4 0x0000007fa80e9d3c in () at /usr/lib/aarch64-linux-gnu/gstreamer-1.0/
#5 0x0000007fb7189688 in gst_video_encoder_finish_frame () at /usr/lib/aarch64-linux-gnu/
#6 0x0000007fa80ebbb0 in () at /usr/lib/aarch64-linux-gnu/gstreamer-1.0/
#7 0x0000007fb72e7eb4 in () at /usr/lib/aarch64-linux-gnu/
#8 0x0000007fb746b000 in () at /usr/lib/aarch64-linux-gnu/

Please share the gstreamer pipeline for reference. You may check if you can see preview in running

$ gst-launch-1.0 nvarguscamerasrc ! nvoverlaysink
  1. my gstreamer pipeline works the first time I use it, I get the CRITICAL after removing splitmuxsink and dynamically adding it back.

  2. So I added GST_DEBUG=3 to see if I could get some information and got CRITICAL about the debug on the initial run of my gstreamer pipeline.

  3. How is a customer suppose to debug a system CRITICAL that does not give any information?

  4. Is the nvarguscamerasrc source code available for debugging, and the source code for the nvarguscamerasrc libraries?

  5. using leporard imaging imx334 with their driver in R32.1, waiting on leporard imaging for 32.2.1, hopefully nvarguscamerasrc and it’s library is updated.

  6. Looks like nvarguscamerasrc is rev 1.0.0

  7. how do I determine the revision for the library.


fails to run with GST_DEBUG set, gstreamer pipeline in this trace
~/tmp/VideoSystem$ G_DEBUG=fatal-criticals GST_DEBUG=3,bufferpool:0 gdb ./VideoSystem.notStripped GNU gdb (Ubuntu 8.1-0ubuntu3.2)
Copyright © 2018 Free Software Foundation, Inc.
License GPLv3+: GNU GPL version 3 or later
This is free software: you are free to change and redistribute it.
There is NO WARRANTY, to the extent permitted by law. Type “show copying”
and “show warranty” for details.
This GDB was configured as “aarch64-linux-gnu”.
Type “show configuration” for configuration details.
For bug reporting instructions, please see:
Find the GDB manual and other documentation resources online at:
For help, type “help”.
Type “apropos word” to search for commands related to “word”…
Reading symbols from ./VideoSystem.notStripped…(no debugging symbols found)…done.
(gdb) run
Starting program: /home/tbuckley/tmp/VideoSystem/VideoSystem.notStripped
[Thread debugging using libthread_db enabled]
Using host libthread_db library “/lib/aarch64-linux-gnu/”.
[New Thread 0x7fb3a761c0 (LWP 8464)]
[New Thread 0x7fb08d91c0 (LWP 8465)]
[New Thread 0x7fabfff1c0 (LWP 8466)]
[New Thread 0x7fab7fe1c0 (LWP 8467)]
[New Thread 0x7faaecf1c0 (LWP 8468)]
InitGst(173) CMDLINE nvarguscamerasrc ! video/x-raw(memory:NVMM),width=3840,height=2160,format=NV12 ! nvvidconv ! clockoverlay time-format="%D %H:%M:%S" halignment=right ! gdkpixbufoverlay location=/usr/local/stalker/crosshair-500x3.svg relative-x=.5 relative-y=.5 ! gdkpixbufoverlay location=/usr/local/stalker/Logo-500x3.svg offset-x=0 offset-y=0 ! queue ! tee name=t ! queue t. ! queue ! nveglglessink name=displaySink sync=false window-width=960 window-height=540 t. ! queue ! stalkertakepicture ! nvjpegenc ! multifilesink name=stalkerPicture async=false location=/usr/local/stalker/tmp/Stalker_%05d.jpg t. ! queue ! nvvidconv ! video/x-raw(memory:NVMM),width=(int)1920,height=(int)1080,format=(string)I420 ! queue ! nvv4l2h264enc ! h264parse ! stalkercreatevideo name=stalkercreatevideo ! splitmuxsink name=stalkerVideoSink async-handling=true location=/tmp/tmpFile
…/…/common/src/SharedMemory.c(53): shmget GOOD not created 0xffffffff errno 2
…/gst-plugin/src/gststalkertakepicture.c(163) CORRECT INIT PLACE 0x7fb7fb3000
…/…/common/src/SharedMemory.c(53): shmget GOOD not created 0xffffffff errno 2
…/gst-plugin/src/gststalkercreatevideo.c(173) ERROR: connectStalkerSharedMemory prebuffersize 0
InitGst(176) mPipeline 0x55558c6200

Using winsys: x11

(VideoSystem.notStripped:8460): GStreamer-CRITICAL **: 10:05:56.659: gst_debug_log_valist: assertion ‘category != NULL’ failed

Thread 1 “VideoSystem.not” received signal SIGTRAP, Trace/breakpoint trap.
raise (sig=5) at …/sysdeps/unix/sysv/linux/raise.c:51
51 …/sysdeps/unix/sysv/linux/raise.c: No such file or directory.
(gdb) bt
#0 0x0000007fb747f2f0 in raise (sig=5) at …/sysdeps/unix/sysv/linux/raise.c:51
#1 0x0000007fb73b4be0 in g_logv () at /usr/lib/aarch64-linux-gnu/
#2 0x0000007fb73b4de4 in g_log () at /usr/lib/aarch64-linux-gnu/ 0x0000007fb729eaac in gst_debug_log_valist () at /usr/lib/aarch64-linux-gnu/
#4 0x0000007fb729ebac in gst_debug_log () at /usr/lib/aarch64-linux-gnu/libgstr
#5 0x0000007fa80dc4a8 in () at /usr/lib/aarch64-linux-gnu/gstreamer-1.0/libgst
#6 0x0000007fa80dcc78 in () at /usr/lib/aarch64-linux-gnu/gstreamer-1.0/libgst
#7 0x0000007fa80e40c8 in () at /usr/lib/aarch64-linux-gnu/gstreamer-1.0/libgst
#8 0x0000007fa80ec080 in () at /usr/lib/aarch64-linux-gnu/gstreamer-1.0/libgst
#9 0x0000007fb71871b4 in () at /usr/lib/aarch64-linux-gnu/
#10 0x0000000000000002 in ()

nvarguscamerasrc is private. Not open source. On r32.1, there are known issues about nvarguscamerasrc:

Would be better if you can upgrade to r32.2.1 and try.