Commit graph

6184 commits

Author SHA1 Message Date
Josep Torra
306e317ae9 typefind: add GST_TYPE_FIND_NONE and use it
Fixes warning #188: enumerated type mixed with another type reported by ICC.
2011-08-26 14:11:15 +02:00
Josep Torra
1db007e5bb parse: use GST_PARSE_FLAG_NONE instead of 0
Fixes warning #188: enumerated type mixed with another type reported by ICC.
2011-08-26 14:11:14 +02:00
Josep Torra
b26c5b99f2 value: explicitly cast to the enum type
Fixes warning #188: enumerated type mixed with another type reported by ICC.
2011-08-26 14:11:14 +02:00
Josep Torra
b57683d258 utils: minor changes related to enum types
Fixes warning #188: enumerated type mixed with another type reported by ICC.
2011-08-26 14:11:14 +02:00
Josep Torra
c0749e7762 trace: add GST_ALLOC_TRACE_NONE for consistency and use it
Fixes warning #188: enumerated type mixed with another type reported by ICC.
2011-08-26 14:11:14 +02:00
Josep Torra
97442ad1a3 task: explicitly cast to the enum type
Fixes warning #188: enumerated type mixed with another type reported by ICC.
2011-08-26 14:11:14 +02:00
Josep Torra
95b96b57a2 tagsetter: use GST_TAG_MERGE_UNDEFINED instead of FALSE
Fixes warning #188: enumerated type mixed with another type reported by ICC.
2011-08-26 14:11:14 +02:00
Josep Torra
c0b0b977d7 segment: use GST_SEEK_FLAG_NONE instead of 0
Fixes warning #188: enumerated type mixed with another type reported by ICC.
2011-08-26 14:11:14 +02:00
Josep Torra
9f8fe424c7 registrychunks: explicitly cast to the enum types
Fixes warning #188: enumerated type mixed with another type reported by ICC.
2011-08-26 14:11:14 +02:00
Josep Torra
ec157ebed9 query: minor changes related to enum types
Fixes warning #188: enumerated type mixed with another type reported by ICC.
2011-08-26 14:11:13 +02:00
Josep Torra
480d415419 padtemplate: explicitly cast to the enum types
Fixes warning #188: enumerated type mixed with another type reported by ICC.
2011-08-26 14:11:13 +02:00
Josep Torra
746813344d pad: explicitly cast to the enum type
Fixes warning #188: enumerated type mixed with another type reported by ICC.
2011-08-26 14:11:13 +02:00
Josep Torra
c27ce79ba1 message: explicitly cast to the right enum types
Fixes warning #188: enumerated type mixed with another type reported by ICC.
2011-08-26 14:11:13 +02:00
Josep Torra
2a6ba0b29d info: explicitly cast to the enum type
Fixes warning #188: enumerated type mixed with another type reported by ICC.
2011-08-26 14:11:13 +02:00
Josep Torra
e5d00246cf index: explicitly cast to the enum type
Fixes warning #188: enumerated type mixed with another type reported by ICC.
2011-08-26 14:11:13 +02:00
Josep Torra
11e287529d format: use GST_FORMAT_UNDEFINED and few casts to GstFormat
Fixes warning #188: enumerated type mixed with another type reported by ICC.
2011-08-26 14:11:13 +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
3d87984db3 uri: some doc fixes 2011-08-26 10:57:37 +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
b5ef693e88 buffer: always copy all buffer flags when asked
Don't try to be smart and copy only a subset of buffer flag
2011-08-25 16:20:21 +02:00
Wim Taymans
7ee57702a8 buffer: pluralize the buffer flags 2011-08-25 14:09:37 +02:00
Wim Taymans
6f295dc239 Merge branch 'master' into 0.11
Conflicts:
	gst/gstobject.c
