Error when trying to swap PGIE while keeping the same SGIE

• Hardware Platform (Jetson / GPU)
RTXA4000, Driver Version 515.86.01 Dell XPS intel I7-10700 CPU
• DeepStream Version
6.1.1
• JetPack Version (valid for Jetson only)
5.0.2which sample application, the function description)**

Steps to reproduce:
ds-output-tensor-example.zip (96.3 MB)

  1. unzip the attached folder, cd into it and build the container using the build script and run it using the run script.
  2. Run the ./gst-run.sh script as is (CASE #1) containing the following content:
SGIE="nvinferserver config-file-path=dstensor_sgie1_config.txt !"
#SGIE=""
PGIE="dstest_ssd_nopostprocess.txt"
#PGIE="dstensor_pgie_config.txt"
gst-launch-1.0 filesrc location=/opt/nvidia/deepstream/deepstream-6.1/samples/streams/sample_720p.h264 ! h264parse ! \
    nvv4l2decoder ! m.sink_0 nvstreammux name=m ! \
    nvinferserver config-file-path=$PGIE ! \
    $SGIE nvvideoconvert ! nvdsosd ! queue ! nveglglessink

This case doesn’t use the SGIE and it runs, so PGIE works. (bounding boxes are shown in python application but not in gst-launch script).

  1. modify the gst-run.sh script to the by uncommenting the second SGIE line and enabling the SGIE (CASE 2)
SGIE="nvinferserver config-file-path=dstensor_sgie1_config.txt !"
SGIE=""
PGIE="dstest_ssd_nopostprocess.txt"
#PGIE="dstensor_pgie_config.txt"
gst-launch-1.0 filesrc location=/opt/nvidia/deepstream/deepstream-6.1/samples/streams/sample_720p.h264 ! h264parse ! \
    nvv4l2decoder ! m.sink_0 nvstreammux name=m ! \
    nvinferserver config-file-path=$PGIE ! \
    $SGIE nvvideoconvert ! nvdsosd ! queue ! nveglglessink

The following error is produced:

ERROR: infer_trtis_server.cpp:861 New request repo settings do not match exist server settings.
 Request:
root: "/opt/nvidia/deepstream/deepstream-6.1/samples/trtis_model_repo"
log_level: 2
strict_model_config: true
, 
existing:
root: "/opt/nvidia/deepstream/deepstream-6.1/samples/trtis_model_repo"
strict_model_config: true

0:00:00.526629682   478 0x556da6f8f4a0 ERROR          nvinferserver gstnvinferserver.cpp:375:gst_nvinfer_server_logger:<nvinferserver0> nvinferserver[UID 5]: Error in createNNBackend() <infer_trtis_context.cpp:240> [UID = 5]: model:ssd_inception_v2_coco_2018_01_28 get triton server instance failed. repo:root: "/opt/nvidia/deepstream/deepstream-6.1/samples/trtis_model_repo"
log_level: 2
strict_model_config: true

0:00:00.526642843   478 0x556da6f8f4a0 ERROR          nvinferserver gstnvinferserver.cpp:375:gst_nvinfer_server_logger:<nvinferserver0> nvinferserver[UID 5]: Error in initialize() <infer_base_context.cpp:79> [UID = 5]: create nn-backend failed, check config file settings, nvinfer error:NVDSINFER_TRITON_ERROR
0:00:00.526671900   478 0x556da6f8f4a0 WARN           nvinferserver gstnvinferserver_impl.cpp:547:start:<nvinferserver0> error: Failed to initialize InferTrtIsContext
0:00:00.526674733   478 0x556da6f8f4a0 WARN           nvinferserver gstnvinferserver_impl.cpp:547:start:<nvinferserver0> error: Config file path: dstest_ssd_nopostprocess.txt
0:00:00.526696922   478 0x556da6f8f4a0 WARN           nvinferserver gstnvinferserver.cpp:473:gst_nvinfer_server_start:<nvinferserver0> error: gstnvinferserver_impl start failed

4 - uncomment the second PGIE line to change the PGIE and rerun the script

SGIE="nvinferserver config-file-path=dstensor_sgie1_config.txt !"
SGIE=""
PGIE="dstest_ssd_nopostprocess.txt"
PGIE="dstensor_pgie_config.txt"
gst-launch-1.0 filesrc location=/opt/nvidia/deepstream/deepstream-6.1/samples/streams/sample_720p.h264 ! h264parse ! \
    nvv4l2decoder ! m.sink_0 nvstreammux name=m ! \
    nvinferserver config-file-path=$PGIE ! \
    $SGIE nvvideoconvert ! nvdsosd ! queue ! nveglglessink

This works without error.

Why did case 2 not work, is there something about the PGIE/SGIE pair thats incompatible?

log_level: 2 needed to be removed from config file

1 Like

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