Commit graph

203 commits

Author SHA1 Message Date
Wim Taymans
a521252845 Add new GstMapInfo
Use a structure to hold info about the mapping. The application then keeps track
of this state and we can use it to unmap the memory again later.
2012-01-25 11:54:23 +01:00
Wim Taymans
f9e7dad47a buffer: only reserve 6 extra flags
Only reserve 6 extra flags instead of 10 so that more media specific flags
are available.
2012-01-04 10:04:11 +01:00
Matej Knopp
efdd0a2a82 win32: fix exported variables for VS 2010
https://bugzilla.gnome.org/show_bug.cgi?id=666219
2011-12-27 23:26:07 +00:00
Wim Taymans
87ada5664a buffer: add foreach function for the metadata 2011-12-22 16:02:05 +01:00
Wim Taymans
dc23684b12 buffer: add copy flag for meta
Add a flag to control if the meta should be copied or not instead of always
copying.
2011-12-01 15:34:06 +01:00
Tim-Philipp Müller
2d7f9cfe92 Merge remote-tracking branch 'origin/master' into 0.11
Conflicts:
	gst/gstbuffer.h
	gst/gstbufferlist.h
	gst/gstcaps.h
	gst/gstdatetime.h
	gst/gstelementfactory.h
	gst/gstevent.h
	gst/gstghostpad.h
	gst/gstindexfactory.h
	gst/gstiterator.h
	gst/gstmessage.h
	gst/gstminiobject.h
	gst/gstpipeline.h
	gst/gstquery.h
	gst/gstsegment.h
	gst/gststructure.h
	gst/gsttaglist.h
	gst/gsturi.h
	gst/gstvalue.h
	libs/gst/base/gstbitreader.h
	libs/gst/base/gstbytereader.h
	libs/gst/base/gstbytewriter.h

Note: can't use G_GNUC_MALLOC with GstCaps return
values in 0.11 because of the EMPTY+ANY singletons.
2011-11-26 19:44:23 +00:00
Tim-Philipp Müller
c8380cb0d2 gst: sprinkle some G_GNUC_MALLOC
Maybe gcc can do something clever with that, or at least
warn us if we don't save the return value somewhere.
2011-11-26 18:57:44 +00:00
Tim-Philipp Müller
33078aaeb7 buffer: add gst_buffer_{set,get}_qdata()
Allows people/us to attach arbitrary metadata to buffers.

https://bugzilla.gnome.org/show_bug.cgi?id=664720

API: gst_buffer_set_qdata()
API: get_buffer_get_qdata()
2011-11-25 17:42:07 +00:00
Wim Taymans
9c8d323d07 padd return value from _mini_object_replace() 2011-11-22 12:45:41 +01:00
Tim-Philipp Müller
ae5e44bfb3 docs: fix typo in buffer docs 2011-11-12 14:04:10 +00:00
Tim-Philipp Müller
541d79d886 buffer, memory: make size arguments where -1 is allowed signed 2011-11-11 01:47:30 +00:00
Wim Taymans
289d2d62ba buffer: improve docs 2011-11-02 08:59:44 +01:00
Wim Taymans
66e4966aee buffer: fix docs some more 2011-10-28 16:45:23 +02:00
Wim Taymans
8b6431a4de buffer: improve docs 2011-10-28 16:23:49 +02:00
Wim Taymans
80fc568747 buffer: add pts/dts to buffers 2011-10-28 12:15:44 +02:00
Wim Taymans
40bb69827c Merge branch 'master' into 0.11
Conflicts:
	gst/gstevent.h
2011-10-16 14:20:33 +02:00
Sebastian Dröge
e8d3870214 buffer: Use an inline function instead of a macro for gst_buffer_replace()
This gives us type checks by the compiler and more useful compiler errors.
2011-10-13 10:19:34 +02:00
Wim Taymans
8a1f401dfd docs: fix docs 2011-09-26 20:47:35 +02:00
Wim Taymans
f3b0d3cdbe init: add _get_type() functions
Remove gst_mini_object_register() and add a GST_DEFINE_MINI_OBJECT macro to
define a _get_type() function for the boxed miniobject.
Remove a bunch of custom _get_type() functions and replace them with the
miniobject macro.
Rename some _init method to _priv_*_initialize() like the rest of them.

Inspired by patch from Johan Dahlin and see bug #657603
2011-08-29 15:34:30 +02:00
Wim Taymans
cc1686352d buffer: improve flags
Rename DROP to DECODE_ONLY.
Add DROPPABLE flag to mark buffers that can be dropped to save bandwidth without
destroying the stream.
2011-08-26 14:17:23 +02:00
Wim Taymans
4b3ffbc14d buffer: rename _CLIP to _DROP flag
We can also use a flag to indicate that a frame should be decoded but not
displayed regardless of the the segment boundaries so we use the more generic
_DROP.
2011-08-26 13:40:44 +02:00
Wim Taymans
0a3aede5a8 buffer: add clip flag 2011-08-25 18:04:28 +02:00
Wim Taymans
fa8f9b50ea buffer: rework flags a little
Reorder buffer flags and add some new ones.
Remove the media specific flags, we can now easily do this with the FLAG_LAST
flag because we don't extend from GstBuffer anymore.
2011-08-25 16:21:18 +02:00
Wim Taymans
7ee57702a8 buffer: pluralize the buffer flags 2011-08-25 14:09:37 +02:00
Wim Taymans
8170c34c94 Merge branch 'master' into 0.11
Conflicts:
	gst/gstbuffer.h
	gst/gstcaps.c
	gst/gstcaps.h
	gst/gstevent.c
