Wim Taymans [Thu, 1 Mar 2012 13:49:38 +0000 (14:49 +0100)]
query: add method to remove allocation_meta
Also g_return_if_fail for out-of-bounds access instead of silently failing.
Wim Taymans [Thu, 1 Mar 2012 13:30:58 +0000 (14:30 +0100)]
basetransform: improve propose_allocation
Improve the propose allocation vmethod by passing the downstream allocation
query to it. This way the vmethod implementation can use properties of the
downstream allocation to generate the upstream query result. If there is no
downstream quety, it means that the element is working in passthrough mode.
Implement a default decide_allocation.
Wim Taymans [Thu, 1 Mar 2012 10:11:43 +0000 (11:11 +0100)]
basetransform: clear allocation parameters in passthrough
Clear the allocation parameters when we operate in passthrough.
Wim Taymans [Thu, 1 Mar 2012 10:06:49 +0000 (11:06 +0100)]
tests: fix old caps in tests now that core warns
Sebastian Dröge [Thu, 1 Mar 2012 13:51:26 +0000 (14:51 +0100)]
libs: Fix some merge mistakes
Sebastian Dröge [Thu, 1 Mar 2012 13:43:01 +0000 (14:43 +0100)]
Merge branch 'master' into 0.11
Conflicts:
libs/gst/base/gstcollectpads2.c
libs/gst/check/gstconsistencychecker.c
Mark Nauwelaerts [Tue, 28 Feb 2012 11:03:46 +0000 (12:03 +0100)]
pad: fix some debug message typos
Stefan Sauer [Wed, 29 Feb 2012 20:57:00 +0000 (21:57 +0100)]
consitencychecker: add handling for sink-pads
Add a pad-probe for sink-pads. One can now add extra pads (belonging to the same
element) to a checker. This allows us to extend the checks.
Wim Taymans [Wed, 29 Feb 2012 16:20:23 +0000 (17:20 +0100)]
meta: split registration of API and implementation
Split out the registration of the metadata API and its implementation. Make a
GType for each metadata API. This allows us to store extra information with the
API type such as the tags.
Change the buffer API so that we can get the metadata using the API GType.
Change the query API so that we use the metadata API GType in the allocation
query instead of a string.
Update netaddress and unit tests
Wim Taymans [Wed, 29 Feb 2012 15:00:22 +0000 (16:00 +0100)]
minobject: small .h indent fix
Tim-Philipp Müller [Wed, 29 Feb 2012 12:41:44 +0000 (12:41 +0000)]
structure: print a g_warning() if someone tries to construct 0.10-style raw audio/video caps
Stefan Sauer [Wed, 29 Feb 2012 07:44:04 +0000 (08:44 +0100)]
consistencychecker: also check for duplicated flush_starts
Stefan Sauer [Tue, 28 Feb 2012 19:36:59 +0000 (20:36 +0100)]
collectpads2: add more logging
Wim Taymans [Tue, 28 Feb 2012 15:17:47 +0000 (16:17 +0100)]
meta: add return vale to transform
Add a boolean return value so that we can see when a transform fails.
Wim Taymans [Tue, 28 Feb 2012 11:52:00 +0000 (12:52 +0100)]
meta: add method to check for a tag
Wim Taymans [Tue, 28 Feb 2012 11:51:27 +0000 (12:51 +0100)]
tests: fix unit test
Wim Taymans [Tue, 28 Feb 2012 10:34:48 +0000 (11:34 +0100)]
meta: add support to tagging the metadata
Add support for adding tags to the metadata. with some standard keys, this
should make it possible to describe what the metadata refers to. We should be
able to use this information to decide if a transformation destroys the metadata
or not.
Edward Hervey [Mon, 27 Feb 2012 12:35:10 +0000 (13:35 +0100)]
Suppress deprecation warnings in selected files, for g_value_array_* mostly
Wim Taymans [Mon, 27 Feb 2012 10:46:08 +0000 (11:46 +0100)]
tests: increase bus test timeout
Tim-Philipp Müller [Tue, 21 Feb 2012 20:43:48 +0000 (20:43 +0000)]
tests: make datetime test more reliably when comparing two almost identical nows
Account for rounding errors in some places, and that two nows are
not always entirely identical, so allow some leeway when comparing
microseconds and seconds. Ran into this too often, esp. when the
system is under load.
Wim Taymans [Mon, 27 Feb 2012 08:48:06 +0000 (09:48 +0100)]
remove some useless includes in .h
Wim Taymans [Mon, 27 Feb 2012 08:02:07 +0000 (09:02 +0100)]
clock: make more stuff private
Expose methods to get and set the timeout because subclasses uses this.
Wim Taymans [Sun, 26 Feb 2012 19:45:14 +0000 (20:45 +0100)]
systemclock: make more stuff private
Wim Taymans [Sun, 26 Feb 2012 19:44:50 +0000 (20:44 +0100)]
bufferpool: make more stuff private
Wim Taymans [Sun, 26 Feb 2012 15:32:32 +0000 (16:32 +0100)]
bus: make more fields private
Tim-Philipp Müller [Mon, 27 Feb 2012 00:09:57 +0000 (00:09 +0000)]
fdsink: fix compilation after merge
Tim-Philipp Müller [Mon, 27 Feb 2012 00:08:39 +0000 (00:08 +0000)]
Merge remote-tracking branch 'origin/master' into 0.11
Conflicts:
NEWS
RELEASE
configure.ac
docs/plugins/gstreamer-plugins.hierarchy
docs/plugins/inspect/plugin-coreelements.xml
libs/gst/base/gstcollectpads.c
libs/gst/base/gstcollectpads2.c
plugins/elements/gstfdsink.c
win32/common/config.h
win32/common/gstenumtypes.c
win32/common/gstversion.h
Stefan Sauer [Sun, 26 Feb 2012 22:11:23 +0000 (23:11 +0100)]
collectpads2: rescue the annotation from collectpads
Stefan Sauer [Sun, 26 Feb 2012 22:10:58 +0000 (23:10 +0100)]
docs: fix a typo in comment
Stefan Sauer [Sun, 26 Feb 2012 21:57:02 +0000 (22:57 +0100)]
collectpads2: move "MT save" tags to doc body
It is not useful to have "MT safe" tags randomly in body, returns or since paragraphs.
Tim-Philipp Müller [Sat, 25 Feb 2012 15:18:00 +0000 (15:18 +0000)]
fdsink: implement GstBaseSink::query instead of messing with the pad
Tim-Philipp Müller [Sat, 25 Feb 2012 15:08:55 +0000 (15:08 +0000)]
fdsink: implement SEEKING query
We may or may not support seeking. stdout to a
terminal doesn't support seeking, for example, but
... ! fdsink > file.foo just might.
Tim-Philipp Müller [Sat, 25 Feb 2012 15:07:43 +0000 (15:07 +0000)]
filesink: implement SEEKING query
We may or may not do seeking, depends on the
output file/device really, it doesn't have to
be a file after all.
Tim-Philipp Müller [Sat, 25 Feb 2012 15:07:05 +0000 (15:07 +0000)]
fakesink: answer SEEKING query
We don't do seeking, in case anyone wants to know.
Tim-Philipp Müller [Fri, 24 Feb 2012 23:39:30 +0000 (23:39 +0000)]
registry: fix lseek() return code handling
lseek() returns the offset if successful, and this is != 0 and
does not indicate an error. And if it does actually fail, don't
return FALSE (0) as an int, but -1. None of these things are
likely to have made a difference, ever. I don't think the offset
seek can ever actually happen, the current file position and the
current offset should always be increased in lock step, unless
there was an error in which case we'd just error out.
Tim-Philipp Müller [Fri, 24 Feb 2012 23:19:51 +0000 (23:19 +0000)]
registry: don't forget to clean up registry temp file in another error case
Also clean up temp file if we get an error during write() rather
than just when doing fsync() or close().
Wim Taymans [Fri, 24 Feb 2012 14:24:42 +0000 (15:24 +0100)]
atomicqueue: fix race
After a writer has written to its reserved write location, it can only make the
location available for reading if all of the writers with lower locations have
finished.
Wim Taymans [Fri, 24 Feb 2012 11:51:24 +0000 (12:51 +0100)]
atomicqueue: fix subtle race
Fix a race where the reader would see the updated the tail pointer before the
write could write the data into the queue. Fix this by having a separate reader
tail pointer that is only incremented after the writer wrote the data.
Wim Taymans [Fri, 24 Feb 2012 10:00:21 +0000 (11:00 +0100)]
basetransform: fix reconfigure methods
Rename gst_base_transform_suggest to gst_base_transform_reconfigure_sink because
that is what it does. Also remove the caps and size because that is not needed.
Rename gst_base_transform_reconfigure to gst_base_transform_reconfigure_src.
Remove some old unused code in capsfilter.
Wim Taymans [Fri, 24 Feb 2012 09:23:27 +0000 (10:23 +0100)]
meta: flesh out the metadata transform
Flesh out the transform method. Add a type and extra info to the transform
function so that implementation can transform the metadata.
Remove the copy function and replace with the more generic transform.
Wim Taymans [Fri, 24 Feb 2012 09:23:17 +0000 (10:23 +0100)]
docs: update docs
David Schleef [Thu, 23 Feb 2012 16:48:22 +0000 (08:48 -0800)]
Fix gap in Makefile
David Schleef [Thu, 23 Feb 2012 16:48:10 +0000 (08:48 -0800)]
spelling fix
David Schleef [Tue, 27 Dec 2011 00:45:20 +0000 (16:45 -0800)]
poll: fix spelling of writable
Wim Taymans [Thu, 23 Feb 2012 14:32:33 +0000 (15:32 +0100)]
memory: add user_data to GstMapInfo
Add extra pointers to GstMapInfo so that implementations can use these to store
extra info.
Wim Taymans [Thu, 23 Feb 2012 14:32:19 +0000 (15:32 +0100)]
bufferpool: improve docs
Tim-Philipp Müller [Thu, 23 Feb 2012 12:09:31 +0000 (12:09 +0000)]
Update NEWS and RELEASE as well
Wim Taymans [Thu, 23 Feb 2012 10:59:22 +0000 (11:59 +0100)]
docs: remove transform lock
Tim-Philipp Müller [Thu, 23 Feb 2012 10:36:57 +0000 (10:36 +0000)]
Bump version after releases
Wim Taymans [Thu, 23 Feb 2012 10:08:26 +0000 (11:08 +0100)]
basetransform: remove transform lock
This is not needed anymore by the baseclass. subclasses should do their own
locking when needed.
Wim Taymans [Thu, 23 Feb 2012 09:12:44 +0000 (10:12 +0100)]
basetrans: cleanups
Clean up the setcaps function.
The passthrough variable is protected with the object lock.
Wim Taymans [Wed, 22 Feb 2012 14:26:05 +0000 (15:26 +0100)]
basetransform: improve propose_allocation
Always call the propose_allocation method and provide a default implementation
that passes the query on in passthrough mode so that subclasses can also call
this. Also pass if the transform is in passthrough mode so that the
implementation can adjust its algorithm.
Wim Taymans [Wed, 22 Feb 2012 11:24:34 +0000 (12:24 +0100)]
basetrans: improve fixate_caps function
Make it possible to also implement non-inplace fixate functions. Let the fixate
function make the caps writable when needed because some fixate functions might
not need to modify the caps.
Wim Taymans [Wed, 22 Feb 2012 01:02:50 +0000 (02:02 +0100)]
memory: make _new_wrapped take user_data and notify
Make it possible to configure a GDestroyNotify and user_data for
gst_memory_new_wrapped() this allows for more flexible wrapping of foreign
memory blocks.
Ryan Lortie [Thu, 2 Feb 2012 18:45:25 +0000 (13:45 -0500)]
build: avoid touching .po files during 'make'
A simple workaround to deal with GNU gettext automake integration
failing to deal with git.
https://bugzilla.gnome.org/show_bug.cgi?id=669207
Tim-Philipp Müller [Tue, 21 Feb 2012 21:06:17 +0000 (21:06 +0000)]
input-selector: default to sync-streams=true
I think this is the expected behaviour, and we couldn't do this
in 0.10 for backwards-compatibility reasons, so change it now.
Wim Taymans [Tue, 21 Feb 2012 15:39:05 +0000 (16:39 +0100)]
tests: fix queue unit test after queue changes
Wim Taymans [Tue, 21 Feb 2012 15:38:37 +0000 (16:38 +0100)]
queue: remove some old code
Wim Taymans [Tue, 21 Feb 2012 15:37:11 +0000 (16:37 +0100)]
pad: handle NULL callbacks
When we have a matching NULL callback, also consider the 'callback' marshalled,
this way blocking probes with a NULL callback actually work.
Wim Taymans [Tue, 21 Feb 2012 11:52:44 +0000 (12:52 +0100)]
queue: remove weird link behaviour
Remove the link functions and always start the pad task on the srcpad. If
applications need to autoplug they can put a blocking probe on the srcpad like
they would with any other element.
Wim Taymans [Tue, 21 Feb 2012 11:52:18 +0000 (12:52 +0100)]
fakesrc: handle pts/dts
Wim Taymans [Tue, 21 Feb 2012 11:46:44 +0000 (12:46 +0100)]
fakesink: remove custom marshaller
Wim Taymans [Tue, 21 Feb 2012 11:43:18 +0000 (12:43 +0100)]
identity: also debug dts/pts
Wim Taymans [Tue, 21 Feb 2012 11:13:28 +0000 (12:13 +0100)]
fakesink: debug pts and dts
Wim Taymans [Tue, 21 Feb 2012 11:12:21 +0000 (12:12 +0100)]
identity: remove custom marshaller
Matej Knopp [Thu, 24 Nov 2011 17:40:40 +0000 (18:40 +0100)]
Unit test for queue src caps notification
Wim Taymans [Mon, 20 Feb 2012 13:37:11 +0000 (14:37 +0100)]
tests: fix useless segment test
Wim Taymans [Mon, 20 Feb 2012 13:29:30 +0000 (14:29 +0100)]
segment: don't use duration in clipping
Don't use the duration in the segment for calculating clipping values.
The duration is expressed in stream time and clipping is done on unrelated
timestamp values.
This used to be interesting for elements that used the segment structure to
implement seeking because then they would use stream-time for the segment
start/stop values and the duration could be used as a fallback when the stop
position was not set. Now that the complete segment event is passed between
elements we cannot do this anymore because some elements might store the
duration and start/stop values with different time bases in the segment.
Wim Taymans [Mon, 20 Feb 2012 13:22:00 +0000 (14:22 +0100)]
info: debug segment duration as well
Wim Taymans [Mon, 20 Feb 2012 10:46:36 +0000 (11:46 +0100)]
basetransform: copy metadata when using a pool
also copy the metadata when we allocated a new buffer from a pool
Matej Knopp [Thu, 26 Jan 2012 08:02:48 +0000 (03:02 -0500)]
nettimepacket: fix printf format warning in debug message
https://bugzilla.gnome.org/show_bug.cgi?id=664491
Wim Taymans [Sat, 18 Feb 2012 00:04:18 +0000 (01:04 +0100)]
memory: fix more docs
Edward Hervey [Fri, 17 Feb 2012 23:53:58 +0000 (15:53 -0800)]
doc fixups
Edward Hervey [Fri, 17 Feb 2012 23:09:56 +0000 (15:09 -0800)]
basesrc: Move variable and assignment to where it's needed
Edward Hervey [Fri, 17 Feb 2012 23:09:06 +0000 (15:09 -0800)]
basetransform: Handle return value of decide_allocation vmethod
If it fails, properly propagate the error
Edward Hervey [Fri, 17 Feb 2012 23:08:32 +0000 (15:08 -0800)]
gstvalue: Remove useless assignment
Edward Hervey [Fri, 17 Feb 2012 23:07:56 +0000 (15:07 -0800)]
gstvalue: Gracefully handle NULL Gvalue
Avoids unreferencing NULL pointer
Wim Taymans [Fri, 17 Feb 2012 23:03:41 +0000 (00:03 +0100)]
pad: make some errors critical
When we have no chain function or when we are operating the pad in the wrong
mode, emit a critical instead of posting an error message. This is certainly a
programming error and we cannot always post a message (like when the pad has no
parent)
Wim Taymans [Fri, 17 Feb 2012 23:03:13 +0000 (00:03 +0100)]
info: also debug position of segment
Wim Taymans [Fri, 17 Feb 2012 22:59:28 +0000 (23:59 +0100)]
win32: back to development
Wim Taymans [Fri, 17 Feb 2012 10:02:40 +0000 (11:02 +0100)]
configure: back to development
Wim Taymans [Fri, 17 Feb 2012 10:01:16 +0000 (11:01 +0100)]
RELEASE 0.11.2
Mark Nauwelaerts [Wed, 15 Feb 2012 16:12:09 +0000 (17:12 +0100)]
baseparse: tweak some documentation
Mark Nauwelaerts [Wed, 15 Feb 2012 16:11:54 +0000 (17:11 +0100)]
baseparse: simplify and improve frame state handling
Use a frame flag to signal to subclass it should reset any retained
state w.r.t. frame parsing since the frame being passed is 'new',
i.e. not related to previously passed and processed data.
Wim Taymans [Wed, 15 Feb 2012 12:15:55 +0000 (13:15 +0100)]
baseparse: don't leak event
In the unlikely case where the subclass set the event function to NULL, don't
leak the event.
Wim Taymans [Wed, 15 Feb 2012 11:19:13 +0000 (12:19 +0100)]
baseparse: make activation code more like other
Make the pad activation code look more like other activation code.
Only start the sinkpad task when we decide to activate in pull mode, when we
later add srcpad pullmode this will be needed.
Wim Taymans [Wed, 15 Feb 2012 11:18:38 +0000 (12:18 +0100)]
task: add more debug
Wim Taymans [Wed, 15 Feb 2012 10:11:11 +0000 (11:11 +0100)]
baseparse: add some more debug
Mark Nauwelaerts [Wed, 15 Feb 2012 09:58:08 +0000 (10:58 +0100)]
baseparse: track consumed input size
... as used by subsequent input data rate estimation (and seeking).
Wim Taymans [Wed, 15 Feb 2012 09:11:35 +0000 (10:11 +0100)]
baseparse: chain up to parent for defaults
Chain up to the parent instead of using the FALSE return value from the event
function (because it's otherwise impossible to return an error).
Wim Taymans [Wed, 15 Feb 2012 09:10:53 +0000 (10:10 +0100)]
typefind: don't ignore return value when starting a task
Mark Nauwelaerts [Tue, 14 Feb 2012 19:17:37 +0000 (20:17 +0100)]
baseparse: Revert "baseparse: really provide upstream ts to subclass"
This reverts commit
2363490ef5a9fe8d414369d24fcaa65a9dfa83ac.
Mark Nauwelaerts [Tue, 14 Feb 2012 18:33:50 +0000 (19:33 +0100)]
baseparse: remove dead code and superfluous loop level
Mark Nauwelaerts [Tue, 14 Feb 2012 18:33:46 +0000 (19:33 +0100)]
baseparse: modify reverse playback handling
... so as to allow the push-mode case to provide data to subclass
on a buffer by buffer basis (as in regular forward case), rather
than all buffers of a fragment chucked together.
Also refactor buffer handling some more, and add some debug.
Mark Nauwelaerts [Tue, 14 Feb 2012 18:33:33 +0000 (19:33 +0100)]
baseparse: really provide upstream ts to subclass
Wim Taymans [Tue, 14 Feb 2012 12:24:49 +0000 (13:24 +0100)]
typefind: clean up src query handler
Wim Taymans [Tue, 14 Feb 2012 11:57:14 +0000 (12:57 +0100)]
typefind: pass results from activation
Wim Taymans [Tue, 14 Feb 2012 09:35:06 +0000 (10:35 +0100)]
Merge branch 'master' into 0.11
Wim Taymans [Tue, 14 Feb 2012 09:30:40 +0000 (10:30 +0100)]
defs: update
Mark Nauwelaerts [Mon, 13 Feb 2012 17:22:37 +0000 (18:22 +0100)]
baseparse: modify API to a _finish_frame based approach
... which aligns it with other baseclass in the wild, and should give
converter parsers a bit cleaner freedom.