NVIDIA DeepStream SDK API Reference

9.1 Release
9.1/sources/includes/gst-nvmultiurisrcbincreator.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 _GST_NVMULTIURISRCBIN_CREATOR_H_
19 #define _GST_NVMULTIURISRCBIN_CREATOR_H_
20 #include <gst/gst.h>
21 #include "gst-nvdscommonconfig.h"
22 #include <unistd.h>
23 
24 
29 
30 #ifdef __cplusplus
31 extern "C"
32 {
33 #endif
34 
35 
37 
38  typedef enum
39  {
43 
52  guint sourceId);
53 
63  guint sourceId, NvDsServerDecInfo * dec_info);
64 
74  guint sourceId, NvDsServerConvInfo * conv_info);
75 
84  NvDsServerMuxInfo * mux_info);
85 
94  NvDsServerAppInstanceInfo * appinstance_info);
106  binName, NvDsMultiUriMode mode, GstDsNvStreammuxConfig * muxConfig);
107 
117  gboolean
119  apiHandle, GstDsNvUriSrcConfig * sourceConfig);
120 
133  gboolean
135  (NvDst_Handle_NvMultiUriSrcCreator apiHandle, guint sourceId);
136 
151  gboolean
153  (NvDst_Handle_NvMultiUriSrcCreator apiHandle, guint sourceId);
154 
167  GstElement
169  apiHandle);
170 
181  GstPad
184 
189  gboolean
192 
200  apiHandle);
201 
216  (NvDst_Handle_NvMultiUriSrcCreator apiHandle, gchar const *uri,
217  gchar const *sensorId);
218 
219 
225  sourceConfig);
226 
232  config);
233 
244  (NvDst_Handle_NvMultiUriSrcCreator apiHandle, gchar const *sensorId);
245 
258  gboolean
260  (NvDst_Handle_NvMultiUriSrcCreator apiHandle, guint * count,
261  GstDsNvUriSrcConfig *** configs);
262 
271  gboolean
273  (NvDst_Handle_NvMultiUriSrcCreator apiHandle, GList ** sensor_info_list);
274 
286  (NvDst_Handle_NvMultiUriSrcCreator apiHandle, guint count,
287  GstDsNvUriSrcConfig ** configs);
288 
297 
311 #ifdef __cplusplus
312 }
313 #endif
314 
315 #endif
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.
_GstDsNvUriSrcConfig
Definition: sources/includes/gst-nvdscommonconfig.h:102
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: sources/includes/gst-nvmultiurisrcbincreator.h:38
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...
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_sync_children_states
gboolean gst_nvmultiurisrcbincreator_sync_children_states(NvDst_Handle_NvMultiUriSrcCreator apiHandle)
NVDS_MULTIURISRCBIN_MODE_VIDEO
@ NVDS_MULTIURISRCBIN_MODE_VIDEO
Definition: 9.1/sources/includes/gst-nvmultiurisrcbincreator.h:40
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.
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.
NvDsServerMuxInfo
Definition: sources/includes/nvds_rest_server.h:314
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_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...
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_src_config_dup
GstDsNvUriSrcConfig * gst_nvmultiurisrcbincreator_src_config_dup(GstDsNvUriSrcConfig *sourceConfig)
API to create duplicate of GstDsNvUriSrcConfig.
NvDsMultiUriMode
NvDsMultiUriMode
Definition: 9.1/sources/includes/gst-nvmultiurisrcbincreator.h:38
gst_nvmultiurisrcbincreator_get_sensor_id_from_source_id
gchar * gst_nvmultiurisrcbincreator_get_sensor_id_from_source_id(NvDst_Handle_NvMultiUriSrcCreator apiHandle, guint sourceId)
API to get the sensor id from the source id.
NvDst_Handle_NvMultiUriSrcCreator
void * NvDst_Handle_NvMultiUriSrcCreator
Definition: sources/includes/gst-nvmultiurisrcbincreator.h:36
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_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.
NvDsServerDecInfo
Definition: sources/includes/nvds_rest_server.h:270
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...
get_gpu_id
guint get_gpu_id(NvDst_Handle_NvMultiUriSrcCreator apiHandle)
API to get the GPU ID configured for the nvmultiurisrcbin creator.
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...
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...
NvDst_Handle_NvMultiUriSrcCreator
void * NvDst_Handle_NvMultiUriSrcCreator
Definition: 9.1/sources/includes/gst-nvmultiurisrcbincreator.h:36
find_source
gboolean find_source(NvDst_Handle_NvMultiUriSrcCreator apiHandle, guint sourceId)
API to check if sourceId related source exist.
GstDsNvStreammuxConfig
Definition: sources/includes/gst-nvdscommonconfig.h:152
NvDsServerAppInstanceInfo
Definition: sources/includes/nvds_rest_server.h:442
NvDsServerAppInstanceInfo::uri
std::string uri
Definition: sources/includes/nvds_rest_server.h:449
NvDsServerConvInfo
Definition: sources/includes/nvds_rest_server.h:299
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...
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.
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.
gst-nvdscommonconfig.h
NVDS_MULTIURISRCBIN_MODE_AUDIO
@ NVDS_MULTIURISRCBIN_MODE_AUDIO
Definition: 9.1/sources/includes/gst-nvmultiurisrcbincreator.h:41