20 #include <QtCore/QDebug>
26 BufferPtr Buffer::create(uint size)
28 return BufferPtr::wrap(gst_buffer_new_allocate(NULL, size, NULL),
false);
31 quint32 Buffer::size()
const
33 return gst_buffer_get_size(object<GstBuffer>());
36 ClockTime Buffer::decodingTimeStamp()
const
38 return GST_BUFFER_DTS(object<GstBuffer>());
41 ClockTime Buffer::presentationTimeStamp()
const
43 return GST_BUFFER_PTS(object<GstBuffer>());
46 ClockTime Buffer::duration()
const
48 return GST_BUFFER_DURATION(object<GstBuffer>());
51 quint64 Buffer::offset()
const
53 return GST_BUFFER_OFFSET(object<GstBuffer>());
56 quint64 Buffer::offsetEnd()
const
58 return GST_BUFFER_OFFSET_END(object<GstBuffer>());
61 BufferFlags Buffer::flags()
const
63 return BufferFlags(GST_BUFFER_FLAGS(object<GstBuffer>()));
66 void Buffer::setFlags(
const BufferFlags flags)
68 GST_BUFFER_FLAGS(object<GstBuffer>()) = flags;
71 BufferPtr Buffer::copy()
const
76 void Buffer::setSize(uint size)
78 gst_buffer_set_size(object<GstBuffer>(), size);
81 uint Buffer::extract(uint offset,
void *dest, uint size)
83 return gst_buffer_extract(object<GstBuffer>(), offset, dest, size);
86 uint Buffer::memoryCount()
const
88 return gst_buffer_n_memory (object<GstBuffer>());
91 MemoryPtr Buffer::getMemory(uint index)
const
93 return MemoryPtr::wrap(gst_buffer_get_memory(object<GstBuffer>(), index),
false);
96 bool Buffer::map(MapInfo &info, MapFlags flags)
98 if (!gst_buffer_map(object<GstBuffer>(),
static_cast<GstMapInfo *
>(info.m_object),
99 static_cast<GstMapFlags
>(
static_cast<int>(flags)))) {
105 void Buffer::unmap(MapInfo &info)
107 gst_buffer_unmap(object<GstBuffer>(),
static_cast<GstMapInfo *
>(info.m_object));
static RefPointer< T > wrap(typename T::CType *nativePtr, bool increaseRef=true)
Wrappers for GStreamer classes.