platform/upstream/gstreamer.git
13 years agobufferpool: prealloc when unset flushing
Wim Taymans [Thu, 17 Feb 2011 17:37:19 +0000 (18:37 +0100)]
bufferpool: prealloc when unset flushing

According to the design doc we need to prealloc buffers when we unset the
flushing state, not in set_config.
Set the flushing state better.

13 years agobufferpool: use quarks for structure fields
Wim Taymans [Thu, 17 Feb 2011 16:29:27 +0000 (17:29 +0100)]
bufferpool: use quarks for structure fields

13 years agobufferpool: use GstStructure to configure the pool
Wim Taymans [Thu, 17 Feb 2011 15:46:51 +0000 (16:46 +0100)]
bufferpool: use GstStructure to configure the pool

Use a GstStructure to provide the pool with the right configuration. Also
provide some helper methods to configure such a structure.
don't pass the config in alloc_buffer, pool implementation will already have
parsed it during set_config.
Update defs

13 years agofix defs
Wim Taymans [Thu, 17 Feb 2011 11:55:37 +0000 (12:55 +0100)]
fix defs

13 years agobufferpool: add simple bufferpool helper object
Wim Taymans [Tue, 2 Nov 2010 17:56:29 +0000 (18:56 +0100)]
bufferpool: add simple bufferpool helper object

13 years agoMerge branch 'master' into 0.11
Wim Taymans [Wed, 2 Mar 2011 10:08:34 +0000 (11:08 +0100)]
Merge branch 'master' into 0.11

Conflicts:
gst/gstregistry.h

13 years agofaq: Minor update to ssh key generation commands
Arun Raghavan [Wed, 2 Mar 2011 08:25:36 +0000 (13:55 +0530)]
faq: Minor update to ssh key generation commands

fd.o requires RSA keys, and in general, users would probably want to
make a per-server key file rather than overwrite id_rsa, id_rsa.pub.

13 years agoconfigure.ac: export plugin description more platform independent
Mark Nauwelaerts [Mon, 28 Feb 2011 17:43:41 +0000 (18:43 +0100)]
configure.ac: export plugin description more platform independent

Fixes #642504.

13 years agoAutomatic update of common submodule
Mark Nauwelaerts [Mon, 28 Feb 2011 17:32:07 +0000 (18:32 +0100)]
Automatic update of common submodule

From 1de7f6a to 6aec6b9

13 years agodocs: typo fixes
Tim-Philipp Müller [Mon, 28 Feb 2011 15:01:54 +0000 (15:01 +0000)]
docs: typo fixes

convinience -> convenience

13 years agotools: print "pad-added", "pad-removed" and "no-more-pads" signals for elements with...
Tim-Philipp Müller [Mon, 28 Feb 2011 14:56:23 +0000 (14:56 +0000)]
tools: print "pad-added", "pad-removed" and "no-more-pads" signals for elements with sometimes pads

It's often not obvious to people that elements like e.g. uridecodebin
(or demuxers) automatically support the standard signals of the
GstElement class, so let's print the useful pad-related ones for
elements with sometimes pads.

13 years agodocs: small updates as suggested on a blog
Stefan Kost [Mon, 28 Feb 2011 14:27:01 +0000 (16:27 +0200)]
docs: small updates as suggested on a blog

Link from convinience api to the underlying api.

13 years agometa: add timing metadata
Wim Taymans [Mon, 28 Feb 2011 09:05:47 +0000 (10:05 +0100)]
meta: add timing metadata

13 years agominiobject: fix whitespace
Wim Taymans [Mon, 28 Feb 2011 09:05:38 +0000 (10:05 +0100)]
miniobject: fix whitespace

13 years agotests: add memory unit test
Wim Taymans [Mon, 28 Feb 2011 08:39:44 +0000 (09:39 +0100)]
tests: add memory unit test

13 years agometa: simplify a bit
Wim Taymans [Sun, 27 Feb 2011 19:54:58 +0000 (20:54 +0100)]
meta: simplify a bit

