platform/upstream/gstreamer.git
10 years agopad: only check event order when something changed
Wim Taymans [Thu, 26 Sep 2013 09:32:50 +0000 (11:32 +0200)]
pad: only check event order when something changed

Check the event order in dataflow only when something changed instead
of for each buffer.

10 years agoAutomatic update of common submodule
Tim-Philipp Müller [Tue, 24 Sep 2013 17:28:05 +0000 (18:28 +0100)]
Automatic update of common submodule

From 6b03ba7 to 865aa20

10 years agoconfigure: Actually use 1.3.0.1 as version to make configure happy
Sebastian Dröge [Tue, 24 Sep 2013 13:05:16 +0000 (15:05 +0200)]
configure: Actually use 1.3.0.1 as version to make configure happy

10 years agoBack to development
Sebastian Dröge [Tue, 24 Sep 2013 13:00:17 +0000 (15:00 +0200)]
Back to development

10 years agoRelease 1.2.0 0.10.36 1.2.0 submit/devel/gst/20131028.042525 upstream/0.10.36
Sebastian Dröge [Tue, 24 Sep 2013 12:07:02 +0000 (14:07 +0200)]
Release 1.2.0

10 years agoUpdate .po files
Sebastian Dröge [Tue, 24 Sep 2013 12:06:28 +0000 (14:06 +0200)]
Update .po files

10 years agocontext: Add test for the context caching in GstBin
Sebastian Dröge [Tue, 24 Sep 2013 11:10:36 +0000 (13:10 +0200)]
context: Add test for the context caching in GstBin

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

10 years agoRevert "Potential GstContext regression"
Sebastian Dröge [Tue, 24 Sep 2013 10:47:52 +0000 (12:47 +0200)]
Revert "Potential GstContext regression"

This reverts commit e658379534eb4a90b654d90f1d0bdf86f37c6e31.

This test commit should've never been pushed. Oops.

10 years agobin: Make sure to cache context types that we did not store yet
Sebastian Dröge [Tue, 24 Sep 2013 10:46:52 +0000 (12:46 +0200)]
bin: Make sure to cache context types that we did not store yet

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

10 years agoPotential GstContext regression
Alex Ashley [Tue, 24 Sep 2013 09:29:06 +0000 (10:29 +0100)]
Potential GstContext regression

Since the refactoring of GstContext (commits
qc9fa2771b508e9aaeecc700e66e958190476f,
a7f5dc8b8af837f01782d1572379948ff62daab7,
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.

10 years agocollectpads: Make sure that the object lock is always taken when accessing the privat...
Sebastian Dröge [Tue, 24 Sep 2013 08:42:06 +0000 (10:42 +0200)]
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

10 years agocollectpads: Use private pad list in set_flushing_unlocked
Mathieu Duponchelle [Tue, 17 Sep 2013 21:23:34 +0000 (23:23 +0200)]
collectpads: Use private pad list in set_flushing_unlocked

pads->data is the public list. It is dynamically rebuilt at each call to
check_collected, in check_pads to be specific. When you add a pad and
collectpads have been started, it is not added to the public list.

Thus there exists a possible race where :

1) You would add a pad to collectpads while running.
2) You set collectpads to flushing before check_collected has been called again
-> the pad is not set to flushing
3) the pad starts pushing data as downstream might not be prepared, in the case
of adder it then returns FLOW_FLUSHING.
4) elements like demuxers, when they get a FLOW_FLUSHING, stop their tasks,
never to be seen again.

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

10 years agotests: handle unscheduled entries correctly
Wim Taymans [Mon, 23 Sep 2013 09:47:14 +0000 (11:47 +0200)]
tests: handle unscheduled entries correctly

Make the testclock return GST_CLOCK_UNSCHEDULED when an unscheduled entry is
used for gst_clock_wait() or gst_clock_wait_async().

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

10 years agogst-uninstalled: Allow specifying the checkout directory by env variable
Edward Hervey [Sun, 22 Sep 2013 09:09:36 +0000 (11:09 +0200)]
gst-uninstalled: Allow specifying the checkout directory by env variable

