Commit graph

13825 commits

Author SHA1 Message Date
Wim Taymans
80ff9dfb3d basesrc: release the object lock sooner
Release the object lock before we get the time of the clock because that code
might take other locks.
Fix potential clock refcount error because we released the object lock but
didn't ref the clock.
2012-06-07 15:32:27 +02:00
Wim Taymans
42e755f7c3 basesrc: remove 0.11 fixme
We always require elements to have an unlock_stop vmethod.
2012-06-07 15:32:27 +02:00
Edward Hervey
cdf1cc0cf5 registry: We name the registry after the target cpu
And not the host cpu

Conflicts:

	gst/gstregistry.c
2012-06-07 10:57:31 +02:00
Edward Hervey
ad1136b5a5 Automatic update of common submodule
From 1fab359 to 03a0e57
2012-06-06 18:18:18 +02:00
Wim Taymans
11edb59462 tests: fix unit test after event change
Someone forgot to run make check before pushing...
2012-06-06 15:45:11 +02:00
Sreerenj Balachandran
b4ecac2c98 gstadapter: Align the comment description with public api instead of internal one.
Fixes https://bugzilla.gnome.org/show_bug.cgi?id=677536
2012-06-06 15:44:36 +02:00
Wim Taymans
6758e5f00d element: fix pad cleanup in dispose
In the dispose handler we first need to release all the request pads and then
remove the remaining pads. This is because it is possible that releasing the
request pad might also cleanly remove some of the other dynamic pads, like
what rtpsession does.

https://bugzilla.gnome.org/show_bug.cgi?id=677436
2012-06-06 15:33:57 +02:00
Sebastian Dröge
738cf12d96 event: Don't make the TOC event a multi-sticky event
Elements are supposed to merge upstream events.
2012-06-06 14:16:01 +02:00
Havard Graff
75853fa79b Make sure that unlinked pads do not cause a return false on latency events.
Context: Latency configuration should not be
messed up because of not-linked pads. In general,
one return FALSE on latency distribution causes
the "overall" pipeline latency configuration to
fail. This shows up as noise in logs (warning).

Conflicts:

	gst/gstpad.c
2012-06-06 13:42:32 +02:00
Wim Taymans
c10d39a804 event: add name to sticky_multi events
The name of the event is used to store multiple sticky events of a certain type
on a pad.

Fixes https://bugzilla.gnome.org/show_bug.cgi?id=676859
2012-06-06 12:52:09 +02:00
Sebastian Dröge
27e4faa147 design: Also mention that the order of the filter caps is important 2012-06-06 09:59:55 +02:00
Wim Taymans
15d85b9edb query: improve docs 2012-06-06 09:15:04 +02:00
Wim Taymans
d907544ab1 pad: only serialized events can't pass after EOS
Only serialized events can't be sent on pads that are EOS. Otherwise a seek
event would be refused as well.

Fixes https://bugzilla.gnome.org/show_bug.cgi?id=677520
2012-06-06 09:14:58 +02:00
Wim Taymans
4e06fccf41 docs: talk about the filter caps 2012-06-06 09:14:57 +02:00
Tim-Philipp Müller
1f008928ae tests: add unit test for tag list writability 2012-06-05 15:05:07 +01:00
Tim-Philipp Müller
1f8e6b4fa5 gst_tag_list_free -> gst_tag_list_unref 2012-06-05 15:05:07 +01:00
Tim-Philipp Müller
52adcbf3be docs: expand taglist section in porting-to-0.11 docs a bit 2012-06-05 15:05:06 +01:00
Wim Taymans
4affde2a4f docs: update negotiation docs
Mention that the acceptcaps query does not have to be recursive
2012-06-05 11:28:38 +02:00
Wim Taymans
70c3a752be queue2: remove obsolete caps code 2012-06-05 09:40:14 +02:00
Wim Taymans
64b5eeefa3 utils: improve debug 2012-06-05 09:39:41 +02:00
Wim Taymans
c4ae921ba6 tests: fix unit test
Before we can change the caps on a sinkpad with fixed caps we need to unfix the
pad caps.
2012-06-05 09:21:10 +02:00
Wim Taymans
b0756827f6 pad: don't pause task on EOS
Elements should not rely on core to pause tasks on EOS.
2012-06-05 09:10:05 +02:00
Wim Taymans
bae0c4b0c6 pad: fix event type check 2012-06-05 09:00:01 +02:00
Wim Taymans
66c88c1bb1 pad: fix 'res' may be used uninitialized in this function 2012-06-04 16:19:26 +02:00
Sebastian Dröge
3a501deb3e funnel: Fix unit test 2012-06-04 13:01:41 +02:00
Sebastian Dröge
09efcf22c8 valve: Fix unit test 2012-06-04 13:01:41 +02:00
Sebastian Dröge
8cc12b05fc pad: Don't accept any buffers or events after EOS 2012-06-04 13:01:40 +02:00
Mark Nauwelaerts
584892bf79 baseparse: also perform state processing upon non-OK return
... since processing might still continue (if e.g. NOT_LINKED)
and then proper state (e.g. offset) needs to be maintained
(e.g. to arrange for a new frame setup).
2012-06-04 11:47:55 +02:00
Sebastian Dröge
5a8c901507 pad: Always return errors for EOS events immediately
For non-EOS events things will error out later during data
flow but after EOS events no data flow is happening.

