Environment
TensorRT Version:10.3.26
GPU Type:NVIDIA RTX A4000
Nvidia Driver Version:
CUDA Version:12.6
Operating System + Version: docker image nvcr.io/nvidia/deepstream:7.1-gc-triton-devel
Description
Looking for a supported way to access complete frame-level metadata (including frame_user_meta_list) and NvDsAnalyticsFrameMeta inside nvmsgconv when msg2p-newapi=1 is enabled. The objective is to serialize per-frame analytics (ROI counts, line crossing, overcrowding) into the payload directly from the new API path, without creating NvDsEventMsgMeta in probes.
Pipeline
rtsp → decode → nvstreammux → pgie → nvtracker → nvdsanalytics → nvmsgconv(msg2p-newapi=1) → nvmsgbroker
Problems
- frame_meta->frame_num prints 0 in generate_dsmeta_message_custom, so frame-based keys aren’t reliable without synthesizing counters locally, which can drift from upstream numbering across sources.
Iterating frame_meta->frame_user_meta_list and checking for analytics meta type never hits in new API context, so NvDsAnalyticsFrameMeta isn’t visible inside the generator to serialize per-frame analytics directly, forcing a probe-side cache workaround that defeats the point of the new API simplification.