Please provide complete information as applicable to your setup.
• Hardware Platform (Jetson / GPU) - Jetson Nano • DeepStream Version - 6.0.1 • JetPack Version (valid for Jetson only) - 4.6.2 • TensorRT Version - 8.2 • NVIDIA GPU Driver Version (valid for GPU only) - 10.2 • Issue Type( questions, new requirements, bugs)
I made modifications to the code by removing the ‘pgie’ element and adding a ‘capsfilter’ to facilitate image storage. However, upon inspecting the stored images, I observed a discrepancy between the batch ID and the corresponding images. For reference, I have attached an image to illustrate this issue.
The image labeled as “0_227.jpg” appears to be incorrect; it seems to correspond to batch_id = 1 instead
• 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)
Could you add some log in your code and attach the log?
+ count = 0
while l_frame is not None:
try:
# Note that l_frame.data needs a cast to pyds.NvDsFrameMeta
# The casting is done by pyds.NvDsFrameMeta.cast()
# The casting also keeps ownership of the underlying memory
# in the C code, so the Python garbage collector will leave
# it alone.
frame_meta = pyds.NvDsFrameMeta.cast(l_frame.data)
except StopIteration:
break
frame_number=frame_meta.frame_num
l_obj=frame_meta.obj_meta_list
num_rects = frame_meta.num_obj_meta
+ print("########### count %d batch_id %d frame_num %d###########"%(count,
frame_meta.batch_id, frame_meta.frame_num))
#n_frame = pyds.get_nvds_buf_surface(hash(gst_buffer), frame_meta.batch_id)
#cv2.imwrite(f'{frame_meta.batch_id}_{frame_number}.jpg', n_frame)
+ print("########### count %d###########"%(count))
+ count++
I have two RTSP streams and have stored images with filenames in the format ‘batch_id_frame_number.jpg’.
I can successfully retrieve images up to ‘0_226.jpg.’ However, after that point, the images are mismatched, with the second stream’s image appearing in place of the first stream’s image.
The batch id is not strictly coresspinding to the source id. If you want to save that by source id, please use the source_id parameter from the FrameMeta.
source_id parameter also do the same thing.
check log.txt.
My goal is to send frames to a separate thread while maintaining the association with their respective camera IDs and applying motion detection. However, if I receive different images for the same camera ID, I’m unsure how to handle this situation. Can you please provide guidance on this?
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
In theory, the source ID can distinguish the corresponding source. Could you do the following test?
change the source to uridecoderbin
add the probe function to the src of streammux
We have a corresponding demo for your requirements, but it is based on C/C++,and currently there is no Python version available. deepstream_parallel_inference_app