Thibault Saunier [Sat, 17 Sep 2016 12:46:59 +0000 (09:46 -0300)]
nle: Drop tags getting out of the composition
Those tag are meaningless in for the new stream created by the composition
First step toward fixing T3070
Differential Revision: https://phabricator.freedesktop.org/D1327
Thibault Saunier [Thu, 11 Aug 2016 19:12:07 +0000 (15:12 -0400)]
timeline: Properly compute the end of groups when checking snapping
Computation was not taking into account the fact that the start of
the element being moved could be at the middle of a group and not
necessarily at the start!
Fixes T7544
Reviewed-by: Alex Băluț <alexandru.balut@gmail.com>
Differential Revision: https://phabricator.freedesktop.org/D1282
Thibault Saunier [Thu, 11 Aug 2016 17:19:44 +0000 (13:19 -0400)]
ges: Handle moving groups with effects inside
We were only concidering that we should let the group handle moving
transitions when changing transitions but in fact as soon as a
transition is happenning between two clips that are in a same group
the group properly handles moving the transition, so let the
group do its job.
Fixes T7543
Differential Revision: https://phabricator.freedesktop.org/D1281
Thibault Saunier [Thu, 11 Aug 2016 14:54:08 +0000 (10:54 -0400)]
ges: Deprecate GESTimelineElement::priority writability
GESLayer is now responsible for setting clips priorites. Also
GESClip top effects priorities are now set by the
ges_clip_set_top_effect_index method, the user should never call
ges_timeline_element_set_priority as it will anyway be overriden
by GES itself.
Differential Revision: https://phabricator.freedesktop.org/D1280
Thibault Saunier [Thu, 11 Aug 2016 14:36:44 +0000 (10:36 -0400)]
layer: Handle operation priorities
All operations should have higher priorites and sources should be
on top of those. We now first set the operations priorities in
a first pass and then stack sources on top of those.
Differential Revision: https://phabricator.freedesktop.org/D1279
Thibault Saunier [Thu, 11 Aug 2016 13:53:58 +0000 (09:53 -0400)]
ges: transition: Make crossfade fade out at the same time as it fade in
Until now fade out was just fading in the new clip, but this is not
correct and crossfade should at the same time fade out while fading
in.
Fixes https://phabricator.freedesktop.org/T3451
Differential Revision: https://phabricator.freedesktop.org/D1278
Thibault Saunier [Thu, 11 Aug 2016 13:42:32 +0000 (09:42 -0400)]
layer: Make sure to resync priorities on commit
In case effects have been added priorites might become wrong,
but until the timeline is not commited, it does not matter.
Make sure all priorities are correct before commiting compositions
Differential Revision: https://phabricator.freedesktop.org/D1277
Thibault Saunier [Thu, 11 Aug 2016 13:14:42 +0000 (09:14 -0400)]
Finally move clip priority handling to GESLayer.
Fix all tests as we now have 1 priority inside the layer
dedicated to transitions (basically no source clip will
ever have a priority of 0 inside a layer).
Differential Revision: https://phabricator.freedesktop.org/D1276
Thibault Saunier [Thu, 11 Aug 2016 12:54:23 +0000 (08:54 -0400)]
clip: Make top effect priority inside the clip priority range
And simplify the way we start computing children priority
making min_priority already relative to the clip itself.
Differential Revision: https://phabricator.freedesktop.org/D1275
Thibault Saunier [Thu, 11 Aug 2016 11:54:42 +0000 (07:54 -0400)]
tests_: timelineedition: Fix test now that we ripple from start and not from end
Differential Revision: https://phabricator.freedesktop.org/D1274
Sebastian Dröge [Thu, 22 Sep 2016 15:28:21 +0000 (11:28 -0400)]
nlecomposition: Don't try to seek on an empty stack
We would seek on a NULL pad then, which gives ugly assertions.
https://bugzilla.gnome.org/show_bug.cgi?id=771843
Sebastian Dröge [Thu, 22 Sep 2016 15:25:18 +0000 (11:25 -0400)]
nleurisource: Always provide a srcpad
By putting uridecodebin into a bin with a ghostpad. Without this,
nlesource tries to get a srcpad too early (before uridecodebin added
one) and everything fails miserably.
This has to be fixed properly in nlesource at some point, by properly
handling dynamically added pads. Currently they can only work if they
are added in states <= READY, which is not the usual case.
https://bugzilla.gnome.org/show_bug.cgi?id=771843
Sebastian Dröge [Wed, 21 Sep 2016 22:23:56 +0000 (18:23 -0400)]
nlesource: Fail prepare() if no valid source pad is found
https://bugzilla.gnome.org/show_bug.cgi?id=771792
Thibault Saunier [Wed, 14 Sep 2016 17:32:19 +0000 (14:32 -0300)]
ges-launch: Be a bit more agressive sanitizing arguments
Otherwise GstStructure might fail parsing some fields
containing brackets
https://bugzilla.gnome.org/show_bug.cgi?id=771434
Sebastian Dröge [Wed, 14 Sep 2016 09:31:23 +0000 (11:31 +0200)]
configure: Depend on gstreamer 1.9.2.1
Alexandru Băluț [Tue, 6 Sep 2016 12:27:38 +0000 (14:27 +0200)]
timeline: Make get_groups public
Had to separate timeline_emit_group_added from timeline_add_group
to avoid emitting group-added when the project is being loaded.
Reviewed-by: Thibault Saunier <thibault.saunier@collabora.com>
Differential Revision: https://phabricator.freedesktop.org/D1302
Alexandru Băluț [Tue, 6 Sep 2016 13:49:49 +0000 (15:49 +0200)]
tests_: Make sure child-removed is emitted when ungrouping
Reviewed-by: Thibault Saunier <thibault.saunier@collabora.com>
Differential Revision: https://phabricator.freedesktop.org/D1301
Alexandru Băluț [Tue, 6 Sep 2016 11:03:11 +0000 (13:03 +0200)]
timeline: Fix documentation
Reviewed-by: Thibault Saunier <thibault.saunier@collabora.com>
Differential Revision: https://phabricator.freedesktop.org/D1300
Alexandru Băluț [Mon, 5 Sep 2016 10:23:30 +0000 (12:23 +0200)]
Remove obsolete dependency
Reviewed-by: Thibault Saunier <thibault.saunier@collabora.com>
Differential Revision: https://phabricator.freedesktop.org/D1299
Jan Schmidt [Sat, 10 Sep 2016 10:52:38 +0000 (20:52 +1000)]
Automatic update of common submodule
From b18d820 to f980fd9
Jan Schmidt [Fri, 9 Sep 2016 23:58:37 +0000 (09:58 +1000)]
Automatic update of common submodule
From f49c55e to b18d820
Thibault Saunier [Fri, 9 Sep 2016 20:14:43 +0000 (17:14 -0300)]
tests: Move -DGES_TEST_FILES_PATH to common_cflags
As it is needed to build the utils lib
Thibault Saunier [Fri, 9 Sep 2016 19:42:13 +0000 (16:42 -0300)]
tests: Fix the way we get tests assets
Using __FILE__ won't work properly with meson.
Thibault Saunier [Fri, 9 Sep 2016 11:52:32 +0000 (08:52 -0300)]
test:validate: Handle new expected_failures Test argument
Thibault Saunier [Wed, 7 Sep 2016 19:53:06 +0000 (16:53 -0300)]
meson: Do not build libges against libcheck
Thibault Saunier [Mon, 5 Sep 2016 20:55:42 +0000 (17:55 -0300)]
meson: Properly find where other GStreamer plugins are when using subprojects
Thibault Saunier [Mon, 5 Sep 2016 17:54:53 +0000 (14:54 -0300)]
Revert "validate: Blacklist racy tests"
This reverts commit
ce35412ff260fbd6e07b374bc3ca677053c277e0.
https://bugzilla.gnome.org/show_bug.cgi?id=769894 has been fixed
Thibault Saunier [Fri, 26 Aug 2016 22:55:33 +0000 (19:55 -0300)]
meson: Handle building the gir file when used as subproject
Add support for building GIR when used as subproject
Add an option to disable GIR generation
And bump version to 1.9.2
Sebastian Dröge [Thu, 1 Sep 2016 09:33:22 +0000 (12:33 +0300)]
Back to development
Sebastian Dröge [Thu, 1 Sep 2016 09:33:13 +0000 (12:33 +0300)]
Release 1.9.2
Thibault Saunier [Thu, 25 Aug 2016 18:04:54 +0000 (15:04 -0300)]
meson: doc: Fix building documentation when using subprojects
And check the presence of gtk-doc before building the documentation
Sebastian Dröge [Thu, 25 Aug 2016 07:06:51 +0000 (10:06 +0300)]
ges: Rename parse_lex.h to ges-parse-lex.h
Fixes the build and makes it consistent with the meson build system.
Thibault Saunier [Thu, 4 Aug 2016 21:33:55 +0000 (17:33 -0400)]
Add support for Meson as alternative/parallel build system
https://github.com/mesonbuild/meson
Philippe Renon [Thu, 18 Aug 2016 16:43:08 +0000 (18:43 +0200)]
ges-track-element: fix typos in control_binding_removed signal declaration
https://bugzilla.gnome.org/show_bug.cgi?id=770101
Edward Hervey [Sun, 14 Aug 2016 15:45:16 +0000 (17:45 +0200)]
validate: Blacklist racy tests
See https://bugzilla.gnome.org/show_bug.cgi?id=769894
Edward Hervey [Sun, 14 Aug 2016 15:44:36 +0000 (17:44 +0200)]
ges-timeline: Demote some debugging statements
locking should be in a lower level to avoid too many messages
Edward Hervey [Sat, 13 Aug 2016 09:08:34 +0000 (11:08 +0200)]
timeline-element: Reset pointer after freeing
dispose can be called multiple times, make sure we don't call functions
on free'd pointers.
Thibault Saunier [Wed, 3 Aug 2016 15:40:30 +0000 (11:40 -0400)]
ges: Do not rescale videos if the track aspect ratio changes
Differential Revision: https://phabricator.freedesktop.org/D1242
Thibault Saunier [Tue, 2 Aug 2016 20:42:20 +0000 (16:42 -0400)]
ges: Let the compositor do the scaling if mixing is enabled
Differential Revision: https://phabricator.freedesktop.org/D1241
Thibault Saunier [Mon, 1 Aug 2016 16:55:07 +0000 (12:55 -0400)]
tests:validate: Also test opus and theora in OGG
Thibault Saunier [Fri, 29 Jul 2016 19:48:28 +0000 (15:48 -0400)]
validate: Start also testing jpeg encoding
Thibault Saunier [Fri, 29 Jul 2016 01:50:58 +0000 (21:50 -0400)]
timeline: Keep transitions when moving the moving context between layers
Differential Revision: https://phabricator.freedesktop.org/D1225
Justin Kim [Thu, 15 Oct 2015 22:13:30 +0000 (22:13 +0000)]
ges-launcher: don't leak project uri string
ges_project_get_uri returns a cloned string so it should
be free'd after usage.
Reviewed-by: Thibault Saunier <thibault.saunier@collabora.com>
Reviewed-by: Thibault Saunier <thibault.saunier@collabora.com>
Differential Revision: https://phabricator.freedesktop.org/D381
Thibault Saunier [Thu, 28 Jul 2016 23:30:28 +0000 (19:30 -0400)]
timeline: Ripple from start of clips and not the end.
Fixes https://phabricator.freedesktop.org/T7503
Thibault Saunier [Thu, 28 Jul 2016 21:23:31 +0000 (17:23 -0400)]
enums: Fix absolute text overlay alignment value
It needs to be in sync with GstBaseTextOverlayHAlign order.
Thibault Saunier [Thu, 28 Jul 2016 20:04:42 +0000 (16:04 -0400)]
title-source: Properly implement GESTimelineElement->lookup_child
GESTrackElement->lookup_child is deprecated and should be avoided
as much as possible.
Thibault Saunier [Thu, 28 Jul 2016 20:02:05 +0000 (16:02 -0400)]
clip: Reimplement look_child and iterate over children if needed
Otherwise in the case where children reimplement lookup_child to
handle some property renaming lookup fails.
Thibault Saunier [Thu, 28 Jul 2016 18:24:07 +0000 (14:24 -0400)]
tools: Fix printing commands help
Thibault Saunier [Tue, 26 Jul 2016 18:05:06 +0000 (14:05 -0400)]
ges:validate: Check that no extra decoding happens
Thibault Saunier [Tue, 26 Jul 2016 15:59:39 +0000 (11:59 -0400)]
uri-sources: Make sure to set decodebin 'caps' property
Fixes a regression where we decode streams twice,
this was introduced when we started creating NLE
object at GESTrackElement construct time.
Fixes https://bugzilla.gnome.org/show_bug.cgi?id=769193
Thibault Saunier [Sun, 24 Jul 2016 12:32:06 +0000 (08:32 -0400)]
timeline: Emit snap-ended on commit if needed
Commiting the timeline means that the current operations on the clips are over,
so we should concider snapping as done at that point
Fixes T7499
Mohan R [Sun, 26 Jun 2016 06:53:40 +0000 (12:23 +0530)]
fixed ges-version.h not found issue during out of tree build
Thibault Saunier [Fri, 22 Jul 2016 11:32:51 +0000 (07:32 -0400)]
image-source: Do not concider inpoints
We have no restriction on inpoint for Images
Differential Revision: https://phabricator.freedesktop.org/D1202
Thibault Saunier [Fri, 15 Jul 2016 12:57:28 +0000 (08:57 -0400)]
tests:validate: Better choose tested rendering formats
Stefan Sauer [Mon, 11 Jul 2016 19:16:11 +0000 (21:16 +0200)]
Automatic update of common submodule
From f363b32 to f49c55e
Sebastian Dröge [Wed, 6 Jul 2016 10:51:18 +0000 (13:51 +0300)]
Back to development
Sebastian Dröge [Wed, 6 Jul 2016 10:45:17 +0000 (13:45 +0300)]
Release 1.9.1
Justin Kim [Wed, 29 Jun 2016 00:39:02 +0000 (00:39 +0000)]
ges-launch: unref GApplication properly
Differential Revision: https://phabricator.freedesktop.org/D380
Justin Kim [Wed, 29 Jun 2016 00:38:36 +0000 (00:38 +0000)]
project_: improve get_uri doc
The return value of ges_project_get_uri should be freed
after usage.
Differential Revision: https://phabricator.freedesktop.org/D1142
Nicolas Dufresne [Tue, 21 Jun 2016 15:49:14 +0000 (11:49 -0400)]
Automatic update of common submodule
From ac2f647 to f363b32
Thibault Saunier [Tue, 21 Jun 2016 01:29:44 +0000 (21:29 -0400)]
tests: Make sure to run python tests against the build in tree
Thibault Saunier [Sat, 18 Jun 2016 20:16:00 +0000 (16:16 -0400)]
ges: Don't remove track elements from clips when removing from layer
And reuse the same previously created element when adding the clip
back to a layer, avoiding losing all setting done on clip children
in that situation
This is a behaviour change but previous behaviour was actually totally
unexpected and people working around that weird behaviour will moste
probably not care about that change
Differential Revision: https://phabricator.freedesktop.org/D1094
Thibault Saunier [Mon, 20 Jun 2016 18:00:07 +0000 (14:00 -0400)]
title_: Do not forget to link up child_added/removed vmethod
Otherwise effect handling is broken
Differential Revision: https://phabricator.freedesktop.org/D1099
Thibault Saunier [Mon, 20 Jun 2016 00:02:06 +0000 (20:02 -0400)]
auto-transitions: Do not remove auto transitions when moving neighboor from the same group
Differential Revision: https://phabricator.freedesktop.org/D1097
Aurélien Zanelli [Sat, 14 May 2016 17:33:05 +0000 (19:33 +0200)]
ges: fix various leaks with usage of ges_timeline_element_lookup_child
Some callers forgot to unref out child, pspec or both leading to leaks.
https://bugzilla.gnome.org/show_bug.cgi?id=766449
Aurélien Zanelli [Sat, 14 May 2016 17:02:57 +0000 (19:02 +0200)]
video-track: don't leak restriction caps in _sync_capsfilter_with_track()
https://bugzilla.gnome.org/show_bug.cgi?id=766450
Sebastian Dröge [Mon, 6 Jun 2016 14:44:15 +0000 (17:44 +0300)]
ges-uri-asset: GstDiscoverer can return a valid info but a non-OK result, consider this an error
The asynchronous case in ges_uri_clip_asset_request_async() already considered
it an error, do the same in ges_uri_clip_asset_request_sync().
https://bugzilla.gnome.org/show_bug.cgi?id=767293
Sebastian Dröge [Tue, 31 May 2016 09:09:44 +0000 (12:09 +0300)]
nlecomposition: Fix race condition in seek handling causing deadlocks
We might receive another seek from the application while the action task is
handling a previous seek (and thus setting seeking_itself to TRUE). To prevent
this seek to go through directly instead of being added as an action, also
check if the seek event was received from our action task thread or some other
thread.
https://bugzilla.gnome.org/show_bug.cgi?id=767053
Thibault Saunier [Tue, 31 May 2016 13:29:44 +0000 (09:29 -0400)]
ges: Emit GESMetontainer::notify-meta even if value is unset
Thibault Saunier [Mon, 30 May 2016 14:51:51 +0000 (10:51 -0400)]
ges: Allow passing `NULL` as a value to ges_meta_container_set_meta
Fixes T7430
Tim-Philipp Müller [Wed, 25 May 2016 09:32:46 +0000 (10:32 +0100)]
g-i: pass compiler env to g-ir-scanner
It's what introspection.mak does as well. Should
fix spurious build failures on gnome-continuous
(caused by g-ir-scanner getting compiler details
via python which is broken in some environments
so passing the compiler details bypasses that).
Aurélien Zanelli [Mon, 16 May 2016 10:06:37 +0000 (12:06 +0200)]
uri-clip: make uri parameter of ges_uri_clip_new () const
To avoid compiler warning when using const string to create a new
GESUriClip as string is not modified and only passed to functions which
take a const string.
https://bugzilla.gnome.org/show_bug.cgi?id=766523
Aurélien Zanelli [Mon, 16 May 2016 10:53:32 +0000 (12:53 +0200)]
framepositionner: add a weak ref on track element to know when it is finalized
Otherwise if frame positionner is disposed after track element has been
finalized, it will raise a critical message because we will try to
disconnect a signal handler on a freed track element object.
https://bugzilla.gnome.org/show_bug.cgi?id=766525
Aurélien Zanelli [Mon, 16 May 2016 15:36:36 +0000 (17:36 +0200)]
audio-source: unref private capsfilter reference on dispose
Otherwise a capsfilter reference will be leaked since it has been got
using gst_bin_get_by_name.
https://bugzilla.gnome.org/show_bug.cgi?id=766524
Aurélien Zanelli [Mon, 16 May 2016 15:35:29 +0000 (17:35 +0200)]
audio-source: fix indentation
https://bugzilla.gnome.org/show_bug.cgi?id=766524
Aurélien Zanelli [Sat, 7 May 2016 18:29:22 +0000 (20:29 +0200)]
nlecomposition: ensure elements pending to be added are not leaked
When nlecomposition is finalized with pending add action or io,
associated elements are not unreffed as they should since caller gives
us the reference when calling gst_bin_add causing them to be leaked.
So to make sure we don't leak a reference on element when adding one to
the bin, each stage (action and pending_io) hold a reference on element
and release it when stage is done.
https://bugzilla.gnome.org/show_bug.cgi?id=766455
Aurélien Zanelli [Sat, 14 May 2016 16:06:56 +0000 (18:06 +0200)]
nlecomposition: fix nle_composition_remove_object info message
We don't add internal bin, we remove it.
https://bugzilla.gnome.org/show_bug.cgi?id=766455
Aurélien Zanelli [Sat, 14 May 2016 23:04:17 +0000 (01:04 +0200)]
ges: add some g-i annotations according to documentation
Mainly (transfer xxx) and (nullable). Also fix some typo.
https://bugzilla.gnome.org/show_bug.cgi?id=766459
Aurélien Zanelli [Sat, 14 May 2016 23:03:49 +0000 (01:03 +0200)]
asset: fix ges_asset_set_proxy() return value documentation
https://bugzilla.gnome.org/show_bug.cgi?id=766459
Thibault Saunier [Sat, 7 May 2016 01:28:26 +0000 (22:28 -0300)]
element: Also accept GParamSpec.owner_type name as a child property prefix
Makes it simpler for python users to be able to retrieve children
properties iterating over them.
Thibault Saunier [Fri, 6 May 2016 21:21:17 +0000 (18:21 -0300)]
track-element: gi: skip now deprecated children property getter/setter
Those are implemented with the exact same API at the GESTimelineElement
level now, and user of those APIs with high level languages will get the
exact same API.
Thibault Saunier [Fri, 6 May 2016 18:44:28 +0000 (15:44 -0300)]
formatter: Prefix all children properties in the XML formatter
Otherwise it will fail on properties that are mandatorily prefixed
like the newly added deinterlacing properties
Thibault Saunier [Fri, 6 May 2016 18:18:50 +0000 (15:18 -0300)]
ges: Remove timeline_emit_group_removed which slipped in the API by mistake
This is formally an API break but I am sure no one ever used that and
we should make sure the method is removed as soon as possible because
it has no reason to be exposed.
Thibault Saunier [Fri, 29 Apr 2016 14:36:00 +0000 (11:36 -0300)]
container: Handle setting children properties that need prefixing
Thibault Saunier [Fri, 29 Apr 2016 13:29:00 +0000 (10:29 -0300)]
video-source: Expose deinterlace-[fields, mode, tff] child properties
Letting some control over the deinterlacing to the users
Tim-Philipp Müller [Sat, 30 Apr 2016 17:38:33 +0000 (18:38 +0100)]
ges: fix misc g-i annotations
Aurélien Zanelli [Sat, 30 Apr 2016 16:20:00 +0000 (18:20 +0200)]
g-i: use only "ges/ges.h" as c-include for introspection
This is the only header which shall be included by user. Otherwise some
language using gir to generate binding, e.g Vala, will includes all
headers files in alphabetical order which causes compilation errors due
to incomplete type.
https://bugzilla.gnome.org/show_bug.cgi?id=765856
Aurélien Zanelli [Sat, 30 Apr 2016 14:43:26 +0000 (16:43 +0200)]
timeline: rename "track-element" to "track_element" in select-tracks-for-object documentation
because "track-element" is not a valid identifier for a parameter and
will cause generated binding using GIR to be invalid. For instance in
Vala.
https://bugzilla.gnome.org/show_bug.cgi?id=765853
Thibault Saunier [Fri, 29 Apr 2016 13:05:10 +0000 (10:05 -0300)]
video-source: Do not ever plugin avdeinterlace
It is not feature compatible with deinterlace and is not safe to use
Sebastian Dröge [Thu, 28 Apr 2016 10:39:41 +0000 (13:39 +0300)]
ges: #include glib.h for G_BEGIN_DECLS
Sebastian Dröge [Thu, 28 Apr 2016 10:39:27 +0000 (13:39 +0300)]
ges-multi-file-source: Fix case of standard gobject macros
Sebastian Dröge [Thu, 28 Apr 2016 10:37:49 +0000 (13:37 +0300)]
ges: Add some more functions to the docs and don't scan internal headers
Someone still should look through the unused.txt for more things to add or
hide.
Sebastian Dröge [Mon, 25 Apr 2016 12:11:00 +0000 (15:11 +0300)]
ges: Add G_BEGIN_DECLS around all relevant declarations in headers
Thibault Saunier [Fri, 22 Apr 2016 19:06:50 +0000 (16:06 -0300)]
title: Do not concider inpoints
It does not make sense for titles
Handle element with no inpoint handling in the timeline
Fixes https://phabricator.freedesktop.org/T7319
Julien Isorce [Thu, 14 Apr 2016 09:05:16 +0000 (10:05 +0100)]
Automatic update of common submodule
From 6f2d209 to ac2f647
Sebastian Dröge [Wed, 13 Apr 2016 09:32:53 +0000 (12:32 +0300)]
tests: Rename positionner to positioner in the tests too
Sebastian Dröge [Wed, 13 Apr 2016 09:31:05 +0000 (12:31 +0300)]
ges: Fix typo by renaming positionner to positioner
It's fortunately private API
Sebastian Dröge [Wed, 13 Apr 2016 09:26:13 +0000 (12:26 +0300)]
framepositionner: Initialize all fields of the meta during initialization
GstMetas are not allocated with all fields initialized to zeroes.
Thibault Saunier [Sun, 10 Apr 2016 00:12:00 +0000 (21:12 -0300)]
ges: Do not try to set read only properties
When copying and splitting clips
Fixes T7375
Thibault Saunier [Sat, 9 Apr 2016 21:13:33 +0000 (18:13 -0300)]
transition: Lower done some debug loggin level