Commit graph

15135 commits

Author SHA1 Message Date
Sebastian Dröge
612918c43c tee: Remove dyn lock
It was used for pad-alloc in 0.10 but currently is completely unused
and not necessary. All pad access is protected by the tee object lock
and keeping another reference to the current pad.
2014-01-03 09:44:18 +01:00
Sebastian Dröge
bdf3f4237d tee: Keep another ref to our one and only srcpad around while pushing
A pad probe on that pad might otherwise just release the pad, drop
the last reference and cause great misery.

https://bugzilla.gnome.org/show_bug.cgi?id=721300
2014-01-03 09:44:11 +01:00
Sebastian Dröge
0716b35219 pad: Keep an extra ref of the pad when calling an IDLE probe immediately
The callback might destroy the pad.
2013-12-31 11:28:34 +01:00
Sebastian Dröge
fac8b48c27 pad: Only call IDLE probes if we are actually idle
Also only check the data types for non-IDLE probes. When we
are idle, we have no data type obviously.

Previously we were calling IDLE probes during data flow whenever
a non-blocking probe would be called. The pad was usually not idle
at that time.
2013-12-31 11:28:27 +01:00
Sebastian Dröge
ec090a3af8 pad: Don't ignore probe callback return value when immediately calling IDLE probe
https://bugzilla.gnome.org/show_bug.cgi?id=721096
2013-12-31 11:28:18 +01:00
Pedro Côrte-Real
a142ddc5c5 scripts: git-update.sh: fix for non-master branches
Pull from tracking branch instead of origin/master, so
that this works with e.g. 1.2 as well.
2013-12-29 14:06:55 +00:00
Sebastian Dröge
8f01a7c6f8 Release 1.2.2 2013-12-26 17:34:18 +01:00
Sebastian Dröge
bdc192923d Update .po files 2013-12-26 17:31:38 +01:00
Sebastian Dröge
18ad2105bb po: Update translations 2013-12-26 16:44:57 +01:00
Sebastian Dröge
69841d9ce8 funnel: Setting the PROXY_CAPS flag on the srcpad does not make much sense
funnel outputs whatever one of the upstreams currently outputs, a caps
query to a random upstream does not give the right answer here.
2013-12-26 09:00:27 +01:00
Sebastian Dröge
7e62ff2dc6 funnel: Proxy CAPS and ALLOCATION queries 2013-12-26 09:00:19 +01:00
Thiago Santos
1c7809bc0d multiqueue: post 100% buffering if single queue is not linked
This makes buffering stop in case a stream switch happens. This is
important for adaptive streams that can disable not-linked streams
to avoid consuming the network bandwidth.

https://bugzilla.gnome.org/show_bug.cgi?id=719575
2013-12-26 08:59:58 +01:00
Wim Taymans
df459aa3c5 queue: don't ignore event return value
Pass the event return value upstream.
Remove strange goto construct.
2013-12-13 14:25:20 +01:00
Tim-Philipp Müller
24f79307cd tests: fix GstBus unit test with latest GLib
g_source_remove() works on the default main context, and
we're doing things with a custom context. Fixes warning
with newer GLib versions.
2013-12-06 23:45:51 +00:00
Tim-Philipp Müller
f2e68a23d7 tools: gst-launch: don't try to remove already-removed GSource from main loop
It's considered a programming error in recent GLib versions now.
We may already have removed the source by returning FALSE from
the callback if it was fired. Fixes warning with newer GLibs
when interrupting a pipeline with Control-C.
2013-12-06 23:37:23 +00:00
Olivier Crête
d935be2d78 multiqueue: Wake up on reconfigure event
After patch bda406c4, the state of the singlequeue was set to OK, but nothing
would then wake up the thread, as the other wakeup functions only look at
singlequeues that are marked as having received as not-linked.

https://bugzilla.gnome.org/show_bug.cgi?id=708200
2013-12-03 15:42:59 -05:00
Thiago Santos
8bc7f086e4 gstpad: drop assertion on gst_pad_peer_query_position
It is a 'both' query, so it can be sent both ways
2013-11-29 15:31:57 -03:00
Thiago Santos
34a28274b5 inputselector: handle gap events
Use gap events to advance the selector's pad position.

This is relevant to keep sync_streams mode working when one of the
streams doesn't have data all the time.
2013-11-29 15:31:57 -03:00
Wim Taymans
4be591c2f8 Revert "ghostpad: copy sticky events to SRC ghostpads"
This reverts commit 8162a583a4.

