Wim Taymans [Mon, 4 Apr 2011 09:17:28 +0000 (11:17 +0200)]
Merge branch 'master' into 0.11
Andoni Morales Alastruey [Mon, 4 Apr 2011 01:33:46 +0000 (03:33 +0200)]
gstpoll: retry reading the control socket to release properly all wakeups
if set->control_pending is set to 0 but we didn't not succed reading
the control socket, future calls to gst_poll_wait() will be awaiken
by the control socket which will not be released properly because
set->control_pending is already 0, causing an infinite loop.
Sebastian Dröge [Mon, 4 Apr 2011 08:18:14 +0000 (10:18 +0200)]
structure: Don't allow invalid GDates in all structures and don't allow NULL GDates in taglists
Some code (e.g. gstvorbistag.c) assumes non-NULL GDates in taglists and
explodes otherwise and NULL or invalid GDates don't make much sense anyway.
Thomas Kristensen [Fri, 25 Mar 2011 14:56:07 +0000 (15:56 +0100)]
poll: don't call WSAWaitForMultipleEvents with no events
Fixes error caught by Microsoft Application Verifier.
Tim-Philipp Müller [Sun, 3 Apr 2011 15:18:54 +0000 (16:18 +0100)]
docs: add pointer to part-seeking.txt design docs to event seek flags docs
Tim-Philipp Müller [Sun, 3 Apr 2011 15:18:14 +0000 (16:18 +0100)]
checks: ignore new funnel unit test binary
Bastien Nocera [Sat, 2 Apr 2011 13:51:18 +0000 (14:51 +0100)]
utils: Avoid using "type" as name for a variable and a macro argument in GST_BOILERPLATE
This caused "re-declaration" problems.
./clutter-gst-video-sink.c: In function ‘clutter_gst_video_sink_init_interfaces’:
./clutter-gst-video-sink.c:231:1: warning: declaration of ‘ClutterGstVideoSink’ shadows a global declaration [-Wshadow]
./clutter-gst-video-sink.h:64:44: warning: shadowed declaration is here [-Wshadow]
https://bugzilla.gnome.org/show_bug.cgi?id=646531
Sebastian Dröge [Fri, 1 Apr 2011 11:56:09 +0000 (13:56 +0200)]
element: When requesting an existing pad print a g_critical() instead of using an assertion
Some applications are requesting the same pad name multiple times
and the behaviour is undefined and different from element to element
but we don't want to break applications that work just fine.
In 0.11 this check should be an assertion again, although elements
have to do manual checking if the pad already exists again because
it can't be done in a threadsafe way here.
Sebastian Dröge [Fri, 1 Apr 2011 11:53:39 +0000 (13:53 +0200)]
element: Use gint64/guint64 string parsing functions
And check that the requested pad names are inside the valid
gint/guint range.
Josep Torra [Fri, 1 Apr 2011 11:51:31 +0000 (13:51 +0200)]
element: strto[u]l() returns a g[u]long
Wim Taymans [Fri, 1 Apr 2011 08:47:48 +0000 (10:47 +0200)]
Merge branch 'master' into 0.11
Wim Taymans [Fri, 1 Apr 2011 08:46:06 +0000 (10:46 +0200)]
docs: update porting guide with bufferlist changes
Tim-Philipp Müller [Thu, 31 Mar 2011 18:25:30 +0000 (19:25 +0100)]
design docs: document expected behaviour for ACCURATE and KEY_UNIT seek flags
Wim Taymans [Thu, 31 Mar 2011 16:39:57 +0000 (18:39 +0200)]
bytewriter: don't add NULL data
Wim Taymans [Thu, 31 Mar 2011 15:55:22 +0000 (17:55 +0200)]
Merge branch 'master' into 0.11
Conflicts:
tests/check/gst/struct_x86_64.h
Wim Taymans [Thu, 31 Mar 2011 15:51:02 +0000 (17:51 +0200)]
bufferlist: simplify bufferlists
We now have multiple memory blocks as part of the buffers and we can therefore
reduce the bufferlist to a simple array of buffers.
Sebastian Dröge [Thu, 31 Mar 2011 08:53:03 +0000 (10:53 +0200)]
gstabi: Add some new structures for x86-64
Sebastian Dröge [Thu, 31 Mar 2011 08:46:40 +0000 (10:46 +0200)]
libsabi: Add lots of new structures for x86-64
Wim Taymans [Thu, 31 Mar 2011 08:31:22 +0000 (10:31 +0200)]
docs: update porting doc
Wim Taymans [Wed, 30 Mar 2011 18:05:26 +0000 (20:05 +0200)]
funnel: fix for API change
Wim Taymans [Wed, 30 Mar 2011 17:58:52 +0000 (19:58 +0200)]
Merge branch 'master' into 0.11-fdo
Conflicts:
docs/plugins/gstreamer-plugins.hierarchy
gst/gstelement.c
Wim Taymans [Wed, 30 Mar 2011 17:01:13 +0000 (19:01 +0200)]
docs: update docs
Wim Taymans [Wed, 30 Mar 2011 16:45:08 +0000 (18:45 +0200)]
docs: update documentation
Wim Taymans [Wed, 30 Mar 2011 14:47:55 +0000 (16:47 +0200)]
buffer: more API tweaks
_trim -> _resize
_create_sub -> copy_region
Wim Taymans [Wed, 30 Mar 2011 13:29:39 +0000 (15:29 +0200)]
design: update design docs
Wim Taymans [Wed, 30 Mar 2011 11:04:34 +0000 (13:04 +0200)]
design: update docs
Sebastian Dröge [Wed, 30 Mar 2011 08:48:47 +0000 (10:48 +0200)]
multiqueue: Make assignment of queue IDs and pad names threadsafe
Also add a test for naming pads by the caller and return NULL
when requesting an already existing pad.
Andreas Frisch [Tue, 29 Mar 2011 21:58:43 +0000 (23:58 +0200)]
multiqueue: Set the single queue ID to the ID of the requested pad if one was given by the caller
Wim Taymans [Tue, 29 Mar 2011 17:17:55 +0000 (19:17 +0200)]
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.
Wim Taymans [Tue, 29 Mar 2011 15:17:46 +0000 (17:17 +0200)]
buffer: implement COPY_MERGE
Wim Taymans [Tue, 29 Mar 2011 14:52:21 +0000 (16:52 +0200)]
buffer: clean up _span and add more g_return_if..
Sebastian Dröge [Tue, 29 Mar 2011 14:22:46 +0000 (16:22 +0200)]
element: Fix sanity checks for request pad templates without %
Wim Taymans [Tue, 29 Mar 2011 11:51:25 +0000 (13:51 +0200)]
buffer: optimize memory handling
Sebastian Dröge [Tue, 29 Mar 2011 09:57:58 +0000 (11:57 +0200)]
element: Add some more sanity checks to the pad name checking of request pads in all cases
Especially check if a pad with that name already exists.
Sebastian Dröge [Tue, 29 Mar 2011 09:52:06 +0000 (11:52 +0200)]
element: Check %u too when trying to find a pad template for a request pad
Wim Taymans [Tue, 29 Mar 2011 09:31:30 +0000 (11:31 +0200)]
buffer: move implementation details in private struct
Fraxinas [Mon, 28 Mar 2011 19:01:13 +0000 (21:01 +0200)]
multiqueue: Fix arbitrary sink + source pad naming
Use the string provided by the caller for the sinkpad name
if possible. Note that all sanity checking for this name
is already done in GstElement.
Fixes Bug #645931
Sebastian Dröge [Tue, 29 Mar 2011 09:18:36 +0000 (11:18 +0200)]
funnel: Add some more documentation about the behaviour of funnel
Sebastian Dröge [Tue, 29 Mar 2011 09:08:57 +0000 (11:08 +0200)]
funnel: Send a newsegment event after flush-stop
Sebastian Dröge [Tue, 29 Mar 2011 09:07:48 +0000 (11:07 +0200)]
funnel: Some random cleanup
Sebastian Dröge [Tue, 29 Mar 2011 08:56:00 +0000 (10:56 +0200)]
funnel: Use a GstPad subclass for the sinkpads instead of using the pad's element private data
Sebastian Dröge [Tue, 29 Mar 2011 08:42:31 +0000 (10:42 +0200)]
funnel: Integrate into the build system and rename the types
Sebastian Dröge [Tue, 29 Mar 2011 08:39:42 +0000 (10:39 +0200)]
funnel: Import funnel element from farsight2
Wim Taymans [Tue, 29 Mar 2011 09:07:36 +0000 (11:07 +0200)]
buffer: more buffer updates
Wim Taymans [Mon, 28 Mar 2011 18:20:39 +0000 (20:20 +0200)]
defs: fix defs
Wim Taymans [Mon, 28 Mar 2011 18:11:20 +0000 (20:11 +0200)]
Merge branch 'master' into 0.11-fdo
Conflicts:
gst/gst.c
libs/gst/base/gstcollectpads.c
Wim Taymans [Mon, 28 Mar 2011 17:19:44 +0000 (19:19 +0200)]
buffer: fix subbuffers
Wim Taymans [Mon, 28 Mar 2011 14:40:24 +0000 (16:40 +0200)]
buffer: implemet trim and set_size
Wim Taymans [Mon, 28 Mar 2011 13:52:17 +0000 (15:52 +0200)]
buffer: more fixes
Wim Taymans [Mon, 28 Mar 2011 08:28:02 +0000 (10:28 +0200)]
buffer: add more methods
Wim Taymans [Thu, 24 Mar 2011 20:21:00 +0000 (21:21 +0100)]
gst: add class init
Wim Taymans [Thu, 24 Mar 2011 20:18:52 +0000 (21:18 +0100)]
buffer: fix remaining unit tests
Wim Taymans [Thu, 24 Mar 2011 19:09:02 +0000 (20:09 +0100)]
buffer: fix unit test
Wim Taymans [Thu, 24 Mar 2011 12:01:00 +0000 (13:01 +0100)]
memory: remove memory metadata again
Wim Taymans [Thu, 24 Mar 2011 10:49:46 +0000 (11:49 +0100)]
memory: more fixes
Automatically make the memory of a buffer writable when the buffer is writable
and the memory is asked to mapped WRITE.
Add docs
Wim Taymans [Wed, 23 Mar 2011 19:52:27 +0000 (20:52 +0100)]
memory: more work on implementing buffer memory
Wim Taymans [Tue, 22 Mar 2011 19:51:06 +0000 (20:51 +0100)]
memory: more work on porting the unit tests
Wim Taymans [Mon, 21 Mar 2011 18:15:27 +0000 (19:15 +0100)]
tests: make some tests compile
Wim Taymans [Mon, 21 Mar 2011 17:13:55 +0000 (18:13 +0100)]
memory: port code to new buffer data API
Wim Taymans [Mon, 21 Mar 2011 12:07:42 +0000 (13:07 +0100)]
memory: more fixes
Fix span and is_span
Implement buffer memory
Wim Taymans [Mon, 21 Mar 2011 08:51:53 +0000 (09:51 +0100)]
WIP use memory in buffer
Wim Taymans [Sun, 20 Mar 2011 10:42:39 +0000 (11:42 +0100)]
memory: more improvements
Wim Taymans [Sat, 19 Mar 2011 09:45:37 +0000 (10:45 +0100)]
memory: more memory improvements
Wim Taymans [Fri, 18 Mar 2011 20:45:39 +0000 (21:45 +0100)]
memory: add more memory operations
Wim Taymans [Fri, 18 Mar 2011 18:28:17 +0000 (19:28 +0100)]
memory: add memory implementation
Wim Taymans [Fri, 18 Mar 2011 17:35:42 +0000 (18:35 +0100)]
memory: add API for handling memory blocks
Adds some API to handle memory blocks.
Wim Taymans [Tue, 8 Mar 2011 18:18:24 +0000 (18:18 +0000)]
meta: fix docs
Arun Raghavan [Mon, 28 Mar 2011 15:51:00 +0000 (21:21 +0530)]
basesrc: Return FALSE if we don't handle an event
basesrc's default event handler returns TRUE regardless of whether the
event is handled or not. This fixes the handler to conform with the
expected behaviour (which is to only return TRUE when the event has
actually benn handled). gst_bin_do_latency_func() depended on this
(incorrect) behaviour, and is now modified as well.
(Remaining 1-liner change in gstbasesrc.c is to keep gst-indent happy)
Sebastian Dröge [Fri, 25 Mar 2011 21:08:41 +0000 (22:08 +0100)]
Automatic update of common submodule
From
193b717 to
1ccbe09
Stefan Kost [Fri, 25 Mar 2011 12:55:39 +0000 (14:55 +0200)]
Automatic update of common submodule
From
b77e2bf to
193b717
Sebastian Dröge [Fri, 25 Mar 2011 08:27:58 +0000 (09:27 +0100)]
Automatic update of common submodule
From
d8814b6 to
b77e2bf
Sebastian Dröge [Fri, 25 Mar 2011 07:59:37 +0000 (08:59 +0100)]
Automatic update of common submodule
From
6aaa286 to
d8814b6
Stefan Kost [Thu, 24 Mar 2011 16:48:41 +0000 (18:48 +0200)]
Automatic update of common submodule
From
6aec6b9 to
6aaa286
Stefan Kost [Thu, 24 Mar 2011 16:27:09 +0000 (18:27 +0200)]
docs: fix some gtk-doc warnings
Document the queue leaky enums.
Stefan Kost [Thu, 24 Mar 2011 16:25:08 +0000 (18:25 +0200)]
queue2: set max value for to the matching one for the datatype
The property is guint64, so use G_MAXUINT64 instead of G_MAXUINT.
Stefan Kost [Thu, 24 Mar 2011 11:22:57 +0000 (13:22 +0200)]
docs: cleanup and xref fixes
Deal with the hints from gtk-doc and fix the xrefs. Apply a work-around for ()
precedence over @. Move "MT Safe" text to doc body in many places. Trim eol
whitespaces.
Stefan Kost [Wed, 23 Mar 2011 14:42:24 +0000 (16:42 +0200)]
basesink: print flow return as a name in debug log
Stefan Kost [Wed, 23 Mar 2011 15:13:58 +0000 (17:13 +0200)]
docs: do xrefs for non installed books too
Get the xrefs from the builddir for the books in the same packages. This fixes
the cross references if one does not have the docs already installed.
Edward Hervey [Mon, 19 Apr 2010 18:39:53 +0000 (20:39 +0200)]
basesrc: Keep downstream caps order when fixating
This allows use to use the first intersecting format prefered by downstream.
https://bugzilla.gnome.org/show_bug.cgi?id=617045
Edward Hervey [Mon, 19 Apr 2010 18:40:56 +0000 (20:40 +0200)]
basetransform: Retain caps order when getting caps
If the element gave us caps in a specific order, let's retain that
by intersecting against the template but retaining the order given
by the element.
https://bugzilla.gnome.org/show_bug.cgi?id=617045
Thiago Santos [Fri, 25 Feb 2011 13:25:26 +0000 (10:25 -0300)]
tests: caps: Tests for the new caps intersection mode
Adds test cases for the caps 'first' intersect mode
Adds another test for the 'zigzag' mode
Fixes #617045
Edward Hervey [Fri, 25 Feb 2011 11:50:12 +0000 (08:50 -0300)]
gstcaps: new API : gst_caps_intersect_full
Just like gst_caps_intersect, but adds a new parameter 'mode'
that allows selecting the intersection algorithm to use.
Currently we have GST_CAPS_INTERSECT_MODE_ZIG_ZAG (default) and
GST_CAPS_INTERSECT_MODE_FIRST.
API: gst_caps_intersect_full
API: GstCapsIntersectMode
API: GST_CAPS_INTERSECT_MODE_ZIG_ZAG
API: GST_CAPS_INTERSECT_MODE_FIRST
https://bugzilla.gnome.org/show_bug.cgi?id=617045
Tim-Philipp Müller [Sat, 12 Mar 2011 17:01:39 +0000 (17:01 +0000)]
tests: add libscpp unit test to make sure g++ likes our library headers
Tim-Philipp Müller [Sat, 12 Mar 2011 16:58:01 +0000 (16:58 +0000)]
bytereader, bytewriter: fix up inline functions to make g++ happy
gstbytereader.h: In function ‘guint8* gst_byte_reader_dup_data_unchecked(GstByteReader*, guint)’:
gstbytereader.h:249:75: error: invalid conversion from ‘void*’ to ‘guint8*’
gstbytewriter.h: In function ‘gboolean _gst_byte_writer_ensure_free_space_inline(GstByteWriter*, guint)’:
gstbytewriter.h:196:75: error: invalid conversion from ‘void*’ to ‘guint8*’
https://bugzilla.gnome.org/show_bug.cgi?id=645595
Thiago Santos [Tue, 22 Mar 2011 19:26:56 +0000 (16:26 -0300)]
gstelement: Fix typo in the docs
GST_ELEMENT_INFO will post a INFO message, not a WARNING
Thiago Santos [Fri, 18 Mar 2011 11:22:23 +0000 (08:22 -0300)]
tagsetter: Removing unused debug category
tagsetter's debug category had a typo and was unused. Removing it.
Luis de Bethencourt [Fri, 18 Mar 2011 18:34:57 +0000 (19:34 +0100)]
autogen: wingo signed comment
Sebastian Dröge [Tue, 22 Mar 2011 10:04:20 +0000 (11:04 +0100)]
multiqueue: Don't leak objects when flushing after dequeueing and before pushing the object
Sebastian Dröge [Mon, 21 Mar 2011 16:54:10 +0000 (17:54 +0100)]
multiqueue: Really remove unused variable
Sebastian Dröge [Mon, 21 Mar 2011 16:52:13 +0000 (17:52 +0100)]
multiqueue: Increment unique item counter with atomic operations
Before it was only protected by the stream lock but every pad
has its own stream lock, making the protection rather useless.
Sebastian Dröge [Mon, 21 Mar 2011 16:17:22 +0000 (17:17 +0100)]
multiqueue: Unblock all waiting pads when shutting down
Sebastian Dröge [Mon, 21 Mar 2011 11:39:34 +0000 (12:39 +0100)]
multiqueue: Remove unused variable
Sebastian Dröge [Mon, 21 Mar 2011 15:28:37 +0000 (16:28 +0100)]
multiqueue: Exit loop function if the pad is flushing
Fixes possible deadlocks when flushing an unlinked pad that waits
for other pads to advance.
Jason D. Clinton [Sat, 19 Mar 2011 22:06:12 +0000 (17:06 -0500)]
build: fix build with -Werror with GCC 4.6.0
This touches three areas of code, removes unused variables and discards
return values from two functions with (void).
https://bugzilla.gnome.org/show_bug.cgi?id=645267
Sebastian Dröge [Sat, 19 Mar 2011 09:39:28 +0000 (10:39 +0100)]
event: Add since marker to GST_EVENT_SINK_MESSAGE
Sebastian Dröge [Sat, 19 Mar 2011 07:55:57 +0000 (08:55 +0100)]
inputselector: Stop waiting for a pad switch when the pad is flushing
Sebastian Dröge [Sat, 19 Mar 2011 07:50:06 +0000 (08:50 +0100)]
inputselector: Move locking and signalling macros from the header to the source file
Tim-Philipp Müller [Thu, 17 Mar 2011 23:42:48 +0000 (23:42 +0000)]
task: fix GST_TASK_BROADCAST
Surprisingly enough, you can't "breadcast" on a GCond.
Spotted by Rune Sætre.
https://bugzilla.gnome.org/show_bug.cgi?id=645022
Sebastian Dröge [Thu, 17 Mar 2011 13:21:17 +0000 (14:21 +0100)]
inputselector: Hold the selector lock while reading properties of the active pad
Sebastian Dröge [Thu, 17 Mar 2011 13:10:49 +0000 (14:10 +0100)]
inputselector: Make sure that EOS is always sent downstream for the active pad
It can happen that the currently active pad got the EOS event
before it was activated and the previously active pad got the
EOS event after it was deactivated. In that case we have to
send the EOS event from an inactive pad downstream.