Gstreamer program crashes after 30-min streaming due to POSIX alarm()

Hi, I’m a university student who is doing my project on Jetson Nano. My part is about to stream and record a USB camera input (v4l2src) for a very long time. I was trying to make my Gstreamer call a function that checks if any input is received by the barcode scanner. Once the input is received, the “split-now” is invoked and the Gstreamer would generate a new video file. I tried to use alarm(1) in my Gstreamer and alarm handler to make sure the program calls the handler and checks the input every 1 second.

It seems working in a way that I have expected. However, the streaming would ultimately meet an error and stops between 22-35mins after the start. I wish my streaming can last forever.

The error says
SYNC_IOC_FENCE_INFO ioctl failed with 9
NvDdkVicExecute Failed
nvbuffer transform Failed
gst_nvvconv_transform: NvBufferTransform Failed
Error: Internal data stream error.

Is there any relation between the hardware-accelerated element and the error?
The picture showing the error is uploaded. Each time the alarm is handled, “0\n” is printed.

My code is also uploaded, sorry for the messy code without comment, the problem should be related to the alarm signal, so other callback functions can be ignored.
gtestpro11.c (10.5 KB)


There is no update from you for a period, assuming this is not an issue any more.
Hence we are closing this topic. If need further support, please open a new one.

Do you use Jetpack 4.5.1(r32.5.1)? Please share your release version( $ head -1 /etc_nv_tegra_release ).