NVIDIA DeepStream SDK API Reference

7.0 Release
deepstream_secondary_preprocess.h
Go to the documentation of this file.
1 /*
2  * SPDX-FileCopyrightText: Copyright (c) 2022 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 __NVGSTDS_SECONDARY_PREPROCESS_H__
14 #define __NVGSTDS_SECONDARY_PREPROCESS_H__
15 
16 #include <gst/gst.h>
17 #include "deepstream_preprocess.h"
18 
19 #ifdef __cplusplus
20 extern "C"
21 {
22 #endif
23 
24 typedef struct
25 {
26  GstElement *queue;
27  GstElement *secondary_preprocess;
28  GstElement *tee;
29  GstElement *sink;
30  gboolean create;
31  guint num_children;
34 
35 typedef struct
36 {
37  GstElement *bin;
38  GstElement *tee;
39  GstElement *queue;
41  gboolean stop;
42  gboolean flush;
44  GMutex wait_lock;
45  GCond wait_cond;
47 
61 gboolean create_secondary_preprocess_bin (guint num_secondary_preprocess,
62  guint primary_gie_unique_id,
63  NvDsPreProcessConfig *config_array,
65 
70 
71 #ifdef __cplusplus
72 }
73 #endif
74 
75 #endif
NvDsPreProcessConfig
Definition: deepstream_preprocess.h:23
MAX_SECONDARY_GIE_BINS
#define MAX_SECONDARY_GIE_BINS
Definition: deepstream_config.h:86
destroy_secondary_preprocess_bin
void destroy_secondary_preprocess_bin(NvDsSecondaryPreProcessBin *bin)
Release the resources.
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.
NvDsSecondaryPreProcessBin::wait_lock
GMutex wait_lock
Definition: deepstream_secondary_preprocess.h:44
NvDsSecondaryPreProcessBin::bin
GstElement * bin
Definition: deepstream_secondary_preprocess.h:37
NvDsSecondaryPreProcessBin::queue
GstElement * queue
Definition: deepstream_secondary_preprocess.h:39
NvDsSecondaryPreProcessBin::stop
gboolean stop
Definition: deepstream_secondary_preprocess.h:41
NvDsSecondaryPreProcessBinSubBin
Definition: deepstream_secondary_preprocess.h:24
NvDsSecondaryPreProcessBin::wait_for_secondary_preprocess_process_buf_probe_id
gulong wait_for_secondary_preprocess_process_buf_probe_id
Definition: deepstream_secondary_preprocess.h:40
NvDsSecondaryPreProcessBin::tee
GstElement * tee
Definition: deepstream_secondary_preprocess.h:38
NvDsSecondaryPreProcessBinSubBin::parent_index
gint parent_index
Definition: deepstream_secondary_preprocess.h:32
NvDsSecondaryPreProcessBin::wait_cond
GCond wait_cond
Definition: deepstream_secondary_preprocess.h:45
NvDsSecondaryPreProcessBinSubBin::sink
GstElement * sink
Definition: deepstream_secondary_preprocess.h:29
NvDsSecondaryPreProcessBinSubBin::secondary_preprocess
GstElement * secondary_preprocess
Definition: deepstream_secondary_preprocess.h:27
NvDsSecondaryPreProcessBin::flush
gboolean flush
Definition: deepstream_secondary_preprocess.h:42
deepstream_preprocess.h
NvDsSecondaryPreProcessBin
Definition: deepstream_secondary_preprocess.h:35
NvDsSecondaryPreProcessBinSubBin::num_children
guint num_children
Definition: deepstream_secondary_preprocess.h:31
NvDsSecondaryPreProcessBinSubBin::create
gboolean create
Definition: deepstream_secondary_preprocess.h:30
NvDsSecondaryPreProcessBinSubBin::queue
GstElement * queue
Definition: deepstream_secondary_preprocess.h:26
NvDsSecondaryPreProcessBinSubBin::tee
GstElement * tee
Definition: deepstream_secondary_preprocess.h:28