See bug #677340.
2012-06-04 11:25:47 +02:00
Sebastian Dröge
991ac561e1 pad: Only forward caps events to a pad if it accepts the caps
Fixes bug #677335.
2012-06-04 09:27:35 +02:00
Sebastian Dröge
8e6b5c7acf Revert "pad: Return FALSE if pushing of sticky events failed"
This reverts commit 0f924b922c.

Sticky events should always return TRUE when pushing and will
only cause failures during data flow later.
2012-06-02 20:06:39 +02:00
Tim-Philipp Müller
9b308b2b5b pad: fix variable-set-but-not-used compiler warning 2012-06-02 16:18:46 +01:00
Sebastian Dröge
0ca7b85ead pad: If pushing a sticky event failed, make sure to at least push any pending EOS events
Otherwise a pipeline where one sticky event fails to be sent will
never forward EOS events downstream. This can cause pipelines to
wait forever for EOS on errors.
2012-06-02 17:00:48 +02:00
Sebastian Dröge
0f924b922c pad: Return FALSE if pushing of sticky events failed
Instead of just ignoring failure of pushing sticky events and
returning TRUE as if everything is fine.
2012-06-02 16:02:07 +02:00
Andre Moreira Magalhaes (andrunko)
83559a5970 inputselector: Correctly get current running time when syncing to the segment information
Fixes bug #677263.
2012-06-01 16:37:50 +02:00
Edward Hervey
eb55ee10e7 Automatic update of common submodule
From f1b5a96 to 1fab359
2012-06-01 10:28:30 +02:00
Mike Ruprecht
cc548f5eb6 tests: Add funnel test to cover EOS event handling
Ported from f3b2dd6f in the 0.10 branch
2012-05-31 14:55:11 -04:00
Mike Ruprecht
a71f3ce6e8 funnel: Only emit EOS event if all sinkpads have received one
If multiple sources are plugged into the funnel and one of the
sources emits an EOS, that event is propogated through the funnel
even though other sources connected to the funnel may still be
pushing data. This patch waits to send an EOS event until the
funnel has received an EOS event on each sinkpad.

Ported from d397ea97 in 0.10 branch.
2012-05-31 13:39:05 -04:00
Mike Ruprecht
5e76a19566 tests: Fix invalid read when releasing request pads in funnel tests 2012-05-31 13:09:00 -04:00
Mike Ruprecht
18a73b8ef2 funnel: Fix buffer leak 2012-05-31 13:07:53 -04:00
Andre Moreira Magalhaes (andrunko)
0dca0dac71 inputselector: Don't try to sync on the segment if it has no TIME format
...and wait until it is actually configured and has a format before
trying to sync.
2012-05-31 17:46:23 +02:00
Sebastian Dröge
7aff9dba0e inputselector: No need to broadcast the signal in flush-stop
Everything stopped at this point already.

Conflicts:

	plugins/elements/gstinputselector.c
2012-05-31 17:05:08 +02:00
Sebastian Dröge
865b9a56b2 Automatic update of common submodule
From 92b7266 to f1b5a96
2012-05-31 13:07:49 +02:00
Bastien Nocera
6654bd0300 queue2: Fix property name in the docs
temp-template, not temp-tmpl

https://bugzilla.gnome.org/show_bug.cgi?id=677170
2012-05-31 12:56:22 +02:00
Andre Moreira Magalhaes (andrunko)
2f6dadaa7c inputselector: Properly sync when changing streams
This adds properties to use the clock time for deciding when
to drop buffers for inactive pads and a property to buffer all
not rendered buffers for the active pad to allow pad switching
without losing any buffers at all.

Conflicts:

	plugins/elements/gstinputselector.c
2012-05-31 12:38:20 +02:00
Sebastian Dröge
70a269d422 Automatic update of common submodule
From ec1c4a8 to 92b7266
2012-05-30 12:44:56 +02:00
Sebastian Dröge
0f93fca1ad Automatic update of common submodule
From 3429ba6 to ec1c4a8
2012-05-30 11:18:39 +02:00
Tim-Philipp Müller
d1379f1671 taglist: add guards to make sure taglist is writable when modifying it
Now that taglists are refcounted we need to check if they're
writable before modifying them.
2012-05-29 08:48:36 +01:00
Tim-Philipp Müller
d007ac4a1a taglist: avoid unnecessary string copying when registering tags
Add gst_tag_register_static() - no need to copy all those
string constants, whether translated or not.

API: gst_tag_register_static()
2012-05-29 08:00:28 +01:00
Tim-Philipp Müller
e7dd426a82 check: check for GLib-GIO criticals as well 2012-05-28 00:08:56 +01:00