NVIDIA DeepStream SDK API Reference

6.4 Release
libs/gstnvdscustomhelper/gst-nvdscommonconfig.h
Go to the documentation of this file.
1 /*
2  * SPDX-FileCopyrightText: Copyright (c) 2022-2023 NVIDIA CORPORATION & AFFILIATES. All rights reserved.
3  * SPDX-License-Identifier: MIT
4  *
5  * Permission is hereby granted, free of charge, to any person obtaining a
6  * copy of this software and associated documentation files (the "Software"),
7  * to deal in the Software without restriction, including without limitation
8  * the rights to use, copy, modify, merge, publish, distribute, sublicense,
9  * and/or sell copies of the Software, and to permit persons to whom the
10  * Software is furnished to do so, subject to the following conditions:
11  *
12  * The above copyright notice and this permission notice shall be included in
13  * all copies or substantial portions of the Software.
14  *
15  * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
16  * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
17  * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL
18  * THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
19  * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING
20  * FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER
21  * DEALINGS IN THE SOFTWARE.
22  */
23 
24 #ifndef _GST_NVDSCOMMON_CONFIG_H_
25 #define _GST_NVDSCOMMON_CONFIG_H_
26 
27 #ifdef __cplusplus
28 extern "C" {
29 #endif
30 
31 #include <gst/gst.h>
32 
33 typedef enum
34 {
39 
40 typedef enum
41 {
46 
47 typedef enum
48 {
52 
53 typedef enum
54 {
59 
60 typedef enum
61 {
66 
67 typedef enum
68 {
72 
73 typedef struct _NvDsSensorInfo
74 {
75  guint source_id;
76  gchar const* uri;
77  gchar const* sensor_id;
78  gchar const* sensor_name;
80 
81 typedef struct _GstDsNvUriSrcConfig
82 {
84  gboolean loop;
85  gchar *uri;
86  gint latency;
94  guint gpu_id;
95  gint source_id;
103  gchar *sensorId;
105  gchar *sensorName;
106  gboolean disable_audio;
108 
109 typedef struct
110 {
111  // Struct members to store config / properties for the element
112 
113  //mandatory configs when using legacy nvstreammux
117 
118  //not mandatory; auto configured
120 
121  //not mandatory; defaults will be used
126  guint gpu_id;
128  gboolean live_source;
129  gboolean enable_padding;
132  gboolean sync_inputs;
133  guint64 max_latency;
136 
137  guint64 frame_duration;
139  gboolean async_process;
140  gboolean no_pipeline_eos;
142 
143 #ifdef __cplusplus
144 }
145 #endif
146 
147 #endif
_GstDsNvUriSrcConfig::smart_rec_container
NvDsUriSrcBinSRCont smart_rec_container
Definition: libs/gstnvdscustomhelper/gst-nvdscommonconfig.h:90
SOURCE_TYPE_RTSP
@ SOURCE_TYPE_RTSP
Definition: libs/gstnvdscustomhelper/gst-nvdscommonconfig.h:37
GstDsNvStreammuxConfig::live_source
gboolean live_source
Definition: libs/gstnvdscustomhelper/gst-nvdscommonconfig.h:128
SMART_REC_MP4
@ SMART_REC_MP4
Definition: libs/gstnvdscustomhelper/gst-nvdscommonconfig.h:69
GstDsNvStreammuxConfig::nvbuf_memory_type
guint nvbuf_memory_type
Definition: libs/gstnvdscustomhelper/gst-nvdscommonconfig.h:127
SMART_REC_AUDIO_VIDEO
@ SMART_REC_AUDIO_VIDEO
Definition: libs/gstnvdscustomhelper/gst-nvdscommonconfig.h:62
_GstDsNvUriSrcConfig
Definition: libs/gstnvdscustomhelper/gst-nvdscommonconfig.h:81
_GstDsNvUriSrcConfig::disable_audio
gboolean disable_audio
Definition: libs/gstnvdscustomhelper/gst-nvdscommonconfig.h:106
DEC_SKIP_FRAMES_TYPE_NONE
@ DEC_SKIP_FRAMES_TYPE_NONE
Definition: libs/gstnvdscustomhelper/gst-nvdscommonconfig.h:42
SMART_REC_VIDEO_ONLY
@ SMART_REC_VIDEO_ONLY
Definition: libs/gstnvdscustomhelper/gst-nvdscommonconfig.h:63
_NvDsSensorInfo::source_id
guint source_id
Definition: libs/gstnvdscustomhelper/gst-nvdscommonconfig.h:75
_GstDsNvUriSrcConfig::src_type
NvDsUriSrcBinType src_type
Definition: libs/gstnvdscustomhelper/gst-nvdscommonconfig.h:83
GstDsNvStreammuxConfig::batch_size
gint batch_size
Definition: libs/gstnvdscustomhelper/gst-nvdscommonconfig.h:119
_GstDsNvUriSrcConfig::smart_record
NvDsUriSrcBinSRType smart_record
Definition: libs/gstnvdscustomhelper/gst-nvdscommonconfig.h:87
_GstDsNvUriSrcConfig::udp_buffer_size
guint udp_buffer_size
Definition: libs/gstnvdscustomhelper/gst-nvdscommonconfig.h:102
GstDsNvStreammuxConfig::no_pipeline_eos
gboolean no_pipeline_eos
Definition: libs/gstnvdscustomhelper/gst-nvdscommonconfig.h:140
SOURCE_TYPE_URI
@ SOURCE_TYPE_URI
Definition: libs/gstnvdscustomhelper/gst-nvdscommonconfig.h:36
GstDsNvStreammuxConfig::batched_push_timeout
gint batched_push_timeout
Definition: libs/gstnvdscustomhelper/gst-nvdscommonconfig.h:116
SMART_REC_DISABLE
@ SMART_REC_DISABLE
Definition: libs/gstnvdscustomhelper/gst-nvdscommonconfig.h:55
NvDsSensorInfo
struct _NvDsSensorInfo NvDsSensorInfo
_GstDsNvUriSrcConfig::uri
gchar * uri
Definition: libs/gstnvdscustomhelper/gst-nvdscommonconfig.h:85
NvDsUriSrcBinRtpProtocol
NvDsUriSrcBinRtpProtocol
Definition: libs/gstnvdscustomhelper/gst-nvdscommonconfig.h:47
GstDsNvStreammuxConfig::pipeline_width
gint pipeline_width
Definition: libs/gstnvdscustomhelper/gst-nvdscommonconfig.h:114
GstDsNvStreammuxConfig::gpu_id
guint gpu_id
Definition: libs/gstnvdscustomhelper/gst-nvdscommonconfig.h:126
_GstDsNvUriSrcConfig::disable_passthrough
gboolean disable_passthrough
Definition: libs/gstnvdscustomhelper/gst-nvdscommonconfig.h:104
GstDsNvStreammuxConfig::frame_duration
guint64 frame_duration
Definition: libs/gstnvdscustomhelper/gst-nvdscommonconfig.h:137
GstDsNvStreammuxConfig::maxBatchSize
guint maxBatchSize
Definition: libs/gstnvdscustomhelper/gst-nvdscommonconfig.h:138
GstDsNvStreammuxConfig::frame_num_reset_on_eos
gboolean frame_num_reset_on_eos
Definition: libs/gstnvdscustomhelper/gst-nvdscommonconfig.h:134
GstDsNvStreammuxConfig::async_process
gboolean async_process
Definition: libs/gstnvdscustomhelper/gst-nvdscommonconfig.h:139
SOURCE_TYPE_AUTO
@ SOURCE_TYPE_AUTO
Definition: libs/gstnvdscustomhelper/gst-nvdscommonconfig.h:35
_GstDsNvUriSrcConfig::sensorId
gchar * sensorId
unique Sensor ID string
Definition: libs/gstnvdscustomhelper/gst-nvdscommonconfig.h:103
GstDsNvStreammuxConfig::buffer_pool_size
gint buffer_pool_size
Definition: libs/gstnvdscustomhelper/gst-nvdscommonconfig.h:122
_GstDsNvUriSrcConfig::smart_rec_file_prefix
gchar * smart_rec_file_prefix
Definition: libs/gstnvdscustomhelper/gst-nvdscommonconfig.h:89
_NvDsSensorInfo::sensor_name
gchar const * sensor_name
Definition: libs/gstnvdscustomhelper/gst-nvdscommonconfig.h:78
NvDsUriSrcBinSRType
NvDsUriSrcBinSRType
Definition: libs/gstnvdscustomhelper/gst-nvdscommonconfig.h:53
GstDsNvStreammuxConfig::num_surfaces_per_frame
gint num_surfaces_per_frame
Definition: libs/gstnvdscustomhelper/gst-nvdscommonconfig.h:124
_NvDsSensorInfo::sensor_id
gchar const * sensor_id
Definition: libs/gstnvdscustomhelper/gst-nvdscommonconfig.h:77
SMART_REC_MKV
@ SMART_REC_MKV
Definition: libs/gstnvdscustomhelper/gst-nvdscommonconfig.h:70
_GstDsNvUriSrcConfig::drop_frame_interval
guint drop_frame_interval
Definition: libs/gstnvdscustomhelper/gst-nvdscommonconfig.h:100
_GstDsNvUriSrcConfig::sensorName
gchar * sensorName
Sensor Name string; could be NULL.
Definition: libs/gstnvdscustomhelper/gst-nvdscommonconfig.h:105
_GstDsNvUriSrcConfig::gpu_id
guint gpu_id
Definition: libs/gstnvdscustomhelper/gst-nvdscommonconfig.h:94
SMART_REC_CLOUD
@ SMART_REC_CLOUD
Definition: libs/gstnvdscustomhelper/gst-nvdscommonconfig.h:56
_GstDsNvUriSrcConfig::smart_rec_def_duration
guint smart_rec_def_duration
Definition: libs/gstnvdscustomhelper/gst-nvdscommonconfig.h:92
DEC_SKIP_FRAMES_TYPE_NONREF
@ DEC_SKIP_FRAMES_TYPE_NONREF
Definition: libs/gstnvdscustomhelper/gst-nvdscommonconfig.h:43
_GstDsNvUriSrcConfig::smart_rec_cache_size
guint smart_rec_cache_size
Definition: libs/gstnvdscustomhelper/gst-nvdscommonconfig.h:93
GstDsNvStreammuxConfig::enable_padding
gboolean enable_padding
Definition: libs/gstnvdscustomhelper/gst-nvdscommonconfig.h:129
GstDsNvStreammuxConfig::pipeline_height
gint pipeline_height
Definition: libs/gstnvdscustomhelper/gst-nvdscommonconfig.h:115
NvDsUriSrcBinDecSkipFrame
NvDsUriSrcBinDecSkipFrame
Definition: libs/gstnvdscustomhelper/gst-nvdscommonconfig.h:40
RTP_PROTOCOL_MULTI
@ RTP_PROTOCOL_MULTI
Definition: libs/gstnvdscustomhelper/gst-nvdscommonconfig.h:49
_GstDsNvUriSrcConfig::smart_rec_dir_path
gchar * smart_rec_dir_path
Definition: libs/gstnvdscustomhelper/gst-nvdscommonconfig.h:88
DEC_SKIP_FRAMES_TYPE_KEY_FRAME_ONLY
@ DEC_SKIP_FRAMES_TYPE_KEY_FRAME_ONLY
Definition: libs/gstnvdscustomhelper/gst-nvdscommonconfig.h:44
NvDsUriSrcBinSRCont
NvDsUriSrcBinSRCont
Definition: libs/gstnvdscustomhelper/gst-nvdscommonconfig.h:67
NvDsUriSrcBinSRMode
NvDsUriSrcBinSRMode
Definition: libs/gstnvdscustomhelper/gst-nvdscommonconfig.h:60
_NvDsSensorInfo
Definition: libs/gstnvdscustomhelper/gst-nvdscommonconfig.h:73
_GstDsNvUriSrcConfig::cuda_memory_type
guint cuda_memory_type
Definition: libs/gstnvdscustomhelper/gst-nvdscommonconfig.h:99
GstDsNvStreammuxConfig::attach_sys_ts_as_ntp
gboolean attach_sys_ts_as_ntp
Definition: libs/gstnvdscustomhelper/gst-nvdscommonconfig.h:130
GstDsNvStreammuxConfig::compute_hw
gint compute_hw
Definition: libs/gstnvdscustomhelper/gst-nvdscommonconfig.h:123
GstDsNvStreammuxConfig::interpolation_method
gint interpolation_method
Definition: libs/gstnvdscustomhelper/gst-nvdscommonconfig.h:125
_GstDsNvUriSrcConfig::smart_rec_mode
NvDsUriSrcBinSRMode smart_rec_mode
Definition: libs/gstnvdscustomhelper/gst-nvdscommonconfig.h:91
GstDsNvStreammuxConfig::config_file_path
gchar * config_file_path
Definition: libs/gstnvdscustomhelper/gst-nvdscommonconfig.h:131
_GstDsNvUriSrcConfig::latency
gint latency
Definition: libs/gstnvdscustomhelper/gst-nvdscommonconfig.h:86
_GstDsNvUriSrcConfig::loop
gboolean loop
Definition: libs/gstnvdscustomhelper/gst-nvdscommonconfig.h:84
_GstDsNvUriSrcConfig::rtp_protocol
NvDsUriSrcBinRtpProtocol rtp_protocol
Definition: libs/gstnvdscustomhelper/gst-nvdscommonconfig.h:96
GstDsNvStreammuxConfig::sync_inputs
gboolean sync_inputs
Definition: libs/gstnvdscustomhelper/gst-nvdscommonconfig.h:132
_GstDsNvUriSrcConfig::num_extra_surfaces
guint num_extra_surfaces
Definition: libs/gstnvdscustomhelper/gst-nvdscommonconfig.h:97
_GstDsNvUriSrcConfig::source_id
gint source_id
Definition: libs/gstnvdscustomhelper/gst-nvdscommonconfig.h:95
GstDsNvStreammuxConfig
Definition: libs/gstnvdscustomhelper/gst-nvdscommonconfig.h:109
GstDsNvStreammuxConfig::frame_num_reset_on_stream_reset
gboolean frame_num_reset_on_stream_reset
Definition: libs/gstnvdscustomhelper/gst-nvdscommonconfig.h:135
GstDsNvStreammuxConfig::max_latency
guint64 max_latency
Definition: libs/gstnvdscustomhelper/gst-nvdscommonconfig.h:133
_GstDsNvUriSrcConfig::skip_frames_type
NvDsUriSrcBinDecSkipFrame skip_frames_type
Definition: libs/gstnvdscustomhelper/gst-nvdscommonconfig.h:98
_GstDsNvUriSrcConfig::rtsp_reconnect_interval_sec
gint rtsp_reconnect_interval_sec
Definition: libs/gstnvdscustomhelper/gst-nvdscommonconfig.h:101
SMART_REC_MULTI
@ SMART_REC_MULTI
Definition: libs/gstnvdscustomhelper/gst-nvdscommonconfig.h:57
RTP_PROTOCOL_TCP
@ RTP_PROTOCOL_TCP
Definition: libs/gstnvdscustomhelper/gst-nvdscommonconfig.h:50
NvDsUriSrcBinType
NvDsUriSrcBinType
Definition: libs/gstnvdscustomhelper/gst-nvdscommonconfig.h:33
_NvDsSensorInfo::uri
gchar const * uri
Definition: libs/gstnvdscustomhelper/gst-nvdscommonconfig.h:76
GstDsNvUriSrcConfig
struct _GstDsNvUriSrcConfig GstDsNvUriSrcConfig
SMART_REC_AUDIO_ONLY
@ SMART_REC_AUDIO_ONLY
Definition: libs/gstnvdscustomhelper/gst-nvdscommonconfig.h:64