Hi there
I tried deepstream-test4 and it’s working great, with AMQP messages.
Then when I read nvmsgconv docs it says that it takes the metadata, applies the schema, and genereate the messages, for nvmsgbroker.
My pipeline is sort of:
! nv.sink_01 nvstreammux name=nv width=1280 height=720 batch-size=1 batched-push-timeout=4000000 live-source=true\
! queue ! nvvideoconvert\
! nvinfer config-file-path=/opt/nvidia/deepstream/deepstream-4.0/sources/objectDetector_Yolo/config_infer_primary_yoloV3.txt batch-size=1 unique-id=1\
! nvvideoconvert ! nvdsosd ! tee name=deep ! queue ! videoconvert ! nvegltransform ! nveglglessink\
deep. ! nvmsgconv config=/opt/nvidia/deepstream/deepstream-4.0/sources/apps/sample_apps/deepstream-test4/dstest4_msgconv_config.txt payload-type=1\
! nvmsgbroker proto-lib=/opt/nvidia/deepstream/deepstream-4.0/lib/libnvds_amqp_proto.so\
config=/opt/nvidia/deepstream/deepstream-4.0/sources/apps/sample_apps/deepstream-test4/cfg_amqp.txt conn-str="127.0.0.1;5672;guest"\
I’m running it from a v4l2 source, and showing a lot of positive detections of Person and other objects.
It connects to the amqp broker (rabbitmq), but it doesn’t send any message.
So I clearly see that deepstream-test4 uses osd_sink_pad_buffer_probe to get the metadata and manually assembles msgmeta.
Question (1): Is this the only way? Do I have to assemble this pipe programmaticaly and create the msg_meta by hand?
Question (2): More of a suggestion. I think that nvmsgconv should have a “send-it-all” mode in order to transmit all the metadata without the need to program. At least at the testing stage.
thanks a lot
Guillermo