NVIDIA DeepStream SDK API Reference

7.1 Release
libs/gstnvdscustomhelper/gst-nvdscommonconfig.h
Go to the documentation of this file.
1 /*
2  * SPDX-FileCopyrightText: Copyright (c) 2022-2024 NVIDIA CORPORATION & AFFILIATES. All rights reserved.
3  * SPDX-License-Identifier: LicenseRef-NvidiaProprietary
4  *
5  * NVIDIA CORPORATION, its affiliates and licensors retain all intellectual
6  * property and proprietary rights in and to this material, related
7  * documentation and any modifications thereto. Any use, reproduction,
8  * disclosure or distribution of this material and related documentation
9  * without an express license agreement from NVIDIA CORPORATION or
10  * its affiliates is strictly prohibited.
11  */
12 
13 #ifndef _GST_NVDSCOMMON_CONFIG_H_
14 #define _GST_NVDSCOMMON_CONFIG_H_
15 
16 #ifdef __cplusplus
17 extern "C" {
18 #endif
19 
20 #include <gst/gst.h>
21 
22 typedef enum
23 {
28 
29 typedef enum
30 {
35 
36 typedef enum
37 {
41 
42 typedef enum
43 {
48 
49 typedef enum
50 {
55 
56 typedef enum
57 {
61 
62 typedef struct _NvDsSensorInfo
63 {
64  guint source_id;
65  gchar const* uri;
66  gchar const* sensor_id;
67  gchar const* sensor_name;
69 
70 typedef struct _NvDsRtspAttemptsInfo
71 {
72  gboolean attempt_exceeded;
73  guint source_id;
75 
76 typedef struct _GstDsNvUriSrcConfig
77 {
79  gboolean loop;
80  gchar *uri;
81  gchar *sei_uuid;
82  gint latency;
84  gchar *smart_rec_dir_path;
85  gchar *smart_rec_file_prefix;
90  guint gpu_id;
91  gint source_id;
93  guint set_rtp_protocol;
94  guint num_extra_surfaces;
95  guint buffer_mode;
97  guint cuda_memory_type;
98  guint drop_frame_interval;
99  gboolean low_latency_mode;
100  gboolean extract_sei_type5_data;
105  gint num_rtsp_reconnects;
106  guint udp_buffer_size;
107  gchar *sensorId;
108  gboolean disable_passthrough;
109  gchar *sensorName;
110  gboolean disable_audio;
111  gboolean drop_on_latency;
112  gboolean ipc_buffer_timestamp_copy;
113  gchar *ipc_socket_path;
115  guint64 ipc_connection_interval;
116  gboolean sensorIdToPadIdMapping;
118 
119 typedef struct
120 {
121  // Struct members to store config / properties for the element
122 
123  //mandatory configs when using legacy nvstreammux
124  gint pipeline_width;
125  gint pipeline_height;
126  gint batched_push_timeout;
127 
128  //not mandatory; auto configured
129  gint batch_size;
130 
131  //not mandatory; defaults will be used
132  gint buffer_pool_size;
133  gint compute_hw;
134  gint num_surfaces_per_frame;
135  gint interpolation_method;
136  guint gpu_id;
137  guint nvbuf_memory_type;
138  gboolean live_source;
139  gboolean enable_padding;
140  gboolean attach_sys_ts_as_ntp;
141  gchar* config_file_path;
142  gboolean sync_inputs;
143  guint64 max_latency;
144  gboolean frame_num_reset_on_eos;
145  gboolean frame_num_reset_on_stream_reset;
146 
147  guint64 frame_duration;
148  guint maxBatchSize;
149  gboolean async_process;
150  gboolean no_pipeline_eos;
151  gboolean extract_sei_type5_data;
152  gboolean sort_batch;
153  gboolean buffer_cache;
154  gint buffer_cache_timeout;
155  gboolean extract_sei_sim_time;
157 
158 #ifdef __cplusplus
159 }
160 #endif
161 
162 #endif
_GstDsNvUriSrcConfig::smart_rec_container
NvDsUriSrcBinSRCont smart_rec_container
Definition: includes/gst-nvdscommonconfig.h:86
SOURCE_TYPE_RTSP
@ SOURCE_TYPE_RTSP
Definition: libs/gstnvdscustomhelper/gst-nvdscommonconfig.h:26
NvDsUriSrcBinSRMode
NvDsUriSrcBinSRMode
Definition: includes/gst-nvdscommonconfig.h:49
SMART_REC_MP4
@ SMART_REC_MP4
Definition: libs/gstnvdscustomhelper/gst-nvdscommonconfig.h:58
_GstDsNvUriSrcConfig::extract_sei_type5_data
gboolean extract_sei_type5_data
Definition: includes/gst-nvdscommonconfig.h:100
SMART_REC_AUDIO_VIDEO
@ SMART_REC_AUDIO_VIDEO
Definition: libs/gstnvdscustomhelper/gst-nvdscommonconfig.h:51
_GstDsNvUriSrcConfig
Definition: includes/gst-nvdscommonconfig.h:76
_GstDsNvUriSrcConfig::disable_audio
gboolean disable_audio
Definition: includes/gst-nvdscommonconfig.h:110
DEC_SKIP_FRAMES_TYPE_NONE
@ DEC_SKIP_FRAMES_TYPE_NONE
Definition: libs/gstnvdscustomhelper/gst-nvdscommonconfig.h:31
_NvDsRtspAttemptsInfo::source_id
guint source_id
Definition: includes/gst-nvdscommonconfig.h:73
SMART_REC_VIDEO_ONLY
@ SMART_REC_VIDEO_ONLY
Definition: libs/gstnvdscustomhelper/gst-nvdscommonconfig.h:52
_NvDsSensorInfo::source_id
guint source_id
Definition: includes/gst-nvdscommonconfig.h:64
_GstDsNvUriSrcConfig::src_type
NvDsUriSrcBinType src_type
Definition: includes/gst-nvdscommonconfig.h:78
_GstDsNvUriSrcConfig::smart_record
NvDsUriSrcBinSRType smart_record
Definition: includes/gst-nvdscommonconfig.h:83
_GstDsNvUriSrcConfig::udp_buffer_size
guint udp_buffer_size
Definition: includes/gst-nvdscommonconfig.h:106
SOURCE_TYPE_URI
@ SOURCE_TYPE_URI
Definition: libs/gstnvdscustomhelper/gst-nvdscommonconfig.h:25
NvDsRtspAttemptsInfo
struct _NvDsRtspAttemptsInfo NvDsRtspAttemptsInfo
NvDsUriSrcBinSRCont
NvDsUriSrcBinSRCont
Definition: includes/gst-nvdscommonconfig.h:56
SMART_REC_DISABLE
@ SMART_REC_DISABLE
Definition: libs/gstnvdscustomhelper/gst-nvdscommonconfig.h:44
NvDsSensorInfo
struct _NvDsSensorInfo NvDsSensorInfo
_GstDsNvUriSrcConfig::uri
gchar * uri
Definition: includes/gst-nvdscommonconfig.h:80
_GstDsNvUriSrcConfig::ipc_connection_interval
guint64 ipc_connection_interval
Definition: includes/gst-nvdscommonconfig.h:115
_GstDsNvUriSrcConfig::drop_on_latency
gboolean drop_on_latency
Definition: includes/gst-nvdscommonconfig.h:111
NvDsUriSrcBinRtpProtocol
NvDsUriSrcBinRtpProtocol
Definition: libs/gstnvdscustomhelper/gst-nvdscommonconfig.h:36
_GstDsNvUriSrcConfig::disable_passthrough
gboolean disable_passthrough
Definition: includes/gst-nvdscommonconfig.h:108
_GstDsNvUriSrcConfig::ipc_socket_path
gchar * ipc_socket_path
Definition: includes/gst-nvdscommonconfig.h:113
SOURCE_TYPE_AUTO
@ SOURCE_TYPE_AUTO
Definition: libs/gstnvdscustomhelper/gst-nvdscommonconfig.h:24
_GstDsNvUriSrcConfig::sensorId
gchar * sensorId
unique Sensor ID string
Definition: includes/gst-nvdscommonconfig.h:107
_NvDsRtspAttemptsInfo
Definition: includes/gst-nvdscommonconfig.h:70
_GstDsNvUriSrcConfig::smart_rec_file_prefix
gchar * smart_rec_file_prefix
Definition: includes/gst-nvdscommonconfig.h:85
_NvDsSensorInfo::sensor_name
gchar const * sensor_name
Definition: includes/gst-nvdscommonconfig.h:67
NvDsUriSrcBinSRType
NvDsUriSrcBinSRType
Definition: libs/gstnvdscustomhelper/gst-nvdscommonconfig.h:42
_GstDsNvUriSrcConfig::rtsp_reconnect_interval_sec_org
gint rtsp_reconnect_interval_sec_org
Definition: includes/gst-nvdscommonconfig.h:101
_NvDsSensorInfo::sensor_id
gchar const * sensor_id
Definition: includes/gst-nvdscommonconfig.h:66
NvDsUriSrcBinType
NvDsUriSrcBinType
Definition: includes/gst-nvdscommonconfig.h:22
SMART_REC_MKV
@ SMART_REC_MKV
Definition: libs/gstnvdscustomhelper/gst-nvdscommonconfig.h:59
_GstDsNvUriSrcConfig::drop_frame_interval
guint drop_frame_interval
Definition: includes/gst-nvdscommonconfig.h:98
_GstDsNvUriSrcConfig::sensorName
gchar * sensorName
Sensor Name string; could be NULL.
Definition: includes/gst-nvdscommonconfig.h:109
NvDsUriSrcBinDecSkipFrame
NvDsUriSrcBinDecSkipFrame
Definition: includes/gst-nvdscommonconfig.h:29
_GstDsNvUriSrcConfig::gpu_id
guint gpu_id
Definition: includes/gst-nvdscommonconfig.h:90
_GstDsNvUriSrcConfig::buffer_mode
guint buffer_mode
Definition: includes/gst-nvdscommonconfig.h:95
SMART_REC_CLOUD
@ SMART_REC_CLOUD
Definition: libs/gstnvdscustomhelper/gst-nvdscommonconfig.h:45
_GstDsNvUriSrcConfig::smart_rec_def_duration
guint smart_rec_def_duration
Definition: includes/gst-nvdscommonconfig.h:88
DEC_SKIP_FRAMES_TYPE_NONREF
@ DEC_SKIP_FRAMES_TYPE_NONREF
Definition: libs/gstnvdscustomhelper/gst-nvdscommonconfig.h:32
_GstDsNvUriSrcConfig::smart_rec_cache_size
guint smart_rec_cache_size
Definition: includes/gst-nvdscommonconfig.h:89
_GstDsNvUriSrcConfig::low_latency_mode
gboolean low_latency_mode
Definition: includes/gst-nvdscommonconfig.h:99
_GstDsNvUriSrcConfig::num_rtsp_reconnects
gint num_rtsp_reconnects
Definition: includes/gst-nvdscommonconfig.h:105
NvDsUriSrcBinDecSkipFrame
NvDsUriSrcBinDecSkipFrame
Definition: libs/gstnvdscustomhelper/gst-nvdscommonconfig.h:29
RTP_PROTOCOL_MULTI
@ RTP_PROTOCOL_MULTI
Definition: libs/gstnvdscustomhelper/gst-nvdscommonconfig.h:38
_GstDsNvUriSrcConfig::smart_rec_dir_path
gchar * smart_rec_dir_path
Definition: includes/gst-nvdscommonconfig.h:84
DEC_SKIP_FRAMES_TYPE_KEY_FRAME_ONLY
@ DEC_SKIP_FRAMES_TYPE_KEY_FRAME_ONLY
Definition: libs/gstnvdscustomhelper/gst-nvdscommonconfig.h:33
NvDsUriSrcBinSRCont
NvDsUriSrcBinSRCont
Definition: libs/gstnvdscustomhelper/gst-nvdscommonconfig.h:56
NvDsUriSrcBinSRMode
NvDsUriSrcBinSRMode
Definition: libs/gstnvdscustomhelper/gst-nvdscommonconfig.h:49
_NvDsSensorInfo
Definition: includes/gst-nvdscommonconfig.h:62
_GstDsNvUriSrcConfig::cuda_memory_type
guint cuda_memory_type
Definition: includes/gst-nvdscommonconfig.h:97
NvDsUriSrcBinSRType
NvDsUriSrcBinSRType
Definition: includes/gst-nvdscommonconfig.h:42
_GstDsNvUriSrcConfig::smart_rec_mode
NvDsUriSrcBinSRMode smart_rec_mode
Definition: includes/gst-nvdscommonconfig.h:87
_GstDsNvUriSrcConfig::latency
gint latency
Definition: includes/gst-nvdscommonconfig.h:82
_GstDsNvUriSrcConfig::set_rtp_protocol
guint set_rtp_protocol
Definition: includes/gst-nvdscommonconfig.h:93
_GstDsNvUriSrcConfig::loop
gboolean loop
Definition: includes/gst-nvdscommonconfig.h:79
_GstDsNvUriSrcConfig::rtp_protocol
NvDsUriSrcBinRtpProtocol rtp_protocol
Definition: includes/gst-nvdscommonconfig.h:92
_GstDsNvUriSrcConfig::num_extra_surfaces
guint num_extra_surfaces
Definition: includes/gst-nvdscommonconfig.h:94
_GstDsNvUriSrcConfig::sei_uuid
gchar * sei_uuid
Definition: includes/gst-nvdscommonconfig.h:81
_GstDsNvUriSrcConfig::source_id
gint source_id
Definition: includes/gst-nvdscommonconfig.h:91
NvDsUriSrcBinRtpProtocol
NvDsUriSrcBinRtpProtocol
Definition: includes/gst-nvdscommonconfig.h:36
GstDsNvStreammuxConfig
Definition: includes/gst-nvdscommonconfig.h:119
_GstDsNvUriSrcConfig::skip_frames_type
NvDsUriSrcBinDecSkipFrame skip_frames_type
Definition: includes/gst-nvdscommonconfig.h:96
_GstDsNvUriSrcConfig::rtsp_reconnect_interval_sec
gint rtsp_reconnect_interval_sec
Definition: includes/gst-nvdscommonconfig.h:102
SMART_REC_MULTI
@ SMART_REC_MULTI
Definition: libs/gstnvdscustomhelper/gst-nvdscommonconfig.h:46
RTP_PROTOCOL_TCP
@ RTP_PROTOCOL_TCP
Definition: libs/gstnvdscustomhelper/gst-nvdscommonconfig.h:39
_GstDsNvUriSrcConfig::ipc_connection_attempts
gint ipc_connection_attempts
Definition: includes/gst-nvdscommonconfig.h:114
NvDsUriSrcBinType
NvDsUriSrcBinType
Definition: libs/gstnvdscustomhelper/gst-nvdscommonconfig.h:22
_GstDsNvUriSrcConfig::sensorIdToPadIdMapping
gboolean sensorIdToPadIdMapping
Definition: includes/gst-nvdscommonconfig.h:116
_NvDsSensorInfo::uri
gchar const * uri
Definition: includes/gst-nvdscommonconfig.h:65
_GstDsNvUriSrcConfig::ipc_buffer_timestamp_copy
gboolean ipc_buffer_timestamp_copy
Definition: includes/gst-nvdscommonconfig.h:112
_GstDsNvUriSrcConfig::rtsp_reconnect_attempts
gint rtsp_reconnect_attempts
Definition: includes/gst-nvdscommonconfig.h:104
GstDsNvUriSrcConfig
struct _GstDsNvUriSrcConfig GstDsNvUriSrcConfig
SMART_REC_AUDIO_ONLY
@ SMART_REC_AUDIO_ONLY
Definition: libs/gstnvdscustomhelper/gst-nvdscommonconfig.h:53
_NvDsRtspAttemptsInfo::attempt_exceeded
gboolean attempt_exceeded
Definition: includes/gst-nvdscommonconfig.h:72
_GstDsNvUriSrcConfig::init_rtsp_reconnect_interval_sec
gint init_rtsp_reconnect_interval_sec
Definition: includes/gst-nvdscommonconfig.h:103