Thibault Saunier [Tue, 8 Jul 2014 20:58:02 +0000 (22:58 +0200)]
composition: Relink nodes *after* setting the seqnum
Co-Authored by: Mathieu Duponchelle <mathieu.duponchelle@opencreed.com>
Mathieu Duponchelle [Tue, 8 Jul 2014 20:57:22 +0000 (22:57 +0200)]
gnlghostpad: Do not tolerate getting seeked when no target is set
This should not happen anymore
+ Do not set twice events seqnums
Co-Authored by: Thibault Saunier <tsaunier@gnome.org>
Thibault Saunier [Tue, 8 Jul 2014 20:55:15 +0000 (22:55 +0200)]
gnlghostpad: Add missing seqnum tweaking
Co-Authored by: Mathieu Duponchelle <mathieu.duponchelle@opencreed.com>
Mathieu Duponchelle [Tue, 8 Jul 2014 20:54:31 +0000 (22:54 +0200)]
tests: Use compositor instead of videomixer
Co-Authored by: Thibault Saunier <tsaunier@gnome.org>
Thibault Saunier [Tue, 8 Jul 2014 20:53:57 +0000 (22:53 +0200)]
composition: Handle the case were we get an EOS right after a segment
Co-Authored by: Mathieu Duponchelle <mathieu.duponchelle@opencreed.com>
Mathieu Duponchelle [Tue, 8 Jul 2014 11:28:57 +0000 (13:28 +0200)]
composition: Make basic seeking working
Co-Authored by: Thibault Saunier <tsaunier@gnome.org>
Thibault Saunier [Mon, 7 Jul 2014 21:28:43 +0000 (23:28 +0200)]
tests: Start fixing operation tests
Co-Authored by: Mathieu Duponchelle <mathieu.duponchelle@opencreed.com>
Mathieu Duponchelle [Mon, 7 Jul 2014 21:24:46 +0000 (23:24 +0200)]
tests: Fix composition tests
We can not expect a seek event anymore as we are seeking in READY the elements
themselves
+remove actual sinks
Co-Authored by: Thibault Saunier <tsaunier@gnome.org>
Thibault Saunier [Mon, 7 Jul 2014 21:07:15 +0000 (23:07 +0200)]
composition: Implement the logic to PAUSE the task while executing actions
We need to wait for the pipeline update to be actually finished before we can start another
action. That means that we pause the task until one buffer from the new stack is
outputed.
Co-Authored by: Mathieu Duponchelle <mathieu.duponchelle@opencreed.com>
Mathieu Duponchelle [Mon, 7 Jul 2014 21:08:56 +0000 (23:08 +0200)]
composition: Do not forget to set expandables state to NULL when disposing
Co-Authored by: Thibault Saunier <tsaunier@gnome.org>
Thibault Saunier [Mon, 7 Jul 2014 21:01:24 +0000 (23:01 +0200)]
composition: Factor out a function to commit only the values
Co-Authored by: Mathieu Duponchelle <mathieu.duponchelle@opencreed.com>
Mathieu Duponchelle [Mon, 7 Jul 2014 20:58:27 +0000 (22:58 +0200)]
composition: Get the current position before actually commiting values on commit
Co-Authored by: Thibault Saunier <tsaunier@gnome.org>
Thibault Saunier [Mon, 7 Jul 2014 20:54:25 +0000 (22:54 +0200)]
composition: Add a method that set the current bin to READY
We need to get the stream lock in some conditions, and thuse send
flush event in those cases.
Co-Authored by: Mathieu Duponchelle <mathieu.duponchelle@opencreed.com>
Mathieu Duponchelle [Mon, 7 Jul 2014 20:50:34 +0000 (22:50 +0200)]
composition: Remove useless code
Co-Authored by: Thibault Saunier <tsaunier@gnome.org>
Thibault Saunier [Mon, 7 Jul 2014 20:33:09 +0000 (22:33 +0200)]
composition: Clear the old stack when removing children that where used
Co-Authored by: Mathieu Duponchelle <mathieu.duponchelle@opencreed.com>
Mathieu Duponchelle [Mon, 7 Jul 2014 20:27:21 +0000 (22:27 +0200)]
composition: Remove useless toplevel_seek argiment from activate_new_stack
Co-Authored by: Thibault Saunier <tsaunier@gnome.org>
Thibault Saunier [Mon, 7 Jul 2014 20:25:51 +0000 (22:25 +0200)]
composition: Rework the seqnum logic to avoid races when setting the new stack seqnum
When we were seeking the same stack without a logic that gurantees that we actually
saw the seek with the new seqnum set, we could have ended up with an EOS set with
the right seqnum even if it was actually not the case.
Co-Authored by: Mathieu Duponchelle <mathieu.duponchelle@opencreed.com>
Mathieu Duponchelle [Mon, 7 Jul 2014 19:31:01 +0000 (21:31 +0200)]
composition: Add/Remove children in the same order as they were called
Co-Authored by: Thibault Saunier <tsaunier@gnome.org>
Thibault Saunier [Mon, 7 Jul 2014 19:28:28 +0000 (21:28 +0200)]
composition: Remove useless flush_start argument from the stop_task method
Co-Authored by: Mathieu Duponchelle <mathieu.duponchelle@opencreed.com>
Mathieu Duponchelle [Sun, 6 Jul 2014 13:46:22 +0000 (15:46 +0200)]
composition: Force setting children state to NULL rebfore unrefing them
Co-Authored by: Thibault Saunier <tsaunier@gnome.org>
Thibault Saunier [Fri, 4 Jul 2014 09:05:41 +0000 (11:05 +0200)]
compositition: Check last stack in the children thread
Avoiding to take the OBJECT_LOCK when recieving EOS. The computation is
based on the GstEvent.seqnum to make sure that the EOS we receive
corresponds to the right sequence.
In that patch we tweak seqnums so that they are correctly computed
avoiding to depend on all elements to do it properly as it might pretty
much not be the case!
Co-Authored by: Mathieu Duponchelle <mathieu.duponchelle@opencreed.com>
Mathieu Duponchelle [Fri, 4 Jul 2014 09:11:53 +0000 (11:11 +0200)]
composition: Actiually set current_bin state even when not debugging
Co-Authored by: Thibault Saunier <tsaunier@gnome.org>
Thibault Saunier [Thu, 3 Jul 2014 15:42:06 +0000 (17:42 +0200)]
composition: Set *all* children state when going back to READY and then NULL
Co-Authored by: Mathieu Duponchelle <mathieu.duponchelle@opencreed.com>
Mathieu Duponchelle [Thu, 3 Jul 2014 15:36:01 +0000 (17:36 +0200)]
composition: Fix toplevel seek event refcounting
Co-Authored by: Thibault Saunier <tsaunier@gnome.org>
Thibault Saunier [Thu, 3 Jul 2014 14:46:21 +0000 (16:46 +0200)]
composition: Teach the composition to seek same stack
Co-Authored by: Thibault Saunier <tsaunier@gnome.org>
Thibault Saunier [Thu, 3 Jul 2014 14:44:05 +0000 (16:44 +0200)]
composition: The ref the user gave us is our, and we give another to the bin when needed
Co-Authored by: Mathieu Duponchelle <mathieu.duponchelle@opencreed.com>
Mathieu Duponchelle [Thu, 3 Jul 2014 14:41:42 +0000 (16:41 +0200)]
composition: Rename commit_pipeline_func to commit_func
We do not commit any pipeline, we commit the new state of the composition internals
Co-Authored by: Thibault Saunier <tsaunier@gnome.org>
Thibault Saunier [Thu, 3 Jul 2014 12:48:25 +0000 (14:48 +0200)]
composition: Set the state of the internal bin before removing its children
Otherwize when we set the composition state to READY or NULL we can end
up with children in PAUSED state outside of everything
Co-Authored by: Mathieu Duponchelle <mathieu.duponchelle@opencreed.com>
Mathieu Duponchelle [Thu, 3 Jul 2014 12:34:11 +0000 (14:34 +0200)]
tests: Minor cleanup
Co-Authored by: Thibault Saunier <tsaunier@gnome.org>
Thibault Saunier [Thu, 3 Jul 2014 12:32:44 +0000 (14:32 +0200)]
gnlobject: Allow commiting of object that are not inside a composition
Co-Authored by: Mathieu Duponchelle <mathieu.duponchelle@opencreed.com>
Mathieu Duponchelle [Thu, 3 Jul 2014 12:32:18 +0000 (14:32 +0200)]
composition: Empty current_bin on gnl_composition_reset
Co-Authored by: Thibault Saunier <tsaunier@gnome.org>
Thibault Saunier [Thu, 3 Jul 2014 12:31:35 +0000 (14:31 +0200)]
composition: Remove now useless external_gst_bin_add_remove field
Co-Authored by: Mathieu Duponchelle <mathieu.duponchelle@opencreed.com>
Mathieu Duponchelle [Thu, 3 Jul 2014 09:36:20 +0000 (11:36 +0200)]
composition: Remove now useless pad probes
Co-Authored by: Thibault Saunier <tsaunier@gnome.org>
Thibault Saunier [Wed, 2 Jul 2014 19:01:31 +0000 (21:01 +0200)]
composition: Add an internal bin where that contain used children
Co-Authored by: Mathieu Duponchelle <mathieu.duponchelle@opencreed.com>
Thibault Saunier [Wed, 2 Jul 2014 15:33:35 +0000 (17:33 +0200)]
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.
Thibault Saunier [Tue, 1 Jul 2014 16:08:32 +0000 (18:08 +0200)]
composition: Start implementing seeking in a GSource
Thibault Saunier [Mon, 30 Jun 2014 14:21:30 +0000 (16:21 +0200)]
composition: switch to using an action signal to add and remove objects.
Mathieu Duponchelle [Mon, 30 Jun 2014 14:29:50 +0000 (16:29 +0200)]
composition: chain up finalize before clering mcontext_lock.
Thibault Saunier [Mon, 30 Jun 2014 13:12:38 +0000 (15:12 +0200)]
composition: Initialize the first stack async
Thibault Saunier [Sun, 29 Jun 2014 20:35:34 +0000 (22:35 +0200)]
Finish fixing tests
Mathieu Duponchelle [Sat, 28 Jun 2014 12:44:24 +0000 (14:44 +0200)]
tests/common: disconnect commited handler
Mathieu Duponchelle [Fri, 27 Jun 2014 14:12:12 +0000 (16:12 +0200)]
composition: Actually commit in on our own thread
Avoiding races
Mathieu Duponchelle [Fri, 27 Jun 2014 15:03:44 +0000 (17:03 +0200)]
composition: start and stop task in init and finalize
Mathieu Duponchelle [Fri, 27 Jun 2014 15:01:34 +0000 (17:01 +0200)]
tests: unref message correctly
Mathieu Duponchelle [Fri, 27 Jun 2014 14:40:19 +0000 (16:40 +0200)]
composition: home grown task
Mathieu Duponchelle [Fri, 27 Jun 2014 14:12:28 +0000 (16:12 +0200)]
Don't be sync silly test
Mathieu Duponchelle [Fri, 27 Jun 2014 13:00:48 +0000 (15:00 +0200)]
composition: simplify update_pipeline_func
Thibault Saunier [Fri, 27 Jun 2014 14:26:09 +0000 (16:26 +0200)]
composition: Reset the srcpad target when removing the toplevelentry
Thibault Saunier [Fri, 27 Jun 2014 10:15:10 +0000 (12:15 +0200)]
composition: Use a GstPad task to run the update pipeline thread
Thibault Saunier [Thu, 26 Jun 2014 21:48:09 +0000 (23:48 +0200)]
gnlcomposition: Factor out code to deactivate old stack and activate new one
Thibault Saunier [Thu, 26 Jun 2014 17:00:03 +0000 (19:00 +0200)]
composition: Avoid looping using gotos
Thibault Saunier [Thu, 26 Jun 2014 16:41:48 +0000 (18:41 +0200)]
gnlcomposition: Use the new _object_block_and_drop_data where appropriate
Renaming block_object_src_pad to _object_block_and_drop_data
Thibault Saunier [Wed, 25 Jun 2014 17:39:29 +0000 (19:39 +0200)]
gnlcomposition: factor out some functions
Thibault Saunier [Wed, 25 Jun 2014 17:18:29 +0000 (19:18 +0200)]
gnlcomposition: Factor out the condition of _parent_or_priority_changed
Thibault Saunier [Wed, 25 Jun 2014 17:17:55 +0000 (19:17 +0200)]
gnlcomposition: Add a function to block object source pad
Mathieu Duponchelle [Tue, 24 Jun 2014 11:44:13 +0000 (13:44 +0200)]
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
Thibault Saunier [Wed, 25 Jun 2014 13:35:08 +0000 (15:35 +0200)]
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.
Mathieu Duponchelle [Tue, 24 Jun 2014 10:52:24 +0000 (12:52 +0200)]
gnlsource: remove useless "controls_one" field.
Thibault Saunier [Tue, 21 Oct 2014 08:35:48 +0000 (10:35 +0200)]
Thibault Saunier [Fri, 15 Aug 2014 16:02:36 +0000 (18:02 +0200)]
tests: timelineedition: Init GES once at the beginning.
Avoiding to forget to init in a particular test and failling stupidly
Thibault Saunier [Fri, 15 Aug 2014 16:00:24 +0000 (18:00 +0200)]
test: backgroundsource: Disable tests that rely on nlecomposition internals
We can't rely on that, in particular now that it does not actually
add its children all the time but only when it is needed (and that
it has an internal bin where actual things happen).
Thibault Saunier [Wed, 13 Aug 2014 11:15:02 +0000 (13:15 +0200)]
timeline: Add a method to retrieve a pad from a track
It allows user to easily get the proxied pad from a track.
API:
+ ges_timeline_get_pad_for_track
Thibault Saunier [Mon, 28 Jul 2014 13:26:18 +0000 (15:26 +0200)]
tools:launcher: Avoid commiting when we are not done loading the timeline
Thibault Saunier [Fri, 25 Jul 2014 22:31:32 +0000 (00:31 +0200)]
ges: Use the new GNL element message feature to notify async operations
Mathieu Duponchelle [Thu, 24 Jul 2014 15:55:35 +0000 (17:55 +0200)]
xml-formatter: message-forward is not something that should be parsed.
Mathieu Duponchelle [Fri, 25 Jul 2014 12:47:07 +0000 (14:47 +0200)]
timeline: handle async start
Mathieu Duponchelle [Thu, 23 Oct 2014 19:46:04 +0000 (21:46 +0200)]
tests: implement our validate TestManager.
And make sure it installs alongside the other validate apps.
https://bugzilla.gnome.org/show_bug.cgi?id=739093
Tim-Philipp Müller [Thu, 30 Oct 2014 15:54:04 +0000 (15:54 +0000)]
smart-video-mixer: unref pads_info hash table in dispose
Before gst_bin_dispose() runs and destroys elements.
Tim-Philipp Müller [Thu, 30 Oct 2014 15:20:18 +0000 (15:20 +0000)]
smart-adder: fix crash in unit test
Unref pads_info hash table in dispose instead of
finalize, i.e. before gst_bin_dispose runs and
destroys pads_info->bin (to which the pads_info
does not hold a ref).
Sebastian Dröge [Mon, 27 Oct 2014 17:01:56 +0000 (18:01 +0100)]
Automatic update of common submodule
From 84d06cd to 7bb2bce
Tim-Philipp Müller [Sun, 26 Oct 2014 20:36:22 +0000 (20:36 +0000)]
track: fix indentation
Tim-Philipp Müller [Sun, 26 Oct 2014 20:35:30 +0000 (20:35 +0000)]
timeline-element: don't leak name string
Tim-Philipp Müller [Sun, 26 Oct 2014 20:34:29 +0000 (20:34 +0000)]
timeline: fix mutex and all_elements hash table leaks
Tim-Philipp Müller [Sun, 26 Oct 2014 20:33:50 +0000 (20:33 +0000)]
timeline: free tracks obtained via select-tracks-for-object signal
Tim-Philipp Müller [Sun, 26 Oct 2014 20:32:41 +0000 (20:32 +0000)]
timeline: free track elements list
Tim-Philipp Müller [Sun, 26 Oct 2014 20:31:40 +0000 (20:31 +0000)]
video-test-source: fix caps leak
Tim-Philipp Müller [Sun, 26 Oct 2014 20:31:26 +0000 (20:31 +0000)]
framepositionner: fix caps leak
Tim-Philipp Müller [Sun, 26 Oct 2014 20:31:08 +0000 (20:31 +0000)]
audiotrack: fix caps leak
Tim-Philipp Müller [Sun, 26 Oct 2014 20:30:53 +0000 (20:30 +0000)]
videotrack: fix caps leak
Tim-Philipp Müller [Sun, 26 Oct 2014 20:30:29 +0000 (20:30 +0000)]
track: don't leak restriction caps
Tim-Philipp Müller [Sun, 26 Oct 2014 20:29:06 +0000 (20:29 +0000)]
smart-adder: don't leak pads_infos hash table
Tim-Philipp Müller [Sun, 26 Oct 2014 20:28:09 +0000 (20:28 +0000)]
smart-video-mixer: don't leak pads_infos hash table
Tim-Philipp Müller [Sun, 26 Oct 2014 20:27:17 +0000 (20:27 +0000)]
project: fix string leak
Tim-Philipp Müller [Sun, 26 Oct 2014 20:25:46 +0000 (20:25 +0000)]
metacontainer: don't leak GValue contents
Tim-Philipp Müller [Sun, 26 Oct 2014 20:24:09 +0000 (20:24 +0000)]
tests: don't leak clips list in basic unit test
Tim-Philipp Müller [Sun, 26 Oct 2014 20:23:26 +0000 (20:23 +0000)]
Parallelise 'make check-valgrind'
Mathieu Duponchelle [Wed, 22 Oct 2014 12:15:11 +0000 (14:15 +0200)]
ges-validate: issues naming have changed.
Update the override.
Tim-Philipp Müller [Tue, 21 Oct 2014 12:04:26 +0000 (13:04 +0100)]
Automatic update of common submodule
From a8c8939 to 84d06cd
Stefan Sauer [Tue, 21 Oct 2014 11:01:04 +0000 (13:01 +0200)]
Automatic update of common submodule
From 36388a1 to a8c8939
Thibault Saunier [Mon, 20 Oct 2014 11:37:25 +0000 (13:37 +0200)]
Back to development
Thibault Saunier [Mon, 20 Oct 2014 09:56:36 +0000 (11:56 +0200)]
Release 1.4.0
Thibault Saunier [Thu, 16 Oct 2014 12:18:16 +0000 (14:18 +0200)]
validate: Fix naming of add_action_type to register_action_type
That function was just renamed in Validate
Thibault Saunier [Sun, 12 Oct 2014 17:46:59 +0000 (19:46 +0200)]
validate: Rename --list-action-types to --inspect-action-type
Making clearer the meaning of the parameter and closer to
the usual naming in the GStreamer land.
Thibault Saunier [Wed, 24 Sep 2014 09:07:40 +0000 (11:07 +0200)]
Release 1.3.90
Tim-Philipp Müller [Sat, 13 Sep 2014 15:16:15 +0000 (16:16 +0100)]
configure: bump (soft) gst-validate requirement
Won't build against all older git versions with
0.0.1.0 as version number.
Lubosz Sarnecki [Sun, 20 Jul 2014 09:47:18 +0000 (11:47 +0200)]
ges-launch: option to select encoding profile from xml
https://bugzilla.gnome.org/show_bug.cgi?id=735121
Lubosz Sarnecki [Sun, 20 Jul 2014 09:47:56 +0000 (11:47 +0200)]
ges-launch: clean up help page
https://bugzilla.gnome.org/show_bug.cgi?id=735121
Thibault Saunier [Fri, 5 Sep 2014 21:14:10 +0000 (23:14 +0200)]
validate: gst_validate_print_action_types now takes a const gchar **
Thibault Saunier [Fri, 5 Sep 2014 21:08:41 +0000 (23:08 +0200)]
validate: Add the "ges" as implementer namespace for our action types
Sebastian Dröge [Fri, 5 Sep 2014 19:09:44 +0000 (22:09 +0300)]
ges-launch: Fix typo in --help output