For some rare cases, one might not be able to use the hardcoded $HOME/gst
location yet would still want to use the gst-uninstalled script as-is (which
has the benefit of being constantly updated).

For these cases, the checkout directory can be specified with the
GST_UNINSTALLED_ROOT environment variable.

Ex:
export GST_UNINSTALLED_ROOT=$HOME/somewhere/with/checkouts

And then just call gst-uninstalled directly:
$GST_UNINSTALLED_ROOT/gstreamer/gst-uninstalled

10 years agoAutomatic update of common submodule
Edward Hervey [Fri, 20 Sep 2013 14:16:26 +0000 (16:16 +0200)]
Automatic update of common submodule

From b613661 to 6b03ba7

10 years agoAutomatic update of common submodule
Tim-Philipp Müller [Thu, 19 Sep 2013 17:42:31 +0000 (18:42 +0100)]
Automatic update of common submodule

From 74a6857 to b613661

10 years agoAutomatic update of common submodule
Tim-Philipp Müller [Thu, 19 Sep 2013 16:34:27 +0000 (17:34 +0100)]
Automatic update of common submodule

From 12af105 to 74a6857

10 years agocheck: testclock: fix function guards
Tim-Philipp Müller [Thu, 19 Sep 2013 16:12:14 +0000 (17:12 +0100)]
check: testclock: fix function guards

Should be g_return_*() not g_assert(), even if it's for tests only.

10 years agocheck: testclock: don't put code with side-effects in g_assert()
Tim-Philipp Müller [Thu, 19 Sep 2013 15:43:18 +0000 (16:43 +0100)]
check: testclock: don't put code with side-effects in g_assert()

Fixes unit test failures when -DG_DISABLE_ASSERT is used.

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

10 years agogstcontext: Fix return values some more
Edward Hervey [Thu, 19 Sep 2013 10:07:56 +0000 (12:07 +0200)]
gstcontext: Fix return values some more

Return value is a boolean not a pointer

10 years agocontext: Fix return values for gst_context_has_context_type() in assertions
Sebastian Dröge [Thu, 19 Sep 2013 09:49:26 +0000 (11:49 +0200)]
context: Fix return values for gst_context_has_context_type() in assertions

10 years agoBack to development
Sebastian Dröge [Thu, 19 Sep 2013 09:34:51 +0000 (11:34 +0200)]
Back to development

10 years agoRelease 1.1.90 1.1.90
Sebastian Dröge [Thu, 19 Sep 2013 08:48:24 +0000 (10:48 +0200)]
Release 1.1.90

10 years agoUpdate .po files
Sebastian Dröge [Thu, 19 Sep 2013 08:05:51 +0000 (10:05 +0200)]
Update .po files

10 years agocontext: Add convenience function gst_context_has_context_type()
Sebastian Dröge [Thu, 19 Sep 2013 07:49:40 +0000 (09:49 +0200)]
context: Add convenience function gst_context_has_context_type()

10 years agopo: Update translations
Sebastian Dröge [Thu, 19 Sep 2013 07:42:15 +0000 (09:42 +0200)]
po: Update translations

10 years agomessage: Implement getting the name of the context message types
Sebastian Dröge [Wed, 18 Sep 2013 21:07:31 +0000 (23:07 +0200)]
message: Implement getting the name of the context message types

10 years agocontext: Fix unit test for GstContext changes
Sebastian Dröge [Tue, 17 Sep 2013 19:36:22 +0000 (21:36 +0200)]
context: Fix unit test for GstContext changes

10 years agogst-launch: Update for GstContext changes
Sebastian Dröge [Tue, 17 Sep 2013 12:34:47 +0000 (14:34 +0200)]
gst-launch: Update for GstContext changes

10 years agocontext: Update docs
Sebastian Dröge [Tue, 17 Sep 2013 12:29:06 +0000 (14:29 +0200)]
context: Update docs

10 years agobin: Implement context caching and propagation again
Sebastian Dröge [Tue, 17 Sep 2013 12:25:10 +0000 (14:25 +0200)]
bin: Implement context caching and propagation again