Automatically copying the sticky events makes it impossible for apps
and elements to filter the events with event probes. This causes
regressions (See #719437). The best option is to let the app/element
copy and filter the events themselves after the ghostpad target is
set.
2013-11-29 19:33:10 +01:00
Sebastian Dröge
5bc3de3af4 bin: Resync iterator if necessary 2013-11-26 12:43:18 +01:00
Mark Nauwelaerts
d544b074b3 baseparse: ensure to preserve upstream timestamps
... rather than have subclass coming up with an internally parsed one.

Fixes https://bugzilla.gnome.org/show_bug.cgi?id=707230
2013-11-26 12:40:57 +01:00
Wim Taymans
19c98d0b79 ghostpad: copy sticky events to SRC ghostpads
Update the sticky events on SRC ghostpads when retargeting. This ensures
that the ghostpad has the exect same sticky events as the target pad. We
don't want to do this for SINK ghostpads, they got the events from
downstream and we don't want to overwrite them with the target pad
events.

Fixes https://bugzilla.gnome.org/show_bug.cgi?id=707621
2013-11-26 12:39:01 +01:00
Sebastian Rasmussen
238dfb5f42 gstutils: Escape stream id format in comments
These must be escaped for gtk-doc to parse the comments without warnings.

https://bugzilla.gnome.org/show_bug.cgi?id=714989
2013-11-26 12:36:56 +01:00
Olivier Crête
88acf3515e query: Fix gi annotations of gst_structure_new_custom() 2013-11-26 11:00:47 +00:00
Philippe Normand
e8346c5789 gst-launch: exit with an error code when an error occured
If the pipeline failed to pre-roll or the user interrupted the
execution then set the exit code to a positive value.

https://bugzilla.gnome.org/show_bug.cgi?id=712300
2013-11-26 11:00:40 +00:00
Wim Taymans
5c982f6113 pluginloader: check read/write before closed
first try to read or write on the socket before checking the closed state. This
makes sure we handle all data on the socket before erroring out.
2013-11-22 17:07:13 +01:00
Wim Taymans
366f80f4a3 poll: improve debug
So that we can see the return values of functions in the log.
2013-11-22 17:07:03 +01:00
Sebastian Dröge
eca30b66e8 Release 1.2.1 2013-11-09 12:09:00 +01:00
Sebastian Dröge
fca0164995 Update .po files 2013-11-09 12:08:51 +01:00
Sebastian Dröge
c39a5ca32a po: Update translations 2013-11-09 12:00:23 +01:00
Mark Nauwelaerts
fe63255c4e baseparse: try first frame pts and dts for a valid start timestamp 2013-11-09 10:30:36 +01:00
Mark Nauwelaerts
11ce36d40f baseparse: print proper variable in debug statement 2013-11-09 10:29:55 +01:00
Mark Nauwelaerts
7e2277000c segment: resurrect sanitizing start and stop for seeking 2013-11-09 10:29:37 +01:00
Mark Nauwelaerts
8d818eb981 basesrc: mind boggling wrap when comparing offsets 2013-11-09 10:29:16 +01:00
Stefan Sauer
07c88f32e4 typefind: use g_get_prgname() for error message 2013-11-09 10:22:03 +01:00
Wim Taymans
19c5a37110 valve: proxy caps and allocation
Proxy the caps queries on the srcpad as well.
Proxy the allocation query on the sinkpad.
2013-11-06 10:36:53 +01:00
Sebastian Dröge
eac533f365 datetime: Make sure to include gst_private.h before glib-compat-private.h
We need to define the GLib log domain before including glib.h, which is
included by glib-compat-private.h.
2013-10-15 11:45:17 +02:00
Jan Schmidt
1a148ecb16 parse: Fix transfer annotations for parse_launch functions.
gst_parse_launchv, gst_parse_launchv_full and gst_parse_launch_full
all return floating refs, the same as gst_parse_launch, which just
calls gst_parse_launch_full internally anyway.

Add a unit test assertion to check it's true.

Spotted by nemequ on IRC.
2013-10-13 21:54:19 +02:00
Thibault Saunier
2bcafd4d56 collectpads: Call the collected function while it returns FLOW_OK
This allows us to make sure the elements is EOS and does not have
remaining buffers to be drained.

https://bugzilla.gnome.org/show_bug.cgi?id=709637
2013-10-10 18:57:45 -03:00
Reynaldo H. Verdejo Pinochet
9d63968830 core: Fix max DEBUG_LEVEL incongruence on 5 vs 9
In the docs and the autocompletion logic the maximum
value jumped incongruently between 5 and 9.
2013-10-10 13:12:59 -07:00
Fabian Kirsch
4964611960 docs: Fix some reference URIs
https://bugzilla.gnome.org/show_bug.cgi?id=709804
2013-10-10 13:20:22 +02:00
Edward Hervey
59b2eb0d79 pluginloader: Check errors on the proper fd
Most likely a copy-paste error from the block before.

If we're going to check for error/closed on the write fd... do it
on the write fd
2013-09-30 10:34:42 +02:00
Tim-Philipp Müller
9ac57ff58a Automatic update of common submodule
From 6b03ba7 to 7412249
2013-09-24 17:23:54 +01:00
Sebastian Dröge
cd202c647b Release 1.2.0 2013-09-24 14:07:02 +02:00
Sebastian Dröge
74d2a1964b Update .po files 2013-09-24 14:06:28 +02:00
Sebastian Dröge
8f0c9c7055 context: Add test for the context caching in GstBin
https://bugzilla.gnome.org/show_bug.cgi?id=708668
2013-09-24 13:11:47 +02:00
Sebastian Dröge
02a4830096 Revert "Potential GstContext regression"
This reverts commit e658379534.

This test commit should've never been pushed. Oops.
2013-09-24 12:47:52 +02:00
Sebastian Dröge
ccfca8f66f bin: Make sure to cache context types that we did not store yet
https://bugzilla.gnome.org/show_bug.cgi?id=708668
2013-09-24 12:46:52 +02:00
Alex Ashley
e658379534 Potential GstContext regression
Since the refactoring of GstContext (commits
qc9fa2771b508e9aaeecc700e66e958190476f,
a7f5dc8b8a,
690326f906dc82e41ea58b81cdb2e3e88b754,
d367dc1b0d4ecb37f4d27267e03d7bf0c6c06a6, and
82d158aed3f2e8545e1e7d35085085ff58f18) I am no longer able to get
a shared context for an element that is used twice in a pipeline.

I used the documentation and eglglessink as my reference for
implementing the GstContext logic.

As the code was tied to a hardware decoder, I have ported the
GstContext code to fakesink to show the problem. Using the old
API a single ExampleMgr instance is created, but using the new
API each element is creating its own instance.
2013-09-24 12:28:55 +02:00
Sebastian Dröge
20f1c96c89 collectpads: Make sure that the object lock is always taken when accessing the private pad list
https://bugzilla.gnome.org/show_bug.cgi?id=708636
2013-09-24 10:44:34 +02:00