NVIDIA DeepStream SDK API Reference

7.1 Release
gstnvmsgconv.h
Go to the documentation of this file.
1 /*
2  * SPDX-FileCopyrightText: Copyright (c) 2018-2021 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_NVMSGCONV_H_
14 #define _GST_NVMSGCONV_H_
15 
16 #include <gst/base/gstbasetransform.h>
17 #include "nvmsgconv.h"
18 
19 G_BEGIN_DECLS
20 #define GST_TYPE_NVMSGCONV (gst_nvmsgconv_get_type())
21 #define GST_NVMSGCONV(obj) (G_TYPE_CHECK_INSTANCE_CAST((obj),GST_TYPE_NVMSGCONV,GstNvMsgConv))
22 #define GST_NVMSGCONV_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST((klass),GST_TYPE_NVMSGCONV,GstNvMsgConvClass))
23 #define GST_IS_NVMSGCONV(obj) (G_TYPE_CHECK_INSTANCE_TYPE((obj),GST_TYPE_NVMSGCONV))
24 #define GST_IS_NVMSGCONV_CLASS(obj) (G_TYPE_CHECK_CLASS_TYPE((klass),GST_TYPE_NVMSGCONV))
25 typedef struct _GstNvMsgConv GstNvMsgConv;
27 
28 typedef NvDsMsg2pCtx *(*nvds_msg2p_ctx_create_ptr) (const gchar * file,
29  NvDsPayloadType type);
30 
31 typedef void (*nvds_msg2p_ctx_destroy_ptr) (NvDsMsg2pCtx * ctx);
32 
33 typedef NvDsPayload *(*nvds_msg2p_generate_ptr) (NvDsMsg2pCtx * ctx,
34  NvDsEvent * events, guint size);
35 
36 typedef NvDsPayload **(*nvds_msg2p_generate_multiple_ptr) (NvDsMsg2pCtx * ctx,
37  NvDsEvent * events, guint size, guint * payloadCount);
38 
39 typedef void (*nvds_msg2p_release_ptr) (NvDsMsg2pCtx * ctx,
40  NvDsPayload * payload);
41 
42 typedef NvDsPayload *(*nvds_msg2p_generate_ptr_new) (NvDsMsg2pCtx * ctx,
43  void *metadataInfo);
44 
45 typedef NvDsPayload **(*nvds_msg2p_generate_multiple_ptr_new) (NvDsMsg2pCtx *
46  ctx, void *metadataInfo, guint * payloadCount);
47 
48 typedef enum
49 {
54 
56 {
57  GstBaseTransform parent;
58 
59  GQuark dsMetaQuark;
60  gchar *configFile;
61  gchar *msg2pLib;
62  gpointer libHandle;
63  gint compId;
67  gboolean multiplePayloads;
68  gboolean msg2pNewApi;
71  gboolean stop;
72  gboolean selfRef;
73  gboolean dummyPayload;
74 
84 };
85 
87 {
88  GstBaseTransformClass parent_class;
89 };
90 
91 GType gst_nvmsgconv_get_type (void);
92 
93 G_END_DECLS
94 #endif
kNvDsMsgConv_DS3D
@ kNvDsMsgConv_DS3D
Definition: gstnvmsgconv.h:52
NvDsPayload
Holds payload metadata.
Definition: nvdsmeta_schema.h:385
_GstNvMsgConv::configFile
gchar * configFile
Definition: gstnvmsgconv.h:60
nvds_msg2p_generate_multiple_ptr
NvDsPayload **(* nvds_msg2p_generate_multiple_ptr)(NvDsMsg2pCtx *ctx, NvDsEvent *events, guint size, guint *payloadCount)
Definition: gstnvmsgconv.h:36
_GstNvMsgConv::msg2p_generate_new
nvds_msg2p_generate_ptr_new msg2p_generate_new
Definition: gstnvmsgconv.h:79
nvds_msg2p_release_ptr
void(* nvds_msg2p_release_ptr)(NvDsMsg2pCtx *ctx, NvDsPayload *payload)
Definition: gstnvmsgconv.h:39
_GstNvMsgConv
Definition: gstnvmsgconv.h:55
_GstNvMsgConv::msg2pLib
gchar * msg2pLib
Definition: gstnvmsgconv.h:61
_GstNvMsgConv::msg2p_generate
nvds_msg2p_generate_ptr msg2p_generate
Definition: gstnvmsgconv.h:77
_GstNvMsgConvClass::parent_class
GstBaseTransformClass parent_class
Definition: gstnvmsgconv.h:88
_GstNvMsgConv::pCtx
NvDsMsg2pCtx * pCtx
Definition: gstnvmsgconv.h:65
_NvDsEvent
Holds event information.
Definition: nvdsmeta_schema.h:365
NvDsPayloadType
NvDsPayloadType
Defines payload type flags.
Definition: nvdsmeta_schema.h:88
_GstNvMsgConv::numActivePayloads
gint numActivePayloads
Definition: gstnvmsgconv.h:70
_GstNvMsgConv::msg2pNewApi
gboolean msg2pNewApi
Definition: gstnvmsgconv.h:68
_GstNvMsgConv::libHandle
gpointer libHandle
Definition: gstnvmsgconv.h:62
gst_nvmsgconv_get_type
GType gst_nvmsgconv_get_type(void)
nvds_msg2p_generate_ptr
NvDsPayload *(* nvds_msg2p_generate_ptr)(NvDsMsg2pCtx *ctx, NvDsEvent *events, guint size)
Definition: gstnvmsgconv.h:33
_GstNvMsgConv::multiplePayloads
gboolean multiplePayloads
Definition: gstnvmsgconv.h:67
_GstNvMsgConv::frameInterval
guint frameInterval
Definition: gstnvmsgconv.h:69
NvDsMsgConvInputType
NvDsMsgConvInputType
Definition: gstnvmsgconv.h:48
kNvDsMsgConv_Audio
@ kNvDsMsgConv_Audio
Definition: gstnvmsgconv.h:51
_GstNvMsgConv::parent
GstBaseTransform parent
Definition: gstnvmsgconv.h:57
NvDsMsg2pCtx
NvDsMsg2pCtx is structure for library context.
Definition: nvmsgconv_audio/nvmsgconv.h:35
_GstNvMsgConv::payloadType
NvDsPayloadType payloadType
Definition: gstnvmsgconv.h:64
_GstNvMsgConv::ctx_create
nvds_msg2p_ctx_create_ptr ctx_create
Definition: gstnvmsgconv.h:75
_GstNvMsgConv::msg2p_release
nvds_msg2p_release_ptr msg2p_release
Definition: gstnvmsgconv.h:81
nvds_msg2p_generate_ptr_new
NvDsPayload *(* nvds_msg2p_generate_ptr_new)(NvDsMsg2pCtx *ctx, void *metadataInfo)
Definition: gstnvmsgconv.h:42
_GstNvMsgConv::stop
gboolean stop
Definition: gstnvmsgconv.h:71
_GstNvMsgConv::dummyPayload
gboolean dummyPayload
Definition: gstnvmsgconv.h:73
kNvDsMsgConv_Video
@ kNvDsMsgConv_Video
Definition: gstnvmsgconv.h:50
_GstNvMsgConv::msg2p_generate_multiple
nvds_msg2p_generate_multiple_ptr msg2p_generate_multiple
Definition: gstnvmsgconv.h:78
_GstNvMsgConv::selfRef
gboolean selfRef
Definition: gstnvmsgconv.h:72
_GstNvMsgConv::msg2p_generate_multiple_new
nvds_msg2p_generate_multiple_ptr_new msg2p_generate_multiple_new
Definition: gstnvmsgconv.h:80
_GstNvMsgConv::ctx_destroy
nvds_msg2p_ctx_destroy_ptr ctx_destroy
Definition: gstnvmsgconv.h:76
_GstNvMsgConv::debugPayloadDir
gchar * debugPayloadDir
Definition: gstnvmsgconv.h:66
nvds_msg2p_generate_multiple_ptr_new
NvDsPayload **(* nvds_msg2p_generate_multiple_ptr_new)(NvDsMsg2pCtx *ctx, void *metadataInfo, guint *payloadCount)
Definition: gstnvmsgconv.h:45
nvds_msg2p_ctx_create_ptr
NvDsMsg2pCtx *(* nvds_msg2p_ctx_create_ptr)(const gchar *file, NvDsPayloadType type)
Definition: gstnvmsgconv.h:28
_GstNvMsgConv::inputType
NvDsMsgConvInputType inputType
Identifies from caps/capability of the incoming data.
Definition: gstnvmsgconv.h:83
_GstNvMsgConv::dsMetaQuark
GQuark dsMetaQuark
Definition: gstnvmsgconv.h:59
_GstNvMsgConvClass
Definition: gstnvmsgconv.h:86
nvds_msg2p_ctx_destroy_ptr
void(* nvds_msg2p_ctx_destroy_ptr)(NvDsMsg2pCtx *ctx)
Definition: gstnvmsgconv.h:31
_GstNvMsgConv::compId
gint compId
Definition: gstnvmsgconv.h:63