NVIDIA DeepStream SDK API Reference

6.2 Release
nvdsnmos.h
Go to the documentation of this file.
1 /*
2  * Copyright (c) 2022, NVIDIA CORPORATION. All rights reserved.
3  *
4  * NVIDIA Corporation and its licensors retain all intellectual property
5  * and proprietary rights in and to this software, related documentation
6  * and any modifications thereto. Any use, reproduction, disclosure or
7  * distribution of this software and related documentation without an express
8  * license agreement from NVIDIA Corporation is strictly prohibited.
9  *
10  */
11 
50 #ifndef NVDSNMOS_H
51 #define NVDSNMOS_H
52 
53 #include <stdbool.h>
54 
55 #ifdef __cplusplus
56 extern "C"
57 {
58 #endif
59 
61 
86  NvDsNmosNodeServer *server,
87  const char *id,
88  const char *sdp);
89 
94 enum {
109 };
110 
122 typedef void (* nmos_logging_callback)(
123  NvDsNmosNodeServer *server,
124  const char *categories,
125  int level,
126  const char *message);
127 
130 
135 typedef struct _NvDsNmosNodeConfig
136 {
140  const char *host_name;
143  unsigned int http_port;
144 
147  const char *seed;
148 
153  unsigned int num_receivers;
158  unsigned int num_senders;
159 
163 
171  const char **log_categories;
173  unsigned int num_log_categories;
175 
181 {
190  const char *sdp;
192 
197 typedef struct _NvDsNmosSenderConfig
198 {
207  const char *sdp;
209 
215 typedef struct _NvDsNmosNodeServer
216 {
222  void *user_data;
226  void *impl;
228 
240  const NvDsNmosNodeConfig *config,
241  NvDsNmosNodeServer *server);
242 
253  NvDsNmosNodeServer *server);
254 
278  NvDsNmosNodeServer *server,
279  const char *id,
280  const char *sdp);
281 
282 #ifdef __cplusplus
283 }
284 #endif
285 
286 #endif
287 
NVDSNMOS_LOG_ERROR
@ NVDSNMOS_LOG_ERROR
More serious recoverable errors such as rejected requests.
Definition: nvdsnmos.h:104
_NvDsNmosNodeServer::impl
void * impl
Holds an opaque pointer used by the NvDsNmos library.
Definition: nvdsnmos.h:226
NVDSNMOS_LOG_FATAL
@ NVDSNMOS_LOG_FATAL
Errors which are likely to cause the server to immediately terminate.
Definition: nvdsnmos.h:108
_NvDsNmosNodeConfig::num_log_categories
unsigned int num_log_categories
Holds the number of log_categories.
Definition: nvdsnmos.h:173
_NvDsNmosNodeConfig::rtp_connection_activated
nmos_connection_rtp_activation_callback rtp_connection_activated
Holds the callback for handling an IS-05 Connection API activation.
Definition: nvdsnmos.h:162
nmos_connection_rtp_activation_callback
bool(* nmos_connection_rtp_activation_callback)(NvDsNmosNodeServer *server, const char *id, const char *sdp)
Type for a callback from NvDsNmos library when an IS-05 Connection API activation occurs.
Definition: nvdsnmos.h:85
_NvDsNmosNodeConfig::log_level
int log_level
Holds the minimum severity/verbosity level for which to make logging callbacks.
Definition: nvdsnmos.h:168
_NvDsNmosNodeServer
Holds the implementation details of a running NvDsNmos server.
Definition: nvdsnmos.h:215
nmos_logging_callback
void(* nmos_logging_callback)(NvDsNmosNodeServer *server, const char *categories, int level, const char *message)
Type for a callback from NvDsNmos library for log messages.
Definition: nvdsnmos.h:122
NvDsNmosNodeServer
struct _NvDsNmosNodeServer NvDsNmosNodeServer
Holds the implementation details of a running NvDsNmos server.
Definition: nvdsnmos.h:60
_NvDsNmosNodeConfig::receivers
NvDsNmosReceiverConfig * receivers
Holds configuration settings for the receivers.
Definition: nvdsnmos.h:151
_NvDsNmosNodeConfig::senders
NvDsNmosSenderConfig * senders
Holds configuration settings for the senders.
Definition: nvdsnmos.h:156
NVDSNMOS_LOG_VERBOSE
@ NVDSNMOS_LOG_VERBOSE
Chatty messages such as detailed API request/response tracking.
Definition: nvdsnmos.h:98
NVDSNMOS_LOG_WARNING
@ NVDSNMOS_LOG_WARNING
Minor problems that could be recovered automatically by the library.
Definition: nvdsnmos.h:102
_NvDsNmosNodeConfig::seed
const char * seed
Holds a string used to ensure repeatable UUID generation.
Definition: nvdsnmos.h:147
NVDSNMOS_LOG_INFO
@ NVDSNMOS_LOG_INFO
Higher level information about expected API events.
Definition: nvdsnmos.h:100
_NvDsNmosNodeServer::user_data
void * user_data
Holds a pointer to user data, not used by the NvDsNmos library.
Definition: nvdsnmos.h:222
_NvDsNmosNodeConfig
Defines configuration settings used to create an NvDsNmosNodeServer.
Definition: nvdsnmos.h:135
_NvDsNmosReceiverConfig
Defines configuration settings used to create receivers in an NvDsNmosNodeServer.
Definition: nvdsnmos.h:180
NvDsNmosReceiverConfig
struct _NvDsNmosReceiverConfig NvDsNmosReceiverConfig
Defines configuration settings used to create receivers in an NvDsNmosNodeServer.
Definition: nvdsnmos.h:128
destroy_nmos_node_server
bool destroy_nmos_node_server(NvDsNmosNodeServer *server)
Stop and deinitialize an NMOS Node server.
_NvDsNmosNodeConfig::host_name
const char * host_name
Holds the fully-qualified host name, e.g.
Definition: nvdsnmos.h:140
NVDSNMOS_LOG_DEVEL
@ NVDSNMOS_LOG_DEVEL
Low level debugging information.
Definition: nvdsnmos.h:96
_NvDsNmosNodeConfig::log_callback
nmos_logging_callback log_callback
Holds the callback for handling log messages.
Definition: nvdsnmos.h:165
NVDSNMOS_LOG_SEVERE
@ NVDSNMOS_LOG_SEVERE
Errors which are unlikely to be recoverable without restarting the server.
Definition: nvdsnmos.h:106
_NvDsNmosSenderConfig
Defines configuration settings used to create senders in an NvDsNmosNodeServer.
Definition: nvdsnmos.h:197
nmos_connection_rtp_activate
bool nmos_connection_rtp_activate(NvDsNmosNodeServer *server, const char *id, const char *sdp)
Update the configuration settings of a sender or receiver.
create_nmos_node_server
bool create_nmos_node_server(const NvDsNmosNodeConfig *config, NvDsNmosNodeServer *server)
Initialize and start an NMOS Node server according to the specified configuration settings.
_NvDsNmosSenderConfig::sdp
const char * sdp
Holds the Session Description Protocol data used to configure the sender.
Definition: nvdsnmos.h:207
NvDsNmosNodeConfig
struct _NvDsNmosNodeConfig NvDsNmosNodeConfig
Defines configuration settings used to create an NvDsNmosNodeServer.
_NvDsNmosReceiverConfig::sdp
const char * sdp
Holds the Session Description Protocol data used to configure the receiver.
Definition: nvdsnmos.h:190
_NvDsNmosNodeConfig::http_port
unsigned int http_port
Holds the port number for the HTTP APIs, e.g.
Definition: nvdsnmos.h:143
_NvDsNmosNodeConfig::num_receivers
unsigned int num_receivers
Holds the number of receivers.
Definition: nvdsnmos.h:153
_NvDsNmosNodeConfig::log_categories
const char ** log_categories
Holds topics for which to make logging callbacks.
Definition: nvdsnmos.h:171
_NvDsNmosNodeConfig::num_senders
unsigned int num_senders
Holds the number of senders.
Definition: nvdsnmos.h:158
NvDsNmosSenderConfig
struct _NvDsNmosSenderConfig NvDsNmosSenderConfig
Defines configuration settings used to create senders in an NvDsNmosNodeServer.
Definition: nvdsnmos.h:129