Unable to get stream ids correctly , stream id is always 0

Hardware Platform (Jetson / GPU): GPU
DeepStream Version: 7.0
TensorRT Version: 8.6.1.6
NVIDIA GPU Driver Version (valid for GPU only): 535.183.01

Issue Type: Question / Debugging assistance

Description:
I am running deepstream-app with a multistream setup (8 streams) and attempting to print the source_id of each frame inside the process_meta function in deepstream_app.c. My main goal is to separate detections for each stream by checking the stream_id.

I am currently using the following code snippet:

NvDsFrameMeta *frame_meta = (NvDsFrameMeta *) l_frame->data;

stream_id = frame_meta->source_id;
printf("Processing detections for Stream ID: %d\n", stream_id);

However, the output always shows Stream ID as 0 for all frames:

Processing detections for Stream ID: 0
Processing detections for Stream ID: 0
Processing detections for Stream ID: 0

I have attached the relevant deepstream_app.c file.
deepstream_app.txt (72.8 KB)

nvmultistreamtiler will compose a batch to one frame. you need to add probe before tiler plugin. you can add the printing code in analytics_done_buf_prob function.

1 Like

thank you for helping me, I just started to learn deepstream, could you provide more detailed explanation or can you share any useful link for this ?

Sorry for the late reply! please refer to nvmultistreamtiler. after nvmultistreamtiler, there is only frame in batch.

There is no update from you for a period, assuming this is not an issue anymore. Hence we are closing this topic. If need further support, please open a new one. Thanks

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