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 127 of file gstnvstreammux_impl.h.
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 |
GstBuffer * | gst_buffer |
bool | is_raw |
GstNvStreamMux * | mux |
std::vector< std::shared_ptr< GstBufferWrapper > > | gst_in_bufs |
unsigned int | batch_size |
void * | batch |
|
inline |
Definition at line 131 of file gstnvstreammux_impl.h.
References BatchBufferWrapper::batch, gst_buffer, is_raw, mem_buf_unref_callback(), NVBUF_MEM_DEFAULT, and raw_batch.
|
inlinevirtualinherited |
Definition at line 96 of file nvstreammux_batch.h.
|
overridevirtual |
Implements NvDsBatchBufferWrapper.
|
overridevirtual |
Reimplemented from NvDsBatchBufferWrapper.
|
overridevirtual |
Reimplemented from BatchBufferWrapper.
|
overridevirtual |
Reimplemented from BatchBufferWrapper.
void GstBatchBufferWrapper::reset_batch | ( | ) |
|
overridevirtual |
Reimplemented from NvDsBatchBufferWrapper.
void GstBatchBufferWrapper::unref_gst_bufs | ( | ) |
Referenced by mem_buf_unref_callback().
|
inherited |
Definition at line 102 of file nvstreammux_batch.h.
Referenced by GstAudioBatchBufferWrapper::GstAudioBatchBufferWrapper(), and GstBatchBufferWrapper().
|
inherited |
Definition at line 123 of file nvstreammux_batch.h.
GstBuffer* GstBatchBufferWrapper::gst_buffer |
Definition at line 162 of file gstnvstreammux_impl.h.
Referenced by GstBatchBufferWrapper().
std::vector<std::shared_ptr<GstBufferWrapper> > GstBatchBufferWrapper::gst_in_bufs |
Definition at line 165 of file gstnvstreammux_impl.h.
bool GstBatchBufferWrapper::is_raw |
Definition at line 163 of file gstnvstreammux_impl.h.
Referenced by GstBatchBufferWrapper().
GstNvStreamMux* GstBatchBufferWrapper::mux |
Definition at line 164 of file gstnvstreammux_impl.h.
GstBufferList* GstBatchBufferWrapper::raw_batch |
Definition at line 161 of file gstnvstreammux_impl.h.
Referenced by GstBatchBufferWrapper().