10 years agomessage/query: Simplify CONTEXT messages/queries to only contain a single type
Sebastian Dröge [Tue, 17 Sep 2013 11:50:08 +0000 (13:50 +0200)]
message/query: Simplify CONTEXT messages/queries to only contain a single type

10 years agocontext: Update documentation
Sebastian Dröge [Tue, 17 Sep 2013 11:33:33 +0000 (13:33 +0200)]
context: Update documentation

10 years agocontext: Change GstContext to contain only a single context
Sebastian Dröge [Tue, 17 Sep 2013 11:28:42 +0000 (13:28 +0200)]
context: Change GstContext to contain only a single context

It was unintuitive that GstContext was actually a list of different
contexts. GstContext now is only a type string and a structure to
contain the actual context.

10 years agoelement: Remove GstContext caching
Sebastian Dröge [Tue, 17 Sep 2013 11:12:28 +0000 (13:12 +0200)]
element: Remove GstContext caching

10 years agocontext: Add persistent qualifier for a context
Sebastian Dröge [Tue, 17 Sep 2013 11:10:53 +0000 (13:10 +0200)]
context: Add persistent qualifier for a context

Non-persistent contexts are removed when elements go back
to NULL state, persistent contexts are not. Applications
most likely want to set persistent contexts.

10 years agoquery: Make CONTEXT query upstream and downstream
Sebastian Dröge [Tue, 17 Sep 2013 11:10:16 +0000 (13:10 +0200)]
query: Make CONTEXT query upstream and downstream

10 years agoevent: Remove CONTEXT downstream event
Sebastian Dröge [Tue, 17 Sep 2013 11:09:34 +0000 (13:09 +0200)]
event: Remove CONTEXT downstream event

This is going to be implemented with an upstream query instead
for consistency and simplicity.

10 years agogst: Stop all unused threads in GThreadPool in gst_deinit()
Jonas Holmberg [Fri, 13 Sep 2013 12:41:45 +0000 (14:41 +0200)]
gst: Stop all unused threads in GThreadPool in gst_deinit()

Since the default number of max unused threads in GThreadPool has been
changed from 0 to 2 it needs to be set to 0 to stop all threads or
valgrind will report them as memory leaks.

10 years agocontrolbindings: fix pspec relaxation for control source properties
Rico Tzschichholz [Tue, 10 Sep 2013 15:39:30 +0000 (16:39 +0100)]
controlbindings: fix pspec relaxation for control source properties

The change should have been from PARAM_CONSTRUCT_ONLY to
PARAM_CONSTRUCT, otherwise bindings are affected, since
they look for the CONSTRUCT flag.

See ec55363d

10 years agoqueue2: Only update current level if we already downloaded a range
Sebastian Dröge [Tue, 10 Sep 2013 08:15:03 +0000 (10:15 +0200)]
queue2: Only update current level if we already downloaded a range

Otherwise queue->level is NULL and dereferencing that is not a good
idea in general.

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

10 years agometa: Deprecate GST_META_TAG_MEMORY
Sebastian Dröge [Mon, 9 Sep 2013 13:40:25 +0000 (15:40 +0200)]
meta: Deprecate GST_META_TAG_MEMORY

The GQuarks are not exported by any public API

10 years agometa: Add a #define for memory metadata
Mathieu Duponchelle [Wed, 21 Aug 2013 22:02:28 +0000 (00:02 +0200)]
meta: Add a #define for memory metadata

10 years agobasetransform: implement a default transform_meta.
Mathieu Duponchelle [Wed, 21 Aug 2013 22:01:44 +0000 (00:01 +0200)]
basetransform: implement a default transform_meta.
If a metadata has no dependency as shown by the tags, copy it.

10 years agometa: API: Add gst_meta_api_type_get_tags() to get all meta tags.
Mathieu Duponchelle [Thu, 22 Aug 2013 19:32:36 +0000 (21:32 +0200)]
meta: API: Add gst_meta_api_type_get_tags() to get all meta tags.

