NVIDIA DeepStream SDK API Reference

5.0 Release

 All Data Structures Files Functions Variables Typedefs Enumerations Enumerator Macros Groups Pages
Latency Measurement API

Detailed Description

Defines an API for measuring latency in modules.

Data Structures

struct  _NvDsMetaCompLatency
 Holds information about latency of the given component. More...
 
struct  NvDsFrameLatencyInfo
 Holds information about the latency of a given frame. More...
 

Macros

#define MAX_COMPONENT_LEN   64
 
#define nvds_enable_latency_measurement   (nvds_get_enable_latency_measurement())
 Defines a pseudo-variable whose value is the return value of nvds_get_enable_latency_measurement(). More...
 

Typedefs

typedef struct _NvDsMetaCompLatency NvDsMetaCompLatency
 Holds information about latency of the given component. More...
 

Functions

NvDsUserMetanvds_set_input_system_timestamp (GstBuffer *buffer, gchar *element_name)
 Sets the system timestamp when the Gst Buffer arrives as input at the component. More...
 
gboolean nvds_set_output_system_timestamp (GstBuffer *buffer, gchar *element_name)
 Sets the system timestamp when a Gst Buffer that is pushed to the downstream component. More...
 
guint nvds_measure_buffer_latency (GstBuffer *buf, NvDsFrameLatencyInfo *latency_info)
 Measures the latency of all frames present in the current batch. More...
 
gboolean nvds_get_enable_latency_measurement (void)
 Indicates whether the environment variable NVDS_ENABLE_LATENCY_MEASUREMENT is exported. More...
 

Macro Definition Documentation

#define MAX_COMPONENT_LEN   64

Definition at line 33 of file nvds_latency_meta.h.

#define nvds_enable_latency_measurement   (nvds_get_enable_latency_measurement())

Defines a pseudo-variable whose value is the return value of nvds_get_enable_latency_measurement().

It indicates whether latency measurement is enabled.

Definition at line 136 of file nvds_latency_meta.h.

Typedef Documentation

Holds information about latency of the given component.

Function Documentation

gboolean nvds_get_enable_latency_measurement ( void  )

Indicates whether the environment variable NVDS_ENABLE_LATENCY_MEASUREMENT is exported.

Returns
True if the environment variable is exported, or false otherwise.
guint nvds_measure_buffer_latency ( GstBuffer *  buf,
NvDsFrameLatencyInfo latency_info 
)

Measures the latency of all frames present in the current batch.

The latency is computed from decoder input up to the point this API is called. You can install the probe on either pad of the component and call this function to measure the latency.

Parameters
[in]bufA pointer to a Gst Buffer to which NvDsBatchMeta is attached as metadata.
[out]latency_infoA pointer to an NvDsFrameLatencyInfo structure allocated for a batch of this size. The function fills it with information about all of the sources.
NvDsUserMeta* nvds_set_input_system_timestamp ( GstBuffer *  buffer,
gchar *  element_name 
)

Sets the system timestamp when the Gst Buffer arrives as input at the component.

Parameters
[in]bufferA pointer to the arriving Gst Buffer.
[in]element_nameA pointer to the name of the component for which latency is to be measured.
Returns
A pointer to a NvDsUserMeta structure which holds an NvDsMetaCompLatency as NvDsUserMeta.user_meta_data.
gboolean nvds_set_output_system_timestamp ( GstBuffer *  buffer,
gchar *  element_name 
)

Sets the system timestamp when a Gst Buffer that is pushed to the downstream component.

This is a corresponding function to nvds_set_input_system_timestamp().

Parameters
[in]bufferA pointer to a Gst Buffer to be pushed to the downstream component.
[in]element_nameA pointer to the name of the component for which latency is to be measured.
Returns
TRUE if the timestamp is attached successfully, or FALSE otherwise.