NVIDIA DeepStream SDK API Reference

6.4 Release
GstBatchBufferWrapper Class Reference

Detailed Description

TODO re-design GstBatchBufferWrapper to be video specific and NvDsBatchBufferWrapper generic ; Also rename the new data-structures according to the media they contain.

The GStreamer wrapper code for NvDsBatchBufferWrapper which represent one batched buffer. NOTE: None of the APIs in this class are thread-safe

Definition at line 138 of file gstnvstreammux_impl.h.

Inheritance diagram for GstBatchBufferWrapper:
Collaboration diagram for GstBatchBufferWrapper:

Public Member Functions

 GstBatchBufferWrapper (GstNvStreamMux *mux, unsigned int size, bool is_raw)
 
void unref () override
 
void reset_batch ()
 
void copy_meta (unsigned int id, std::shared_ptr< BufferWrapper > src_buffer, unsigned int batch_id, unsigned int frame_number, unsigned int num_surfaces_per_frame, NvDsBatchMeta *dest_batch_meta, unsigned int source_id) override
 
unsigned int copy_buf (std::shared_ptr< BufferWrapper > src, unsigned int pos) override
 
bool push (SourcePad *src_pad, TimePoint current_play_start, NanoSecondsType accum_dur) override
 
bool push (SourcePad *src_pad, unsigned long pts) override
 
void unref_gst_bufs ()
 
virtual unsigned int copy (void *buf, unsigned int pos, unsigned int num_surfaces)
 

Data Fields

GstBufferList * raw_batch
 
GstBuffergst_buffer
 
bool is_raw
 
GstNvStreamMuxmux
 
std::vector< std::shared_ptr< GstBufferWrapper > > gst_in_bufs
 
unsigned int batch_size
 
void * batch
 

Constructor & Destructor Documentation

◆ GstBatchBufferWrapper()

GstBatchBufferWrapper::GstBatchBufferWrapper ( GstNvStreamMux mux,
unsigned int  size,
bool  is_raw 
)
inline

Member Function Documentation

◆ copy()

virtual unsigned int BatchBufferWrapper::copy ( void *  buf,
unsigned int  pos,
unsigned int  num_surfaces 
)
inlinevirtualinherited

Definition at line 107 of file nvstreammux_batch.h.

◆ copy_buf()

unsigned int GstBatchBufferWrapper::copy_buf ( std::shared_ptr< BufferWrapper src,
unsigned int  pos 
)
overridevirtual

◆ copy_meta()

void GstBatchBufferWrapper::copy_meta ( unsigned int  id,
std::shared_ptr< BufferWrapper src_buffer,
unsigned int  batch_id,
unsigned int  frame_number,
unsigned int  num_surfaces_per_frame,
NvDsBatchMeta dest_batch_meta,
unsigned int  source_id 
)
overridevirtual

Reimplemented from NvDsBatchBufferWrapper.

◆ push() [1/2]

bool GstBatchBufferWrapper::push ( SourcePad src_pad,
TimePoint  current_play_start,
NanoSecondsType  accum_dur 
)
overridevirtual

Reimplemented from BatchBufferWrapper.

◆ push() [2/2]

bool GstBatchBufferWrapper::push ( SourcePad src_pad,
unsigned long  pts 
)
overridevirtual

Reimplemented from BatchBufferWrapper.

◆ reset_batch()

void GstBatchBufferWrapper::reset_batch ( )

◆ unref()

void GstBatchBufferWrapper::unref ( )
overridevirtual

Reimplemented from NvDsBatchBufferWrapper.

◆ unref_gst_bufs()

void GstBatchBufferWrapper::unref_gst_bufs ( )

Referenced by mem_buf_unref_callback().

Field Documentation

◆ batch

void* BatchBufferWrapper::batch
inherited

◆ batch_size

unsigned int NvDsBatchBufferWrapper::batch_size
inherited

Definition at line 134 of file nvstreammux_batch.h.

◆ gst_buffer

GstBuffer* GstBatchBufferWrapper::gst_buffer

Definition at line 173 of file gstnvstreammux_impl.h.

Referenced by GstBatchBufferWrapper().

◆ gst_in_bufs

std::vector<std::shared_ptr<GstBufferWrapper> > GstBatchBufferWrapper::gst_in_bufs

Definition at line 176 of file gstnvstreammux_impl.h.

◆ is_raw

bool GstBatchBufferWrapper::is_raw

Definition at line 174 of file gstnvstreammux_impl.h.

Referenced by GstBatchBufferWrapper().

◆ mux

GstNvStreamMux* GstBatchBufferWrapper::mux

Definition at line 175 of file gstnvstreammux_impl.h.

◆ raw_batch

GstBufferList* GstBatchBufferWrapper::raw_batch

Definition at line 172 of file gstnvstreammux_impl.h.

Referenced by GstBatchBufferWrapper().


The documentation for this class was generated from the following file: