NVIDIA DeepStream SDK API Reference

6.2 Release
gst-nvmultiurisrcbincreator.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: MIT
4  *
5  * Permission is hereby granted, free of charge, to any person obtaining a
6  * copy of this software and associated documentation files (the "Software"),
7  * to deal in the Software without restriction, including without limitation
8  * the rights to use, copy, modify, merge, publish, distribute, sublicense,
9  * and/or sell copies of the Software, and to permit persons to whom the
10  * Software is furnished to do so, subject to the following conditions:
11  *
12  * The above copyright notice and this permission notice shall be included in
13  * all copies or substantial portions of the Software.
14  *
15  * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
16  * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
17  * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL
18  * THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
19  * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING
20  * FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER
21  * DEALINGS IN THE SOFTWARE.
22  */
23 
24 #ifndef _GST_NVMULTIURISRCBIN_CREATOR_H_
25 #define _GST_NVMULTIURISRCBIN_CREATOR_H_
26 
27 #ifdef __cplusplus
28 extern "C" {
29 #endif
30 
31 #include <gst/gst.h>
32 #include "gst-nvcommonconfig.h"
33 
35 
36 typedef enum
37 {
41 
49 gboolean find_source(NvDst_Handle_NvMultiUriSrcCreator apiHandle, guint sourceId);
50 
59 gboolean set_nvuribin_dec_prop(NvDst_Handle_NvMultiUriSrcCreator apiHandle, guint sourceId, guint drop_frame_interval_val);
60 
72 
83 
95 
96 
110 
122 
128 
136 
150  NvDst_Handle_NvMultiUriSrcCreator apiHandle, gchar const* uri, gchar const* sensorId);
151 
152 
157 
163 
173  NvDst_Handle_NvMultiUriSrcCreator apiHandle, gchar const* sensorId);
174 
188  NvDst_Handle_NvMultiUriSrcCreator apiHandle, guint* count,
189  GstDsNvUriSrcConfig*** configs);
190 
203  guint count,
204  GstDsNvUriSrcConfig** configs);
205 
206 #ifdef __cplusplus
207 }
208 #endif
209 
210 #endif
_GstDsNvUriSrcConfig
Definition: gst-nvcommonconfig.h:79
find_source
gboolean find_source(NvDst_Handle_NvMultiUriSrcCreator apiHandle, guint sourceId)
API to check if sourceId related source exist.
gst_nvmultiurisrcbincreator_sync_children_states
gboolean gst_nvmultiurisrcbincreator_sync_children_states(NvDst_Handle_NvMultiUriSrcCreator apiHandle)
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_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.
NVDS_MULTIURISRCBIN_MODE_VIDEO
@ NVDS_MULTIURISRCBIN_MODE_VIDEO
Definition: gst-nvmultiurisrcbincreator.h:38
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,...
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_free
void gst_nvmultiurisrcbincreator_src_config_free(GstDsNvUriSrcConfig *config)
API to free GstDsNvUriSrcConfig object obtained with API: gst_nvmultiurisrcbincreator_src_config_dup.
NVDS_MULTIURISRCBIN_MODE_AUDIO
@ NVDS_MULTIURISRCBIN_MODE_AUDIO
Definition: gst-nvmultiurisrcbincreator.h:39
NvDsMultiUriMode
NvDsMultiUriMode
Definition: gst-nvmultiurisrcbincreator.h:36
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...
NvDst_Handle_NvMultiUriSrcCreator
void * NvDst_Handle_NvMultiUriSrcCreator
Definition: gst-nvmultiurisrcbincreator.h:34
gst-nvcommonconfig.h
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_src_config_dup
GstDsNvUriSrcConfig * gst_nvmultiurisrcbincreator_src_config_dup(GstDsNvUriSrcConfig *sourceConfig)
API to create duplicate of GstDsNvUriSrcConfig.
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_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...
set_nvuribin_dec_prop
gboolean set_nvuribin_dec_prop(NvDst_Handle_NvMultiUriSrcCreator apiHandle, guint sourceId, guint drop_frame_interval_val)
API to set drop-frame-interval value on nvv4l2decoder of nvmultiurisrcbin instance.
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...
GstDsNvStreammuxConfig
Definition: gst-nvcommonconfig.h:104
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.