NVIDIA DeepStream SDK API Reference

8.0 Release
nvds_appctx_server.h
Go to the documentation of this file.
1 /*
2  * SPDX-FileCopyrightText: Copyright (c) 2023-2025 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 
29 #ifndef _NVGSTDS_APPCTX_SERVER_PARSER_H_
30 #define _NVGSTDS_APPCTX_SERVER_PARSER_H_
31 
32 #ifdef __cplusplus
33 
34 #include "nvds_rest_server.h"
35 #include "nvds_yml_parser.h"
36 #include "gst-nvmultiurisrcbincreator.h"
37 extern "C"
38 {
39 #endif
40 
41 #include <gst/gst.h>
42 
46 typedef struct
47 {
48  GstElement *pipeline;
49  GstElement *multiuribin;
50  GstElement *sink;
51  GstElement *pgie;
52  GstElement *queue1;
53  GstElement *queue2;
54  GstElement *queue3;
55  GstElement *queue4;
56  GstElement *queue5;
57  GstElement *queue6;
58  GstElement *nvvidconv;
59  GstElement *tiler;
60  GstElement *nvdslogger;
61  GstElement *preprocess;
62  GstElement *nvosd;
63  GstElement *nvvidconv2;
64  GstElement *encoder;
65  GstElement *parser;
66  GstElement *queue_post_encoder;
67  GstElement *nvanalytics;
68 
69  void* restServer;
71  gchar* httpIp;
72  gchar* httpPort;
73 
79  gchar * uri_list;
80 } AppCtx;
81 
93 nvds_parse_server_appctx (gchar * cfg_file_path, const char* group,
94  AppCtx *appctx);
95 
108 nvds_parse_check_rest_server_with_app (gchar * cfg_file_path, const char* group,
109  gboolean *within_multiurisrcbin);
110 
111 #ifdef __cplusplus
112 }
113 #endif
114 
115 #endif /* _NVGSTDS_APPCTX_SERVER_PARSER_H_ */
116 
AppCtx::queue3
GstElement * queue3
Definition: nvds_appctx_server.h:54
AppCtx::nvanalytics
GstElement * nvanalytics
Definition: nvds_appctx_server.h:67
_GstDsNvUriSrcConfig
Definition: includes/gst-nvdscommonconfig.h:97
AppCtx
REST server application context.
Definition: nvds_appctx_server.h:46
AppCtx::bincreator_lock
GMutex bincreator_lock
Definition: nvds_appctx_server.h:74
AppCtx::sourceIdCounter
guint sourceIdCounter
Definition: nvds_appctx_server.h:78
AppCtx::queue4
GstElement * queue4
Definition: nvds_appctx_server.h:55
AppCtx::sink
GstElement * sink
Definition: nvds_appctx_server.h:50
AppCtx::httpPort
gchar * httpPort
Definition: nvds_appctx_server.h:72
AppCtx::uri_list
gchar * uri_list
Definition: nvds_appctx_server.h:79
AppCtx::nvdslogger
GstElement * nvdslogger
Definition: nvds_appctx_server.h:60
AppCtx::pgie
GstElement * pgie
Definition: nvds_appctx_server.h:51
AppCtx::multiuribin
GstElement * multiuribin
Definition: nvds_appctx_server.h:49
nvds_parse_server_appctx
NvDsYamlParserStatus nvds_parse_server_appctx(gchar *cfg_file_path, const char *group, AppCtx *appctx)
Set AppCtx from values specified in a YAML configuration file.
AppCtx::restServer
void * restServer
Definition: nvds_appctx_server.h:69
AppCtx::preprocess
GstElement * preprocess
Definition: nvds_appctx_server.h:61
nvds_parse_check_rest_server_with_app
NvDsYamlParserStatus nvds_parse_check_rest_server_with_app(gchar *cfg_file_path, const char *group, gboolean *within_multiurisrcbin)
Set "within_multiurisrcbin" varible from values specified in a YAML configuration file.
NvDst_Handle_NvMultiUriSrcCreator
void * NvDst_Handle_NvMultiUriSrcCreator
Definition: includes/gst-nvmultiurisrcbincreator.h:31
AppCtx::pipeline
GstElement * pipeline
Definition: nvds_appctx_server.h:48
AppCtx::nvosd
GstElement * nvosd
Definition: nvds_appctx_server.h:62
NvDsServerConfig
Definition: includes/nvds_rest_server.h:399
AppCtx::config
GstDsNvUriSrcConfig config
Definition: nvds_appctx_server.h:77
AppCtx::nvvidconv2
GstElement * nvvidconv2
Definition: nvds_appctx_server.h:63
NvDsYamlParserStatus
NvDsYamlParserStatus
Enum for Yaml parsing status for the API call on a GstElement.
Definition: nvds_yml_parser.h:41
AppCtx::muxConfig
GstDsNvStreammuxConfig muxConfig
Definition: nvds_appctx_server.h:76
AppCtx::queue_post_encoder
GstElement * queue_post_encoder
Definition: nvds_appctx_server.h:66
AppCtx::server_conf
NvDsServerConfig server_conf
Definition: nvds_appctx_server.h:70
AppCtx::queue1
GstElement * queue1
Definition: nvds_appctx_server.h:52
AppCtx::nvvidconv
GstElement * nvvidconv
Definition: nvds_appctx_server.h:58
AppCtx::queue5
GstElement * queue5
Definition: nvds_appctx_server.h:56
nvds_yml_parser.h
AppCtx
struct __AppCtx AppCtx
AppCtx::tiler
GstElement * tiler
Definition: nvds_appctx_server.h:59
AppCtx::parser
GstElement * parser
Definition: nvds_appctx_server.h:65
GstDsNvStreammuxConfig
Definition: includes/gst-nvdscommonconfig.h:141
AppCtx::nvmultiurisrcbinCreator
NvDst_Handle_NvMultiUriSrcCreator nvmultiurisrcbinCreator
Definition: nvds_appctx_server.h:75
AppCtx::queue6
GstElement * queue6
Definition: nvds_appctx_server.h:57
AppCtx::queue2
GstElement * queue2
Definition: nvds_appctx_server.h:53
AppCtx::httpIp
gchar * httpIp
Definition: nvds_appctx_server.h:71
AppCtx::encoder
GstElement * encoder
Definition: nvds_appctx_server.h:64