NVIDIA DeepStream SDK API Reference

9.2 Release
sources/gst-plugins/gst-nvdsucx/gstucx.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_UCX_H__
19 #define __GST_UCX_H__
20 
21 #include <ucp/api/ucp.h>
22 #include <gst/gst.h>
23 #include <string.h>
24 #include <arpa/inet.h>
25 #include <gmodule.h>
26 #include <gst/video/video.h>
27 #include <gst/base/gstpushsrc.h>
28 #include <gst/base/gstbasesink.h>
29 #include <cuda.h>
30 #include <cuda_runtime.h>
31 #include "nvbufsurface.h"
32 #include <nvbufaudio.h>
33 #include "gstnvdsmeta.h"
34 #include "nvdsmeta.h"
35 #include "gstnvdsbufferpool.h"
36 #include "gstucxsharedtaskpool.h"
37 #include "gst-nvcommon.h"
38 #include "gst_nvdsaudio.h"
39 #include "nvbufaudio.h"
40 #include "nvdscustomusermeta.h"
41 #include "gst-nvevent.h"
42 #include "nvtx_helper.h"
43 #include "gst-nvquery.h"
44 #include "gst-nvquery-internal.h"
45 
46 #define UCX_DEFAULT_ADDR "127.0.0.1"
47 #define UCX_DEFAULT_HIGH_PERF TRUE
48 #define UCX_HIGH_PERF_DISABLE_TLS "tcp,cuda"
49 #define UCX_MAX_PORT (65535)
50 #define UCX_DEFAULT_PORT (7174)
51 #define UCX_MAX_CONNS (4)
52 #define UCX_DEFAULT_CONNS (1)
53 #define IP_STRING_LEN (45)
54 #define PORT_STRING_LEN (8)
55 #define DEFAULT_ALLOCATOR_BPF (4)
56 #define DEFAULT_ALLOCATOR_BUF_LEN (441000)
57 #define DEFAULT_GPU_ID (0)
58 #define DEFAULT_NVBUF_MEMORY_TYPE NVBUF_MEM_CUDA_UNIFIED
59 #define MIN_NUM_NVBUF (0)
60 #define MAX_NUM_NVBUF (20)
61 #define DEFAULT_NUM_NVBUF (4)
62 #define MIN_NVBUF_BATCH_SIZE (1)
63 #define MAX_NVBUF_BATCH_SIZE INT_MAX
64 #define MIN_MAX_EP_NUM (1)
65 #define MAX_MAX_EP_NUM INT_MAX
66 #define DEFAULT_NVBUF_BATCH_SIZE (1)
67 #define DEFAULT_RAW_BUFFER_SIZE (1 << 13)
68 #define BATCH_END_TIMEOUT_SEC (10)
69 #define DEFAULT_MAX_EP_NUM (128)
70 #define CLIENT_ID_SIZE (32)
71 
72 /* Caps */
73 #define GST_CAPS_FEATURE_MEMORY_NVMM "memory:NVMM"
74 
75 /* Video */
76 #define VIDEO_FORMATS "{ NV12, RGBA, I420 }"
77 
78 /* Audio */
79 #define AUDIO_FORMAT \
80  "S8, U8, S16LE, S16BE, U16LE, U16BE, S24_32LE, S24_32BE, " \
81  "U24_32LE, U24_32BE, S32LE, S32BE, U32LE, U32BE, S24LE, S24BE, " \
82  "U24LE, U24BE, S20LE, S20BE, U20LE, U20BE, S18LE, S18BE, U18LE, " \
83  "U18BE, F32LE, F32BE, F64LE, F64BE"
84 
85 #define AUDIO_CHANNELS "[1, 2147483647]"
86 
87 #define GST_AUDIO_CAPS_MAKE_WITH_FEATURES(features, format, channels) \
88  "audio/x-raw(" features "), " \
89  "format = (string) { " format \
90  "}" \
91  ", " \
92  "rate = [ 1, 2147483647 ], " \
93  "layout = (string) { interleaved, non-interleaved }, " \
94  "channels = (int)" channels
95 
96 /* Text */
97 #define GST_TEXT_CAPS_MAKE(format) "text/x-raw, format=(string){" format "}"
98 
99 /* NVTX */
100 #define NVTX_WRAPPER_START \
101  uint64_t nvtx_id; \
102  char context_name[256]; \
103  strcpy(context_name, __func__); \
104  nvtx_helper_start_end(context_name, &nvtx_id)
105 
106 #define NVTX_WRAPPER_END \
107  nvtx_helper_start_end(NULL, &nvtx_id)
108 /* Properties */
109 
110 enum
111 {
124 };
125 
126 typedef enum
127 {
133 
134 #define GST_TYPE_NVDSUCX_BUF_TYPE (gst_nvdsucx_buf_type_get_type ())
135 GType gst_nvdsucx_buf_type_get_type (void);
136 
137 /* UCX */
138 
139 #define EVENT_DATA_MAX_LEN 1024
140 
141 typedef enum
142 {
148 
149 typedef struct gst_ucx_conn_req_ctx
150 {
151  GList *gst_ucx_conn_req_list; /* List of ucp_conn_request_h */
152  GMutex req_lock;
153  ucp_listener_h listener;
154  ucp_worker_h listen_worker;
156 
157 typedef struct gst_ucp_conn_ctx
158 {
159  ucp_worker_h *data_worker;
160  ucp_ep_h *ep;
161  int ep_num;
162  ucs_status_t err;
163 
164  volatile int complete; //server
165  uint32_t client_id; //client
166  GMutex conn_lock; //src
167  int main_worker; //src
169 
170 typedef struct _GstUcxServerPriv
171 {
172  ucp_context_h ucp_context;
176  GMutex conn_lock;
177  GCond conn_cond;
179  GMutex event_lock;
181 
182 typedef struct _GstUcxClientPriv
183 {
184  ucp_context_h ucp_context;
186  GMutex conn_lock;
187  GCond conn_cond;
189 
190 typedef struct _NvGstBufferParams
191 {
192  GstClockTime pts;
193  GstClockTime dts;
194  GstClockTime duration;
195  guint64 offset;
196  guint64 offset_end;
198 
199 typedef struct _NvBufSurfaceDsUcx
200 {
203  uint32_t numFilled;
204  uint32_t batchSize;
205  uint32_t batchId;
207  uint32_t has_user_meta;
209 
210 typedef struct _NvBufRawDsUcx
211 {
213  gsize size;
214 } NvBufRawDsUcx;
215 
216 typedef struct _NvBufAudioDsUcx
217 {
220  uint32_t numFilled;
221  uint32_t batchSize;
222  uint32_t batchId;
224  uint32_t has_user_meta;
225  uint32_t reserved;
227 
228 typedef union _NvDsUcxBuf
229 {
233 } NvDsUcxBuf;
234 
235 typedef struct _NvDsCustomMetaUcx
236 {
237  uint32_t batchId;
238  uint32_t payloadType;
239  uint32_t payloadSize;
241 
242 
243 typedef struct _NvDsUcxAmDesc
244 {
245  volatile int complete;
246  void *desc;
247  size_t length;
248  union
249  {
252  };
253 } NvDsUcxAmDesc;
254 
255 typedef struct _NvDsUcxAmEventDesc
256 {
257  guint type;
258  guint sourceId;
259  union
260  {
262  GstSegment segment;
263  };
265 
266 typedef ucs_status_t (*NvDsUcxSrcPrepAmFunc) (GstBuffer ** gst_buffer,
267  void **rdma_data_ptr, NvDsUcxBuf * nv_dsucx_buf, GMutex * meta_lock);
268 typedef ucs_status_t (*NvDsUcxSrcPrepAmMetaFunc) (GstBuffer ** gst_buffer,
269  void **rdma_data_ptr, NvDsCustomMetaUcx nv_dsucx_meta);
270 typedef ucs_status_t (*NvDsUcxAmHandlerFunc) (void *arg,
271  const void *header, size_t header_length, void *data,
272  size_t length, const ucp_am_recv_param_t * param);
273 
274 /* UCP stuff */
275 
276 ucs_status_t gst_ucp_init_context (ucp_context_h * ucp_context,
277  gboolean high_perf);
278 ucs_status_t gst_ucp_send (ucp_worker_h ucp_worker, ucp_ep_h ep,
279  GstNvDsUcxAmId am_id, void *am_hdr_buf, size_t am_hdr_buf_size,
280  void *rdma_buffer, size_t rdma_buffer_size);
281 ucs_status_t gst_ucp_send_event (ucp_worker_h ucp_worker, ucp_ep_h ep,
282  void *msg, size_t msg_len);
283 ucs_status_t gst_ucp_send_only (ucp_worker_h ucp_worker, ucp_ep_h ep,
284  unsigned int am_tag);
285 ucs_status_t gst_ucp_recv (ucp_worker_h ucp_worker,
286  GstBuffer ** gst_buffer, NvDsUcxSrcPrepAmFunc prep_am,
287  NvDsUcxAmDesc * am_desc, GMutex * meta_lock, ucs_status_t *conn_status);
288 ucs_status_t gst_ucp_recv_meta (ucp_worker_h ucp_worker,
289  GstBuffer ** gst_buffer, NvDsUcxSrcPrepAmMetaFunc prep_am_meta,
290  NvDsUcxAmDesc * am_desc, ucs_status_t *conn_status);
291 
292 /* End of UCP stuff */
293 
294 #define UCX_THREAD_DATA_COMMON_FIELDS gint batch_id; \
295  void *buffer; \
296  void *ucxparent; \
297  gpointer thread_id
298 
300 {
302  ucs_status_t status;
304 
305 typedef struct _GstUcxThreadDataSink
306 {
308  GstMapInfo *mapdata;
310 
311 G_BEGIN_DECLS typedef struct _GstUcxClient
312 {
313  gint port; /* port property */
314  gchar *addr; /* address property */
315  GstUcxClientPriv *priv; /* private */
316  gint max_ep_num; /* max number of ep */
317  gboolean high_perf; /* RDMA activation property */
318 } GstUcxClient;
319 
320 typedef struct _GstUcxServer
321 {
322  gint port; /* port property */
323  gchar *addr; /* address property */
324  volatile int stop_listener_thread;
325  GThread *listener_thread;
326  GstUcxServerPriv *priv; /* private */
327  gchar *caps; /* caps for new connection */
328  guint num_conns; /* Number of connections */
329  gint total_ep_num; /* in order to ensure we dont cross MAX_QP */
330  gint max_ep_num; /* max number of ep */
331  gboolean high_perf; /* RDMA activation property */
332 } GstUcxServer;
333 
334 typedef struct _GstUcxSrc
335 {
336  GstPushSrc push_ucxsrc;
337  GstNvDsUcxBufType buf_type; /* Type of data: Video/Audio/Text */
338  guint gpu_id; /* GPU device ID */
339  NvBufSurfaceMemType mem_type; /* NvBufSurface memory type */
340  gint num_nvbuf; /* Number of NV buffers */
341  gint nvbuf_batch_size; /* NvBufSurface maximal batch size */
342  guint raw_buf_size; /* raw buffer size */
343  NvDsUcxAmDesc *am_desc; /* am client descs from frame/meta */
344  NvDsUcxAmDesc am_desc_meta; /* am client descs for meta */
345  guint num_surfaces_per_frame; /* Number of surfaces in a frame */
348  bool is_eos;
349 
350  GstBufferPool *pool; /* buffer pool */
351  GstTaskPool *thread_pool;
353 } GstUcxSrc;
354 
356 {
357  void *am_hdr_buf;
362 
363 typedef struct _GstUcxSinkRdmaParams
364 {
370 
371 typedef struct _GstUcxSink
372 {
373  GstBaseSink base_ucxsink;
374  GstNvDsUcxBufType buf_type; /* Type of data: Video/Audio/Text */
375  guint num_surfaces_per_frame; /* Number of surfaces in a frame */
376  GstUcxSinkAmHdrParams *am_hdrs; /* Active Message header buffer */
377  int (*prep_am) (GstBuffer * gst_buffer, GstMapInfo * map_info,
378  void **am_hdr_buf, void **rdma_buffer,
379  size_t *rdma_buffer_size, NvDsBatchMeta * batch_meta, int batch_id,
380  guint num_surfaces_per_frame, size_t rdma_meta_buffer_size);
381  int (*prep_am_meta) (void **am_hdr_meta_buf,
382  void **rdma_buffer, size_t *rdma_buffer_size,
383  NvDsBatchMeta * batch_meta, int batch_id);
384  gchar *caps; /* caps for new connection */
385  guint gpu_id; /* GPU device ID */
386  gint nvbuf_batch_size; /* NvBufSurface maximal batch size */
387  GstTaskPool *thread_pool;
389 } GstUcxSink;
390 
391 int get_thread_num (gpointer ucxdata, bool is_src, bool is_server);
392 gboolean gst_ucx_is_recv_meta (GstUcxSrc * src, int batch_id);
393 void free_gst_ucp_conn_ctx (gpointer data);
394 void clear_gst_ucp_conn_ctx (gpointer data);
395 bool gst_ucx_server_set_property (GstUcxServer * ucxserver, guint property_id,
396  const GValue * value, GParamSpec * pspec);
397 bool gst_ucx_client_set_property (GstUcxClient * ucxclient, guint property_id,
398  const GValue * value, GParamSpec * pspec);
399 bool gst_ucx_src_set_property (GstUcxSrc * ucxsrc, guint property_id,
400  const GValue * value, GParamSpec * pspec);
401 bool gst_ucx_sink_set_property (GstUcxSink * ucxsink, guint property_id,
402  const GValue * value, GParamSpec * pspec);
403 bool gst_ucx_server_get_property (GstUcxServer * ucxserver, guint property_id,
404  GValue * value, GParamSpec * pspec);
405 bool gst_ucx_client_get_property (GstUcxClient * ucxclient, guint property_id,
406  GValue * value, GParamSpec * pspec);
407 bool gst_ucx_src_get_property (GstUcxSrc * ucxsrc, guint property_id,
408  GValue * value, GParamSpec * pspec);
409 bool gst_ucx_sink_get_property (GstUcxSink * ucxsink, guint property_id,
410  GValue * value, GParamSpec * pspec);
411 void gst_ucx_server_init (GstUcxServer * ucxserver);
412 void gst_ucx_sink_init (GstUcxSink * ucxsink);
413 void gst_ucx_src_init (GstUcxSrc * ucxsrc);
414 void gst_ucx_client_init (GstUcxClient * ucxclient);
415 gboolean gst_ucx_src_negotiate_caps (GstBaseSrc * src, GstUcxSrc * ucxsrc);
416 gboolean gst_ucx_sink_cap_event_handling (GstUcxSink * ucxsink,
417  GstBaseSink * basesink, GstEvent * event, NvDsUcxAmEventDesc * event_data,
418  gboolean * send_event);
419 void gst_ucx_set_nvevent_data (GstEvent * event,
420  NvDsUcxAmEventDesc * event_data, gboolean * send_event);
421 
422 int start_server (gpointer data, bool is_src);
423 int start_client (gpointer data, bool is_src);
424 int start_sink (GstUcxSink * ucxsink);
425 int start_src (GstUcxSrc * ucxsrc, GstBaseSrc * src);
426 
427 void stop_client (GstUcxClient * ucxclient);
428 void stop_server (GstUcxServer * ucxserver);
429 void stop_sink (GstUcxSink * ucxsink);
430 void stop_src (GstUcxSrc * ucxsrc);
431 
432 void gst_ucx_init ();
433 gboolean gst_ucx_src_buffer_pool_new (GstUcxSrc * ucxsrc, GstCaps * caps);
434 
436 
437 int gst_ucx_create_thread_pool (GstTaskPool ** pool, gint nvbuf_batch_size);
438 gboolean batch_end_check_func (gpointer arg);
439 
440 G_END_DECLS
441 /* End of GstPlugin */
442 /* Buffer handling utils */
443 // GstBuffer
444 static void copy_gstbuf_info (NvGstBufferParams * inNvGst,
445  GstBuffer * inGstBuf, NvGstBufferParams * outNvGst, GstBuffer * outGstBuf);
446 
447 // NvBufSurface
448 static void copy_nvbufsurf_params (NvBufSurfaceParams * in,
449  NvBufSurfaceParams * out);
450 
451 // NvBufAudio
452 static void copy_nvbufaudio_params (NvBufAudioParams * in,
453  NvBufAudioParams * out);
454 #endif
gst_ucx_sink_init
void gst_ucx_sink_init(GstUcxSink *ucxsink)
_NvDsUcxAmDesc::nv_dsucx_buf
NvDsUcxBuf nv_dsucx_buf
Definition: sources/gst-plugins/gst-nvdsucx/gstucx.h:250
_GstUcxServerPriv::ucp_context
ucp_context_h ucp_context
Definition: sources/gst-plugins/gst-nvdsucx/gstucx.h:172
NVDSUCX_BUF_TYPE_TEXT
@ NVDSUCX_BUF_TYPE_TEXT
Definition: sources/gst-plugins/gst-nvdsucx/gstucx.h:131
_GstUcxClient::high_perf
gboolean high_perf
Definition: sources/gst-plugins/gst-nvdsucx/gstucx.h:317
_NvBufSurfaceDsUcx::batchId
uint32_t batchId
Definition: sources/gst-plugins/gst-nvdsucx/gstucx.h:205
GstUcxClientPriv
struct _GstUcxClientPriv GstUcxClientPriv
_GstUcxServer::caps
gchar * caps
Definition: sources/gst-plugins/gst-nvdsucx/gstucx.h:327
_GstUcxSrc
Definition: sources/gst-plugins/gst-nvdsucx/gstucx.h:334
_GstUcxSrc::raw_buf_size
guint raw_buf_size
Definition: sources/gst-plugins/gst-nvdsucx/gstucx.h:342
_NvBufSurfaceDsUcx::nvbufsurf_params
NvBufSurfaceParams nvbufsurf_params
Definition: sources/gst-plugins/gst-nvdsucx/gstucx.h:202
_GstUcxSink::prep_am_meta
int(* prep_am_meta)(void **am_hdr_meta_buf, void **rdma_buffer, size_t *rdma_buffer_size, NvDsBatchMeta *batch_meta, int batch_id)
Definition: sources/gst-plugins/gst-nvdsucx/gstucx.h:381
_GstUcxServerPriv::gst_ucx_server_conn_list
GList * gst_ucx_server_conn_list
Definition: sources/gst-plugins/gst-nvdsucx/gstucx.h:174
_GstUcxClient::max_ep_num
gint max_ep_num
Definition: sources/gst-plugins/gst-nvdsucx/gstucx.h:316
_NvBufSurfaceDsUcx::num_surfaces_per_frame
uint32_t num_surfaces_per_frame
Definition: sources/gst-plugins/gst-nvdsucx/gstucx.h:206
_NvDsUcxBuf::nvbuf_audio
NvBufAudioDsUcx nvbuf_audio
Definition: sources/gst-plugins/gst-nvdsucx/gstucx.h:232
_NvDsUcxBuf::nvbuf_raw
NvBufRawDsUcx nvbuf_raw
Definition: sources/gst-plugins/gst-nvdsucx/gstucx.h:231
_GstUcxSink::num_surfaces_per_frame
guint num_surfaces_per_frame
Definition: sources/gst-plugins/gst-nvdsucx/gstucx.h:375
_GstUcxSrc::threads_data
GstUcxThreadDataSource * threads_data
Definition: sources/gst-plugins/gst-nvdsucx/gstucx.h:352
NvBufAudioParams
Definition: includes/nvbufaudio.h:87
GstUcxServerPriv
struct _GstUcxServerPriv GstUcxServerPriv
gst_ucp_send_only
ucs_status_t gst_ucp_send_only(ucp_worker_h ucp_worker, ucp_ep_h ep, unsigned int am_tag)
_GstUcxSink::nvbuf_batch_size
gint nvbuf_batch_size
Definition: sources/gst-plugins/gst-nvdsucx/gstucx.h:386
length
__host__ __device__ float length(float2 v)
Compute the Euclidean length of a vector.
Definition: sources/libs/nvmultiobjecttracker/include/modules/cuDCFv2/helper_math.h:2721
gst_ucx_server_set_property
bool gst_ucx_server_set_property(GstUcxServer *ucxserver, guint property_id, const GValue *value, GParamSpec *pspec)
_NvDsCustomMetaUcx::payloadType
uint32_t payloadType
Definition: sources/gst-plugins/gst-nvdsucx/gstucx.h:238
_GstUcxServerPriv::server_conn_ctx
gst_ucx_conn_req_ctx_t server_conn_ctx
Definition: sources/gst-plugins/gst-nvdsucx/gstucx.h:173
_GstUcxServer::max_ep_num
gint max_ep_num
Definition: sources/gst-plugins/gst-nvdsucx/gstucx.h:330
PROP_GPU_DEVICE_ID
@ PROP_GPU_DEVICE_ID
Definition: sources/gst-plugins/gst-nvdsucx/gstucx.h:116
NVDSUCX_BUF_TYPE_AUDIO_RAW
@ NVDSUCX_BUF_TYPE_AUDIO_RAW
Definition: sources/gst-plugins/gst-nvdsucx/gstucx.h:130
_GstUcxServerPriv::gst_ucx_nvevents_list
GList * gst_ucx_nvevents_list
Definition: sources/gst-plugins/gst-nvdsucx/gstucx.h:178
_GstUcxSrc::pool
GstBufferPool * pool
Definition: sources/gst-plugins/gst-nvdsucx/gstucx.h:350
PROP_BUF_TYPE
@ PROP_BUF_TYPE
Definition: sources/gst-plugins/gst-nvdsucx/gstucx.h:115
gst_ucp_conn_ctx::ep_num
int ep_num
Definition: sources/gst-plugins/gst-nvdsucx/gstucx.h:161
_NvGstBufferParams
Definition: sources/gst-plugins/gst-nvdsucx/gstucx.h:190
_GstUcxSinkRdmaParams
Definition: sources/gst-plugins/gst-nvdsucx/gstucx.h:363
gst_ucx_is_recv_meta
gboolean gst_ucx_is_recv_meta(GstUcxSrc *src, int batch_id)
_GstUcxSinkRdmaParams::rdma_meta_buffer_size
size_t rdma_meta_buffer_size
Definition: sources/gst-plugins/gst-nvdsucx/gstucx.h:368
EVENT_DATA_MAX_LEN
#define EVENT_DATA_MAX_LEN
Definition: sources/gst-plugins/gst-nvdsucx/gstucx.h:139
_NvDsUcxAmEventDesc::segment
GstSegment segment
Definition: sources/gst-plugins/gst-nvdsucx/gstucx.h:262
_NvBufSurfaceDsUcx
Definition: sources/gst-plugins/gst-nvdsucx/gstucx.h:199
_NvBufRawDsUcx::nvgstbuffer_params
NvGstBufferParams nvgstbuffer_params
Definition: sources/gst-plugins/gst-nvdsucx/gstucx.h:212
_NvGstBufferParams::offset
guint64 offset
Definition: sources/gst-plugins/gst-nvdsucx/gstucx.h:195
_NvDsUcxAmDesc::nv_dscustom_buf
NvDsCustomMetaUcx nv_dscustom_buf
Definition: sources/gst-plugins/gst-nvdsucx/gstucx.h:251
_GstUcxClientPriv::ucp_context
ucp_context_h ucp_context
Definition: sources/gst-plugins/gst-nvdsucx/gstucx.h:184
_GstUcxSink
Definition: sources/gst-plugins/gst-nvdsucx/gstucx.h:371
PROP_NVBUF_MEMORY_TYPE
@ PROP_NVBUF_MEMORY_TYPE
Definition: sources/gst-plugins/gst-nvdsucx/gstucx.h:117
gst_ucp_recv
ucs_status_t gst_ucp_recv(ucp_worker_h ucp_worker, GstBuffer **gst_buffer, NvDsUcxSrcPrepAmFunc prep_am, NvDsUcxAmDesc *am_desc, GMutex *meta_lock, ucs_status_t *conn_status)
_GstUcxSrc::gpu_id
guint gpu_id
Definition: sources/gst-plugins/gst-nvdsucx/gstucx.h:338
_GstUcxThreadDataSink::mapdata
GstMapInfo * mapdata
Definition: sources/gst-plugins/gst-nvdsucx/gstucx.h:308
NvDsUcxAmDesc
struct _NvDsUcxAmDesc NvDsUcxAmDesc
_GstUcxClientPriv
Definition: sources/gst-plugins/gst-nvdsucx/gstucx.h:182
gst_ucp_recv_meta
ucs_status_t gst_ucp_recv_meta(ucp_worker_h ucp_worker, GstBuffer **gst_buffer, NvDsUcxSrcPrepAmMetaFunc prep_am_meta, NvDsUcxAmDesc *am_desc, ucs_status_t *conn_status)
_GstUcxServerPriv::conn_cond
GCond conn_cond
Definition: sources/gst-plugins/gst-nvdsucx/gstucx.h:177
UCP_AM_ID
@ UCP_AM_ID
Definition: sources/gst-plugins/gst-nvdsucx/gstucx.h:143
EVENT_AM_ID
@ EVENT_AM_ID
Definition: sources/gst-plugins/gst-nvdsucx/gstucx.h:144
gst_ucx_src_negotiate_caps
gboolean gst_ucx_src_negotiate_caps(GstBaseSrc *src, GstUcxSrc *ucxsrc)
_NvDsUcxBuf
Definition: sources/gst-plugins/gst-nvdsucx/gstucx.h:228
GstUcxSink
struct _GstUcxSink GstUcxSink
_GstUcxSinkAmHdrParams::am_hdr_meta_buf
void * am_hdr_meta_buf
Definition: sources/gst-plugins/gst-nvdsucx/gstucx.h:359
_GstUcxSink::base_ucxsink
GstBaseSink base_ucxsink
Definition: sources/gst-plugins/gst-nvdsucx/gstucx.h:373
_NvBufRawDsUcx::size
gsize size
Definition: sources/gst-plugins/gst-nvdsucx/gstucx.h:213
_GstUcxServerPriv::conn_lock
GMutex conn_lock
Definition: sources/gst-plugins/gst-nvdsucx/gstucx.h:176
NvBufRawDsUcx
struct _NvBufRawDsUcx NvBufRawDsUcx
PROP_0
@ PROP_0
Definition: sources/gst-plugins/gst-nvdsucx/gstucx.h:112
gst_ucp_conn_ctx::main_worker
int main_worker
Definition: sources/gst-plugins/gst-nvdsucx/gstucx.h:167
PROP_NUM_CONNS
@ PROP_NUM_CONNS
Definition: sources/gst-plugins/gst-nvdsucx/gstucx.h:121
gst_ucp_conn_ctx::data_worker
ucp_worker_h * data_worker
Definition: sources/gst-plugins/gst-nvdsucx/gstucx.h:159
_GstUcxClientPriv::gst_ucp_conn_ctx
gst_ucp_conn_ctx_t gst_ucp_conn_ctx
Definition: sources/gst-plugins/gst-nvdsucx/gstucx.h:185
NvGstBufferParams
struct _NvGstBufferParams NvGstBufferParams
_GstUcxSinkAmHdrParams::am_hdr_buf
void * am_hdr_buf
Definition: sources/gst-plugins/gst-nvdsucx/gstucx.h:357
clear_gst_ucp_conn_ctx
void clear_gst_ucp_conn_ctx(gpointer data)
gst_ucx_conn_req_ctx_t
struct gst_ucx_conn_req_ctx gst_ucx_conn_req_ctx_t
_GstUcxServer::total_ep_num
gint total_ep_num
Definition: sources/gst-plugins/gst-nvdsucx/gstucx.h:329
_NvDsUcxAmEventDesc::type
guint type
Definition: sources/gst-plugins/gst-nvdsucx/gstucx.h:257
NvDsUcxBuf
union _NvDsUcxBuf NvDsUcxBuf
NvDsUcxAmHandlerFunc
ucs_status_t(* NvDsUcxAmHandlerFunc)(void *arg, const void *header, size_t header_length, void *data, size_t length, const ucp_am_recv_param_t *param)
Definition: sources/gst-plugins/gst-nvdsucx/gstucx.h:270
_GstUcxSink::caps
gchar * caps
Definition: sources/gst-plugins/gst-nvdsucx/gstucx.h:384
_GstUcxSink::am_hdrs
GstUcxSinkAmHdrParams * am_hdrs
Definition: sources/gst-plugins/gst-nvdsucx/gstucx.h:376
PROP_HIGH_PERF
@ PROP_HIGH_PERF
Definition: sources/gst-plugins/gst-nvdsucx/gstucx.h:123
_NvGstBufferParams::offset_end
guint64 offset_end
Definition: sources/gst-plugins/gst-nvdsucx/gstucx.h:196
gst_ucx_create_thread_pool
int gst_ucx_create_thread_pool(GstTaskPool **pool, gint nvbuf_batch_size)
NVDSUCX_BUF_TYPE_VIDEO
@ NVDSUCX_BUF_TYPE_VIDEO
Definition: sources/gst-plugins/gst-nvdsucx/gstucx.h:128
_NvDsUcxAmEventDesc
Definition: sources/gst-plugins/gst-nvdsucx/gstucx.h:255
gst_ucx_server_init
void gst_ucx_server_init(GstUcxServer *ucxserver)
_NvBufAudioDsUcx::nvgstbuffer_params
NvGstBufferParams nvgstbuffer_params
Definition: sources/gst-plugins/gst-nvdsucx/gstucx.h:218
_GstUcxSrc::prep_am
NvDsUcxSrcPrepAmFunc prep_am
Definition: sources/gst-plugins/gst-nvdsucx/gstucx.h:346
start_client
int start_client(gpointer data, bool is_src)
gstucxsharedtaskpool.h
_NvBufSurfaceDsUcx::batchSize
uint32_t batchSize
Definition: sources/gst-plugins/gst-nvdsucx/gstucx.h:204
_GstUcxServer
Definition: sources/gst-plugins/gst-nvdsucx/gstucx.h:320
_GstUcxThreadDataSink
Definition: sources/gst-plugins/gst-nvdsucx/gstucx.h:305
gst_ucx_conn_req_ctx::gst_ucx_conn_req_list
GList * gst_ucx_conn_req_list
Definition: sources/gst-plugins/gst-nvdsucx/gstucx.h:151
_GstUcxSrc::is_eos
bool is_eos
Definition: sources/gst-plugins/gst-nvdsucx/gstucx.h:348
_GstUcxSinkAmHdrParams
Definition: sources/gst-plugins/gst-nvdsucx/gstucx.h:355
PROP_PORT
@ PROP_PORT
Definition: sources/gst-plugins/gst-nvdsucx/gstucx.h:114
gst_ucx_src_get_property
bool gst_ucx_src_get_property(GstUcxSrc *ucxsrc, guint property_id, GValue *value, GParamSpec *pspec)
_GstUcxServerPriv
Definition: sources/gst-plugins/gst-nvdsucx/gstucx.h:170
_GstUcxServer::priv
GstUcxServerPriv * priv
Definition: sources/gst-plugins/gst-nvdsucx/gstucx.h:326
_GstUcxServerPriv::event_lock
GMutex event_lock
Definition: sources/gst-plugins/gst-nvdsucx/gstucx.h:179
start_src
int start_src(GstUcxSrc *ucxsrc, GstBaseSrc *src)
GstUcxClient
G_BEGIN_DECLS struct _GstUcxClient GstUcxClient
gst_ucx_src_set_property
bool gst_ucx_src_set_property(GstUcxSrc *ucxsrc, guint property_id, const GValue *value, GParamSpec *pspec)
NvDsCustomMetaUcx
struct _NvDsCustomMetaUcx NvDsCustomMetaUcx
_GstUcxServer::addr
gchar * addr
Definition: sources/gst-plugins/gst-nvdsucx/gstucx.h:323
_GstUcxSrc::num_nvbuf
gint num_nvbuf
Definition: sources/gst-plugins/gst-nvdsucx/gstucx.h:340
GstBuffer
struct _GstBuffer GstBuffer
Definition: includes/ds3d/common/idatatype.h:24
_GstUcxSrc::am_desc_meta
NvDsUcxAmDesc am_desc_meta
Definition: sources/gst-plugins/gst-nvdsucx/gstucx.h:344
_GstUcxClient
Definition: sources/gst-plugins/gst-nvdsucx/gstucx.h:311
_NvBufAudioDsUcx::reserved
uint32_t reserved
Definition: sources/gst-plugins/gst-nvdsucx/gstucx.h:225
UCP_AM_ID_META
@ UCP_AM_ID_META
Definition: sources/gst-plugins/gst-nvdsucx/gstucx.h:145
gst_ucp_conn_ctx::complete
volatile int complete
Definition: sources/gst-plugins/gst-nvdsucx/gstucx.h:164
_GstUcxSrc::buf_type
GstNvDsUcxBufType buf_type
Definition: sources/gst-plugins/gst-nvdsucx/gstucx.h:337
gst_ucp_conn_ctx::ep
ucp_ep_h * ep
Definition: sources/gst-plugins/gst-nvdsucx/gstucx.h:160
NvBufSurfaceParams
Hold the information of single buffer in the batch.
Definition: includes/nvbufsurface.h:567
gst_ucx_server_get_property
bool gst_ucx_server_get_property(GstUcxServer *ucxserver, guint property_id, GValue *value, GParamSpec *pspec)
_GstUcxThreadDataSink::UCX_THREAD_DATA_COMMON_FIELDS
UCX_THREAD_DATA_COMMON_FIELDS
Definition: sources/gst-plugins/gst-nvdsucx/gstucx.h:307
GstUcxSinkAmHdrParams
struct _GstUcxSinkAmHdrParams GstUcxSinkAmHdrParams
batch_end_check_func
gboolean batch_end_check_func(gpointer arg)
_GstUcxClient::addr
gchar * addr
Definition: sources/gst-plugins/gst-nvdsucx/gstucx.h:314
stop_sink
void stop_sink(GstUcxSink *ucxsink)
_GstUcxServer::high_perf
gboolean high_perf
Definition: sources/gst-plugins/gst-nvdsucx/gstucx.h:331
NvDsUcxSrcPrepAmMetaFunc
ucs_status_t(* NvDsUcxSrcPrepAmMetaFunc)(GstBuffer **gst_buffer, void **rdma_data_ptr, NvDsCustomMetaUcx nv_dsucx_meta)
Definition: sources/gst-plugins/gst-nvdsucx/gstucx.h:268
NvDsUcxSrcPrepAmFunc
ucs_status_t(* NvDsUcxSrcPrepAmFunc)(GstBuffer **gst_buffer, void **rdma_data_ptr, NvDsUcxBuf *nv_dsucx_buf, GMutex *meta_lock)
Definition: sources/gst-plugins/gst-nvdsucx/gstucx.h:266
stop_src
void stop_src(GstUcxSrc *ucxsrc)
_NvBufSurfaceDsUcx::nvgstbuffer_params
NvGstBufferParams nvgstbuffer_params
Definition: sources/gst-plugins/gst-nvdsucx/gstucx.h:201
_GstUcxSink::thread_pool
GstTaskPool * thread_pool
Definition: sources/gst-plugins/gst-nvdsucx/gstucx.h:387
_NvBufAudioDsUcx::batchId
uint32_t batchId
Definition: sources/gst-plugins/gst-nvdsucx/gstucx.h:222
_GstUcxServer::stop_listener_thread
volatile int stop_listener_thread
Definition: sources/gst-plugins/gst-nvdsucx/gstucx.h:324
_NvDsCustomMetaUcx
Definition: sources/gst-plugins/gst-nvdsucx/gstucx.h:235
_NvBufAudioDsUcx::nvbufaudio_params
NvBufAudioParams nvbufaudio_params
Definition: sources/gst-plugins/gst-nvdsucx/gstucx.h:219
start_sink
int start_sink(GstUcxSink *ucxsink)
_GstUcxSinkAmHdrParams::am_hdr_buf_size
size_t am_hdr_buf_size
Definition: sources/gst-plugins/gst-nvdsucx/gstucx.h:358
_GstUcxSrc::prep_am_meta
NvDsUcxSrcPrepAmMetaFunc prep_am_meta
Definition: sources/gst-plugins/gst-nvdsucx/gstucx.h:347
__GstUcxThreadDataSource::status
ucs_status_t status
Definition: sources/gst-plugins/gst-nvdsucx/gstucx.h:302
_NvDsBatchMeta
Holds information about a formed batch containing frames from different sources.
Definition: includes/nvdsmeta.h:264
copy_nvbufsurf_params
static void copy_nvbufsurf_params(NvBufSurfaceParams *in, NvBufSurfaceParams *out)
_GstUcxClientPriv::conn_lock
GMutex conn_lock
Definition: sources/gst-plugins/gst-nvdsucx/gstucx.h:186
_NvDsUcxAmDesc::complete
volatile int complete
Definition: sources/gst-plugins/gst-nvdsucx/gstucx.h:245
NVDSUCX_BUF_TYPE_AUDIO_NV
@ NVDSUCX_BUF_TYPE_AUDIO_NV
Definition: sources/gst-plugins/gst-nvdsucx/gstucx.h:129
GstUcxThreadDataSource
struct __GstUcxThreadDataSource GstUcxThreadDataSource
gst_ucx_init
void gst_ucx_init()
_GstUcxClient::priv
GstUcxClientPriv * priv
Definition: sources/gst-plugins/gst-nvdsucx/gstucx.h:315
gst_ucx_set_nvevent_data
void gst_ucx_set_nvevent_data(GstEvent *event, NvDsUcxAmEventDesc *event_data, gboolean *send_event)
gst_ucx_src_buffer_pool_new
gboolean gst_ucx_src_buffer_pool_new(GstUcxSrc *ucxsrc, GstCaps *caps)
_NvDsCustomMetaUcx::batchId
uint32_t batchId
Definition: sources/gst-plugins/gst-nvdsucx/gstucx.h:237
NvBufSurfaceMemType
NvBufSurfaceMemType
Specifies memory types for NvBufSurface.
Definition: includes/nvbufsurface.h:355
_NvDsUcxAmDesc::desc
void * desc
Definition: sources/gst-plugins/gst-nvdsucx/gstucx.h:246
gst_ucp_conn_ctx_t
struct gst_ucp_conn_ctx gst_ucp_conn_ctx_t
_NvDsUcxAmDesc
Definition: sources/gst-plugins/gst-nvdsucx/gstucx.h:243
gst_ucx_conn_req_ctx
Definition: sources/gst-plugins/gst-nvdsucx/gstucx.h:149
gst_ucx_conn_req_ctx::listen_worker
ucp_worker_h listen_worker
Definition: sources/gst-plugins/gst-nvdsucx/gstucx.h:154
_GstUcxSrc::thread_pool
GstTaskPool * thread_pool
Definition: sources/gst-plugins/gst-nvdsucx/gstucx.h:351
GstUcxServer
struct _GstUcxServer GstUcxServer
_GstUcxClient::port
gint port
Definition: sources/gst-plugins/gst-nvdsucx/gstucx.h:313
GValue
struct _GValue GValue
Definition: service-maker/includes/object.hpp:38
free_gst_ucp_conn_ctx
void free_gst_ucp_conn_ctx(gpointer data)
PROP_NUM_NVBUF
@ PROP_NUM_NVBUF
Definition: sources/gst-plugins/gst-nvdsucx/gstucx.h:118
_GstUcxSinkAmHdrParams::am_hdr_meta_buf_size
size_t am_hdr_meta_buf_size
Definition: sources/gst-plugins/gst-nvdsucx/gstucx.h:360
NvBufSurfaceDsUcx
struct _NvBufSurfaceDsUcx NvBufSurfaceDsUcx
PROP_RAW_BUF_SIZE
@ PROP_RAW_BUF_SIZE
Definition: sources/gst-plugins/gst-nvdsucx/gstucx.h:120
_GstUcxSrc::num_surfaces_per_frame
guint num_surfaces_per_frame
Definition: sources/gst-plugins/gst-nvdsucx/gstucx.h:345
_GstUcxSrc::am_desc
NvDsUcxAmDesc * am_desc
Definition: sources/gst-plugins/gst-nvdsucx/gstucx.h:343
gst_ucp_send_event
ucs_status_t gst_ucp_send_event(ucp_worker_h ucp_worker, ucp_ep_h ep, void *msg, size_t msg_len)
gst_ucx_src_init
void gst_ucx_src_init(GstUcxSrc *ucxsrc)
EVENT_AM_BATCH_END
@ EVENT_AM_BATCH_END
Definition: sources/gst-plugins/gst-nvdsucx/gstucx.h:146
gst_ucp_conn_ctx
Definition: sources/gst-plugins/gst-nvdsucx/gstucx.h:157
_GstUcxSink::prep_am
int(* prep_am)(GstBuffer *gst_buffer, GstMapInfo *map_info, void **am_hdr_buf, void **rdma_buffer, size_t *rdma_buffer_size, NvDsBatchMeta *batch_meta, int batch_id, guint num_surfaces_per_frame, size_t rdma_meta_buffer_size)
Definition: sources/gst-plugins/gst-nvdsucx/gstucx.h:377
_NvGstBufferParams::dts
GstClockTime dts
Definition: sources/gst-plugins/gst-nvdsucx/gstucx.h:193
_NvDsUcxAmEventDesc::data
gchar data[EVENT_DATA_MAX_LEN]
Definition: sources/gst-plugins/gst-nvdsucx/gstucx.h:261
_NvBufAudioDsUcx::numFilled
uint32_t numFilled
Definition: sources/gst-plugins/gst-nvdsucx/gstucx.h:220
stop_client
void stop_client(GstUcxClient *ucxclient)
_NvBufAudioDsUcx::num_surfaces_per_frame
uint32_t num_surfaces_per_frame
Definition: sources/gst-plugins/gst-nvdsucx/gstucx.h:223
_GstUcxServer::listener_thread
GThread * listener_thread
Definition: sources/gst-plugins/gst-nvdsucx/gstucx.h:325
_GstUcxServer::num_conns
guint num_conns
Definition: sources/gst-plugins/gst-nvdsucx/gstucx.h:328
_NvDsUcxBuf::nvbuf_surf
NvBufSurfaceDsUcx nvbuf_surf
Definition: sources/gst-plugins/gst-nvdsucx/gstucx.h:230
gst_nvdsucx_buf_type_get_type
GType gst_nvdsucx_buf_type_get_type(void)
_GstUcxSrc::mem_type
NvBufSurfaceMemType mem_type
Definition: sources/gst-plugins/gst-nvdsucx/gstucx.h:339
gst_ucx_sink_get_property
bool gst_ucx_sink_get_property(GstUcxSink *ucxsink, guint property_id, GValue *value, GParamSpec *pspec)
gst_ucx_conn_req_ctx::req_lock
GMutex req_lock
Definition: sources/gst-plugins/gst-nvdsucx/gstucx.h:152
_GstUcxSink::buf_type
GstNvDsUcxBufType buf_type
Definition: sources/gst-plugins/gst-nvdsucx/gstucx.h:374
__GstUcxThreadDataSource
Definition: sources/gst-plugins/gst-nvdsucx/gstucx.h:299
gst_ucx_client_init
void gst_ucx_client_init(GstUcxClient *ucxclient)
gst_ucx_sink_cap_event_handling
gboolean gst_ucx_sink_cap_event_handling(GstUcxSink *ucxsink, GstBaseSink *basesink, GstEvent *event, NvDsUcxAmEventDesc *event_data, gboolean *send_event)
_NvGstBufferParams::duration
GstClockTime duration
Definition: sources/gst-plugins/gst-nvdsucx/gstucx.h:194
GstNvDsUcxBufType
GstNvDsUcxBufType
Definition: sources/gst-plugins/gst-nvdsucx/gstucx.h:126
copy_gstbuf_info
static G_END_DECLS void copy_gstbuf_info(NvGstBufferParams *inNvGst, GstBuffer *inGstBuf, NvGstBufferParams *outNvGst, GstBuffer *outGstBuf)
_NvBufAudioDsUcx::batchSize
uint32_t batchSize
Definition: sources/gst-plugins/gst-nvdsucx/gstucx.h:221
_NvBufSurfaceDsUcx::has_user_meta
uint32_t has_user_meta
Definition: sources/gst-plugins/gst-nvdsucx/gstucx.h:207
gst_ucp_init_context
ucs_status_t gst_ucp_init_context(ucp_context_h *ucp_context, gboolean high_perf)
gst_ucp_conn_ctx::client_id
uint32_t client_id
Definition: sources/gst-plugins/gst-nvdsucx/gstucx.h:165
_GstUcxSinkRdmaParams::rdma_meta_buffer
void * rdma_meta_buffer
Definition: sources/gst-plugins/gst-nvdsucx/gstucx.h:367
_GstUcxSinkRdmaParams::rdma_frame_buffer_size
size_t rdma_frame_buffer_size
Definition: sources/gst-plugins/gst-nvdsucx/gstucx.h:366
gst_ucp_conn_ctx::err
ucs_status_t err
Definition: sources/gst-plugins/gst-nvdsucx/gstucx.h:162
_NvBufAudioDsUcx::has_user_meta
uint32_t has_user_meta
Definition: sources/gst-plugins/gst-nvdsucx/gstucx.h:224
_NvGstBufferParams::pts
GstClockTime pts
Definition: sources/gst-plugins/gst-nvdsucx/gstucx.h:192
gst_ucx_client_set_property
bool gst_ucx_client_set_property(GstUcxClient *ucxclient, guint property_id, const GValue *value, GParamSpec *pspec)
gst_ucp_conn_ctx::conn_lock
GMutex conn_lock
Definition: sources/gst-plugins/gst-nvdsucx/gstucx.h:166
_NvDsCustomMetaUcx::payloadSize
uint32_t payloadSize
Definition: sources/gst-plugins/gst-nvdsucx/gstucx.h:239
_NvBufAudioDsUcx
Definition: sources/gst-plugins/gst-nvdsucx/gstucx.h:216
_GstUcxClientPriv::conn_cond
GCond conn_cond
Definition: sources/gst-plugins/gst-nvdsucx/gstucx.h:187
NvBufAudioDsUcx
struct _NvBufAudioDsUcx NvBufAudioDsUcx
_NvDsUcxAmDesc::length
size_t length
Definition: sources/gst-plugins/gst-nvdsucx/gstucx.h:247
GstUcxSrc
struct _GstUcxSrc GstUcxSrc
GstUcxRdmaParams
struct _GstUcxSinkRdmaParams GstUcxRdmaParams
_NvBufRawDsUcx
Definition: sources/gst-plugins/gst-nvdsucx/gstucx.h:210
NvDsUcxAmEventDesc
struct _NvDsUcxAmEventDesc NvDsUcxAmEventDesc
gst_ucp_send
ucs_status_t gst_ucp_send(ucp_worker_h ucp_worker, ucp_ep_h ep, GstNvDsUcxAmId am_id, void *am_hdr_buf, size_t am_hdr_buf_size, void *rdma_buffer, size_t rdma_buffer_size)
_GstUcxSink::threads_data
GstUcxThreadDataSink * threads_data
Definition: sources/gst-plugins/gst-nvdsucx/gstucx.h:388
PROP_ADDR
@ PROP_ADDR
Definition: sources/gst-plugins/gst-nvdsucx/gstucx.h:113
gst_ucx_conn_req_ctx::listener
ucp_listener_h listener
Definition: sources/gst-plugins/gst-nvdsucx/gstucx.h:153
data
JSAMPIMAGE data
Definition: sources/libs/nvll_batch_jpeg_encode/oss/jpeglib.h:967
get_thread_num
int get_thread_num(gpointer ucxdata, bool is_src, bool is_server)
copy_nvbufaudio_params
static void copy_nvbufaudio_params(NvBufAudioParams *in, NvBufAudioParams *out)
_GstUcxSink::gpu_id
guint gpu_id
Definition: sources/gst-plugins/gst-nvdsucx/gstucx.h:385
ucx_src_init_buffer_type_attr
int ucx_src_init_buffer_type_attr(GstUcxSrc *ucxsrc)
start_server
int start_server(gpointer data, bool is_src)
_GstUcxServerPriv::gst_ucx_server_queued_conn_list
GList * gst_ucx_server_queued_conn_list
Definition: sources/gst-plugins/gst-nvdsucx/gstucx.h:175
gst_ucx_sink_set_property
bool gst_ucx_sink_set_property(GstUcxSink *ucxsink, guint property_id, const GValue *value, GParamSpec *pspec)
gst_ucx_client_get_property
bool gst_ucx_client_get_property(GstUcxClient *ucxclient, guint property_id, GValue *value, GParamSpec *pspec)
__GstUcxThreadDataSource::UCX_THREAD_DATA_COMMON_FIELDS
UCX_THREAD_DATA_COMMON_FIELDS
Definition: sources/gst-plugins/gst-nvdsucx/gstucx.h:301
PROP_MAX_EP_NUM
@ PROP_MAX_EP_NUM
Definition: sources/gst-plugins/gst-nvdsucx/gstucx.h:122
_NvBufSurfaceDsUcx::numFilled
uint32_t numFilled
Definition: sources/gst-plugins/gst-nvdsucx/gstucx.h:203
_NvDsUcxAmEventDesc::sourceId
guint sourceId
Definition: sources/gst-plugins/gst-nvdsucx/gstucx.h:258
_GstUcxSrc::nvbuf_batch_size
gint nvbuf_batch_size
Definition: sources/gst-plugins/gst-nvdsucx/gstucx.h:341
_GstUcxSrc::push_ucxsrc
GstPushSrc push_ucxsrc
Definition: sources/gst-plugins/gst-nvdsucx/gstucx.h:336
GstNvDsUcxAmId
GstNvDsUcxAmId
Definition: sources/gst-plugins/gst-nvdsucx/gstucx.h:141
PROP_NVBUF_BATCH_SIZE
@ PROP_NVBUF_BATCH_SIZE
Definition: sources/gst-plugins/gst-nvdsucx/gstucx.h:119
_GstUcxServer::port
gint port
Definition: sources/gst-plugins/gst-nvdsucx/gstucx.h:322
GstUcxThreadDataSink
struct _GstUcxThreadDataSink GstUcxThreadDataSink
stop_server
void stop_server(GstUcxServer *ucxserver)
_GstUcxSinkRdmaParams::rdma_frame_buffer
void * rdma_frame_buffer
Definition: sources/gst-plugins/gst-nvdsucx/gstucx.h:365