2011-08-24 10:43:09 +02:00
Stefan Kost
febde0c19f gstobject: also remove the cast as this is causing the trouble 2011-08-23 11:55:17 +02:00
Stefan Kost
df099959fd gstobject: use the atomic macros to deal with the glib change in the impl. 2011-08-23 11:43:44 +02:00
Wim Taymans
655f1b9c57 object: make _replace like the miniobject version 2011-08-22 12:49:04 +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
405a5d2a92 value: remove our FOURCC GType
Remove our custom fourcc GValue.
2011-08-22 12:19:19 +02:00
David Schleef
ec6e452f63 object: make gst_object_replace() atomic 2011-08-21 14:07:08 -07:00
Stefan Kost
cce32ba0a2 docs: more clarification for element docs
Don't suggest deprecated method in the desction docs and try to be more helpful
in other places by suggesting related functions.
2011-08-20 14:07:55 +02:00
Stefan Kost
a3611c139a docs: small clarification in the gst_element_get_request_pad docs
Make it more obvious that one should pass the template name.
2011-08-20 09:57:14 +02:00
Wim Taymans
b1573e9865 structure: add method to fixate one field 2011-08-17 17:56:40 +02:00
Wim Taymans
e4db8d0f55 docs: improve some docs 2011-08-17 09:25:04 +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
Tim-Philipp Müller
eb08ed6ed0 docs: fix typo in element factory documentation 2011-08-16 17:19:29 +01: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
Tim-Philipp Müller
4985d2a954 caps: fix compiler warning reported by ICC
The MAX macro expands to code that checks if an unsigned integer is < 0.

Fixes warning #186: pointless comparison of unsigned integer reported by ICC.

https://bugzilla.gnome.org/show_bug.cgi?id=656265
2011-08-15 21:15:29 +01: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
Josep Torra
2271b6dc9a gststate: 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:12 +01:00
Josep Torra
89239d85cc event: explicitly cast to the right enum types
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:14:55 +01:00
Josep Torra
7b434c44bf gsterror: explicitly cast to the right GstGError code enum types
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:14:22 +01:00
Josep Torra
b30b78c505 debugutils: use GST_STATE_VOID_PENDING for GstState instead of 0
Fixes a warning reported by ICC.

https://bugzilla.gnome.org/show_bug.cgi?id=656265
2011-08-15 21:13:47 +01:00
Josep Torra
d99d270a69 caps: define GST_CAPS_FLAGS_NONE for consistency with other enumerations
Use them to fix warnings when building with ICC.

API: GST_CAPS_FLAGS_NONE

https://bugzilla.gnome.org/show_bug.cgi?id=656265
2011-08-15 21:13:29 +01:00
Josep Torra
abda75bcf5 gst: use GstDebugLevel enum type to fix a warning building with ICC
https://bugzilla.gnome.org/show_bug.cgi?id=656265
2011-08-15 21:13:03 +01:00
Wim Taymans
d22192474a pad: make fixate caps behave like other functions
Install a default fixate caps function on pads like all the other pad functions.
2011-08-15 16:45:33 +02:00
Wim Taymans
e01b5c0f46 Merge branch 'master' into 0.11 2011-08-15 14:43:14 +02:00
Wim Taymans
49fc4249e5 caps: add fixate function
Add a fixate function and use it in gstpad.c
2011-08-15 14:40:38 +02:00
Wim Taymans
bd20d2d199 structure: add function to fixate
Add a function to fixate a structure and use it for the default fixate function
in gstpad.c.
2011-08-15 14:32:17 +02:00
Wim Taymans
d12738b4fa pad: fix default acceptcaps
Make the acceptcaps function behave like all the other functions with a default
implementation. Don't try to chain up to the default implementation when it was
set to NULL explicitly but return FALSE instead.
Fix some docs
2011-08-15 14:19:09 +02:00
Wim Taymans
cbccf7d5bf pad: fix some macros
Remove a rather usless macro to check if a pad mode is active and
add GST_PAD_IS_ACTIVE().
2011-08-15 13:24:11 +02:00
Wim Taymans
1c16ff94fc pad: remove gst_pad_get_negotiated_caps()
Remove gst_pad_get_negotiated_caps(), it does not realy do what it says,
gst_pad_get_current_caps() returns the currently negotiated caps on the pad
correctly.
2011-08-15 12:16:30 +02:00
Peteris Krisjanis
59bf122584 iterator: Fix gst_iterator_next() element annotation 2011-08-12 11:48:49 +02:00
Stefan Kost
d8c0bd45a7 debugutils: removed non-sense comment 2011-08-11 10:09:41 +02:00
Edward Hervey
bdc1710be5 Merge remote-tracking branch 'origin/master' into 0.11
Conflicts:
	gst/gstdebugutils.c
	gst/gstelementdetails.h
	gst/gstregistrychunks.c
	tools/gst-run.c
