Gstreamer pipeline fails

Hello,

I’m running Jetson Nano with Jetpack 4.6.
I want to stream video after infrence with YOLOv4. I thought that gstreamer would be the most convinient way of doing it. I found this plugin: GitHub - aler9/gst-darknet: GStreamer element to use Darknet (neural network framework) inside GStreamer.

I wanted to print the detected instances as a starter with

gst-launch-1.0 \
filesrc location=test.mp4 ! decodebin ! videoconvert \
! darknetinfer config=yolov4.cfg weights=yolov4.weights \
! darknetprint labels=coco.names \
! fakesink

However I’m running into this error:

Opening in BLOCKING MODE 
NvMMLiteOpen : Block : BlockType = 261 
NVMEDIA: Reading vendor.tegra.display-size : status: 6 
NvMMLiteBlockCreate : Block : BlockType = 261 
WARNING: from element /GstPipeline:pipeline0/GstDecodeBin:decodebin0/GstCapsFilter:capsfilter0: not negotiated
Additional debug info:
gstbasetransform.c(1415): gst_base_transform_reconfigure (): /GstPipeline:pipeline0/GstDecodeBin:decodebin0/GstCapsFilter:capsfilter0:
not negotiated
ERROR: from element /GstPipeline:pipeline0/GstDecodeBin:decodebin0/GstQTDemux:qtdemux0: Internal data stream error.
Additional debug info:
qtdemux.c(6073): gst_qtdemux_loop (): /GstPipeline:pipeline0/GstDecodeBin:decodebin0/GstQTDemux:qtdemux0:
streaming stopped, reason not-negotiated (-4)
ERROR: pipeline doesn't want to preroll.
Setting pipeline to NULL ...
Freeing pipeline ...

Weirdly enough the same command works perfectly fine on my ubuntu desktop computer. What am I doing wrong?

Hi,
Please try DeepStream SDK. We have demonstrated Yolo models in

/opt/nvidia/deepstream/deepstream-6.0/sources/objectDetector_Yolo/

For YoloV4, please refer ro
GitHub - NVIDIA-AI-IOT/yolov4_deepstream

Documents of DeepStream SDK:
NVIDIA Metropolis Documentation