Gst-nvmsgbroker break the pipeline

• Hardware Platform ( GPU)
• DeepStream Version 6.2
• Issue Type( bugs)

I try to add Gst-nvmsgbroker into deepstream_reference_apps/runtime_source_add_delete.
Here is the difference between runtime_source_add_delete(tag 6.2) and my code Diff between origin code
However this code is not working properly.

But if I remove msgbroker from gst_bin_add_many. Everything work fine again. Remove msgbroker

I use RTSP as my source, AMQP as my broker protocol. Below is the command I run my program.

./deepstream-test-rt-src-add-del rtsp://192.168.8.53/live1.sdp 0 filesink 1

I have RabbitMQ install on my local machine and service is running.

● rabbitmq-server.service - RabbitMQ Messaging Server
     Loaded: loaded (/lib/systemd/system/rabbitmq-server.service; enabled; vendor preset: enabled)
     Active: active (running) since Thu 2023-03-30 13:50:09 CST; 22h ago
   Main PID: 4079924 (beam.smp)
     Status: "Initialized"
      Tasks: 163 (limit: 38230)
     Memory: 92.9M
     CGroup: /system.slice/rabbitmq-server.service
             ├─4079920 /bin/sh /usr/sbin/rabbitmq-server
             ├─4079924 /usr/lib/erlang/erts-10.6.4/bin/beam.smp -W w -A 128 -MBas ageffcbf -MHas ageffcbf -MBlmbcs 512 -MHlmbcs 512 -MMmcs 30 -P 10>
             ├─4080284 erl_child_setup 65536
             ├─4080382 inet_gethost 4
             └─4080383 inet_gethost 4

Below is my config for msgconv and msgbroker. Other is remain the same as runtime_source_add_delete

can you share the error log? and nvmsgconv and nvmsgbroker are opensource, you might add logs to check if the data was generated and sent.

Here is the full log. To reproduce this issue, the generated video will not have tile window after add msgbroker into gst_bin_add_many.

I have some progress about this issue. after I add the following setup. The pipeline work again. The key point is "async", FALSE,

  g_object_set (G_OBJECT (msgbroker),
      "topic", "topicname",
      "sync", TRUE, "async", FALSE,
       "new-api", 1, NULL);

However, I still want to know is this a bug or not. Doc did not mention this at all.

Blockquote
and nvmsgconv and nvmsgbroker are opensource, you might add logs to check if the data was generated and sent.

I do try to debug. However the program seem to hang inside amqp broker protocol library so I have no way to debug.

do you mean your code can work fine now? nvmsgbroker is a subclass of GstBaseSink, so it has async property. please refer to Gstreamer 's explanation async.

can you use nvbroker sample deeptream-test4 to reproduce this issue, you only need to modify the configuration file.

do you mean your code can work fine now?

No, when I add nvmsgbroker into gst_element_link_many, the pipeline break again.

can you use nvbroker sample deeptream-test4 to reproduce this issue, you only need to modify the configuration file.

If the source is video file, it work properly. However this example did not support RTSP source originally. I need some time to modify the code.

I modify deepstream-test4 for RTSP souce, following is the difference with origin code.
Diff between origin deepstream-test4

The pipeline did not stuck.

Here is the conf file

I use the following to run app

./deepstream-test4-app dstest4_config.yml --no-display

thanks for your update, you can compare the media pipelines, here is the method of dumping pipeline dump pipeline.

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