13 years agometa: add default memory metadata
Wim Taymans [Sun, 27 Feb 2011 19:42:15 +0000 (20:42 +0100)]
meta: add default memory metadata

Add a metadata implementation for normall malloced memory.

13 years agometa: separate add and get methods
Wim Taymans [Sun, 27 Feb 2011 18:40:45 +0000 (19:40 +0100)]
meta: separate add and get methods

Make separate api for getting and adding metadata. This allows us to pass extra
parameters to the init functions when creating metadata, which is needed for
specific API implementations.
Add beginnings of memory metadata.

13 years agodocs: update docs and defs
Wim Taymans [Sun, 27 Feb 2011 11:21:32 +0000 (12:21 +0100)]
docs: update docs and defs

13 years agobuffer: remove useless method
Wim Taymans [Sat, 26 Feb 2011 17:14:36 +0000 (18:14 +0100)]
buffer: remove useless method

Remove the method to retrieve metadata by api. One will always use the
GstMetaInfo to get metadata.

13 years agobuffer: remove owner_priv now that we have metadata
Wim Taymans [Fri, 25 Feb 2011 15:31:11 +0000 (16:31 +0100)]
buffer: remove owner_priv now that we have metadata

Now that we have metadata we can remove the owner_priv field.

13 years agodefs: fix defs
Wim Taymans [Fri, 25 Feb 2011 12:23:19 +0000 (13:23 +0100)]
defs: fix defs

13 years agometadata: Rename to GstMeta
Wim Taymans [Fri, 25 Feb 2011 12:15:25 +0000 (13:15 +0100)]
metadata: Rename to GstMeta

Rename to the shorter GstMeta
Add docs
Add api to get metadata by API

13 years agodefs: fix defs
Wim Taymans [Fri, 25 Feb 2011 09:37:07 +0000 (10:37 +0100)]
defs: fix defs

13 years agobuffer: fix memory corruption
Philippe Normand [Mon, 15 Nov 2010 10:49:24 +0000 (11:49 +0100)]
buffer: fix memory corruption

13 years agobuffermeta: fix compilation
Wim Taymans [Wed, 7 Apr 2010 09:34:23 +0000 (11:34 +0200)]
buffermeta: fix compilation

13 years agoupdates
Wim Taymans [Fri, 26 Feb 2010 12:11:43 +0000 (13:11 +0100)]
updates

13 years agometa: improve test a little
Wim Taymans [Sun, 27 Dec 2009 21:03:32 +0000 (22:03 +0100)]
meta: improve test a little

13 years agobuffermeta: add beginnings of buffer metadata
Wim Taymans [Thu, 17 Dec 2009 11:34:42 +0000 (12:34 +0100)]
buffermeta: add beginnings of buffer metadata

Add first implementation of arbitrary buffer metadata. We use a simple linked
linked of slice allocated metadata chunks. Future implementations could use
something more performant.
Add get, remove, iterate methods to handle the metadata.

13 years agodesign: add api tag
Wim Taymans [Fri, 25 Feb 2011 09:19:25 +0000 (10:19 +0100)]
design: add api tag

We want to find metadata based on the API it implements and based on the
specific implementation.

13 years agouri: make win32 buildbot happy
Tim-Philipp Müller [Thu, 24 Feb 2011 17:11:49 +0000 (17:11 +0000)]
uri: make win32 buildbot happy

gsturi.c:854:16: error: unused variable 'abs_clean'
gsturi.c:788:1: error: 'gst_file_utils_canonicalise_path' defined but not used

13 years agofilesrc, filesink: fix URI creation regression for non-absolute locations
Tim-Philipp Müller [Thu, 24 Feb 2011 15:32:00 +0000 (15:32 +0000)]
filesrc, filesink: fix URI creation regression for non-absolute locations

Passing e.g. location=foo would lead to warnings because g_filename_to_uri()
wants an absolute file path and returns NULL otherwise. Use brand-new
gst_filename_to_uri() instead, which will try harder to create a proper
URI for us.

Also add unit test.

