Deepstream-app logging(cout,printf) problem

Please provide complete information as applicable to your setup.

• Hardware Platform (Jetson / GPU):RTX2080TI
• DeepStream Version:5.0
• JetPack Version (valid for Jetson only)
• TensorRT Version:TensorRT-7.0.0.11
• NVIDIA GPU Driver Version (valid for GPU only):Driver Version: 440.82 CUDA Version: 10.2
• Issue Type( questions, new requirements, bugs):questions
• How to reproduce the issue ? (This is for bugs. Including which sample app is using, the configuration files content, the command line used and other details for reproducing)
• Requirement details( This is for new requirement. Including the module name-for which plugin or for which sample application, the function description)

I can build the YOLOV3 plugin in the folder /opt/nvidia/deepstream/deepstream/sources/objectDetector_Yolo

and run it well.

However, when I tried to printf/std::cout some variables to understand the work flow of DeepStream, nothing was displayed in the console.

the code is as following:

static bool getYoloNetworkInfo (NetworkInfo &networkInfo, const NvDsInferContextInitParams* initParams)
{

std::cout << "#############################" << std::endl;

std::string yoloCfg = initParams->customNetworkConfigFilePath;
std::string yoloType;

But when the deepstream-app -c deepstream_app_config_yoloV3.txt return as a failure, the debug information was displayed in the console.

So strange and why?

Anybody can help?

  1. nothing was displayed in the console.
  2. the debug information was displayed in the console.
    what’s the difference that got above two different results?

did a quick test with below change and run commands below, it can print out the “##…#”.

# make -C nvdsinfer_custom_impl_Yolo
# deepstream-app -c deepstream_app_config_yoloV3_tiny.txt
root@f98fe2c6c449:/opt/nvidia/deepstream/deepstream-5.1/sources/objectDetector_Yolo# cd -
/opt/nvidia/deepstream/deepstream-5.1/sources/objectDetector_Yolo/nvdsinfer_custom_impl_Yolo
root@f98fe2c6c449:/opt/nvidia/deepstream/deepstream-5.1/sources/objectDetector_Yolo/nvdsinfer_custom_impl_Yolo# git diff
diff --git a/nvdsparsebbox_Yolo.cpp b/nvdsparsebbox_Yolo.cpp
index 17f47ee..64327ae 100644
--- a/nvdsparsebbox_Yolo.cpp
+++ b/nvdsparsebbox_Yolo.cpp
@@ -303,6 +303,8 @@ extern "C" bool NvDsInferParseCustomYoloV3Tiny(
         //{0, 1, 2}}; // as per output result, select {1,2,3}
         {1, 2, 3}};

+    std::cout << "#############################" << std::endl;
+
     return NvDsInferParseYoloV3 (
         outputLayersInfo, networkInfo, detectionParams, objectList,
         kANCHORS, kMASKS);

Thank you very much for your reply.

Can you add the test code in nvdsinfer_yolo_engine.cpp.

the function is

static bool getYoloNetworkInfo (NetworkInfo &networkInfo, const NvDsInferContextInitParams* initParams)

like this:

static bool getYoloNetworkInfo (NetworkInfo &networkInfo, const NvDsInferContextInitParams* initParams)
{

std::cout << "#############################" << std::endl;

std::string yoloCfg = initParams->customNetworkConfigFilePath;
std::string yoloType;

std::transform (yoloCfg.begin(), yoloCfg.end(), yoloCfg.begin(), [] (uint8_t c) {
    return std::tolower (c);});

did you update the lib used by DS after modification and generating the lib?

Yes, I update the libnvdsinfer_custom_impl_Yolo.so

-rwxr-xr-x 1 root root 754840 6月 8 09:53 /opt/nvidia/deepstream/deepstream-5.0/lib/libnvdsinfer_custom_impl_Yolo.so*

Can you just make a simple test.

If you can print the #############################

I will solve the problem myself.

Thank you

diff --git a/nvdsinfer_yolo_engine.cpp b/nvdsinfer_yolo_engine.cpp
index 1a70baf..1b39243 100644
--- a/nvdsinfer_yolo_engine.cpp
+++ b/nvdsinfer_yolo_engine.cpp
@@ -34,6 +34,8 @@ static bool getYoloNetworkInfo (NetworkInfo &networkInfo, const NvDsInferContext
     std::string yoloCfg = initParams->customNetworkConfigFilePath;
     std::string yoloType;

+    std::cout << "########## ********** ###########" << std::endl;
+
     std::transform (yoloCfg.begin(), yoloCfg.end(), yoloCfg.begin(), [] (uint8_t c) {
         return std::tolower (c);});

1 Like

Thank you , I will check my problem