2011-08-22 12:33:35 +02:00
Wim Taymans
aefa1c67f8 buffer: return processed number of bytes
Make _fill, _extract and _memset return the actual number of bytes that were
handled in case the buffer size is less than the specified size.
2011-08-16 18:29:29 +02:00
Wim Taymans
8698a8c94e buffer: rename PREROLL -> LIVE flag
Rename the GST_BUFFER_FLAG_PREROLL to GST_BUFFER_FLAG_LIVE and give the new flag
a meaning. The old PREROLL flag never had a clear meaning.
2011-08-16 17:32:20 +02:00
Josep Torra
c56881a026 buffer: explicitly cast to the enum type
Fixes warning #188: enumerated type mixed with another type reported by ICC.

https://bugzilla.gnome.org/show_bug.cgi?id=656265
2011-08-15 21:15:22 +01:00
Wim Taymans
abf6293639 buffer: add api to get the current memory offset
Also return the offset in a GstMemory block with the get_sizes() method. This
allows us to figure out how much prefix there is unused.
Change the resize function so that a negative offset can be given. This would
make it possible to resize the buffer so that the prefix becomes available.
Add gst_buffer_get_sizes() to return the offset and maxsize as well as the size.
Also change the buffer resize method so that we can specify a negative offset
to remove prefix bytes.
2011-07-11 16:24:16 +02:00
Mark Nauwelaerts
21e0d113cf buffer: add some memory wrapped buffer allocation helpers 2011-07-11 14:43:19 +02:00
Tim-Philipp Müller
75c81c2120 buffer: make idx argument to gst_buffer_take_memory() signed
Since -1 is acceptable, it should be signed.
2011-07-08 13:53:35 +01:00
Wim Taymans
806cf03fbc buffer: add memset function 2011-07-07 11:02:09 +02:00
Wim Taymans
3884badea6 memory: rename GstMemoryAllocator -> GstAllocator
simplify the name of the allocator object.
2011-06-22 11:42:46 +02:00
Wim Taymans
54fd50bfe1 buffer: add index to _take_memory()
Add an index to gst_buffer_take_memory() so that we can also insert memory at a
certain offset. This is mostly interesting to prepend a header memory block to
the buffer.
2011-06-13 16:31:53 +02:00
Wim Taymans
468dbbbaaf buffer: pass the allocator as const 2011-06-13 11:50:42 +02:00
Wim Taymans
b27ee30a35 buffer: make new _buffer_allocate method
Make a new method to allocate a buffer + memory that takes the allocator and the
alignment as parameters. Provide a macro for the old method but prefer to use
the new method to encourage plugins to negotiate the allocator properly.
2011-06-10 13:49:23 +02:00
Edward Hervey
d0b30f01b0 gstbuffer: Remove deprecated GST_BUFFER_* macros
data, size, mallocdata and free_func no longer exist.
2011-06-08 13:30:49 +02:00
Tim-Philipp Müller
4b920eb5d2 docs: update for API changes
Also remove GST_PAD_CHECKGETRANGEFUNC macro
2011-06-05 18:57:56 +01:00
Wim Taymans
b5456cc6f4 caps: remove caps from buffers and pads
Remove the GstCaps from buffers and pads. We now use CAPS events to negotiate
formats between element.
2011-05-09 16:21:28 +02:00
Wim Taymans
c4751ec8c1 Revert "context: use context on buffers instead of caps"
This reverts commit 9ef1346b1f.

Way to much for one commit and I'm not sure we want to get rid of the pad caps
just like that. It's nice to have the buffer and its type in onw nice bundle
without having to drag the complete context with it.
2011-05-05 13:17:08 +02:00
Wim Taymans
9ef1346b1f context: use context on buffers instead of caps
Put the srcpad context on buffers instead of caps. This allows us to associate
all the relevant info contained in events with a buffer.
2011-05-04 18:59:47 +02:00
Wim Taymans
b8c1e81328 buffer: add method to compare buffer data
Add method to compare the data in a buffer.
2011-04-19 18:57:43 +02:00
Wim Taymans
7cae289036 docs: update docs 2011-03-30 19:01:13 +02:00
Wim Taymans
ebb14d95b2 buffer: more API tweaks
_trim -> _resize
_create_sub -> copy_region
2011-03-30 16:47:55 +02:00
Wim Taymans
030fcde837 memory: further memory tweaking
Allow for automatic merging of memory block in the _map function and automatic
freeing of the temporary memory.
Remove some unneeded functions.
Add possibility to force writable spanned memory.
2011-03-29 19:17:55 +02:00
Wim Taymans
d9becdcd27 buffer: optimize memory handling 2011-03-29 13:51:25 +02:00
Wim Taymans
a6d2490b10 buffer: move implementation details in private struct 2011-03-29 11:31:30 +02:00
Wim Taymans
6da19ffeb2 buffer: more buffer updates 2011-03-29 11:07:36 +02:00
Wim Taymans
826a7d83d4 buffer: more fixes 2011-03-28 20:08:47 +02:00
Wim Taymans
a12373b2ee buffer: add more methods 2011-03-28 20:08:47 +02:00