Commit graph

25 commits

Author SHA1 Message Date
Thibault Saunier
be37cb14bd composition: Remove now useless external_gst_bin_add_remove field
Co-Authored by: Mathieu Duponchelle <mathieu.duponchelle@opencreed.com>
2014-10-31 11:58:08 +01:00
Mathieu Duponchelle
2af389dc87 composition: Remove now useless pad probes
Co-Authored by: Thibault Saunier <tsaunier@gnome.org>
2014-10-31 11:58:08 +01:00
Thibault Saunier
74c30001f9 composition: Add an internal bin where that contain used children
Co-Authored by: Mathieu Duponchelle <mathieu.duponchelle@opencreed.com>
2014-10-31 11:58:08 +01:00
Thibault Saunier
d8ca412cd9 composition: Add objects to the pending IO list in a GSource
This way we make sure we do not manipulate our children from another
thread than the dedicated one.
2014-10-31 11:58:08 +01:00
Thibault Saunier
bb7fa996b4 composition: Start implementing seeking in a GSource 2014-10-31 11:58:08 +01:00
Thibault Saunier
5faa417583 composition: switch to using an action signal to add and remove objects. 2014-10-31 11:58:08 +01:00
Mathieu Duponchelle
be269c833f composition: chain up finalize before clering mcontext_lock. 2014-10-31 11:58:08 +01:00
Thibault Saunier
33aea7c5f4 composition: Initialize the first stack async 2014-10-31 11:58:08 +01:00
Thibault Saunier
3c958af13c Finish fixing tests 2014-10-31 11:58:08 +01:00
Mathieu Duponchelle
6dc52ca0d2 composition: Actually commit in on our own thread
Avoiding races
2014-10-31 11:58:08 +01:00
Mathieu Duponchelle
23e7788921 composition: start and stop task in init and finalize 2014-10-31 11:58:07 +01:00
Mathieu Duponchelle
e81d987fad composition: home grown task 2014-10-31 11:58:07 +01:00
Mathieu Duponchelle
13ae2cecd3 composition: simplify update_pipeline_func 2014-10-31 11:58:07 +01:00
Thibault Saunier
9c10aa34d1 composition: Reset the srcpad target when removing the toplevelentry 2014-10-31 11:58:07 +01:00
Thibault Saunier
550aaf522d composition: Use a GstPad task to run the update pipeline thread 2014-10-31 11:58:07 +01:00
Thibault Saunier
6b193cdbda gnlcomposition: Factor out code to deactivate old stack and activate new one 2014-10-31 11:58:07 +01:00
Thibault Saunier
924f9ecf83 composition: Avoid looping using gotos 2014-10-31 11:58:07 +01:00
Thibault Saunier
03b11d58e4 gnlcomposition: Use the new _object_block_and_drop_data where appropriate
Renaming block_object_src_pad to _object_block_and_drop_data
2014-10-31 11:58:07 +01:00
Thibault Saunier
978e5cbe48 gnlcomposition: factor out some functions 2014-10-31 11:58:07 +01:00
Thibault Saunier
bf367f704c gnlcomposition: Factor out the condition of _parent_or_priority_changed 2014-10-31 11:58:07 +01:00
Thibault Saunier
381f7d2aee gnlcomposition: Add a function to block object source pad 2014-10-31 11:58:07 +01:00
Mathieu Duponchelle
4cb834fa21 gnl: Add the srcpad directly to GnlObject
Starting from now we will not claim that we support GnlObject that have
several source pads as this is
1- Not true at all;
2- the design of priorities in the GnlComposition tree does not allow that;
3- Not very useful in most of the cases and it complexifies quite a lot the code
   in the composition.

Conflicts:
	configure.ac
	tests/check/Makefile.am
2014-10-31 11:58:07 +01:00
Thibault Saunier
38b080deb3 Revert "gnlobject: Commit object in READY_TO_PAUSED"
This causes races when seeking, reverting for now even if we will
probably want to bring something like that back.

This reverts commit 3549e745a8f0de3977b83c60e9b447afaf55d8a0.
2014-10-31 11:58:07 +01:00
Mathieu Duponchelle
bd7d8776a1 gnlsource: remove useless "controls_one" field. 2014-10-31 11:58:07 +01:00
Thibault Saunier
81a0ee66c1 Import GNL from 978332e7c4c3bba1949421d28b492540ab471450 'Release 1.4.0' 2014-10-31 11:58:07 +01:00