2011-08-10 17:07:54 +02:00
Stefan Kost
20618b4c28 registry: move utf-8 validation to registry saving time
Instead of checking for valid utf-8 element-details every time we create
elements (from plugin-init or registry), do it before we save the registry.
Fixes #656193.
2011-08-10 13:45:49 +02:00
Josep Torra
178bdccb76 Fix and clarify debug statements
Fixes build on MacOSX

Signed-off-by: Edward Hervey <edward.hervey@collabora.co.uk>
2011-08-10 11:01:58 +02:00
Edward Hervey
2d4ddc3a08 gstbuffer: Clarify doc 2011-08-08 11:51:26 +02:00
Shaun Hoopes
3029a222e8 debugutils: improve dot file flow layout
Iterate source- and sink-pads separately to ensure that the graph reflects the
upstream/downstream order. Fixes #643269
2011-08-06 18:26:39 +02:00
Wim Taymans
99d4880f31 pad: add method to mark reconfigure 2011-08-04 17:12:21 +02:00
Wim Taymans
aa97daaf0e fix default alignment
A 0 alignment is the default.
2011-08-04 11:00:57 +02:00
Wim Taymans
7c9be852bc bufferpool: add gst_buffer_pool_is_active() 2011-08-04 10:54:29 +02:00
Wim Taymans
9324824853 bufferpool: don't add the same option twice
Make sure that we only add an option to the array once.
2011-08-01 18:12:12 +02:00
Wim Taymans
60cb9cddd4 bufferpool: add method to check for an option
Add a method to check if an option is supported on the bufferpool.
2011-07-30 14:04:43 +02:00
Wim Taymans
733e94ada8 bufferpool: add options API to bufferpool
Make it possible to query the supported options of a bufferpool and enable
options. This is a bit more generic than the API to enable metadata. The purpose
is to make it possible to add new custom config options to the configuration of
the bufferpool when supported.
2011-07-29 17:10:09 +02:00
Tim-Philipp Müller
388548222d element: don't use G_CONST_RETURN
It's been deprecated in newer GLib versions
2011-07-28 12:11:36 +01:00
Tim-Philipp Müller
ef8ca3549e gst: fix awkward dest_format inout parameter in query utility functions
The idea was originally that if one passed &dest_fmt with
dest_fmt=GST_FORMAT_DEFAULT, then the code answering the query
could change dest_fmt to the actual default format used. However,
in more than half a decade of GStreamer 0.10 no piece of code in
GStreamer has ever used that feature, nor are there that many
users of this API that actually check whether the format returned
is the original format passed before using the values returned.
Also, it's just annoying-to-use API in its own right.

