Edward Hervey
2e1db58e11
gstvalue: Add _append_and_take_value() public variants
...
API: gst_value_array_append_and_take_value
API: gst_value_list_append_and_take_value
We were already using this internally, this makes it public for code
which frequently appends values which are expensive to copy (like
structures, arrays, caps, ...).
Avoids copies of the values for users. The passed GValue will also
be 0-memset'ed for re-use.
New users can replace this kind of code:
gst_value_*_append_value(mycontainer, &myvalue);
g_value_unset(&myvalue);
by:
gst_value_*_append_and_take_value(mycontainer, &myvalue);
https://bugzilla.gnome.org/show_bug.cgi?id=701632
2013-06-05 12:58:05 +02:00
Edward Hervey
e1f520f27c
gstbuffer: Use internal function for buffer_new_wrapped
...
Shaves ~10% instruction calls from the total cost
https://bugzilla.gnome.org/show_bug.cgi?id=701633
2013-06-05 11:15:34 +02:00
Brendan Long
76f0e18f92
input-selector: return FALSE for "active" property if selector is NULL
...
https://bugzilla.gnome.org/show_bug.cgi?id=701323
2013-06-04 17:46:25 +02:00
Andrzej Bieniek
0a32b1e2d6
manual: update elements to match the rest of "Boost priority of a thread" section
2013-06-01 20:10:38 +01:00
Andrzej Bieniek
40d76021ba
manual: fix comment in effectswitch example
2013-06-01 20:10:37 +01:00
Andrzej Bieniek
78f4fecff3
manual: fix a typo in "Inserting data with appsrc" section
2013-06-01 20:10:37 +01:00
Andrzej Bieniek
4f11b70ea7
pwg: fix a few typos
2013-06-01 20:10:37 +01:00
Andrzej Bieniek
55c4db6295
docs: remove double "the"
2013-06-01 20:10:36 +01:00
Krzysztof Konopko
527423fcd9
scripts: improve git-update.sh status message
...
By default when the script is about to exit (normally or due to an error),
it checks whether $ERROR_LOG file exists. If the log file exists, the
script prints a "Failures: " message prefix and dumps the log file to the
output.
Apparently the log file is always created and if the update/build is
successful, the script finishes with a bit misleading "Failures: " message.
An improvement provided with this change lets the log file to be created as
needed, i.e. if there's an error message to be printed. If the file
doesn't exists, the script prints a "Update done" message which clearly
indicates success.
https://bugzilla.gnome.org/show_bug.cgi?id=701177
2013-05-30 23:34:40 +01:00
Wim Taymans
10099e1e70
check: fix position unit test
2013-05-30 07:03:40 +02:00
Wim Taymans
cf4334fbfb
basesink: improve position reporting without clock
...
When no base time or when sync is disabled, use the same logic as
in paused to report position. The logic in PLAYING assumes we use the
clock.
2013-05-30 06:51:24 +02:00
Sebastian Dröge
2253f8fa6f
pad: Fix memory leak in the unit test
2013-05-29 11:36:38 +02:00
Sebastian Dröge
cc7113b619
elementfactory: Add support for checking subtitle/metadata factory types
2013-05-28 12:44:19 +02:00
Sebastian Dröge
ee21c26cea
elementfactory: Add support for checking only the media type of a factory
...
And while at it also add Metadata and Subtitle media types.
2013-05-28 12:41:27 +02:00
Sebastian Dröge
ab6a1085ee
(multi)queue: Don't access query items during flushing
2013-05-27 16:38:18 +02:00
Sebastian Dröge
e472d9d261
multiqueue: Don't do serialized queries when we're flushing
...
Just immediately fail the query, otherwise we would wait forever
for the query to be answered.
2013-05-27 16:22:00 +02:00
Sebastian Dröge
a03435dfba
queue2: First set query result, then signal GCond
2013-05-27 16:08:39 +02:00
Sebastian Dröge
6f042f13ae
queue: Fix handling of serialized queries
...
During FLUSH_START the query needs to be unblocked already, otherwise
it can lead to deadlocks if the FLUSH_START is the result of something
done from the streaming thread of the srcpad (the queue will never be
emptied!).
2013-05-27 15:59:07 +02:00
Sebastian Dröge
cdc429f296
queue2: Unblock any waiting serialize queries on FLUSH_START
...
Fixes some deadlocks during flushing.
And store queue items differently to not accidentially read
already unreffed queries when flushing. Queries are owned by
upstream and not us.
2013-05-27 15:41:14 +02:00
Sebastian Dröge
b6fac17502
queue/queue2/multiqueue: When flushing, make sure to not lose any sticky events
...
https://bugzilla.gnome.org/show_bug.cgi?id=688824
2013-05-27 13:01:43 +02:00
Sebastian Dröge
73895c05b1
pad: Store sticky events even if the pad is flushing
...
But do this only for events that are not dropped by flushing,
i.e. do it only for everything except SEGMENT and EOS.
Without this we might drop a CAPS event if flushing happens
at an unfortunate time and nobody is resending the CAPS event.
https://bugzilla.gnome.org/show_bug.cgi?id=700806
2013-05-27 12:40:50 +02:00
Nicolas Dufresne
5bbc6f1c8c
valve: Don't read sticky flag from unrefed event
2013-05-25 22:03:53 -04:00
Tim-Philipp Müller
789b68e506
tee: fix property description for now-unused "alloc-pad" property
...
Should probably proxy ALLOCATION queries on that though, if set.
But what else? CAPS and ACCEPT_CAPS too?
2013-05-24 23:28:04 +01:00
Tim-Philipp Müller
4d1cb14c68
basetransform: remove 0.10-ism from docs
...
gst_buffer_pad_alloc() never existed, and gst_pad_alloc_buffer()
doesn't exist any more either, so don't mention it in the docs.
https://bugzilla.gnome.org/show_bug.cgi?id=694714
2013-05-24 23:01:09 +01:00
Sebastian Dröge
e692993e79
queue2: Add support for serialized queries if using a memory queue
2013-05-24 19:22:22 +02:00
Sebastian Dröge
46270f8925
queue: Set the last serialized query result to FALSE when flushing
2013-05-24 18:47:24 +02:00
Sebastian Dröge
a79d3a0220
multiqueue: Initialize all GstMultiQueueItem fields in both code paths
2013-05-24 18:42:55 +02:00
Sebastian Dröge
1c6341e6a4
multiqueue: Don't access the query after signalling the waiting thread
...
It might've free'd the query already.
2013-05-24 18:38:40 +02:00
Sebastian Dröge
3b44a44a01
multiqueue: Make sure to always signal any possible pending serialized queries
...
And don't unref them when flushing the queue, they're owned by the caller!
https://bugzilla.gnome.org/show_bug.cgi?id=700342
2013-05-24 18:30:44 +02:00
Sebastian Dröge
3e515099ec
basetransform: Return GST_FLOW_ERROR if the allocator did not allow to allocate a buffer
2013-05-24 14:37:37 +02:00
Olivier Crête
bd5708a0cd
docs: Remove mention of gconf* elements
...
Instead recommend pulsesrc/sink for audio, there is nothing GNOME
specific for video.
2013-05-24 16:25:09 +09:00
Sebastian Dröge
1d1946a321
typefind: Handle the force-caps property more similar to all typefinding code flow
...
This makes sure that events happen in order and simplifies the code a bit.
2013-05-15 13:22:04 +02:00
Sebastian Dröge
516611bc33
check: Fix event handling in gst_check_element_push_buffer_list()
2013-05-15 11:22:25 +02:00
Sebastian Dröge
fd482f69a5
Automatic update of common submodule
...
From 5edcd85 to 098c0d7
2013-05-15 10:51:01 +02:00
Sebastian Dröge
3d44f542ed
pad: Only check if we get buffers before stream-start/segment if compiling without G_DISABLE_ASSERT
...
In releases this is set usually.
2013-05-10 16:03:34 +02:00
Nicolas Dufresne
a1866e64c5
check: Add helper that sends initial events
...
https://bugzilla.gnome.org/show_bug.cgi?id=700033
2013-05-10 09:23:28 +02:00
Sebastian Dröge
d500ffc300
pad: Fix uninitialized variable compiler warning
2013-05-09 17:55:21 +02:00
Sebastian Dröge
1b87f0c36a
pad: Make sure pending, older sticky events are sent downstream in dynamic linking scenarios
...
If a pad block was triggered from sending a sticky event downstream, it
could happen that the pad block is relinking pads, which then requires
to resend previous sticky events.
2013-05-09 17:55:21 +02:00
Sebastian Dröge
114f9584d4
tests: Fix event order warnings and dataflow before stream-start/segment event
2013-05-09 13:32:07 +02:00
Sebastian Dröge
f38496067d
basetransform: Properly port unit test to actually use caps and check results
2013-05-09 13:31:38 +02:00
Sebastian Dröge
8e1f70473b
queue: Store sticky events on the srcpad if we're dropping them because of leaking
2013-05-09 12:50:20 +02:00
Sebastian Dröge
f93c52684a
outputselector: Always forward sticky events to all pads
2013-05-09 12:27:12 +02:00
Sebastian Dröge
1d40478014
inputselector: Forward all sticky events, including stream-start
2013-05-09 12:15:48 +02:00
Sebastian Dröge
8bedcf450f
pad: Warn if data flow happens before stream-start or segment event
2013-05-09 11:05:50 +02:00
Sebastian Dröge
430285b5c8
pad: Only let gst_pad_sticky_events_foreach() iterate over existing events
2013-05-09 10:59:41 +02:00
Sebastian Dröge
e0f59d22eb
pad: If we push sticky events because of another sticky event, only push those that come before the new event
...
https://bugzilla.gnome.org/show_bug.cgi?id=699937
2013-05-09 10:29:11 +02:00
Sebastian Dröge
172817e332
capsfilter: Add more debug output and forward caps events immediately too
2013-05-09 09:51:13 +02:00
Sebastian Dröge
ae47133360
pad: No sticky events must arrive after EOS
2013-05-09 09:51:13 +02:00
Sebastian Dröge
e4cbae46cc
capsfilter: Fix typo in last commit
2013-05-09 09:38:35 +02:00
Nicolas Dufresne
e8a9ffa092
pad: Improve warning message naming events type name
...
With this patch, message should look like ¨Sticky event misordering, got
'caps' before 'stream-start'¨ making it faster to debug.
https://bugzilla.gnome.org/show_bug.cgi?id=688188
2013-05-09 09:35:30 +02:00