platform/upstream/gstreamer.git
8 years agoRelease 1.7.90
Sebastian Dröge [Tue, 1 Mar 2016 17:09:52 +0000 (19:09 +0200)]
Release 1.7.90

8 years agonle: Set the NleOperation flags to NLE_OBJECT_OPERATION
Sjors Gielen [Fri, 26 Feb 2016 20:13:37 +0000 (21:13 +0100)]
nle: Set the NleOperation flags to NLE_OBJECT_OPERATION

Reviewed By: thiblahute

Differential Revision: https://phabricator.freedesktop.org/D770

8 years agoges: Register scaletempo::rate as a rate changing property
Thibault Saunier [Fri, 26 Feb 2016 19:42:41 +0000 (20:42 +0100)]
ges: Register scaletempo::rate as a rate changing property

8 years agoHandle changing playback rate
Sjors Gielen [Sun, 20 Dec 2015 13:03:57 +0000 (14:03 +0100)]
Handle changing playback rate

Before this patch, NLE and GES did not support NleOperations (respectively
GESEffects) that changed the speed/tempo/rate at which the source plays. For
example, the 'pitch' element can make audio play faster or slower. In GES 1.5.90
and before, an NleOperation containing the pitch element to change the rate (or
tempo) would cause a pipeline state change to PAUSED after that stack; that has
been fixed in 1.5.91 (see #755012 [0]). But even then, in 1.5.91 and later,
NleComposition would send segment events to its NleSources assuming that one
source second is equal to one pipeline second. The resulting early EOS event
(in the case of a source rate higher than 1.0) would cause it to switch stacks
too early, causing confusion in the timeline and spectacularly messed up
output.

This patch fixes that by searching for rate-changing elements in
GESTrackElements such as GESEffects. If such rate-changing elements are found,
their final effect on the playing rate is stored in the corresponding NleObject
as the 'media duration factor', named like this because the 'media duration',
or source duration, of an NleObject can be computed by multiplying the duration
with the media duration factor of that object and its parents (this is called
the 'recursive media duration factor'). For example, a 4-second NleSource with
an NleOperation with a media duration factor of 2.0 will have an 8-second media
duration, which means that for playing 4 seconds in the pipeline, the seek
event sent to it must span 8 seconds of media. (So, the 'duration' of an
NleObject or GES object always refers to its duration in the timeline, not the
media duration.)

To summarize:

* Rate-changing elements are registered in the GESEffectClass (pitch::tempo and
  pitch::rate are registered by default);
* GESTimelineElement is responsible for detecting rate-changing elements and
  computing the media_duration_factor;
* GESTrackElement is responsible for storing the media_duration_factor in
  NleObject;
* NleComposition is responsible for the recursive_media_duration_factor;
* The latter property finally fixes media time computations in NleObject.

NLE and GES tests are included.

[0] https://bugzilla.gnome.org/show_bug.cgi?id=755012

Differential Revision: https://phabricator.freedesktop.org/D276

8 years agoAutomatic update of common submodule
Sebastian Dröge [Fri, 26 Feb 2016 10:42:55 +0000 (12:42 +0200)]
Automatic update of common submodule

From b64f03f to 6f2d209

8 years agogroup-added and group-removed signals added
Fabian Orccon [Tue, 16 Feb 2016 12:49:57 +0000 (12:49 +0000)]
group-added and group-removed signals added

Differential Revision: https://phabricator.freedesktop.org/D619

8 years agoBack to development
Sebastian Dröge [Fri, 19 Feb 2016 10:38:45 +0000 (12:38 +0200)]
Back to development

8 years agoRelease 1.7.2
Sebastian Dröge [Fri, 19 Feb 2016 10:26:27 +0000 (12:26 +0200)]
Release 1.7.2

8 years agouninstalled.pc: add support for non libtool build systems
Julien Isorce [Thu, 18 Feb 2016 15:26:11 +0000 (15:26 +0000)]
uninstalled.pc: add support for non libtool build systems

Currently the .la path is provided which requires to use libtool as
mentioned in the GStreamer manual section-helloworld-compilerun.html.
It is fine as long as the application is built using libtool.

So currently it is not possible to compile a GStreamer application
within gst-uninstalled with CMake or other build system different
than autotools.

This patch allows to do the following in gst-uninstalled env:
gcc test.c -o test $(pkg-config --cflags --libs gstreamer-1.0 \
  gst-editing-services-1.0)
Previously it required to prepend libtool --mode=link

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

8 years agoFix and test priority of TrackElement after splitting
Thibault Saunier [Tue, 9 Feb 2016 11:31:10 +0000 (12:31 +0100)]
Fix and test priority of TrackElement after splitting

And make sure we properly handle transitions in that case

8 years agoges: Give better names to nleobjects
Thibault Saunier [Tue, 9 Feb 2016 11:14:15 +0000 (12:14 +0100)]
ges: Give better names to nleobjects

8 years agotests: extend the AM_TESTS_ENVIRONMENT from check.mak
Thiago Santos [Fri, 5 Feb 2016 23:02:40 +0000 (20:02 -0300)]
tests: extend the AM_TESTS_ENVIRONMENT from check.mak

To get the CK_DEFAULT_TIMEOUT defined for all tests

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

8 years agoAutomatic update of common submodule
Thiago Santos [Fri, 5 Feb 2016 21:11:59 +0000 (18:11 -0300)]
Automatic update of common submodule

From 86e4663 to b64f03f

8 years agotitlesource: Add properties for text dimensions.
Lubosz Sarnecki [Thu, 28 Jan 2016 12:37:13 +0000 (13:37 +0100)]
titlesource: Add properties for text dimensions.

8 years agotrackelement: Make use of read-only children properties.
Lubosz Sarnecki [Tue, 2 Feb 2016 19:31:13 +0000 (20:31 +0100)]
trackelement: Make use of read-only children properties.

Read only properties will throw a GLib warning like this
when accessed with "set_child_property":

Warning: g_object_set_property: property 'text-x' of object class 'GstTextOverlay' is not writable

8 years agonle: Turn composition structural issue into ERROR on the bus
Thibault Saunier [Tue, 26 Jan 2016 11:52:36 +0000 (12:52 +0100)]
nle: Turn composition structural issue into ERROR on the bus

Those error are really critical and we are then enable to keep
working. Just post an ERROR message on the bus and let the
application deal with it.

Reviewed-by: Mathieu Duponchelle <mathieu.duponchelle@opencreed.com>
Differential Revision: https://phabricator.freedesktop.org/D740

8 years agotrack-element: Rely on nleobject to be created at construct time
Thibault Saunier [Mon, 25 Jan 2016 15:11:14 +0000 (16:11 +0100)]
track-element: Rely on nleobject to be created at construct time

Avoiding all the pending_xx dance and making the code simpler.

This is now possible thanks to the various recent refactoring.

Thanks to that the user is able to set_child_property on objects
that are not in GESTrack yet, as expected.

Reviewed-by: Thibault Saunier <thibault.saunier@collabora.com>
Differential Revision: https://phabricator.freedesktop.org/D739

8 years agoeffect: Determine the effect type as soon as possible
Thibault Saunier [Mon, 25 Jan 2016 14:57:22 +0000 (15:57 +0100)]
effect: Determine the effect type as soon as possible

Making it possible to create the nleobject right at the creation
of the element.

Reviewed-by: Thibault Saunier <thibault.saunier@collabora.com>
Differential Revision: https://phabricator.freedesktop.org/D738

8 years agotitle-clip: Return default GESTitleSource value if no child set yet
Thibault Saunier [Mon, 25 Jan 2016 14:51:26 +0000 (15:51 +0100)]
title-clip: Return default GESTitleSource value if no child set yet

In get_property we should return the default values if
we have not created any GESTitleSource yet
(instead of segfaulting).

And fix GESTitleSource default values!

Reviewed-by: Thibault Saunier <thibault.saunier@collabora.com>
Differential Revision: https://phabricator.freedesktop.org/D737

8 years agoges: track-element: Try to create NleObject as soon as possible
Thibault Saunier [Mon, 25 Jan 2016 10:56:57 +0000 (11:56 +0100)]
ges: track-element: Try to create NleObject as soon as possible

This way we have informations about the content of the
children as soon as possible.

Most code paths where already ready to handle that as we use it for
copying clips.

Fix framepositionner to properly handle that (it would have broke
with copied clips before).

Reviewed-by: Thibault Saunier <thibault.saunier@collabora.com>
Differential Revision: https://phabricator.freedesktop.org/D736

8 years agotimeline: Avoid possible crash disposing the timeline
Thibault Saunier [Tue, 19 Jan 2016 10:22:57 +0000 (11:22 +0100)]
timeline: Avoid possible crash disposing the timeline

8 years agog-i: fix init section to avoid compiler warnings
Thibault Saunier [Tue, 19 Jan 2016 10:15:58 +0000 (11:15 +0100)]
g-i: fix init section to avoid compiler warnings

8 years agocontainer: Update start if adding a child that as a start < current start
Thibault Saunier [Wed, 6 Jan 2016 16:20:20 +0000 (17:20 +0100)]
container: Update start if adding a child that as a start < current start

Reviewed-by: Thibault Saunier <thibault.saunier@collabora.com>
Differential Revision: https://phabricator.freedesktop.org/D629

8 years agotimeline: Fix infinite loop on dispose
Thibault Saunier [Wed, 6 Jan 2016 17:14:07 +0000 (18:14 +0100)]
timeline: Fix infinite loop on dispose

Reviewed-by: Thibault Saunier <thibault.saunier@collabora.com>
Differential Revision: https://phabricator.freedesktop.org/D628

8 years agogroup: Make deep copying actually copy deep
Thibault Saunier [Fri, 1 Jan 2016 10:56:27 +0000 (11:56 +0100)]
group: Make deep copying actually copy deep

Allowing pasting groups paste exactly what had been copied

And not the new version of the contained objects

This technically breaks the C API but this is a new API and I believe
and hope nobody is using it right now.

Reviewed-by: Thibault Saunier <thibault.saunier@collabora.com>
Differential Revision: https://phabricator.freedesktop.org/D616

8 years agotests_: Add a simple python copy/paste test for groups
Thibault Saunier [Tue, 22 Dec 2015 22:21:44 +0000 (23:21 +0100)]
tests_: Add a simple python copy/paste test for groups

Integrating python tests in the build system

And cleanup configure.ac

Reviewed-by: Thibault Saunier <thibault.saunier@collabora.com>
Differential Revision: https://phabricator.freedesktop.org/D601

8 years agoDo not install ges-smart-video-mixer.h
Thibault Saunier [Sat, 2 Jan 2016 15:15:02 +0000 (16:15 +0100)]
Do not install ges-smart-video-mixer.h

it should always have been private

Reviewed-by: Thibault Saunier <thibault.saunier@collabora.com>
Differential Revision: https://phabricator.freedesktop.org/D617

8 years agoRevert "timeline-element: Do not consider not serializable elements when getting...
Thibault Saunier [Wed, 6 Jan 2016 08:50:39 +0000 (09:50 +0100)]
Revert "timeline-element: Do not consider not serializable elements when getting top element"

This commit was causing issue where we were reporting the toplevel
element as an element but that element was actually in another
not serialized group. That is very tricky to handle for end users
as they are not guaranteed the toplevel clips were actually not
contained in another element.

This reverts commit ceb82ba3028332987d8d5251f98b4896120aa59b.

Reviewed-by: Thibault Saunier <thibault.saunier@collabora.com>
Differential Revision: https://phabricator.freedesktop.org/D627

8 years agonlecomposition: use correct type for flush_seqnum.
Mathieu Duponchelle [Sat, 9 Jan 2016 04:15:47 +0000 (05:15 +0100)]
nlecomposition: use correct type for flush_seqnum.

8 years agonleghostpad: use GST_SEGMENT_FORMAT
Mathieu Duponchelle [Sat, 9 Jan 2016 04:14:36 +0000 (05:14 +0100)]
nleghostpad: use GST_SEGMENT_FORMAT

This isn't 2005 anymore.

8 years agoges-asset: Don't dereference NULL proxy assets when resolving fails
Sebastian Dröge [Tue, 29 Dec 2015 16:08:03 +0000 (18:08 +0200)]
ges-asset: Don't dereference NULL proxy assets when resolving fails

CID 1346531

8 years agoges: Fix various g-i warnings
Sebastian Dröge [Sat, 26 Dec 2015 08:43:11 +0000 (09:43 +0100)]
ges: Fix various g-i warnings

8 years agoges-track-element: Rename control-binding-reomved signal to control-binding-removed
Sebastian Dröge [Sat, 26 Dec 2015 08:43:19 +0000 (09:43 +0100)]
ges-track-element: Rename control-binding-reomved signal to control-binding-removed

Strictly speaking an API change but nobody on the Internet seemed to have used
the signal with the typo in the name.

8 years agoBack to development
Sebastian Dröge [Thu, 24 Dec 2015 14:30:23 +0000 (15:30 +0100)]
Back to development

8 years agoRelease 1.7.1
Sebastian Dröge [Thu, 24 Dec 2015 14:07:57 +0000 (15:07 +0100)]
Release 1.7.1

8 years agoges-validate: Fix compiler warning caused by usage of wrong enum type
Sebastian Dröge [Tue, 22 Dec 2015 08:58:06 +0000 (09:58 +0100)]
ges-validate: Fix compiler warning caused by usage of wrong enum type

ges-validate.c:237:22: error: implicit conversion from enumeration type
      'GESEdge' to different enumeration type 'GESEditMode'
      [-Werror,-Wenum-conversion]
  GESEditMode edge = GES_EDGE_NONE;
              ~~~~   ^~~~~~~~~~~~~
ges-validate.c:277:41: error: implicit conversion from enumeration type
      'GESEditMode' to different enumeration type 'GESEdge'
      [-Werror,-Wenum-conversion]
              new_layer_priority, mode, edge, position))) {
                                        ^~~~

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

8 years agotimeline-element: Do not consider not serializable elements when getting top element
Thibault Saunier [Fri, 18 Dec 2015 12:32:22 +0000 (13:32 +0100)]
timeline-element: Do not consider not serializable elements when getting top element

Those are temporary elements that should not be considered when dealing
with the hierarchy of objects.

Fixes T3455

8 years agouri-clip: Copy sources child properties when resetting asset
Thibault Saunier [Thu, 17 Dec 2015 12:36:42 +0000 (13:36 +0100)]
uri-clip: Copy sources child properties when resetting asset

8 years agoexamples: Move all examples to the root dir and create foldersdir per language
Thibault Saunier [Thu, 12 Mar 2015 12:57:28 +0000 (13:57 +0100)]
examples: Move all examples to the root dir and create foldersdir per language

+ Add some markdown files to link between languages
+ Add a simple 'play timeline with one clip" example in C and python

8 years agoconfigure: Use -Bsymbolic-functions if available
Sebastian Dröge [Mon, 21 Dec 2015 11:34:56 +0000 (12:34 +0100)]
configure: Use -Bsymbolic-functions if available

While this is more useful for libraries, some of our plugins with multiple
files and some internal API can also benefit from this.

8 years agoRevert "project: Call asset_added in the first signal emition stage"
Thibault Saunier [Fri, 11 Dec 2015 14:20:53 +0000 (15:20 +0100)]
Revert "project: Call asset_added in the first signal emition stage"

This reverts commit 08f927ca68f71530a32846b6da19eac9dc439a2c.

That commit was breaking the API and could break other people's code.

8 years agoasset: Add a way to set asset as "needing reload"
Thibault Saunier [Tue, 8 Dec 2015 11:37:29 +0000 (12:37 +0100)]
asset: Add a way to set asset as "needing reload"

Allowing application to force the asset system to recheck if an
asset has been "fixed" and can be used again

API:
    + ges_asset_needs_reload

Differential Revision: https://phabricator.freedesktop.org/D584

8 years agoproject: Call asset_added in the first signal emition stage
Thibault Saunier [Wed, 2 Dec 2015 10:04:10 +0000 (11:04 +0100)]
project: Call asset_added in the first signal emition stage

Differential Revision: https://phabricator.freedesktop.org/D520

8 years agoImplement asset proxying support
Thibault Saunier [Fri, 20 Nov 2015 22:33:12 +0000 (23:33 +0100)]
Implement asset proxying support

API:
  ges_asset_set_proxy
  ges_asset_get_proxy
  ges_asset_list_proxies
  ges_asset_get_proxy_target

Differential Revision: https://phabricator.freedesktop.org/D504

8 years agoAutomatic update of common submodule
Nicolas Dufresne [Mon, 7 Dec 2015 14:11:38 +0000 (09:11 -0500)]
Automatic update of common submodule

From b319909 to 86e4663

8 years agobash-completion: Disable during "make distcheck" as this requires installing files...
Sebastian Dröge [Thu, 26 Nov 2015 17:41:36 +0000 (23:11 +0530)]
bash-completion: Disable during "make distcheck" as this requires installing files outside the prefix

automake requires all files to be installed inside the prefix. bash-completion
requires the files to be in a specific directory given by a pkg-config file.
As such those two are having incompatible requirements and we just disable
bash-completion installation for the time being when running "make distcheck".

Nonetheless things like "make install" with e.g. a DESTDIR or a private
installation into a user's directory will fail as in both cases the
bash-completion data would be tried to be installed system-wide.

8 years agoRevert "build: fix make distcheck."
Sebastian Dröge [Thu, 26 Nov 2015 17:12:45 +0000 (22:42 +0530)]
Revert "build: fix make distcheck."

This reverts commit 462727d6d825b6e67119e6b8ea47d9e18cc22bdf.

This "fix" broke the build on Windows, where both prefix and datadir are
absolute paths and as such we would concatenate two absolute paths and fail.

8 years agotests: Properly setup GST_PLUGIN_PATH in test environement
Thibault Saunier [Fri, 20 Nov 2015 23:23:02 +0000 (00:23 +0100)]
tests: Properly setup GST_PLUGIN_PATH in test environement

8 years agoDist gst-editing-services.doap
Thibault Saunier [Sat, 14 Nov 2015 23:31:21 +0000 (00:31 +0100)]
Dist gst-editing-services.doap

8 years agoasset: Add a method to retrieve the GError of an asset loaded with error
Thibault Saunier [Sun, 8 Nov 2015 21:49:43 +0000 (22:49 +0100)]
asset: Add a method to retrieve the GError of an asset loaded with error

API:
    ges_asset_get_error

8 years agoproject: Add a 'asset-loading' signal
Thibault Saunier [Sat, 7 Nov 2015 17:21:53 +0000 (18:21 +0100)]
project: Add a 'asset-loading' signal

8 years agoges: Set restriction caps in the audio source caps filter
Thibault Saunier [Thu, 5 Nov 2015 10:16:31 +0000 (11:16 +0100)]
ges: Set restriction caps in the audio source caps filter

Otherwise we could have not negotiated errors in audiomixer when
the channel/channel-mask do not match

Differential Revision: https://phabricator.freedesktop.org/D493
Reviewed-by: Mathieu Duponchelle <mathieu.duponchelle@opencreed.com>
8 years agoformatter: Do not serialize top effect priorities
Thibault Saunier [Wed, 4 Nov 2015 19:20:10 +0000 (20:20 +0100)]
formatter: Do not serialize top effect priorities

We just need to make sure they are always serialized in the right
order (which is the case) and de serializing them will lead to the
right behaviour.

We should not serialize the priority as the priority of the source
itself depends on the action having been done on the parent clip,
and we do not serialize the source priorities (and should not, GES
should just do the right thing).

Differential Revision: https://phabricator.freedesktop.org/D491

8 years agolauncher: Make sure to not activate validate twice when simply loading a scenario
Thibault Saunier [Wed, 4 Nov 2015 17:37:34 +0000 (18:37 +0100)]
launcher: Make sure to not activate validate twice when simply loading a scenario

8 years agouri-clip: Make sure to instantiate an asset to back GESUriClip-s
Thibault Saunier [Fri, 30 Oct 2015 09:52:12 +0000 (10:52 +0100)]
uri-clip: Make sure to instantiate an asset to back GESUriClip-s

8 years agoAutomatic update of common submodule
Tim-Philipp Müller [Wed, 21 Oct 2015 13:37:26 +0000 (14:37 +0100)]
Automatic update of common submodule

From b99800a to b319909

8 years agoUse new GST_ENABLE_EXTRA_CHECKS #define
Sebastian Dröge [Tue, 20 Oct 2015 14:29:42 +0000 (17:29 +0300)]
Use new GST_ENABLE_EXTRA_CHECKS #define

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

8 years agoAutomatic update of common submodule
Sebastian Dröge [Wed, 21 Oct 2015 11:28:54 +0000 (14:28 +0300)]
Automatic update of common submodule

From 9aed1d7 to b99800a

8 years agoUpdate GLib dependency to 2.40.0
Sebastian Dröge [Fri, 2 Oct 2015 19:27:37 +0000 (22:27 +0300)]
Update GLib dependency to 2.40.0

8 years agonlecomposition: free closure actions when disposing
Justin Kim [Fri, 2 Oct 2015 14:51:56 +0000 (16:51 +0200)]
nlecomposition: free closure actions when disposing

Summary:
After invoking GClosure, the item of action list becomes
orphan so it lost a chance to be freed. In addition, even
when disposing, the list of actions has few items so we
have to check the list.

Reviewers: thiblahute

Projects: #gstreamer_editing_services

Reviewed By: thiblahute

Differential Revision: https://phabricator.freedesktop.org/D324

8 years agonlecomposition: fix wrong argument order of GClosureNotify
Justin Kim [Fri, 2 Oct 2015 14:49:31 +0000 (16:49 +0200)]
nlecomposition: fix wrong argument order of GClosureNotify

Summary:
_free_action should follow GClosureNotify type.

```
void
(*GClosureNotify) (gpointer data,
                   GClosure *closure);
```

Reviewers: thiblahute

Projects: #gstreamer_editing_services

Reviewed By: thiblahute

Differential Revision: https://phabricator.freedesktop.org/D323

8 years agotrack: mixing_operation is handled by its parent
Justin Kim [Fri, 2 Oct 2015 14:39:31 +0000 (16:39 +0200)]
track: mixing_operation is handled by its parent

Summary:
Normally, mixing_operation is created and added to nlecomposition
as a child element so it will be freed when nlecomposition is removed
from a track.

Reviewers: thiblahute

Projects: #gstreamer_editing_services

Differential Revision: https://phabricator.freedesktop.org/D319

8 years agonleoperation: don't leak iterator
Justin Kim [Fri, 2 Oct 2015 14:11:33 +0000 (16:11 +0200)]
nleoperation: don't leak iterator

Summary: Once an iterator is created, it should be freed after usage.

Reviewers: thiblahute

Projects: #gstreamer_editing_services

Reviewed By: thiblahute

Differential Revision: https://phabricator.freedesktop.org/D318

8 years agoasset: simplify if-statement in cache_set_loaded
Justin Kim [Fri, 2 Oct 2015 14:10:59 +0000 (16:10 +0200)]
asset: simplify if-statement in cache_set_loaded

Summary:
Manual iteration can be replaced with foreach function.
In addition, this patch fixes mismatched GFunc type for
g_list_foreach and adds debug cateory for gst-asset for
convenient debugging.

Reviewers: thiblahute

Reviewed By: thiblahute

Differential Revision: https://phabricator.freedesktop.org/D312

8 years agouri-asset: do not reuse a passed GError pointer
Justin Kim [Fri, 2 Oct 2015 14:08:03 +0000 (16:08 +0200)]
uri-asset: do not reuse a passed GError pointer

Summary: A passed GError is re-allocated when discoverer has no information.

Reviewers: thiblahute

Projects: #gstreamer_editing_services

Reviewed By: thiblahute

Differential Revision: https://phabricator.freedesktop.org/D302

8 years agoxml-formatter: handle dispose properly
Justin Kim [Thu, 1 Oct 2015 14:26:05 +0000 (16:26 +0200)]
xml-formatter: handle dispose properly

Summary:
To dispose properly, a child object should call same function
of parent class.

Reviewers: thiblahute

Differential Revision: https://phabricator.freedesktop.org/D311

8 years agobase-xml-formatter: properly handle GFile from wrong uri
Justin Kim [Thu, 1 Oct 2015 14:06:33 +0000 (16:06 +0200)]
base-xml-formatter: properly handle GFile from wrong uri

Summary:
g_file_new_for_uri never fails so GFile always has valid pointer.
And fix a bug of double unref from D303.

Reviewers: thiblahute

Differential Revision: https://phabricator.freedesktop.org/D310

8 years agodon't leaks caps and converted strings
Justin Kim [Thu, 1 Oct 2015 09:28:38 +0000 (11:28 +0200)]
don't leaks caps and converted strings

Summary:
Valgrind reports trivial leakages related to handling
objects and their converted strings.

Reviewers: thiblahute

Differential Revision: https://phabricator.freedesktop.org/D303

8 years agotrack: add gaps when going from READY to PAUSED.
Mathieu Duponchelle [Wed, 30 Sep 2015 12:50:46 +0000 (14:50 +0200)]
track: add gaps when going from READY to PAUSED.

Summary:
The backend commits itself automatically in these cases, so track
needs to do so too.

Reviewers: thiblahute

Reviewed By: thiblahute

Differential Revision: https://phabricator.freedesktop.org/D94

8 years agoediting-services: Fix memory leaks when context parse fails
Vineeth TM [Thu, 20 Aug 2015 08:16:50 +0000 (17:16 +0900)]
editing-services: Fix memory leaks when context parse fails

When g_option_context_parse fails, context and error variables are not getting free'd
which results in memory leaks. Free'ing the same.

And replacing g_error_free with g_clear_error, which checks if the error being passed
is not NULL and sets the variable to NULL on free'ing.

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

8 years agonleoperation: don't leak srcpad
Justin Kim [Wed, 30 Sep 2015 08:11:20 +0000 (17:11 +0900)]
nleoperation: don't leak srcpad

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

8 years agoproject: fix a pointer for error message
Justin Kim [Wed, 30 Sep 2015 08:27:26 +0000 (17:27 +0900)]
project: fix a pointer for error message

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

8 years agoproject: don't leak GFileInfo
Justin Kim [Wed, 30 Sep 2015 08:26:31 +0000 (17:26 +0900)]
project: don't leak GFileInfo

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

8 years agotimeline-element,track,framepositionner: don't leak internal object
Justin Kim [Mon, 21 Sep 2015 16:06:00 +0000 (01:06 +0900)]
timeline-element,track,framepositionner: don't leak internal object

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

8 years agostructured-interface: introduce TRY_GET_STRING
Justin Kim [Wed, 23 Sep 2015 16:30:09 +0000 (01:30 +0900)]
structured-interface: introduce TRY_GET_STRING

TRY_GET uses gst_structure_get. However, if boxed or
string pointer is retrieved by gst_structure_get,
it should be freed properly.

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

8 years agouri-asset: don't leak uri string
Justin Kim [Thu, 24 Sep 2015 04:41:30 +0000 (13:41 +0900)]
uri-asset: don't leak uri string

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

8 years agoRevert "title-source: Force format with alpha channels out of videotestsrc"
Thibault Saunier [Mon, 28 Sep 2015 13:59:58 +0000 (15:59 +0200)]
Revert "title-source: Force format with alpha channels out of videotestsrc"

This reverts commit 7d1e1010728a5348674bb9053de6b095cb824984.

This commit was never meant to be committed (at least *not* on master).

8 years agostructure-parser: define GES_STRUCTURE_PARSER macro
Justin Kim [Mon, 28 Sep 2015 04:21:11 +0000 (13:21 +0900)]
structure-parser: define GES_STRUCTURE_PARSER macro

And fix trivial leakages of internal list structure.

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

8 years agotitle-source: Force format with alpha channels out of videotestsrc
Thibault Saunier [Sun, 27 Sep 2015 13:15:10 +0000 (15:15 +0200)]
title-source: Force format with alpha channels out of videotestsrc

Making sure the user can set a background of the title with an alpha
channel.

Working around https://bugzilla.gnome.org/show_bug.cgi?id=755482 for
the 1.6 branch.

8 years agoBack to development
Thibault Saunier [Fri, 25 Sep 2015 10:30:29 +0000 (12:30 +0200)]
Back to development

8 years agoRelease 1.6.0
Thibault Saunier [Fri, 25 Sep 2015 10:29:40 +0000 (12:29 +0200)]
Release 1.6.0

8 years agoges: Avoid emitting 'child-added/removed' when signal emission stops addition
Thibault Saunier [Thu, 24 Sep 2015 11:21:15 +0000 (13:21 +0200)]
ges: Avoid emitting 'child-added/removed' when signal emission stops addition

In the GESTimeline, TrackElement addition to a clip might get cancelled
(and thus the element gets removed), we need to make sure users do not
get wrong signals.

Also document the fact that user should connect to container::child-added
with g_signal_connect_after.

8 years agonle{composition,object}: remove unused allocation & trivial leakages
Justin Kim [Tue, 22 Sep 2015 14:10:35 +0000 (23:10 +0900)]
nle{composition,object}: remove unused allocation & trivial leakages

nlecomposition allocates unused 'UpdateCompositionData' and it
causes leakages.

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

8 years agopipeline: don't leak GstPad
Justin Kim [Thu, 24 Sep 2015 04:40:27 +0000 (13:40 +0900)]
pipeline: don't leak GstPad

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

8 years agopitivi-formatter: don't leak internal hash table
Justin Kim [Thu, 24 Sep 2015 04:42:16 +0000 (13:42 +0900)]
pitivi-formatter: don't leak internal hash table

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

8 years agovideo-transition: Make compositor background transparent
Thibault Saunier [Wed, 23 Sep 2015 19:23:13 +0000 (21:23 +0200)]
video-transition: Make compositor background transparent

Allowing further mixing downstream

8 years agovideo-transition: Add a framepositioner at the end of the transitio
Thibault Saunier [Wed, 23 Sep 2015 19:12:33 +0000 (21:12 +0200)]
video-transition: Add a framepositioner at the end of the transitio

So downstream compositor knows the zorder of the various streams

8 years agoRelease 1.5.91
Thibault Saunier [Fri, 18 Sep 2015 16:40:18 +0000 (18:40 +0200)]
Release 1.5.91

8 years agoges: Namespace NLE utils function into GES
Thibault Saunier [Fri, 18 Sep 2015 08:01:44 +0000 (10:01 +0200)]
ges: Namespace NLE utils function into GES

Avoiding name clashes when built statically

8 years agonle: Avoid unsetting srcpad target after the srcpad is already freed
Thibault Saunier [Tue, 15 Sep 2015 10:17:19 +0000 (12:17 +0200)]
nle: Avoid unsetting srcpad target after the srcpad is already freed

That leaded to segfaults

8 years agonle: Stop wrongly set operation segment base time
Thibault Saunier [Tue, 15 Sep 2015 09:08:29 +0000 (11:08 +0200)]
nle: Stop wrongly set operation segment base time

Inside the composition we actually do not need to have any notion
of what the timing outside the compositon as we already tweak the segment
base time outside the composition. This code was only there to work
around https://bugzilla.gnome.org/show_bug.cgi?id=753196

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

8 years agonlecomposition: don't leak internal hashtable
Justin Kim [Fri, 11 Sep 2015 07:18:46 +0000 (16:18 +0900)]
nlecomposition: don't leak internal hashtable

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

8 years agonleobject: don't leak srcpad when disposing
Justin Kim [Fri, 11 Sep 2015 07:13:19 +0000 (16:13 +0900)]
nleobject: don't leak srcpad when disposing

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

8 years agotimeline: don't leak pad in private structure
Justin Kim [Fri, 11 Sep 2015 07:11:40 +0000 (16:11 +0900)]
timeline: don't leak pad in private structure

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

8 years agoges-launcher: don't leak GError
Justin Kim [Fri, 11 Sep 2015 00:58:56 +0000 (09:58 +0900)]
ges-launcher: don't leak GError

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

8 years agoges-launcher: fix double free when argument is invalid
Justin Kim [Wed, 9 Sep 2015 14:32:19 +0000 (23:32 +0900)]
ges-launcher: fix double free when argument is invalid

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

8 years agovideo-source: Use the priority being set to compute zorder
Thibault Saunier [Fri, 4 Sep 2015 10:01:16 +0000 (12:01 +0200)]
video-source: Use the priority being set to compute zorder

8 years agovideo:transition: Set mixer pad zorder
Thibault Saunier [Wed, 2 Sep 2015 21:27:16 +0000 (23:27 +0200)]
video:transition: Set mixer pad zorder

8 years agovideo-source: Make sure to set framepositionner zorder when creating it
Thibault Saunier [Wed, 2 Sep 2015 15:58:33 +0000 (17:58 +0200)]
video-source: Make sure to set framepositionner zorder when creating it

And fix a computation bug where we would be having mixing order
reversed between layers.

And make sure that the positionner does not mix up Transition handling
of the zorder

8 years agovideo-source: Simply set framepositionner->zorder = self->priority
Thibault Saunier [Thu, 27 Aug 2015 14:28:42 +0000 (16:28 +0200)]
video-source: Simply set framepositionner->zorder = self->priority

Summary:
Making the code simpler and handling the transition case
where elements are in the same layer (which was failing
/setting same zorders until now).

Reviewers: Mathieu_Du

Differential Revision: https://phabricator.freedesktop.org/D237