For all these reasons, make it so that the destination format is
passed directly and can't be changed by the element queried.
2011-07-28 11:23:15 +01:00
Wim Taymans
cf18fa9ce5 Merge branch 'master' into 0.11 2011-07-27 12:50:39 +02:00
Tim-Philipp Müller
317fba25a6 elementfactory: fix g-i annotation for _create() and _make() to allow NULL object names 2011-07-27 10:09:11 +01:00
Wim Taymans
5e330fa456 pad: improve the getcaps function
Refactor calling the GETCAPS function and checks.
Move the filter code in one place.
When using fixed pad caps, get the currently configured caps and then fallback
to the GETCAPS function. We used to simply ignore the GETCAPS function, which
resulted in transform elements returning the template caps instead of doing the
caps transform.
2011-07-26 18:48:20 +02:00
Wim Taymans
cea4b4c7d5 pad: only update caps when changed
Only call the event function with the caps event when the caps changed.
2011-07-26 16:10:42 +02:00
Wim Taymans
61481ac9e5 pad: add allocation query just because 2011-07-26 12:20:04 +02:00
Wim Taymans
d54f3f1385 poll: improve debugging 2011-07-25 15:21:21 +02:00
Wim Taymans
ee235a6b07 miniobject: avoid race in bufferpool release
Avoid playing with the refcount to decide when a buffer has been recycled by the
dispose function. The problem is that we then temporarily can have a buffer with
a refcount > 1 being acquired from the pool, which is not writable. Instead use
a simple boolean return value from the dispose function to inform the called
that the object was recycled or not.
2011-07-25 12:53:10 +02:00
Wim Taymans
43f61f5c40 bufferpool: start with raised control socket
In the inactive state, the control socket should be in the raised state, we will
release it when we start.
2011-07-25 12:16:13 +01:00
Wim Taymans
dd045fd0ed bufferpool: add reset_buffer vmethod
Add a vmethod to reset a buffer to its original state. Add a default
implementation that resets the flags, timestamps and offsets.
Add some more docs.
2011-07-21 18:50:25 +02:00
Wim Taymans
92aa4fede9 Merge branch 'master' into 0.11
Conflicts:
	libs/gst/base/gstbaseparse.c
	libs/gst/base/gstbasesink.c
2011-07-21 16:49:13 +02:00
Raluca Elena Podiuc
43f5624334 docs: removed double negation in event/message seq num description
https://bugzilla.gnome.org/show_bug.cgi?id=654751
2011-07-16 23:53:03 +01:00
Wim Taymans
1dddb1f704 bufferpool: call release_buffer after alloc
After we allocated a new buffer, call the release_buffer vmethod to put the new
buffer in the pool instead of assuming that the pool uses the default
release_method implementation.
2011-07-15 13:27:13 +02:00
Wim Taymans
2f429009a3 bufferpool: add macro to check for flushing 2011-07-15 11:52:22 +02:00
Wim Taymans
cc16dd8498 buffer: improve debug message 2011-07-15 11:51:54 +02:00
Wim Taymans
1a3f48f427 buffer: fix resize function some more
Don't remove memory blocks from the buffer when we clip and resize, instead set
the memory offset and size to 0. This allows us to make the buffer larger again
later.
2011-07-12 14:07:57 +02:00
Wim Taymans
a19baf77e7 buffer: improve size handling
Also handle the case where multiple empty memory blocks are in the buffer.
Add unit test for this.
2011-07-12 13:40:35 +02:00
Wim Taymans
a5ee20db3f buffer: fix _resize some more
Add more debug.
Alow resize to 0 bytes.
Do clipping correctly.
Add more unit tests. Also add a failing test: when we resize to 0 and then
try to resize back to the original size it fails because the memory was
removed.
2011-07-12 12:00:58 +02:00
Wim Taymans
8461249f22 buffer: fix negative offsets some more
Allow for negative offsets when doing memory copy and share.
Add fast path in the _get_sizes() function.
Fix resize for negative offset and expanding the buffer.
Add some unit tests.
2011-07-11 18:00:52 +02:00
Wim Taymans
6b3572feab buffer: fix _resize better 2011-07-11 16:42:56 +02: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
Wim Taymans
8cf3fa5c6d miniobject: cleanup headers 2011-07-11 12:11:35 +02:00
Mark Nauwelaerts
b3bf6cdfd8 pad: avoid inadvertently dropping an event
... particularly a non-sticky serialized event that happens to pass
when an event update is pending.
2011-07-11 11:59:18 +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
b171259612 Merge branch 'master' into 0.11
Conflicts:
	libs/gst/base/gstbasesrc.c