13 years agouri: add gst_filename_to_uri() that takes relative filenames
Tim-Philipp Müller [Thu, 24 Feb 2011 15:18:43 +0000 (15:18 +0000)]
uri: add gst_filename_to_uri() that takes relative filenames

Add function that (unlike the GLib equivalent) also accepts paths that
aren't absolute and will clean up relative markers such as ./ and ../
before forming a URI.

Fixes warnings with e.g. filesrc location=foo ! typefind caused by the
recent switch to g_filename_to_uri(), but also actually creates valid
URIs for the first time.

Windows code paths could need some more work, e.g. we don't clean up
the relative markers there for now (because path could have \ and /
as separators).

API: gst_filename_to_uri()

13 years agotests: refix the tests (missing #endif)
Stefan Kost [Thu, 24 Feb 2011 14:20:01 +0000 (16:20 +0200)]
tests: refix the tests (missing #endif)

13 years agoMakefile.am: add new abi headers to nodist_HEADERS
Stefan Kost [Thu, 24 Feb 2011 14:11:17 +0000 (16:11 +0200)]
Makefile.am: add new abi headers to nodist_HEADERS

13 years agogst-launch: add index support
Stefan Kost [Mon, 21 Feb 2011 09:24:45 +0000 (11:24 +0200)]
gst-launch: add index support

When option "-i" is given, set an index object on the pipeline and compute
statistics for all index writers. Print a sumary when shutting down the
pipeline.

13 years agotests: add abi check data for ARM (libs)
Stefan Kost [Thu, 24 Feb 2011 13:12:14 +0000 (15:12 +0200)]
tests: add abi check data for ARM (libs)

13 years agotests: add abi check data for ARM
Stefan Kost [Thu, 24 Feb 2011 13:02:37 +0000 (15:02 +0200)]
tests: add abi check data for ARM

13 years agobuffer: add owner private as intermediate solution
Wim Taymans [Thu, 24 Feb 2011 12:55:35 +0000 (13:55 +0100)]
buffer: add owner private as intermediate solution

Add an owner private field where the owner of a buffer can store some extra
information. We can use this to implement most of the subclassing that happens
now. Later this will be removed and replaced by arbitrary buffer metadata.

13 years agocaps: remove poisoning
Wim Taymans [Thu, 24 Feb 2011 09:28:20 +0000 (10:28 +0100)]
caps: remove poisoning

13 years agominiobject: cleanups
Wim Taymans [Wed, 23 Feb 2011 15:48:00 +0000 (16:48 +0100)]
miniobject: cleanups

Use the stored size in the miniobject to free the miniobject.
Refactor some init methods.

13 years agodocs: update porting guide
Wim Taymans [Wed, 23 Feb 2011 14:43:49 +0000 (15:43 +0100)]
docs: update porting guide

13 years agodocs: update porting guide
Wim Taymans [Wed, 23 Feb 2011 11:54:21 +0000 (12:54 +0100)]
docs: update porting guide

13 years agocaps: warn when make_writable result is ignored
Wim Taymans [Wed, 23 Feb 2011 11:44:54 +0000 (12:44 +0100)]
caps: warn when make_writable result is ignored

13 years agodefs: fix defs
Wim Taymans [Wed, 23 Feb 2011 11:08:03 +0000 (12:08 +0100)]
defs: fix defs

13 years agogst: fix type registration
Wim Taymans [Wed, 23 Feb 2011 11:01:55 +0000 (12:01 +0100)]
gst: fix type registration

We need to have the types of the miniobjects before registering the
tranforms.

13 years agoelementfactory: improve caps string management
Wim Taymans [Wed, 23 Feb 2011 11:01:16 +0000 (12:01 +0100)]
elementfactory: improve caps string management

13 years agominiobject: clear flags in init
Wim Taymans [Wed, 23 Feb 2011 11:00:42 +0000 (12:00 +0100)]
miniobject: clear flags in init

13 years agodocs: tell that ORC_CODE can contain a list of flags
Stefan Kost [Wed, 23 Feb 2011 10:33:58 +0000 (12:33 +0200)]
docs: tell that ORC_CODE can contain a list of flags

13 years agominiobject: fix flags
Wim Taymans [Wed, 23 Feb 2011 09:31:44 +0000 (10:31 +0100)]
miniobject: fix flags

13 years agofix compilation after rebase
Wim Taymans [Tue, 22 Feb 2011 18:30:59 +0000 (19:30 +0100)]
fix compilation after rebase

13 years agoimprove type registration
Wim Taymans [Tue, 2 Nov 2010 12:31:25 +0000 (13:31 +0100)]
improve type registration

13 years agofix compilation
Wim Taymans [Tue, 2 Nov 2010 11:58:14 +0000 (12:58 +0100)]
fix compilation

13 years agofix macros
Wim Taymans [Mon, 7 Dec 2009 19:32:12 +0000 (20:32 +0100)]
fix macros

13 years agopad: set boxed type correctly
Wim Taymans [Sat, 5 Dec 2009 14:18:09 +0000 (15:18 +0100)]
pad: set boxed type correctly

13 years agominiobject: small fixes
Wim Taymans [Sat, 5 Dec 2009 13:16:57 +0000 (14:16 +0100)]
miniobject: small fixes

Make dataflow happen.

13 years agominiobject: more boxed type fixing
Wim Taymans [Fri, 4 Dec 2009 22:52:32 +0000 (23:52 +0100)]
miniobject: more boxed type fixing

More miniobject fixing, leaks horribly somewhere..

13 years agominiobject: make queries a boxed type
Wim Taymans [Fri, 4 Dec 2009 21:32:38 +0000 (22:32 +0100)]
miniobject: make queries a boxed type

More minionject stuff.

13 years agomessages: make message a simple boxed type
Wim Taymans [Thu, 3 Dec 2009 19:49:30 +0000 (20:49 +0100)]
messages: make message a simple boxed type

13 years agominiobject: work on making caps a boxed type
Wim Taymans [Wed, 2 Dec 2009 20:21:48 +0000 (21:21 +0100)]
miniobject: work on making caps a boxed type

More work on making miniobject a simple allocated struct.

13 years agominiobject: make miniobject a boxed type
Wim Taymans [Sat, 28 Nov 2009 23:21:24 +0000 (00:21 +0100)]
miniobject: make miniobject a boxed type

First attempt at making miniobject a simple boxed type.

13 years agolibs: cleanups for 0.11
Wim Taymans [Tue, 22 Feb 2011 18:09:48 +0000 (19:09 +0100)]
libs: cleanups for 0.11

Remove deprecated stuff, fix padding, rearrange methods.

13 years agocleanups
Wim Taymans [Tue, 22 Feb 2011 15:04:12 +0000 (16:04 +0100)]
cleanups

Fix padding, remove deprecated symbols.

13 years agoMerge branch 'master' into 0.11
Wim Taymans [Tue, 22 Feb 2011 14:08:51 +0000 (15:08 +0100)]
Merge branch 'master' into 0.11

13 years agoMerge branch 'master' into 0.11
Wim Taymans [Tue, 22 Feb 2011 13:11:59 +0000 (14:11 +0100)]
Merge branch 'master' into 0.11

Conflicts:
configure.ac
gst/gstelement.c
gst/gstelement.h
gst/gstpad.c
gst/gstutils.c
libs/gst/base/Makefile.am
libs/gst/check/Makefile.am
libs/gst/controller/Makefile.am
libs/gst/dataprotocol/Makefile.am
libs/gst/net/Makefile.am
win32/common/libgstreamer.def

13 years agobasetransform: Be smarter with pad allocs
Thiago Santos [Mon, 14 Feb 2011 21:05:09 +0000 (18:05 -0300)]
basetransform: Be smarter with pad allocs

Avoid doing unnecessary pad-allocs when on passthrough mode.
If multiple basetransform elements are on a pipeline, they
would do a pad-alloc for each received buffer, each element
would do this, so we would have lots of pad allocs on the
pipeline for a single buffer being pushed through it.

This patch attempts to reduce this amount by avoiding
doing pad-allocs if the element has already done it
after the last pushed buffer. So it will only be allowed
to do a new pad-alloc after it has pushed a buffer, so we get
1x1 pad-alloc and buffer ratio

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

13 years agodocs: fix typo in gst_index_new() docs
Philip Jägenstedt [Mon, 21 Feb 2011 12:39:38 +0000 (13:39 +0100)]
docs: fix typo in gst_index_new() docs

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

13 years agofakesink: print new MEDIA4 flag as well
Tim-Philipp Müller [Mon, 21 Feb 2011 12:44:05 +0000 (12:44 +0000)]
fakesink: print new MEDIA4 flag as well

13 years agominiobject, buffer: steal miniobject flag for use as MEDIA4 buffer flag
Robert Swain [Mon, 3 Jan 2011 10:37:05 +0000 (11:37 +0100)]
miniobject, buffer: steal miniobject flag for use as MEDIA4 buffer flag

This was required to add a new MEDIA4 buffer flag for indicating
progressive/mixed telecine video buffers. There is no space for
additional flags in GstBuffer, so steal one from GstMiniObject.

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

13 years agodocs: add some more Since: markers to atomic queue docs
Tim-Philipp Müller [Sun, 20 Feb 2011 16:11:27 +0000 (16:11 +0000)]
docs: add some more Since: markers to atomic queue docs

13 years agoRevert "element: Call ->release_pad() to clean up pad"
Edward Hervey [Mon, 21 Feb 2011 10:55:50 +0000 (11:55 +0100)]
Revert "element: Call ->release_pad() to clean up pad"

This commit changes the request pad behaviour for plugins and applications.

Reopens Bug #402562

The proper fix for that bug is to keep track of created request pads.

This reverts commit a5e44ffffaa6d7a8d7af8dcb77e37990996253a5.

13 years agoindex: add FIXME-0.11: comments
Stefan Kost [Mon, 21 Feb 2011 08:03:16 +0000 (10:03 +0200)]
index: add FIXME-0.11: comments

13 years agodocs: improve index docs
Stefan Kost [Tue, 15 Feb 2011 08:57:08 +0000 (10:57 +0200)]
docs: improve index docs

13 years agodocs: spell-check
Stefan Kost [Fri, 18 Feb 2011 15:09:14 +0000 (17:09 +0200)]
docs: spell-check

13 years agofakesink: print buffer flags
David Schleef [Wed, 16 Feb 2011 03:15:16 +0000 (19:15 -0800)]
fakesink: print buffer flags

13 years agoelement: Call ->release_pad() to clean up pad
David Schleef [Sun, 5 Dec 2010 02:53:55 +0000 (18:53 -0800)]
element: Call ->release_pad() to clean up pad

Fixes #636011 and #402562.

13 years agoindex: fix creation of writer id for unparented pads
Stefan Kost [Thu, 17 Feb 2011 12:50:40 +0000 (14:50 +0200)]
index: fix creation of writer id for unparented pads

Also do some cleanup in the impl.

13 years agovalue: add (de)serialisation function for uchar
Tim-Philipp Müller [Thu, 17 Feb 2011 10:34:37 +0000 (10:34 +0000)]
value: add (de)serialisation function for uchar

.. since we sadly have a plugin in -good that has a uchar property
(cmmlenc)

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

13 years agoatomicqueue: fix include order
Wim Taymans [Wed, 16 Feb 2011 18:54:57 +0000 (19:54 +0100)]
atomicqueue: fix include order
atomicqueue: fix include order# Please enter the commit message for your changes. Lines starting

13 years agobus: make the bus almost lockfree
Wim Taymans [Thu, 28 Oct 2010 12:27:43 +0000 (13:27 +0100)]
bus: make the bus almost lockfree

Use new GstPoll functionality to wakeup the mainloop.
Use an atomic queue on the writer side to post the messages.
The reader side it protected with the lock still because we don't want multiple
concurrent readers.

13 years agodefs: fix defs file for new symbols
Wim Taymans [Wed, 16 Feb 2011 16:21:52 +0000 (17:21 +0100)]
defs: fix defs file for new symbols

13 years agoatomicqueue: use correct array sizes
Wim Taymans [Wed, 16 Feb 2011 16:14:11 +0000 (17:14 +0100)]
atomicqueue: use correct array sizes

13 years agoatomicqueue: fix docs some more
Wim Taymans [Wed, 16 Feb 2011 15:21:58 +0000 (16:21 +0100)]
atomicqueue: fix docs some more

13 years agoatomicqueue: add refcounting and docs
Wim Taymans [Wed, 16 Feb 2011 15:19:46 +0000 (16:19 +0100)]
atomicqueue: add refcounting and docs

13 years agoatomicqueue: make sure a min initial_size is used
Wim Taymans [Wed, 16 Feb 2011 11:48:59 +0000 (12:48 +0100)]
atomicqueue: make sure a min initial_size is used

13 years agoatomicqueue: add an atomic queue
Wim Taymans [Thu, 28 Oct 2010 15:02:39 +0000 (16:02 +0100)]
atomicqueue: add an atomic queue

Add an atomic queue. The queue can be used from multiple threads simultaneously
and without taking any locks or doing any blocking operations. This makes it
highly scalable for things like the bus, bufferpools and object recycling.

13 years agocheck: fix a leak in the bus unit test
Wim Taymans [Wed, 16 Feb 2011 16:14:46 +0000 (17:14 +0100)]
check: fix a leak in the bus unit test

13 years agodeinit: add progress type class unref
Wim Taymans [Wed, 16 Feb 2011 16:28:15 +0000 (17:28 +0100)]
deinit: add progress type class unref

13 years agoutils: tell also what pad a pad is already linked against
Stefan Kost [Wed, 16 Feb 2011 13:13:05 +0000 (15:13 +0200)]
utils: tell also what pad a pad is already linked against

13 years agofile{sink,src}: Check if non-URI characters are escaped, but only for the URI not...
Sebastian Dröge [Tue, 15 Feb 2011 21:56:35 +0000 (22:56 +0100)]
file{sink,src}: Check if non-URI characters are escaped, but only for the URI not the location property

13 years agofile{src,sink}: Fix unit tests
Sebastian Dröge [Tue, 15 Feb 2011 21:49:26 +0000 (22:49 +0100)]
file{src,sink}: Fix unit tests

filesink and filesrc should return exactly the same URI as passed
and must not escape path separators.

13 years agofilesink: Fix escaping of URIs
Sebastian Dröge [Tue, 15 Feb 2011 21:48:44 +0000 (22:48 +0100)]
filesink: Fix escaping of URIs

Especially don't escape / as path separators

13 years agofilesrc: Fix escaping of file uris
Andoni Morales Alastruey [Tue, 15 Feb 2011 21:05:31 +0000 (22:05 +0100)]
filesrc: Fix escaping of file uris

Fixes bug #642393.

13 years agomessage: add timeout to progress message
Wim Taymans [Tue, 15 Feb 2011 17:26:00 +0000 (18:26 +0100)]
message: add timeout to progress message

Add a timeout member to the progress messages to let the application know about
the timeout so that it can do some gui things with it.

13 years agodesign: mention timeout in the progress message
Wim Taymans [Tue, 15 Feb 2011 17:14:16 +0000 (18:14 +0100)]
design: mention timeout in the progress message

13 years agodesign: make progress draft official
Wim Taymans [Tue, 15 Feb 2011 16:20:08 +0000 (17:20 +0100)]
design: make progress draft official

13 years agomessage: rename category to code
Wim Taymans [Thu, 6 Jan 2011 17:55:43 +0000 (18:55 +0100)]
message: rename category to code

13 years agomessage: add new message quark
Wim Taymans [Thu, 6 Jan 2011 14:58:47 +0000 (15:58 +0100)]
message: add new message quark

13 years agodocs: add more standard categories
Wim Taymans [Thu, 6 Jan 2011 14:58:23 +0000 (15:58 +0100)]
docs: add more standard categories

13 years agogst: register new type
Wim Taymans [Wed, 5 Jan 2011 12:53:00 +0000 (13:53 +0100)]
gst: register new type