10 years agotests/capsfilter: Fix memory leak and compare caps directly instead of strcmp()
Sebastian Dröge [Mon, 9 Sep 2013 12:21:56 +0000 (14:21 +0200)]
tests/capsfilter: Fix memory leak and compare caps directly instead of strcmp()

10 years agotests/capsfilter: Test caps-related queries and property
Sebastian Rasmussen [Fri, 6 Sep 2013 21:03:54 +0000 (23:03 +0200)]
tests/capsfilter: Test caps-related queries and property

10 years agoUpdate the buffering state before stalling for more data
Gustavo Noronha Silva [Fri, 6 Sep 2013 18:09:46 +0000 (15:09 -0300)]
Update the buffering state before stalling for more data

In some cases the wait for more data was happening without updating
the buffering state, meaning the API user would not be able to notice
it should pause the pipeline and update UI to indicate that is the
case, the video would likely stutter instead.

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

10 years agobasesrc: preserve seqnum on segments after seeks
Thiago Santos [Wed, 4 Sep 2013 18:28:10 +0000 (15:28 -0300)]
basesrc: preserve seqnum on segments after seeks

The seqnum of the segment after a seek should be the same of
the seek event. Downstream elements might rely on seqnums to
identify events related to a seek.

This is particularly important when a demuxer maps a TIME seek
into a BYTES seek for upstream and it needs to identify the
corresponding segment event and map it back into TIME to push
downstream, possibly using the values from the original seek
event.

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

10 years agocollectpads: Don't unref NULL GstCollectData
Zaheer Abbas Merali [Thu, 5 Sep 2013 12:14:42 +0000 (14:14 +0200)]
collectpads: Don't unref NULL GstCollectData

If a pad is removed while a collectpads element (say adder) is in a chain
function waiting to be collected, there is a possibility that an unref happens
on a NULL pointer.

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

10 years agoRemove PyXML from spec file, it is not longer needed
Christian Fredrik Kalager Schaller [Wed, 4 Sep 2013 15:11:20 +0000 (17:11 +0200)]
Remove PyXML from spec file, it is not longer needed

10 years agotypefind: Add missing break after handling the GAP event
Sebastian Dröge [Wed, 4 Sep 2013 12:40:57 +0000 (14:40 +0200)]
typefind: Add missing break after handling the GAP event

Thanks to Edward Hervey for noticing.

10 years agotools: move gst-plot-timeline.py into scripts directory
Tim-Philipp Müller [Wed, 4 Sep 2013 08:18:55 +0000 (09:18 +0100)]
tools: move gst-plot-timeline.py into scripts directory

So it's not in PATH in an uninstalled setup (thwarting
gst-play autocompletion).

10 years agomultiqueue: Don't reduce single queue visible size below its current level
Matej Knopp [Tue, 3 Sep 2013 21:59:05 +0000 (23:59 +0200)]
multiqueue: Don't reduce single queue visible size below its current level

If the multiqueue has automatically grown chances are good that
we will cause the pipeline to starve if the maximum level is reduced
below that automatically grown size.

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

10 years agooutputselector: Don't adjust segment->start to the current time when switching pads
Sebastian Dröge [Mon, 2 Sep 2013 11:53:51 +0000 (13:53 +0200)]
outputselector: Don't adjust segment->start to the current time when switching pads

This does not make any sense at all and breaks timestamp->running_time
calculations in unpredictable ways.

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

10 years agocapsfilter: Delete link directly in pending_events.
Mathieu Duponchelle [Thu, 29 Aug 2013 21:18:31 +0000 (23:18 +0200)]
capsfilter: Delete link directly in pending_events.

When removing a segment event.

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

10 years agobasesink: demote log message, don't spam INFO level when handling buffer lists
Tim-Philipp Müller [Thu, 29 Aug 2013 10:07:38 +0000 (11:07 +0100)]
basesink: demote log message, don't spam INFO level when handling buffer lists

10 years agoBack to development
Sebastian Dröge [Wed, 28 Aug 2013 11:26:28 +0000 (13:26 +0200)]
Back to development

10 years agoRelease 1.1.4 1.1.4
Sebastian Dröge [Wed, 28 Aug 2013 10:36:16 +0000 (12:36 +0200)]
Release 1.1.4