2011-07-07 11:13:19 +02:00
Wim Taymans
806cf03fbc buffer: add memset function 2011-07-07 11:02:09 +02:00
Tim-Philipp Müller
a1f6e02149 buffer: fix guards for gst_buffer_take_memory()
Since idx = -1 makes it default to idx=len, len is also
a valid input idx.
2011-07-06 12:09:28 +01:00
Wim Taymans
3bb21e0203 gst: add class ref/unref 2011-07-05 16:38:06 +02:00
Tim-Philipp Müller
0a6ec83336 gst: make compiler warn about unstable API if GST_USE_UNSTABLE_API is not defined
And define it in our own build.
2011-07-05 09:46:43 +01:00
Tim-Philipp Müller
3dbcb73b11 Remove GstImplementsInterface
It was a bit too clever, and didn't really work as an API,
confusing people to no end. Better implement specific methods
whether an interface is usable/available/ready on the interface
itself, or even add GError arguments, rather than try to have
per-instance interfaces.
2011-06-26 22:59:26 +01:00
Emmanuel Pacaud
156583a69c task: Check for PR_SET_NAME before using
Fixes: #653172.

Signed-off-by: David Schleef <ds@schleef.org>
2011-06-25 13:52:28 -07:00
Wim Taymans
0aa1465bbc query: add method to check for metadata
Add a method to check if a certain metadata is supported in the ALLOCATION
query.
2011-06-23 18:03:22 +02:00
Koop Mast
4fe5dd2b9d segment: cast to right type
See #653137
2011-06-22 16:58:53 +02:00
Wim Taymans
b322a401c7 uri: remove some _full variants 2011-06-22 16:38:04 +02:00
Wim Taymans
6da2a33b7a tags: Remove crazy tag messages
Don't mix messages and pads and tags.
Make the sink post tag messages when a tag event is received.
Since tags are sticky on pads now, they can be retrieved from there
when needed.
2011-06-22 16:16:56 +02:00
Wim Taymans
314a2b961a caps: Hide implementation details
Make the Array of structures private. This should allow us to implement
the array more efficiently or with some preallocated structures when
we want to later.
Add a new method to clean up a static structure so that we can remove some code
that pokes into the private bits of the caps.
2011-06-22 12:28:14 +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
36c111a844 bufferpool: return empty metadata array
Return a string array with NULL instead of NULL from the default get_metas
function.
2011-06-21 12:32:46 +02:00
Wim Taymans
872e7d52df pad: use event function directly
We will never go in this code path for CAPS events so directly call the event
function.
2011-06-21 12:31:57 +02:00
Wim Taymans
de3b6e733f pad: notify caps after we store the new caps
notify caps after we store the new caps so that the new caps are actually
visible for the app.
2011-06-21 10:29:51 +02:00
Wim Taymans
9177367984 ghostpad: improve debug
Log a debug line when there is no target pad and when this makes the default
implementation fail.
Take the internal pads directly when we can.
2011-06-20 16:53:03 +02:00
Wim Taymans
a22274d7a1 bufferpool: add function to set metadata api
Add a function to retrieve an array of supported metadata apis from the the
bufferpool.
Add functions to configure and query the configured metadata apis in a
bufferpool configuration.
2011-06-20 13:26:06 +02:00
Thiago Santos
00c891a823 gstbuffer: Minor fix to docs
Adds missing parameter to docs of gst_buffer_copy_region
2011-06-19 13:17:06 -03:00
Edward Hervey
a885082a16 gstpad: Remove unused variable do_event_actions
do_event_actions was always used as TRUE
2011-06-18 17:35:41 +02:00
Tim-Philipp Müller
9eee73dcc6 Revert "utils: remove some macros now in glib"
This reverts commit de29ae7b92.

