NVIDIA DeepStream SDK API Reference

9.1 Release
sources/apps/apps-common/includes/deepstream_secondary_preprocess.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 __NVGSTDS_SECONDARY_PREPROCESS_H__
19 #define __NVGSTDS_SECONDARY_PREPROCESS_H__
20 
21 #include <gst/gst.h>
22 #include "deepstream_preprocess.h"
23 
24 #ifdef __cplusplus
25 extern "C"
26 {
27 #endif
28 
29 typedef struct
30 {
31  GstElement *queue;
32  GstElement *secondary_preprocess;
33  GstElement *tee;
34  GstElement *sink;
35  gboolean create;
36  guint num_children;
39 
40 typedef struct
41 {
42  GstElement *bin;
43  GstElement *tee;
44  GstElement *queue;
46  gboolean stop;
47  gboolean flush;
49  GMutex wait_lock;
50  GCond wait_cond;
52 
66 gboolean create_secondary_preprocess_bin (guint num_secondary_preprocess,
67  guint primary_gie_unique_id,
68  NvDsPreProcessConfig *config_array,
70 
75 
76 #ifdef __cplusplus
77 }
78 #endif
79 
80 #endif
MAX_SECONDARY_GIE_BINS
#define MAX_SECONDARY_GIE_BINS
Definition: sources/apps/apps-common/includes/deepstream_config.h:93
NvDsSecondaryPreProcessBin::queue
GstElement * queue
Definition: sources/apps/apps-common/includes/deepstream_secondary_preprocess.h:44
create_secondary_preprocess_bin
gboolean create_secondary_preprocess_bin(guint num_secondary_preprocess, guint primary_gie_unique_id, NvDsPreProcessConfig *config_array, NvDsSecondaryPreProcessBin *bin)
Initialize NvDsSecondaryPreProcessBin.
NvDsPreProcessConfig
Definition: sources/apps/apps-common/includes/deepstream_preprocess.h:28
NvDsSecondaryPreProcessBin::wait_lock
GMutex wait_lock
Definition: sources/apps/apps-common/includes/deepstream_secondary_preprocess.h:49
NvDsSecondaryPreProcessBinSubBin::queue
GstElement * queue
Definition: sources/apps/apps-common/includes/deepstream_secondary_preprocess.h:31
NvDsSecondaryPreProcessBin::stop
gboolean stop
Definition: sources/apps/apps-common/includes/deepstream_secondary_preprocess.h:46
NvDsSecondaryPreProcessBin::bin
GstElement * bin
Definition: sources/apps/apps-common/includes/deepstream_secondary_preprocess.h:42
destroy_secondary_preprocess_bin
void destroy_secondary_preprocess_bin(NvDsSecondaryPreProcessBin *bin)
Release the resources.
NvDsSecondaryPreProcessBinSubBin::sink
GstElement * sink
Definition: sources/apps/apps-common/includes/deepstream_secondary_preprocess.h:34
NvDsSecondaryPreProcessBin::tee
GstElement * tee
Definition: sources/apps/apps-common/includes/deepstream_secondary_preprocess.h:43
deepstream_preprocess.h
NvDsSecondaryPreProcessBinSubBin
Definition: sources/apps/apps-common/includes/deepstream_secondary_preprocess.h:29
NvDsSecondaryPreProcessBin::wait_for_secondary_preprocess_process_buf_probe_id
gulong wait_for_secondary_preprocess_process_buf_probe_id
Definition: sources/apps/apps-common/includes/deepstream_secondary_preprocess.h:45
NvDsSecondaryPreProcessBinSubBin::parent_index
gint parent_index
Definition: sources/apps/apps-common/includes/deepstream_secondary_preprocess.h:37
NvDsSecondaryPreProcessBin::wait_cond
GCond wait_cond
Definition: sources/apps/apps-common/includes/deepstream_secondary_preprocess.h:50
NvDsSecondaryPreProcessBinSubBin::secondary_preprocess
GstElement * secondary_preprocess
Definition: sources/apps/apps-common/includes/deepstream_secondary_preprocess.h:32
NvDsSecondaryPreProcessBin::flush
gboolean flush
Definition: sources/apps/apps-common/includes/deepstream_secondary_preprocess.h:47
NvDsSecondaryPreProcessBin
Definition: sources/apps/apps-common/includes/deepstream_secondary_preprocess.h:40
NvDsSecondaryPreProcessBinSubBin::num_children
guint num_children
Definition: sources/apps/apps-common/includes/deepstream_secondary_preprocess.h:36
NvDsSecondaryPreProcessBinSubBin::tee
GstElement * tee
Definition: sources/apps/apps-common/includes/deepstream_secondary_preprocess.h:33
NvDsSecondaryPreProcessBinSubBin::create
gboolean create
Definition: sources/apps/apps-common/includes/deepstream_secondary_preprocess.h:35