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.
Wim Taymans [Mon, 27 Feb 2012 10:46:08 +0000 (11:46 +0100)]
tests: increase bus test timeout
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.
Mark Nauwelaerts [Mon, 13 Feb 2012 17:09:51 +0000 (18:09 +0100)]
baseparse: fix reverse playback
... especially for all-keyframe (audio) cases.
Wim Taymans [Mon, 13 Feb 2012 15:33:00 +0000 (16:33 +0100)]
memory: more work on refcount and writability
Rename _is_writable() with _is_exclusive because the writability does not depend
on the amount of references to the memory object anymore.
Add accessor macros for the memory flags.
Rename the GstBuffer _peek_memory() method to _get_memory() and return a
reference to the memory now that we can do this without affecting writability
of the memory object. Make it possible to also make this function merge the
buffer memory.
Add methods to replace memory in a buffer. Make some convience macros for the
buffer memory functions.
Fix unit tests.
Wim Taymans [Mon, 13 Feb 2012 16:22:51 +0000 (17:22 +0100)]
def: update
Wim Taymans [Mon, 13 Feb 2012 14:18:28 +0000 (15:18 +0100)]
meta: fix typos
Tim-Philipp Müller [Sun, 12 Feb 2012 21:17:41 +0000 (21:17 +0000)]
docs: add a paragraph about the STREAM CONFIG event to the design docs
Tim-Philipp Müller [Sun, 12 Feb 2012 21:04:18 +0000 (21:04 +0000)]
event: make _parse_nth_stream_config_header() and _parse_setup_data() return a boolean
As they can fail (only one of stream headers or setup data
is usually present).
Tim-Philipp Müller [Sun, 12 Feb 2012 20:51:39 +0000 (20:51 +0000)]
event: rename gst_event_{set,parse}_stream_config_codec_data() to _setup_data()
More generic.
Wim Taymans [Fri, 10 Feb 2012 14:03:03 +0000 (15:03 +0100)]
Merge branch 'master' into 0.11
Wim Taymans [Fri, 10 Feb 2012 13:58:13 +0000 (14:58 +0100)]
clean up object init
Make an _init method where the parent mini-object and other fields are
initialized.
Check that the passed structure doesn't already have a parent.
Use the _new_custom () constructors
Mark Nauwelaerts [Tue, 7 Feb 2012 10:28:41 +0000 (11:28 +0100)]
baseparse: bitrate mechanics should not deal with duration update
... since that is already handled by _update_duration, or should not be done
altogether if the duration is determined by non-estimated means.
Fixes #669502.
Tim-Philipp Müller [Fri, 10 Feb 2012 12:45:50 +0000 (12:45 +0000)]
docs: push_event doesn't return a flow value after all
Wim Taymans [Fri, 10 Feb 2012 11:05:18 +0000 (12:05 +0100)]
pad: silence probe debug a litte
Wim Taymans [Fri, 10 Feb 2012 10:24:28 +0000 (11:24 +0100)]
basesink: implement faster ACCEPT_CAPS query
Wim Taymans [Fri, 10 Feb 2012 10:09:01 +0000 (11:09 +0100)]
gst: add some performance logging
Add some performance logging for caps copy and the slow default acceptcaps
implementation
Wim Taymans [Sat, 14 Jan 2012 18:16:01 +0000 (19:16 +0100)]
docs: update and improve docs
Tim-Philipp Müller [Thu, 9 Feb 2012 00:14:58 +0000 (00:14 +0000)]
utils: remove gst_element_class_install_std_props()
It's only used in one place (rtmp), and there not very well.
Tim-Philipp Müller [Wed, 8 Feb 2012 23:47:40 +0000 (23:47 +0000)]
fakesrc, identity, fakesink: do not generate last-message updates by default
Default to not creating lots of overhead by doing a couple of
g_strdup_printf()/g_free() per buffer or event just to generate
a last-message update that rarely anyone listens to. This means
that you need to enable silent=true explicitly in order to get
last-message dumps in gst-launch -v now. On the upside, people
won't inadvertently end up benchmarking g_strdup_printf()
performance instead of gstreamer data handling performance any
more.
Maybe the silent property should be renamed to enable-last-message
or something like that?
Wim Taymans [Wed, 8 Feb 2012 14:16:46 +0000 (15:16 +0100)]
GST_FLOW_WRONG_STATE -> GST_FLOW_FLUSHING