Re-adds GFLOAT_TO_LE, GFLOAT_TO_BE, GDOUBLE_TO_LE, and GDOUBLE_TO_BE.
Turns out these aren't in GLib yet afer all (since we didn't
actually open a bug to get them added..)
2011-06-16 10:55:15 +01: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
a59defb90f pad: don't forward scheduling query
The scheduling query should not be forwarded, because elements need to implement
special code to handle different scheduling methods.
2011-06-13 16:30:22 +02:00
Wim Taymans
d837268a77 buffer: add more debug 2011-06-13 12:04:28 +02:00
Wim Taymans
9b9b758688 bufferpool: small indentation fix 2011-06-13 11:51:08 +02:00
Wim Taymans
468dbbbaaf buffer: pass the allocator as const 2011-06-13 11:50:42 +02:00
Wim Taymans
a14623f925 query: add some more checks
Make sure that the alignment is valid.
When we have a 0 size (variable buffer size), we can't have a bufferpool.
2011-06-11 20:45:42 +02:00
Wim Taymans
bb2d7241fa query: set all default values
Fill all query values with good defaults.
2011-06-11 19:54:47 +02:00
Wim Taymans
6ca5d44704 bufferpool: remove postfix parameter
Remove the postfix parameter, it's not used and can be done differently.
2011-06-11 18:52:42 +02:00
Wim Taymans
2b071ea395 bufferpool: use same alignment values as GstMemory
Use the same alignment values for the bufferpool as we use for the GstMemory
API.
2011-06-10 17:50:27 +02:00
Wim Taymans
2d6a59aa83 pad: add _check_reconfigure() method
Add a method to check and clear the RECONFIGURE flag on a pad.
2011-06-10 17:32:20 +02:00
Wim Taymans
eeb07b3f3d buffer: add support for buffer in memory
Fix the code to support allocating the buffer and memory in one memory block.
Add an extra variable to store the memory of the buffer.
This code is disabled still because of complications.
2011-06-10 16:47:29 +02:00
Wim Taymans
3e5c5fb034 memory: expose default alignment
Export the gst_memory_alignment variable so that others can know the default
configured alignment of the system.
2011-06-10 16:46:12 +02:00
Wim Taymans
7c475cc60f memory: fix is_span
Subtract the offset of the parent from is_span.
2011-06-10 16:19:46 +02:00
Wim Taymans
17ff81fc7d memory: respect configured alignment
Move the alignment from GstBuffer to GstMemory.
make sure memory is at least aligned to the configured values.
2011-06-10 13:59:31 +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
Wim Taymans
2d28891528 Merge branch 'master' into 0.11
Conflicts:
	gst/gstelementfactory.c
	gst/gstelementfactory.h
	gst/gstpad.h
	gst/gstpluginfeature.c
	gst/gstpluginfeature.h
2011-06-10 12:09:49 +02:00
Wim Taymans
bbfec45ecc event: add reset_time boolean to flush_stop event
Add a boolean to the flush_stop event to make it possible to implement flushes
that don't reset_time.
Make basesink post async_done with the reset_time property from the flush stop
event.
Fix some unit tests
2011-06-10 11:55:08 +02:00
Javier Jardón
5d25e4a204 Use "const" instead G_CONST_RETURN
G_CONST_RETURN will be deprecated soon.

