• Hardware Platform : Jetson Orin embedded in Connect Tech Anvil
• DeepStream Version : 6.3.0
• JetPack Version : 5.1.2
• TensorRT Version : 8.5.2
Hello,
I designed a c++ gstreamer pipeline to process data from 6 camera (30 fps, 1920*1280) on Jetson orin.
This pipeline aimed to do the inference on 6 cameras and encode the stream with h264 encoding.
After creating and starting the pipeline, it crashes about several hours. It seems to always crash on the gst-element nvvideoconvert (convert UYVY to RGBA before inference) at the start of the pipeline.
Snippet of the code where the nvvideconvert element is created :
GstElement* cam_src = m_pipeline->createAndAddElement("v4l2src");
GstElement* format_convert = m_pipeline->createAndAddElement("nvvideoconvert");
GstElement* identity = m_pipeline->createAndAddElement("identity");
auto* l_src_pad = gst_element_get_static_pad(cam_src, "src");
gst_pad_add_probe(l_src_pad,
GST_PAD_PROBE_TYPE_BUFFER,
receiveCameraDataProbe,
m_camera_data[cam_index].get(),
NULL);
string device = "/dev/video" + to_string(cam_index);
g_object_set(cam_src, "device", device.c_str(), NULL);
GstCaps* caps = gst_caps_new_simple("video/x-raw",
"format",
G_TYPE_STRING,
"UYVY",
"width",
G_TYPE_INT,
m_config_handler->m_config_sensors.m_width,
"height",
G_TYPE_INT,
m_config_handler->m_config_sensors.m_height,
"framerate",
GST_TYPE_FRACTION,
m_config_handler->m_config_sensors.m_framerate,
1,
NULL);
if (!m_pipeline->elementLinkFiltered(
cam_src,
format_convert,
caps,
"RUNTIME_SOURCE_CREATION v4l2src->nvvideoconvert for camera" + to_string(cam_index)))
{
return false;
}
if (!m_pipeline->elementLinkFiltered(
format_convert,
identity,
"video/x-raw(memory:NVMM), format=(string)RGBA",
"RUNTIME_SOURCE_CREATION nvvideoconvert->identity for camera" + to_string(cam_index)))
{
return false;
}
Here is a screenshot of the coredump, showing that the segfault occurs inside the nvvideoconvert element :
When I run the pipeline with 3 cameras, the pipeline run without any crashes. May it be a performance issue ? Is there different set of parameters of the nvvideoconvert that I can try to avoid the crash from occuring ?
I can provide more information if necessary.
Kind regards,
Grégoire