NVIDIA DeepStream SDK API Reference

9.1 Release
9.1/sources/libs/gstnvdscustomhelper/gst-nvdscustomevent.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 
38 #ifndef __GST_NVDSCUSTOMEVENT_H__
39 #define __GST_NVDSCUSTOMEVENT_H__
40 
41 #include <gst/gst.h>
42 
43 #ifdef __cplusplus
44 extern "C"
45 {
46 #endif
47 
48 
50  typedef struct RoiDimension
51  {
52  gchar roi_id[128];
53  guint left;
54  guint top;
55  guint width;
56  guint height;
57  } RoiDimension;
58 
59 #define FLAG(name) GST_EVENT_TYPE_##name
60 
62  typedef enum
63  {
67  = GST_EVENT_MAKE_TYPE (406, FLAG (DOWNSTREAM) | FLAG (SERIALIZED)),
71  = GST_EVENT_MAKE_TYPE (407, FLAG (DOWNSTREAM) | FLAG (SERIALIZED)),
75  = GST_EVENT_MAKE_TYPE (408, FLAG (DOWNSTREAM) | FLAG (SERIALIZED)),
79  = GST_EVENT_MAKE_TYPE (409, FLAG (DOWNSTREAM) | FLAG (SERIALIZED)),
80 
84  = GST_EVENT_MAKE_TYPE (410, FLAG (DOWNSTREAM) | FLAG (SERIALIZED))
86 #undef FLAG
87 
95  GstEvent *gst_nvevent_new_roi_update (gchar * stream_id, guint roi_count,
96  RoiDimension * roi_dim);
97 
110  void gst_nvevent_parse_roi_update (GstEvent * event, gchar ** stream_id,
111  guint * roi_count, RoiDimension ** roi_dim);
112 
119  GstEvent *gst_nvevent_infer_interval_update (gchar * stream_id,
120  guint interval);
121 
132  void gst_nvevent_parse_infer_interval_update (GstEvent * event,
133  gchar ** stream_id, guint * interval);
134 
135 
142  GstEvent *gst_nvevent_nvtracker_config_update (gchar * stream_id, gchar * configStr);
143 
154  void gst_nvevent_parse_nvtracker_config_update (GstEvent * event,
155  gchar ** stream_id, gchar ** configStr);
156 
157 
164  GstEvent *gst_nvevent_osd_process_mode_update (gchar * stream_id,
165  guint process_mode);
166 
177  void gst_nvevent_parse_osd_process_mode_update (GstEvent * event,
178  gchar ** stream_id, guint * process_mode);
184 GstEvent *gst_nvevent_analytics_reload_config_update (gchar * config_file_path);
185 
193  gchar ** config_file_path);
194 
195 #ifdef __cplusplus
196 }
197 #endif
198 
199 #endif
200 
RoiDimension::roi_id
gchar roi_id[128]
Definition: sources/includes/gst-nvdscustomevent.h:52
gst_nvevent_nvtracker_config_update
GstEvent * gst_nvevent_nvtracker_config_update(gchar *stream_id, gchar *configStr)
Creates a new "nv-tracker-config-update" event.
RoiDimension
Defines Roi structure for GST_NVCUSTOMEVENT_ROI_UPDATE custom event.
Definition: sources/includes/gst-nvdscustomevent.h:50
gst_nvevent_parse_infer_interval_update
void gst_nvevent_parse_infer_interval_update(GstEvent *event, gchar **stream_id, guint *interval)
Parses a "nv-infer-interval-update" event received on the sinkpad.
RoiDimension::height
guint height
Definition: sources/includes/gst-nvdscustomevent.h:56
gst_nvevent_new_roi_update
GstEvent * gst_nvevent_new_roi_update(gchar *stream_id, guint roi_count, RoiDimension *roi_dim)
Creates a new "roi-update" event.
RoiDimension::left
guint left
Definition: sources/includes/gst-nvdscustomevent.h:53
gst_nvevent_parse_osd_process_mode_update
void gst_nvevent_parse_osd_process_mode_update(GstEvent *event, gchar **stream_id, guint *process_mode)
Parses a "nv-osd-process-mode-update" event received on the sinkpad.
RoiDimension::width
guint width
Definition: sources/includes/gst-nvdscustomevent.h:55
GST_NVEVENT_OSD_PROCESS_MODE_UPDATE
@ GST_NVEVENT_OSD_PROCESS_MODE_UPDATE
Specifies a custom event to indicate osd process mode update of a particular stream in a batch.
Definition: 9.1/sources/libs/gstnvdscustomhelper/gst-nvdscustomevent.h:74
GST_NVEVENT_ROI_UPDATE
@ GST_NVEVENT_ROI_UPDATE
Specifies a custom event to indicate ROI update for preprocess of a particular stream in a batch.
Definition: 9.1/sources/libs/gstnvdscustomhelper/gst-nvdscustomevent.h:66
GstNvDsCustomEventType
GstNvDsCustomEventType
Defines supported types of custom events.
Definition: 9.1/sources/libs/gstnvdscustomhelper/gst-nvdscustomevent.h:62
RoiDimension::top
guint top
Definition: sources/includes/gst-nvdscustomevent.h:54
gst_nvevent_parse_nvtracker_config_update
void gst_nvevent_parse_nvtracker_config_update(GstEvent *event, gchar **stream_id, gchar **configStr)
Parses a "nv-tracker-config-update" event received on the sinkpad.
gst_nvevent_analytics_reload_config_update
GstEvent * gst_nvevent_analytics_reload_config_update(gchar *config_file_path)
Creates a new "nv-analytics-reload_config-update" event.
GST_NVEVENT_ANALYTICS_RELOAD_CONFIG_UPDATE
@ GST_NVEVENT_ANALYTICS_RELOAD_CONFIG_UPDATE
Specifies a custom event to indicate analytics reload_config update of a particular stream in a batch...
Definition: 9.1/sources/libs/gstnvdscustomhelper/gst-nvdscustomevent.h:78
FLAG
#define FLAG(name)
Definition: 9.1/sources/libs/gstnvdscustomhelper/gst-nvdscustomevent.h:59
gst_nvevent_osd_process_mode_update
GstEvent * gst_nvevent_osd_process_mode_update(gchar *stream_id, guint process_mode)
Creates a new "nv-osd-process-mode-update" event.
gst_nvevent_infer_interval_update
GstEvent * gst_nvevent_infer_interval_update(gchar *stream_id, guint interval)
Creates a new "nv-infer-interval-update" event.
gst_nvevent_parse_analytics_reload_config_update
void gst_nvevent_parse_analytics_reload_config_update(GstEvent *event, gchar **config_file_path)
Parses a "nv-analytics-reload_config-update" event.
GST_NVEVENT_NVTRACKER_CONFIG_UPDATE
@ GST_NVEVENT_NVTRACKER_CONFIG_UPDATE
Specifies a custom event to indicate nvTracker config update for all streams .
Definition: 9.1/sources/libs/gstnvdscustomhelper/gst-nvdscustomevent.h:83
RoiDimension
struct RoiDimension RoiDimension
Defines Roi structure for GST_NVCUSTOMEVENT_ROI_UPDATE custom event.
gst_nvevent_parse_roi_update
void gst_nvevent_parse_roi_update(GstEvent *event, gchar **stream_id, guint *roi_count, RoiDimension **roi_dim)
Parses a "roi-update" event received on the sinkpad.
GST_NVEVENT_INFER_INTERVAL_UPDATE
@ GST_NVEVENT_INFER_INTERVAL_UPDATE
Specifies a custom event to indicate infer interval update of a particular stream in a batch.
Definition: 9.1/sources/libs/gstnvdscustomhelper/gst-nvdscustomevent.h:70