https://bugzilla.gnome.org/show_bug.cgi?id=652211
2011-06-09 17:54:27 +01:00
Wim Taymans
ab0ab2fbca pad: use new event methods to replace events
Using the new event methods, we can atomically transfer the event from the
pending list to the active list.
2011-06-09 13:37:28 +02:00
Wim Taymans
1b21f2af8f event: make macros for new miniobject methods 2011-06-09 13:36:52 +02:00
Wim Taymans
1b98eb34d7 miniobject: add new methods to manage miniobject pointers
Add a new method to steal the miniobject stored at a location.
Add a new method to store a miniobject in a location and taking ownership
of the miniobject.
2011-06-09 13:35:08 +02:00
Wim Taymans
9d2953288c pad: fix header 2011-06-09 13:34:19 +02:00
Wim Taymans
98fdfa1815 pad: fix spurious include 2011-06-09 12:31:47 +02:00
Wim Taymans
d8212d941c pad: forward events by default
Always forward all events in the default handler. Previously it used to not
forward caps events by default. It makes more sense to forward the caps events,
if the element is interested in the caps, it will implement an event handler to
retrieve the caps and then it can decide to forward or not. If the element has
no event handler, it probably just doesn't care about caps and it probably is
also not going to modify the data in a way that needs a caps change.
2011-06-09 11:49:20 +02:00
Wim Taymans
4a424c379f buffer: fix typo in docs 2011-06-09 11:13:55 +02:00
Wim Taymans
b0a827cc6b message: rename variable
Rename the new_base_time variable to reset_time, which looks better.
2011-06-08 17:25:43 +02:00
Wim Taymans
3798b5fe5b segment: separate the seek and segment flags
Separate the seek flags and segment flags as separate enums because we might
want to have different flags for both.
2011-06-08 16:41:05 +02:00
Wim Taymans
3cb8b33935 message: move the new_base_time flag to async_done
Move the flag to indicate that a new_base_time should be distributed to the
pipeline, from the async_start to the async_done message. This would allow us to
decide when to reset the pipeline time based on other reasons than the
FLUSH_START event.

The main goal eventually is to make the FLUSH events not reset time at all but
reset the time based on the first buffer or segment that prerolls the pipeline
again.
2011-06-08 13:45:19 +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
Wim Taymans
14a0e31e69 pad: remove setcaps function
Remove the setcaps function, elements should use the caps event to be informed
of the format.
2011-06-08 12:58:29 +02:00
Wim Taymans
b84fff07ea memory: Require implementation to implement _share
Require the memory implementations to implement a share operation. This allows
us to remove the fallback share implementation which uses a different allocator
implementation and complicates things too much.
Update design doc a bit.
2011-06-08 12:04:49 +02:00
Wim Taymans
f6dc8eba34 memory: cleanups and improve docs
Make the fallback copy use the same memory allocator as the original object.
Improve some docs.
Require an alloc function when registering an allocator.
Remove gst_memory_allocator_get_default() and merge the feature in
gst_memory_allocator_find()
Fix locks on the hashtable.
Remove defined but not-implemented gst_memory_span() method.
2011-06-08 11:03:50 +02:00
Wim Taymans
cfd3faef5a memory: pass user_data to the alloc function
Pass the user data that was passed to _register to the alloc function of an
allocator.
2011-06-07 17:54:33 +02:00
Wim Taymans
70e799c8fc memory: fix some typos 2011-06-07 17:34:17 +02:00
Wim Taymans
78ea732149 query: add methods to query allocators
Add API to add and query allocator implementations to/from the ALLOCATION query.
2011-06-07 16:35:07 +02:00
Wim Taymans
acb3ee9b2c memory: use allocators to allocate memory
Rename the GstMemoryImpl to GstMemoryAllocator because that's really what it is.
Add an alloc vmethod to the allocator members.
Improve registration of allocators.
Add methods to get and set the default allocator
Always use an allocator to allocate memory, use the default allocator when NULL
is passed.
Add user_data to the allocator Info so that we can pass extra info to the
allocator new method.
2011-06-07 16:19:33 +02:00
Wim Taymans
b5976339e2 event: move some more defines on top 2011-06-07 13:38:35 +02:00
Wim Taymans
44b4312d96 fix some circular includes
typedef some structs before including other files to avoid circular dependencies
in the header files.
2011-06-07 13:25:26 +02:00
Wim Taymans
016e750a41 utils: remove proxy_setcaps
Remove proxy_setcaps, elements should use the caps event and forward caps
themselves.
2011-06-07 10:52:02 +02:00