10 years agoUpdate .po files
Sebastian Dröge [Wed, 28 Aug 2013 10:36:01 +0000 (12:36 +0200)]
Update .po files

10 years agopo: update translations
Sebastian Dröge [Wed, 28 Aug 2013 10:30:00 +0000 (12:30 +0200)]
po: update translations

10 years agofilesink: please gcc (avoid a warn_unused_result warning)
Alessandro Decina [Tue, 27 Aug 2013 07:31:22 +0000 (09:31 +0200)]
filesink: please gcc (avoid a warn_unused_result warning)

10 years agofilesink: flush (discard data) on FLUSH_STOP
Alessandro Decina [Tue, 27 Aug 2013 05:51:35 +0000 (07:51 +0200)]
filesink: flush (discard data) on FLUSH_STOP

Reset the write position to 0 and truncate the file on FLUSH_STOP.

10 years agotests: filesink: small refactoring
Alessandro Decina [Tue, 27 Aug 2013 05:05:11 +0000 (07:05 +0200)]
tests: filesink: small refactoring

10 years agotools: gst-launch: don't print properties being reset when shutting down
Tim-Philipp Müller [Mon, 26 Aug 2013 12:19:10 +0000 (13:19 +0100)]
tools: gst-launch: don't print properties being reset when shutting down

It's just noise.

10 years agobasetransform: Don't push out identical caps
Edward Hervey [Thu, 22 Aug 2013 17:01:32 +0000 (19:01 +0200)]
basetransform: Don't push out identical caps

This avoids triggering plenty of extra code/methods/overhead downstream when
we can just quickly check whenever we want to set caps whether they are
identical or not

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

10 years agodocs: flesh out gst_sample_get_buffer() a little
Tim-Philipp Müller [Wed, 21 Aug 2013 11:21:43 +0000 (12:21 +0100)]
docs: flesh out gst_sample_get_buffer() a little

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

10 years agoparse: make grammar.y work with Bison 3
Kerrick Staley [Wed, 21 Aug 2013 06:59:29 +0000 (23:59 -0700)]
parse: make grammar.y work with Bison 3

YYLEX_PARAM is no longer supported in Bison 3.

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

10 years agosample: Add gst_sample_copy()
Wonchul Lee [Tue, 20 Aug 2013 08:15:41 +0000 (17:15 +0900)]
sample: Add gst_sample_copy()

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

10 years agobuffer: Fix gst_buffer_memcmp() where the buffer is smaller than size
Olivier Crête [Mon, 19 Aug 2013 18:55:22 +0000 (14:55 -0400)]
buffer: Fix gst_buffer_memcmp() where the buffer is smaller than size

Also add unit tests for gst_buffer_memcmp

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

10 years agodocs: flesh out gst_element_query_{duration,position} docs a bit
Tim-Philipp Müller [Tue, 20 Aug 2013 16:06:49 +0000 (17:06 +0100)]
docs: flesh out gst_element_query_{duration,position} docs a bit

10 years agotaglist: handle publisher and interpreted-by tags
Matthieu Bouron [Wed, 14 Aug 2013 15:18:59 +0000 (16:18 +0100)]
taglist: handle publisher and interpreted-by tags

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

10 years agopluginloader: Don't call memcpy() with NULL src and 0 length
Sebastian Dröge [Tue, 20 Aug 2013 11:58:24 +0000 (13:58 +0200)]
pluginloader: Don't call memcpy() with NULL src and 0 length

10 years agoqueue: Properly unlock the sinkpad streaming thread when deactivating the pad
Sebastian Dröge [Tue, 20 Aug 2013 08:16:41 +0000 (10:16 +0200)]
queue: Properly unlock the sinkpad streaming thread when deactivating the pad

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

10 years agoqueue2: Properly unlock the sinkpad streaming thread when deactivating the pad
Sebastian Dröge [Tue, 20 Aug 2013 08:16:05 +0000 (10:16 +0200)]
queue2: Properly unlock the sinkpad streaming thread when deactivating the pad

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

