ZMQ with Deepstream

Please provide complete information as applicable to your setup.

• Hardware Platform (Jetson / GPU) Jetson
• DeepStream Version Deepstream 6.0
• JetPack Version (valid for Jetson only) JetPack 4.6
• TensorRT Version TensorRT 8

I need to modify Deepstream in order to send metadata ZeroMQ (ZMQ) and send an RTSP stream that has bounding boxes on targets. Has anyone done this earlier and can someone give me some pointers? I am thinking of modifying nvmsgbroker to add ZMQ.

Thank you,

Please check this.
Generating custom metadata for different type of objects:
In addition to common fields provided in NvDsEventMsgMeta structure, user can also create custom objects and attach to buffer as NVDS_EVENT_MSG_META metadata. To do that NvDsEventMsgMeta provides “extMsg” and “extMsgSize” fields. User can create custom structure, fill that structure and assign the pointer of that structure as “extMsg” and set the “extMsgSize” accordingly. If custom object contains fields that can’t be simply mem copied then user should also provide function to copy and free those objects.

Refer generate_event_msg_meta() to know how to use “extMsg” and “extMsgSize” fields for custom objects and how to provide copy/free function and attach that object to buffer as metadata.

I apologize for the delay in responding. I need to send the metadata over zmq. I don’t want to change the format. I need to send the same JSON object containing the metadata, but i need it over ZMQ and not Kafka/MQTT etc. that is supported by Deepstream.
Does it still need modification in nvmsgconv?

Thank you.

To support ZMQ broker, you need to use the messaging interface, nvds_msgapi , to implement a custom protocol message handler and integrate it with DeepStream applications.
Gst-nvmsgbroker — DeepStream 6.0.1 Release documentation (

Thank you for letting me know. I will try this.

This topic was automatically closed 14 days after the last reply. New replies are no longer allowed.