NVIDIA DeepStream SDK API Reference

9.1 Release
9.1/sources/includes/gst-nvdscommonconfig.h
Go to the documentation of this file.
1 /*
2  * SPDX-FileCopyrightText: Copyright (c) 2022-2026 NVIDIA CORPORATION & AFFILIATES. All rights reserved.
3  * SPDX-License-Identifier: Apache-2.0
4  *
5  * Licensed under the Apache License, Version 2.0 (the "License");
6  * you may not use this file except in compliance with the License.
7  * You may obtain a copy of the License at
8  *
9  * http://www.apache.org/licenses/LICENSE-2.0
10  *
11  * Unless required by applicable law or agreed to in writing, software
12  * distributed under the License is distributed on an "AS IS" BASIS,
13  * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
14  * See the License for the specific language governing permissions and
15  * limitations under the License.
16  */
17 
18 #ifndef _GST_NVDSCOMMON_CONFIG_H_
19 #define _GST_NVDSCOMMON_CONFIG_H_
20 
21 #ifdef __cplusplus
22 extern "C" {
23 #endif
24 
25 #include <gst/gst.h>
26 
27 typedef enum
28 {
33 
34 typedef enum
35 {
40 
41 typedef enum
42 {
51 
52 typedef enum
53 {
58 
59 typedef enum
60 {
67 
68 typedef enum
69 {
74 
75 typedef enum
76 {
81 
82 typedef enum
83 {
87 
88 typedef struct _NvDsSensorInfo
89 {
90  guint source_id;
91  gchar const* uri;
92  gchar const* sensor_id;
93  gchar const* sensor_name;
95 
96 typedef struct _NvDsRtspAttemptsInfo
97 {
98  gboolean attempt_exceeded;
99  guint source_id;
101 
102 typedef struct _GstDsNvUriSrcConfig
103 {
105  gboolean loop;
106  gchar *uri;
107  gchar *sei_uuid;
108  gint latency;
110  gchar *smart_rec_dir_path;
111  gchar *smart_rec_file_prefix;
115  guint smart_rec_cache_size;
116  guint gpu_id;
117  gint source_id;
120  guint num_extra_surfaces;
122  guint cuda_memory_type;
123  guint drop_frame_interval;
124  gboolean low_latency_mode;
125  gboolean extract_sei_type5_data;
129  guint max_size_buffers;
132  gint num_rtsp_reconnects;
133  guint udp_buffer_size;
134  gchar *sensorId;
135  gboolean disable_passthrough;
136  gchar *sensorName;
137  gboolean disable_audio;
138  gboolean drop_on_latency;
139  gboolean ipc_buffer_timestamp_copy;
140  gchar *ipc_socket_path;
142  guint64 ipc_connection_interval;
143  gboolean sensorIdToPadIdMapping;
144  gboolean enable_error_propagation;
145  gchar* proto_lib;
146  gchar* conn_str;
147  gchar* topic;
149  guint64 creation_time_ns;
151 
152 typedef struct
153 {
154  // Struct members to store config / properties for the element
155 
156  //mandatory configs when using legacy nvstreammux
157  gint pipeline_width;
158  gint pipeline_height;
159  gint batched_push_timeout;
160 
161  //not mandatory; auto configured
162  gint batch_size;
163 
164  //not mandatory; defaults will be used
165  gint buffer_pool_size;
166  gint compute_hw;
167  gint num_surfaces_per_frame;
168  gint interpolation_method;
169  guint gpu_id;
170  guint nvbuf_memory_type;
171  gboolean live_source;
172  gboolean enable_padding;
173  gboolean attach_sys_ts_as_ntp;
174  gchar* config_file_path;
175  gboolean sync_inputs;
176  guint64 max_latency;
177  gboolean frame_num_reset_on_eos;
178  gboolean frame_num_reset_on_stream_reset;
179 
180  guint64 frame_duration;
181  guint maxBatchSize;
182  gboolean async_process;
183  gboolean no_pipeline_eos;
184  gboolean extract_sei_type5_data;
185  gboolean sort_batch;
186  gboolean buffer_cache;
187  gint buffer_cache_timeout;
188  gboolean extract_sei_sim_time;
189  gboolean align_first_buffer;
190  guint sync_inputs_ntp;
191  gboolean drop_backward_sei;
193 
194 #ifdef __cplusplus
195 }
196 #endif
197 
198 #endif
_GstDsNvUriSrcConfig::smart_rec_container
NvDsUriSrcBinSRCont smart_rec_container
Definition: sources/includes/gst-nvdscommonconfig.h:112
RTP_PROTOCOL_HTTP
@ RTP_PROTOCOL_HTTP
Definition: 9.1/sources/includes/gst-nvdscommonconfig.h:48
_GstDsNvUriSrcConfig::proto_lib
gchar * proto_lib
Definition: sources/includes/gst-nvdscommonconfig.h:145
NvDsUriSrcBinRtpProtocol
NvDsUriSrcBinRtpProtocol
Definition: sources/includes/gst-nvdscommonconfig.h:41
_GstDsNvUriSrcConfig::extract_sei_type5_data
gboolean extract_sei_type5_data
Definition: sources/includes/gst-nvdscommonconfig.h:125
_GstDsNvUriSrcConfig
Definition: sources/includes/gst-nvdscommonconfig.h:102
_GstDsNvUriSrcConfig::disable_audio
gboolean disable_audio
Definition: sources/includes/gst-nvdscommonconfig.h:137
_NvDsRtspAttemptsInfo::source_id
guint source_id
Definition: sources/includes/gst-nvdscommonconfig.h:99
NvDsUriSrcBinDecSkipFrame
NvDsUriSrcBinDecSkipFrame
Definition: sources/includes/gst-nvdscommonconfig.h:34
NvDsUriSrcBinType
NvDsUriSrcBinType
Definition: 9.1/sources/includes/gst-nvdscommonconfig.h:27
NvDsUriSrcBinSRType
NvDsUriSrcBinSRType
Definition: 9.1/sources/includes/gst-nvdscommonconfig.h:68
_NvDsSensorInfo::source_id
guint source_id
Definition: sources/includes/gst-nvdscommonconfig.h:90
SMART_REC_AUDIO_VIDEO
@ SMART_REC_AUDIO_VIDEO
Definition: 9.1/sources/includes/gst-nvdscommonconfig.h:77
_GstDsNvUriSrcConfig::src_type
NvDsUriSrcBinType src_type
Definition: sources/includes/gst-nvdscommonconfig.h:104
_GstDsNvUriSrcConfig::enable_error_propagation
gboolean enable_error_propagation
Definition: sources/includes/gst-nvdscommonconfig.h:144
SMART_REC_CLOUD
@ SMART_REC_CLOUD
Definition: 9.1/sources/includes/gst-nvdscommonconfig.h:71
_GstDsNvUriSrcConfig::smart_record
NvDsUriSrcBinSRType smart_record
Definition: sources/includes/gst-nvdscommonconfig.h:109
NvDsUriSrcBinSRMode
NvDsUriSrcBinSRMode
Definition: 9.1/sources/includes/gst-nvdscommonconfig.h:75
_GstDsNvUriSrcConfig::udp_buffer_size
guint udp_buffer_size
Definition: sources/includes/gst-nvdscommonconfig.h:133
RTP_PROTOCOL_UDP_MCAST
@ RTP_PROTOCOL_UDP_MCAST
Definition: 9.1/sources/includes/gst-nvdscommonconfig.h:45
NvDsUriSrcBinType
NvDsUriSrcBinType
Definition: sources/includes/gst-nvdscommonconfig.h:27
_GstDsNvUriSrcConfig::simulate_fps_interval_ms
guint simulate_fps_interval_ms
Definition: sources/includes/gst-nvdscommonconfig.h:148
SOURCE_TYPE_URI
@ SOURCE_TYPE_URI
Definition: 9.1/sources/includes/gst-nvdscommonconfig.h:30
NvDsSensorInfo
struct _NvDsSensorInfo NvDsSensorInfo
_GstDsNvUriSrcConfig::creation_time_ns
guint64 creation_time_ns
Stream creation time in nanoseconds since epoch (from ISO 8601 timestamp)
Definition: sources/includes/gst-nvdscommonconfig.h:149
_GstDsNvUriSrcConfig::leaky
NvDsUriSrcBinLeaky leaky
Definition: sources/includes/gst-nvdscommonconfig.h:128
NvDsUriSrcBinSRType
NvDsUriSrcBinSRType
Definition: sources/includes/gst-nvdscommonconfig.h:68
_GstDsNvUriSrcConfig::uri
gchar * uri
Definition: sources/includes/gst-nvdscommonconfig.h:106
_GstDsNvUriSrcConfig::ipc_connection_interval
guint64 ipc_connection_interval
Definition: sources/includes/gst-nvdscommonconfig.h:142
NvDsUriSrcBinSRMode
NvDsUriSrcBinSRMode
Definition: sources/includes/gst-nvdscommonconfig.h:75
BUFFER_MODE_BUFFER
@ BUFFER_MODE_BUFFER
Definition: 9.1/sources/includes/gst-nvdscommonconfig.h:63
SMART_REC_MP4
@ SMART_REC_MP4
Definition: 9.1/sources/includes/gst-nvdscommonconfig.h:84
_GstDsNvUriSrcConfig::drop_on_latency
gboolean drop_on_latency
Definition: sources/includes/gst-nvdscommonconfig.h:138
_GstDsNvUriSrcConfig::buffer_mode
NvDsUriSrcBinBufferMode buffer_mode
Definition: sources/includes/gst-nvdscommonconfig.h:119
_GstDsNvUriSrcConfig::disable_passthrough
gboolean disable_passthrough
Definition: sources/includes/gst-nvdscommonconfig.h:135
_GstDsNvUriSrcConfig::ipc_socket_path
gchar * ipc_socket_path
Definition: sources/includes/gst-nvdscommonconfig.h:140
SOURCE_TYPE_RTSP
@ SOURCE_TYPE_RTSP
Definition: 9.1/sources/includes/gst-nvdscommonconfig.h:31
_GstDsNvUriSrcConfig::sensorId
gchar * sensorId
unique Sensor ID string
Definition: sources/includes/gst-nvdscommonconfig.h:134
_GstDsNvUriSrcConfig::max_size_buffers
guint max_size_buffers
Definition: sources/includes/gst-nvdscommonconfig.h:129
_NvDsRtspAttemptsInfo
Definition: sources/includes/gst-nvdscommonconfig.h:96
LEAKY_DOWNSTREAM
@ LEAKY_DOWNSTREAM
Definition: 9.1/sources/includes/gst-nvdscommonconfig.h:56
_GstDsNvUriSrcConfig::smart_rec_file_prefix
gchar * smart_rec_file_prefix
Definition: sources/includes/gst-nvdscommonconfig.h:111
_NvDsSensorInfo::sensor_name
gchar const * sensor_name
Definition: sources/includes/gst-nvdscommonconfig.h:93
RTP_PROTOCOL_UNKNOWN
@ RTP_PROTOCOL_UNKNOWN
Definition: 9.1/sources/includes/gst-nvdscommonconfig.h:43
NvDsUriSrcBinDecSkipFrame
NvDsUriSrcBinDecSkipFrame
Definition: 9.1/sources/includes/gst-nvdscommonconfig.h:34
NvDsUriSrcBinSRCont
NvDsUriSrcBinSRCont
Definition: 9.1/sources/includes/gst-nvdscommonconfig.h:82
GstDsNvUriSrcConfig
struct _GstDsNvUriSrcConfig GstDsNvUriSrcConfig
RTP_PROTOCOL_UDP
@ RTP_PROTOCOL_UDP
Definition: 9.1/sources/includes/gst-nvdscommonconfig.h:44
_GstDsNvUriSrcConfig::rtsp_reconnect_interval_sec_org
gint rtsp_reconnect_interval_sec_org
Definition: sources/includes/gst-nvdscommonconfig.h:126
BUFFER_MODE_AUTO
@ BUFFER_MODE_AUTO
Definition: 9.1/sources/includes/gst-nvdscommonconfig.h:64
_NvDsSensorInfo::sensor_id
gchar const * sensor_id
Definition: sources/includes/gst-nvdscommonconfig.h:92
NvDsUriSrcBinSRCont
NvDsUriSrcBinSRCont
Definition: sources/includes/gst-nvdscommonconfig.h:82
_GstDsNvUriSrcConfig::topic
gchar * topic
Definition: sources/includes/gst-nvdscommonconfig.h:147
_GstDsNvUriSrcConfig::drop_frame_interval
guint drop_frame_interval
Definition: sources/includes/gst-nvdscommonconfig.h:123
SMART_REC_AUDIO_ONLY
@ SMART_REC_AUDIO_ONLY
Definition: 9.1/sources/includes/gst-nvdscommonconfig.h:79
_GstDsNvUriSrcConfig::sensorName
gchar * sensorName
Sensor Name string; could be NULL.
Definition: sources/includes/gst-nvdscommonconfig.h:136
BUFFER_MODE_UNKNOWN
@ BUFFER_MODE_UNKNOWN
Definition: 9.1/sources/includes/gst-nvdscommonconfig.h:61
NvDsRtspAttemptsInfo
struct _NvDsRtspAttemptsInfo NvDsRtspAttemptsInfo
_GstDsNvUriSrcConfig::gpu_id
guint gpu_id
Definition: sources/includes/gst-nvdscommonconfig.h:116
SMART_REC_VIDEO_ONLY
@ SMART_REC_VIDEO_ONLY
Definition: 9.1/sources/includes/gst-nvdscommonconfig.h:78
RTP_PROTOCOL_TCP
@ RTP_PROTOCOL_TCP
Definition: 9.1/sources/includes/gst-nvdscommonconfig.h:46
NvDsUriSrcBinBufferMode
NvDsUriSrcBinBufferMode
Definition: 9.1/sources/includes/gst-nvdscommonconfig.h:59
SMART_REC_MULTI
@ SMART_REC_MULTI
Definition: 9.1/sources/includes/gst-nvdscommonconfig.h:72
NvDsUriSrcBinLeaky
NvDsUriSrcBinLeaky
Definition: 9.1/sources/includes/gst-nvdscommonconfig.h:52
_GstDsNvUriSrcConfig::smart_rec_def_duration
guint smart_rec_def_duration
Definition: sources/includes/gst-nvdscommonconfig.h:114
_GstDsNvUriSrcConfig::smart_rec_cache_size
guint smart_rec_cache_size
Definition: sources/includes/gst-nvdscommonconfig.h:115
_GstDsNvUriSrcConfig::low_latency_mode
gboolean low_latency_mode
Definition: sources/includes/gst-nvdscommonconfig.h:124
BUFFER_MODE_SLAVE
@ BUFFER_MODE_SLAVE
Definition: 9.1/sources/includes/gst-nvdscommonconfig.h:62
_GstDsNvUriSrcConfig::num_rtsp_reconnects
gint num_rtsp_reconnects
Definition: sources/includes/gst-nvdscommonconfig.h:132
BUFFER_MODE_SYNCED
@ BUFFER_MODE_SYNCED
Definition: 9.1/sources/includes/gst-nvdscommonconfig.h:65
LEAKY_NONE
@ LEAKY_NONE
Definition: 9.1/sources/includes/gst-nvdscommonconfig.h:54
NvDsUriSrcBinBufferMode
NvDsUriSrcBinBufferMode
Definition: sources/includes/gst-nvdscommonconfig.h:59
_GstDsNvUriSrcConfig::smart_rec_dir_path
gchar * smart_rec_dir_path
Definition: sources/includes/gst-nvdscommonconfig.h:110
DEC_SKIP_FRAMES_TYPE_NONREF
@ DEC_SKIP_FRAMES_TYPE_NONREF
Definition: 9.1/sources/includes/gst-nvdscommonconfig.h:37
_NvDsSensorInfo
Definition: sources/includes/gst-nvdscommonconfig.h:88
RTP_PROTOCOL_TLS
@ RTP_PROTOCOL_TLS
Definition: 9.1/sources/includes/gst-nvdscommonconfig.h:49
_GstDsNvUriSrcConfig::cuda_memory_type
guint cuda_memory_type
Definition: sources/includes/gst-nvdscommonconfig.h:122
NvDsUriSrcBinRtpProtocol
NvDsUriSrcBinRtpProtocol
Definition: 9.1/sources/includes/gst-nvdscommonconfig.h:41
LEAKY_UPSTREAM
@ LEAKY_UPSTREAM
Definition: 9.1/sources/includes/gst-nvdscommonconfig.h:55
_GstDsNvUriSrcConfig::smart_rec_mode
NvDsUriSrcBinSRMode smart_rec_mode
Definition: sources/includes/gst-nvdscommonconfig.h:113
SMART_REC_MKV
@ SMART_REC_MKV
Definition: 9.1/sources/includes/gst-nvdscommonconfig.h:85
_GstDsNvUriSrcConfig::latency
gint latency
Definition: sources/includes/gst-nvdscommonconfig.h:108
_GstDsNvUriSrcConfig::loop
gboolean loop
Definition: sources/includes/gst-nvdscommonconfig.h:105
_GstDsNvUriSrcConfig::rtp_protocol
NvDsUriSrcBinRtpProtocol rtp_protocol
Definition: sources/includes/gst-nvdscommonconfig.h:118
DEC_SKIP_FRAMES_TYPE_NONE
@ DEC_SKIP_FRAMES_TYPE_NONE
Definition: 9.1/sources/includes/gst-nvdscommonconfig.h:36
DEC_SKIP_FRAMES_TYPE_KEY_FRAME_ONLY
@ DEC_SKIP_FRAMES_TYPE_KEY_FRAME_ONLY
Definition: 9.1/sources/includes/gst-nvdscommonconfig.h:38
_GstDsNvUriSrcConfig::num_extra_surfaces
guint num_extra_surfaces
Definition: sources/includes/gst-nvdscommonconfig.h:120
_GstDsNvUriSrcConfig::sei_uuid
gchar * sei_uuid
Definition: sources/includes/gst-nvdscommonconfig.h:107
_GstDsNvUriSrcConfig::source_id
gint source_id
Definition: sources/includes/gst-nvdscommonconfig.h:117
GstDsNvStreammuxConfig
Definition: sources/includes/gst-nvdscommonconfig.h:152
_GstDsNvUriSrcConfig::skip_frames_type
NvDsUriSrcBinDecSkipFrame skip_frames_type
Definition: sources/includes/gst-nvdscommonconfig.h:121
_GstDsNvUriSrcConfig::rtsp_reconnect_interval_sec
gint rtsp_reconnect_interval_sec
Definition: sources/includes/gst-nvdscommonconfig.h:127
NvDsUriSrcBinLeaky
NvDsUriSrcBinLeaky
Definition: sources/includes/gst-nvdscommonconfig.h:52
RTP_PROTOCOL_UDP_UDPMCAST_TCP
@ RTP_PROTOCOL_UDP_UDPMCAST_TCP
Definition: 9.1/sources/includes/gst-nvdscommonconfig.h:47
_GstDsNvUriSrcConfig::ipc_connection_attempts
gint ipc_connection_attempts
Definition: sources/includes/gst-nvdscommonconfig.h:141
SMART_REC_DISABLE
@ SMART_REC_DISABLE
Definition: 9.1/sources/includes/gst-nvdscommonconfig.h:70
_GstDsNvUriSrcConfig::sensorIdToPadIdMapping
gboolean sensorIdToPadIdMapping
Definition: sources/includes/gst-nvdscommonconfig.h:143
_GstDsNvUriSrcConfig::conn_str
gchar * conn_str
Definition: sources/includes/gst-nvdscommonconfig.h:146
SOURCE_TYPE_AUTO
@ SOURCE_TYPE_AUTO
Definition: 9.1/sources/includes/gst-nvdscommonconfig.h:29
_NvDsSensorInfo::uri
gchar const * uri
Definition: sources/includes/gst-nvdscommonconfig.h:91
_GstDsNvUriSrcConfig::ipc_buffer_timestamp_copy
gboolean ipc_buffer_timestamp_copy
Definition: sources/includes/gst-nvdscommonconfig.h:139
_GstDsNvUriSrcConfig::rtsp_reconnect_attempts
gint rtsp_reconnect_attempts
Definition: sources/includes/gst-nvdscommonconfig.h:131
_NvDsRtspAttemptsInfo::attempt_exceeded
gboolean attempt_exceeded
Definition: sources/includes/gst-nvdscommonconfig.h:98
_GstDsNvUriSrcConfig::init_rtsp_reconnect_interval_sec
gint init_rtsp_reconnect_interval_sec
Definition: sources/includes/gst-nvdscommonconfig.h:130