10 years agomultiqueue: Clean up after the streaming thread has stopped
Sebastian Dröge [Mon, 19 Aug 2013 14:38:50 +0000 (16:38 +0200)]
multiqueue: Clean up after the streaming thread has stopped

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

10 years agoqueue2: Clean up after the streaming thread has stopped
Sebastian Dröge [Mon, 19 Aug 2013 14:38:40 +0000 (16:38 +0200)]
queue2: Clean up after the streaming thread has stopped

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

10 years agoqueue: Clean up after the streaming thread has stopped
Sebastian Dröge [Mon, 19 Aug 2013 14:38:16 +0000 (16:38 +0200)]
queue: Clean up after the streaming thread has stopped

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

10 years agoparse: Add GST_FLAG_NO_SINGLE_ELEMENT_BINS
Brendan Long [Mon, 1 Jul 2013 20:04:46 +0000 (14:04 -0600)]
parse: Add GST_FLAG_NO_SINGLE_ELEMENT_BINS

This makes gst_parse_bin_from_description() return an element instead of
a bin if there's only one element. Also changed gstparse.c to use this,
so gst-launch won't create superfluous bins.

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

10 years agoquery: return NULL when parsing uri redirection that was not set
Arnaud Vrac [Fri, 16 Aug 2013 18:36:53 +0000 (20:36 +0200)]
query: return NULL when parsing uri redirection that was not set

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

10 years agobuffer: Update since marker for gst_buffer_extract_dup() to 1.0.10
Sebastian Dröge [Sun, 18 Aug 2013 09:48:40 +0000 (11:48 +0200)]
buffer: Update since marker for gst_buffer_extract_dup() to 1.0.10

10 years agoqueue2: don't crash on EOS if queue is empty
Tim-Philipp Müller [Fri, 16 Aug 2013 15:45:41 +0000 (16:45 +0100)]
queue2: don't crash on EOS if queue is empty

Fixes spurious crash in test_simple_shutdown_while_running
unit test.

10 years agoqueue2: don't change global buffering state from within query handler
Tim-Philipp Müller [Fri, 16 Aug 2013 15:28:12 +0000 (16:28 +0100)]
queue2: don't change global buffering state from within query handler

When a buffering query is handled it uses the get_buffering_percent()
function to get some statitics. Unfortunately this function also
calculates whether the queue should be buffering and adapts the
global queue2 state in case of state transitions from/to buffering
(including whether a buffering message was posted on the bus!).

This means that there is a race which can cause buffering messages
to never posted if the global state changes happen as a result of aa
query instead of resulting from bytes flowing in/out.

Spotted by Sjoerd Simons.

Change to only query state in get_buffering_percent() and update
state only in update_buffering().

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

10 years agoqueue2: update buffering when changing capacity
Wim Taymans [Fri, 16 Aug 2013 10:54:38 +0000 (12:54 +0200)]
queue2: update buffering when changing capacity

When the capacity of the queue changes, make sure we post an updated buffering
message because we might suddenly have completed the buffering stage.

10 years agoFree thread pools in gst_deinit()
Jonas Holmberg [Thu, 15 Aug 2013 13:35:08 +0000 (15:35 +0200)]
Free thread pools in gst_deinit()

10 years agocheck: Call gst_deinit() at exit of all processes
Jonas Holmberg [Fri, 16 Aug 2013 09:03:30 +0000 (11:03 +0200)]
check: Call gst_deinit() at exit of all processes

10 years agoclock: simplify internal gst_clock_return_get_name() helper
Tim-Philipp Müller [Wed, 14 Aug 2013 20:41:23 +0000 (21:41 +0100)]
clock: simplify internal gst_clock_return_get_name() helper

10 years agobasesrc: improve flush-start handling
Wim Taymans [Wed, 14 Aug 2013 15:44:48 +0000 (17:44 +0200)]
basesrc: improve flush-start handling

Use custom code to implement flush-stop, we can't reuse the set_flushing code
because we can't touch the live_playing flag and we need to signal the
streaming thread.

10 years agobasesrc: stop flushing in flush-stop
Wim Taymans [Wed, 14 Aug 2013 15:14:15 +0000 (17:14 +0200)]
basesrc: stop flushing in flush-stop

