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.
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 142 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 107 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 113 of file nvstreammux_batch.h.
Referenced by GstAudioBatchBufferWrapper::GstAudioBatchBufferWrapper(), and GstBatchBufferWrapper().
|
inherited |
Definition at line 134 of file nvstreammux_batch.h.
GstBuffer* GstBatchBufferWrapper::gst_buffer |
Definition at line 173 of file gstnvstreammux_impl.h.
Referenced by GstBatchBufferWrapper().
std::vector<std::shared_ptr<GstBufferWrapper> > GstBatchBufferWrapper::gst_in_bufs |
Definition at line 176 of file gstnvstreammux_impl.h.
bool GstBatchBufferWrapper::is_raw |
Definition at line 174 of file gstnvstreammux_impl.h.
Referenced by GstBatchBufferWrapper().
GstNvStreamMux* GstBatchBufferWrapper::mux |
Definition at line 175 of file gstnvstreammux_impl.h.
GstBufferList* GstBatchBufferWrapper::raw_batch |
Definition at line 172 of file gstnvstreammux_impl.h.
Referenced by GstBatchBufferWrapper().