NVIDIA DeepStream SDK API Reference

8.0 Release
libs/gstnvdscustomhelper/gst-nvmultiurisrcbincreator.h
Go to the documentation of this file.
1 /*
2  * SPDX-FileCopyrightText: Copyright (c) 2022-2024 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 _GST_NVMULTIURISRCBIN_CREATOR_H_
14 #define _GST_NVMULTIURISRCBIN_CREATOR_H_
15 #include <gst/gst.h>
16 #include "gst-nvdscommonconfig.h"
17 #include <unistd.h>
18 
19 
24 
25 #ifdef __cplusplus
26 extern "C"
27 {
28 #endif
29 
30 
32 
33  typedef enum
34  {
38 
47  guint sourceId);
48 
58  guint sourceId, NvDsServerDecInfo * dec_info);
59 
69  guint sourceId, NvDsServerConvInfo * conv_info);
70 
79  NvDsServerMuxInfo * mux_info);
80 
89  NvDsServerAppInstanceInfo * appinstance_info);
101  binName, NvDsMultiUriMode mode, GstDsNvStreammuxConfig * muxConfig);
102 
112  gboolean
114  apiHandle, GstDsNvUriSrcConfig * sourceConfig);
115 
128  gboolean
130  (NvDst_Handle_NvMultiUriSrcCreator apiHandle, guint sourceId);
131 
146  gboolean
148  (NvDst_Handle_NvMultiUriSrcCreator apiHandle, guint sourceId);
149 
162  GstElement
164  apiHandle);
165 
176  GstPad
179 
184  gboolean
187 
195  apiHandle);
196 
211  (NvDst_Handle_NvMultiUriSrcCreator apiHandle, gchar const *uri,
212  gchar const *sensorId);
213 
214 
220  sourceConfig);
221 
227  config);
228 
239  (NvDst_Handle_NvMultiUriSrcCreator apiHandle, gchar const *sensorId);
240 
253  gboolean
255  (NvDst_Handle_NvMultiUriSrcCreator apiHandle, guint * count,
256  GstDsNvUriSrcConfig *** configs);
257 
266  gboolean
268  (NvDst_Handle_NvMultiUriSrcCreator apiHandle, GList ** sensor_info_list);
269 
281  (NvDst_Handle_NvMultiUriSrcCreator apiHandle, guint count,
282  GstDsNvUriSrcConfig ** configs);
283 
284 #ifdef __cplusplus
285 }
286 #endif
287 
288 #endif
gst_nvmultiurisrcbincreator_get_source_config_by_sensorid
GstDsNvUriSrcConfig * gst_nvmultiurisrcbincreator_get_source_config_by_sensorid(NvDst_Handle_NvMultiUriSrcCreator apiHandle, gchar const *sensorId)
API to procure the source config for a particular sensor.
gst-nvdscommonconfig.h
_GstDsNvUriSrcConfig
Definition: includes/gst-nvdscommonconfig.h:97
gst_nvmultiurisrcbincreator_src_config_dup
GstDsNvUriSrcConfig * gst_nvmultiurisrcbincreator_src_config_dup(GstDsNvUriSrcConfig *sourceConfig)
API to create duplicate of GstDsNvUriSrcConfig.
gst_nvmultiurisrcbincreator_get_source_config
GstDsNvUriSrcConfig * gst_nvmultiurisrcbincreator_get_source_config(NvDst_Handle_NvMultiUriSrcCreator apiHandle, gchar const *uri, gchar const *sensorId)
API to procure the source config for a particular sensor.
gst_nvmultiurisrcbincreator_get_active_sources_list
gboolean gst_nvmultiurisrcbincreator_get_active_sources_list(NvDst_Handle_NvMultiUriSrcCreator apiHandle, guint *count, GstDsNvUriSrcConfig ***configs)
API to procure the list of sources.
NVDS_MULTIURISRCBIN_MODE_VIDEO
@ NVDS_MULTIURISRCBIN_MODE_VIDEO
Definition: libs/gstnvdscustomhelper/gst-nvmultiurisrcbincreator.h:35
gst_nvmultiurisrcbincreator_get_bin
GstElement * gst_nvmultiurisrcbincreator_get_bin(NvDst_Handle_NvMultiUriSrcCreator apiHandle)
Get the nvmultiurisrcbin GstBin User may: a) add this Bin/Element into their pipeline and b) link the...
gst_nvmultiurisrcbincreator_src_config_list_free
void gst_nvmultiurisrcbincreator_src_config_list_free(NvDst_Handle_NvMultiUriSrcCreator apiHandle, guint count, GstDsNvUriSrcConfig **configs)
API to destroy the memory allocation for list of sources procured with API: gst_nvmultiurisrcbincreat...
gst_nvmultiurisrcbincreator_add_source
gboolean gst_nvmultiurisrcbincreator_add_source(NvDst_Handle_NvMultiUriSrcCreator apiHandle, GstDsNvUriSrcConfig *sourceConfig)
API to add a source/stream into the nvmultiurisrcbin instance A new instance of nvurisrcbin will be c...
gst_nvmultiurisrcbincreator_remove_source_without_forced_state_change
gboolean gst_nvmultiurisrcbincreator_remove_source_without_forced_state_change(NvDst_Handle_NvMultiUriSrcCreator apiHandle, guint sourceId)
API to remove a source/stream from the nvmultiurisrcbin instance The corresponding nvurisrcbin will b...
NvDsServerMuxInfo
Definition: includes/nvds_rest_server.h:265
gst_nvmultiurisrcbincreator_src_config_free
void gst_nvmultiurisrcbincreator_src_config_free(GstDsNvUriSrcConfig *config)
API to free GstDsNvUriSrcConfig object obtained with API: gst_nvmultiurisrcbincreator_src_config_dup.
NvDst_Handle_NvMultiUriSrcCreator
void * NvDst_Handle_NvMultiUriSrcCreator
Definition: includes/gst-nvmultiurisrcbincreator.h:31
NvDsMultiUriMode
NvDsMultiUriMode
Definition: libs/gstnvdscustomhelper/gst-nvmultiurisrcbincreator.h:33
set_nvuribin_dec_prop
gboolean set_nvuribin_dec_prop(NvDst_Handle_NvMultiUriSrcCreator apiHandle, guint sourceId, NvDsServerDecInfo *dec_info)
API to set property value on nvv4l2decoder of nvmultiurisrcbin instance.
gst_nvmultiurisrcbincreator_deinit
void gst_nvmultiurisrcbincreator_deinit(NvDst_Handle_NvMultiUriSrcCreator apiHandle)
Deinit the nvmultiurisrcbin creator API Note: If this bin was added to a parent pipeline instance,...
NvDsMultiUriMode
NvDsMultiUriMode
Definition: includes/gst-nvmultiurisrcbincreator.h:33
NvDsServerDecInfo
Definition: includes/nvds_rest_server.h:221
gst_nvmultiurisrcbincreator_get_source_info_list
gboolean gst_nvmultiurisrcbincreator_get_source_info_list(NvDst_Handle_NvMultiUriSrcCreator apiHandle, GList **sensor_info_list)
API to procure the list of active sources.
NvDst_Handle_NvMultiUriSrcCreator
void * NvDst_Handle_NvMultiUriSrcCreator
Definition: libs/gstnvdscustomhelper/gst-nvmultiurisrcbincreator.h:31
gst_nvmultiurisrcbincreator_sync_children_states
gboolean gst_nvmultiurisrcbincreator_sync_children_states(NvDst_Handle_NvMultiUriSrcCreator apiHandle)
set_nvuribin_conv_prop
gboolean set_nvuribin_conv_prop(NvDst_Handle_NvMultiUriSrcCreator apiHandle, guint sourceId, NvDsServerConvInfo *conv_info)
API to set property value on nvvideoconvert of nvmultiurisrcbin instance.
gst_nvmultiurisrcbincreator_remove_source
gboolean gst_nvmultiurisrcbincreator_remove_source(NvDst_Handle_NvMultiUriSrcCreator apiHandle, guint sourceId)
API to remove a source/stream from the nvmultiurisrcbin instance The corresponding nvurisrcbin will b...
gst_nvmultiurisrcbincreator_init
NvDst_Handle_NvMultiUriSrcCreator gst_nvmultiurisrcbincreator_init(gchar *binName, NvDsMultiUriMode mode, GstDsNvStreammuxConfig *muxConfig)
Initialize the API for nvmultiurisrcbin creation Note: nvmultiurisrcbin is a collection of DeepStream...
NVDS_MULTIURISRCBIN_MODE_AUDIO
@ NVDS_MULTIURISRCBIN_MODE_AUDIO
Definition: libs/gstnvdscustomhelper/gst-nvmultiurisrcbincreator.h:36
set_nvuribin_mux_prop
gboolean set_nvuribin_mux_prop(NvDst_Handle_NvMultiUriSrcCreator apiHandle, NvDsServerMuxInfo *mux_info)
API to set property value on nvstreammux of nvmultiurisrcbin instance.
find_source
gboolean find_source(NvDst_Handle_NvMultiUriSrcCreator apiHandle, guint sourceId)
API to check if sourceId related source exist.
GstDsNvStreammuxConfig
Definition: includes/gst-nvdscommonconfig.h:141
NvDsServerAppInstanceInfo
Definition: includes/nvds_rest_server.h:358
NvDsServerAppInstanceInfo::uri
std::string uri
Definition: includes/nvds_rest_server.h:365
s_force_eos_handle
gboolean s_force_eos_handle(NvDst_Handle_NvMultiUriSrcCreator apiHandle, NvDsServerAppInstanceInfo *appinstance_info)
API to set EOS related properties on nvstreammux of nvmultiurisrcbin instance.
NvDsServerConvInfo
Definition: includes/nvds_rest_server.h:250
gst_nvmultiurisrcbincreator_get_source_pad
GstPad * gst_nvmultiurisrcbincreator_get_source_pad(NvDst_Handle_NvMultiUriSrcCreator apiHandle)
API to procure the source pad ("src") of this nvmultiurisrcbin instance Note: User may link the bin's...