10 years agobasesrc: handle flush better
Wim Taymans [Wed, 14 Aug 2013 14:58:41 +0000 (16:58 +0200)]
basesrc: handle flush better

Unlock the streaming thread when flushing so that we can
insert the flush-stop correctly.

10 years ago.gitignore: ignore .dirstamp
Edward Hervey [Wed, 14 Aug 2013 13:46:57 +0000 (15:46 +0200)]
.gitignore: ignore .dirstamp

10 years agocheck: Don't use nodist headers on gir scanner
Edward Hervey [Wed, 14 Aug 2013 05:21:06 +0000 (07:21 +0200)]
check: Don't use nodist headers on gir scanner

Just creates noise and bogus symbols

10 years agogst: minor docstring fixups to make g-i happy
Edward Hervey [Wed, 7 Aug 2013 16:20:03 +0000 (18:20 +0200)]
gst: minor docstring fixups to make g-i happy

note: the #ifndef move is actually a move of the "SECTION" docstring

10 years ago.gitignore: Ignore files from automake test-driver
Edward Hervey [Tue, 13 Aug 2013 15:14:53 +0000 (17:14 +0200)]
.gitignore: Ignore files from automake test-driver

10 years agobaseparse: Add a property to disable passthrough
Edward Hervey [Wed, 7 Aug 2013 16:24:40 +0000 (18:24 +0200)]
baseparse: Add a property to disable passthrough

In some specific cases (like transmuxing) we want to force the element
to actually parse all incoming data even if the element deems it is not
necessary.

This property simply ignores requests from the element to enable passthrough
mode which results in processing always being enabled.

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

10 years agodataqueue: add gst_data_queue_push_force
Thiago Santos [Thu, 8 Aug 2013 00:26:01 +0000 (21:26 -0300)]
dataqueue: add gst_data_queue_push_force

Adds a variant of the _push function that doesn't check the queue limits
before adding the new item. It is useful when pushing an element to the
queue shouldn't lock the thread.

One particular scenario is when the queue is used to serialize buffers
and events that are going to be pushed from another thread. The
dataqueue should have a limit on the amount of buffers to be stored to
avoid large memory consumption, but events can be considered to have
negligible impact on memory compared to buffers. So it is useful to be
used to push items into the queue that contain events, even though the
queue is already full, it shouldn't matter inserting an item that has
no significative size.

This scenario happens on adaptive elements (dashdemux / mssdemux) as
there is a single download thread fetching buffers and putting into the
dataqueues for the streams. This same download thread can als generate
events in some situations as caps changes, eos or a internal control
events. There can be a deadlock at preroll if the first buffer fetched
is large enough to fill the dataqueue and the download thread and the
next iteration of the download thread decides to push an event to this
same dataqueue before fetching buffers to other streams, if this push
locks, the pipeline will be stuck in preroll as no more buffers will be
downloaded.
There is a somewhat common practice in dash streams to have a single
very large buffer for audio and one for video, so this will always
happen as the download thread will have to push an EOS right after
fetching the first buffer for any stream.

API: gst_data_queue_push_force

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

10 years agosysmem: Only copy the requested part of memory instead of the complete source memory
Sebastian Dröge [Tue, 13 Aug 2013 11:06:50 +0000 (13:06 +0200)]
sysmem: Only copy the requested part of memory instead of the complete source memory

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

10 years agoquery: add Since markers for new API and add to exports file
Tim-Philipp Müller [Tue, 13 Aug 2013 11:11:19 +0000 (12:11 +0100)]
query: add Since markers for new API and add to exports file

10 years agoquery: fix annotation for gst_query_parse_uri
Andoni Morales Alastruey [Tue, 23 Jul 2013 14:25:27 +0000 (16:25 +0200)]
query: fix annotation for gst_query_parse_uri

10 years agoquery: add new redirection uri the URI query
Andoni Morales Alastruey [Fri, 19 Apr 2013 10:14:54 +0000 (12:14 +0200)]
query: add new redirection uri the URI query