Commit graph

2751 commits

Author SHA1 Message Date
Thibault Saunier
ab7865d41c clip: Make sure that clip start change is notified before children changes
Fixes https://phabricator.freedesktop.org/T7577

Differential Revision: https://phabricator.freedesktop.org/D1600
2017-01-09 19:49:19 -03:00
Alexandru Băluț
00d6c1e5ae tests_: Check the order of signals when a transition is created
Reviewed-by: Thibault Saunier <thibault.saunier@collabora.com>
Differential Revision: https://phabricator.freedesktop.org/D1391
2017-01-09 19:49:17 -03:00
Alexandru Băluț
872d15eb9d asset: Fix set_proxy to abort when an error happens
Differential Revision: https://phabricator.freedesktop.org/D1574
2017-01-09 11:43:13 -03:00
Alexandru Băluț
6b9faec7dc asset: Reuse local variable
Differential Revision: https://phabricator.freedesktop.org/D1573
2017-01-09 11:43:11 -03:00
Guillaume Desmottes
e0fba540f2 meson: generate pkg-config -uninstalled pc files
Generating those files is useful for users building the GStreamer stack
using meson and having to link it to another project which is still
using the autotools.

https://bugzilla.gnome.org/show_bug.cgi?id=776810
2017-01-05 09:20:05 -03:00
Thibault Saunier
fe49c7f112 ges-launch: Use standard GstEncodingProfile deserialization function 2016-12-23 15:08:06 -03:00
Thibault Saunier
d2d0f03edd validate: Remove space breaking muting ges-launch 2016-12-22 10:00:06 -03:00
Thibault Saunier
8aa407ff27 video-mixer: Fix the way we release mixer pads
We were using the actual mixer pad to release the smart mixer
pad, which seemed to be on purpose, but was not properly handle,
moreover, it is now forbiden to pass a pad not inside a GstElement
when releasing it.

Also properly remove ghost pads from Smart mixer, we were planly
failling at it.
2016-12-22 09:50:39 -03:00
Thibault Saunier
e41de525e4 meson: Install ges-launch 2016-12-22 08:44:07 -03:00
Tim-Philipp Müller
ddc37e6b44 Remove generated .spec file
Likely extremely bitrotten, and we should not ship this anyway.
2016-12-16 17:29:59 +00:00
Thibault Saunier
054ac40473 tests: Remove now meaningless empty testsuite 2016-12-16 14:04:28 -03:00
Antonio Ospite
7ef6762c79 ges: add a basic unix man page for ges-launch-1.0
Do not list all the possible options in the man page but only the help
options.

This is in order to avoid duplication and prevent the man page from
becoming obsolete in case the options change in the code but do not get
updated in the man page.

https://bugzilla.gnome.org/show_bug.cgi?id=776063
2016-12-15 09:34:42 -03:00
Antonio Ospite
1d32be0c08 ges: fix the description of the --help-GES command line option
Use "Show GES Options" which is more appropriate and avoids duplication
with --help-gst which already says "Show GStreamer Options".

https://bugzilla.gnome.org/show_bug.cgi?id=776063
2016-12-14 09:13:41 -03:00
Thibault Saunier
9dd859403d tests: Make sure tests can be listed
Initializing GstCheck before creating the testsuite
2016-12-14 09:13:18 -03:00
Thibault Saunier
e8d9f9226a ges-launch: Make sure GStreamer is always initialized
https://bugzilla.gnome.org/show_bug.cgi?id=776064
2016-12-13 23:26:23 -03:00
Thibault Saunier
a6a8abce93 meson: Support building without Gst debug 2016-12-09 17:52:06 -03:00
Edward Hervey
9f234a530b Automatic update of common submodule
From 1416c16 to 39ac2f5
2016-12-03 08:21:07 +01:00
Thibault Saunier
ad27229dac element: Rework set_child_property_by_pspec
It was making no sense to loose the information about the pspec itself
to retrieve the child associated to it and was failling when we were
forcing the AssociateType::prop synthax
2016-12-01 17:08:43 -03:00
Thibault Saunier
b6b640d046 test:nle: Soften check on refcount
The composition might already have taken a new ref processing the
source.
2016-12-01 15:52:37 -03:00
Thibault Saunier
66e13d43b9 nlecomposition: Deactivate current stack in PAUSED_READY state
To avoid a race when tearing down the composition (PAUSED_TO_READY),
we should make sure to tear down the current stack and let the GstBin
class handle the remaining thing to do during the change state.

We should still ignore any error happening when tearing down the
bin state just in case.

https://bugzilla.gnome.org/show_bug.cgi?id=775051
2016-11-30 11:11:42 -03:00
Thibault Saunier
54149e5eb5 tools: Deinit Gst before exiting 2016-11-30 09:53:21 -03:00
Thibault Saunier
d75359b096 meson: Do not print error logs when building the gir 2016-11-29 10:37:29 -03:00
Scott D Phillips
b4b57ddcf8 examples: remove #include <ges-internal.h> from assets.c
It is not needed and pulling it in is causing a link problem with msvc.
Including ges-internal.h sets the default debug category in assets.c to
_ges_debug. Because _ges_debug is marked as DATA in the libges.def, it
will only be linked from libges.dll if it is marked in the source with
dllimport. Instead of messing with that we can just remove this include.

https://bugzilla.gnome.org/show_bug.cgi?id=775295
2016-11-29 13:19:50 +02:00
Tim-Philipp Müller
c6934ed6fd common: use https protocol for common submodule
https://bugzilla.gnome.org/show_bug.cgi?id=775110
2016-11-26 11:25:44 +00:00
Sebastian Dröge
f536db2b71 ges-timeline: Properly calculate absolute diff of two unsigned integers
CID 1394491.
2016-11-23 18:42:27 +02:00
Sebastian Dröge
d9ab6f14e8 ges: Add NULL check before dereferencing
CID 1394494.
2016-11-23 18:28:35 +02:00
Philippe Renon
be48b040ea ges-uri-asset: fix compile error 'timeout' may be used uninitialized
https://bugzilla.gnome.org/show_bug.cgi?id=774751
2016-11-21 09:29:59 +02:00
Scott D Phillips
b5cda44417 make: include common/win32.mak
With the addition of the .def file for libges we need to make
sure the check-export script from common gets executed so that the
.def stays up to date.

https://bugzilla.gnome.org/show_bug.cgi?id=774641
2016-11-18 16:55:39 -03:00
Thibault Saunier
119871b8f0 Update common submodule 2016-11-18 16:55:17 -03:00
Scott D Phillips
9feee792c5 Enable building with MSVC
https://bugzilla.gnome.org/show_bug.cgi?id=774641
2016-11-18 09:13:53 -03:00
Scott D Phillips
3319ed17d8 Cast away const from GstMetaInfo in *_get_meta_info() functions
MSVC warns about the const in the implicit argument conversion in the
calls to g_once_init_{enter,leave}. It's OK so explicitly cast it.

https://bugzilla.gnome.org/show_bug.cgi?id=774641
2016-11-18 09:13:53 -03:00
Scott D Phillips
f203c01af2 Pass gint/guint pointers instead of enum pointers
The underlying integer type for enums are implementation defined and may
not be the same size as gint/guint. So implicitly casting from pointers-
to-enum-types to pointers-to-int-types is unsafe. MSVC warns on these.

https://bugzilla.gnome.org/show_bug.cgi?id=774641
2016-11-18 09:13:53 -03:00
Scott D Phillips
f1dd6f4226 parse: Don't #include <unistd.h>
It isn't needed and isn't present in non-posix environments like windows
with MSVC or mingw.

https://bugzilla.gnome.org/show_bug.cgi?id=774641
2016-11-18 09:13:53 -03:00
Sebastian Dröge
5511124bc0 Revert "nlecomposition: Start task and initialize the stack after chaining up to parent's change state function"
This reverts commit 57d40bec1a.

Apparently it causes timeouts in the unit tests on Jenkins and
Thibault's machine, and in the gst-validate tests.

Caused by elements staying in PAUSED and waiting to be set to PLAYING.
Needs further investigation.
2016-11-17 09:41:31 +02:00
Sebastian Dröge
582bf15c35 Revert "nleobject: Start up in NULL->READY->PAUSED after the parent class did"
This reverts commit 5f7943c59d.
2016-11-17 09:40:33 +02:00
Sebastian Dröge
5f7943c59d nleobject: Start up in NULL->READY->PAUSED after the parent class did
This keeps everything in a more consistent order and makes sure that the
base class is already set up completely before we start doing anything.
It also prevents from doing any setup if the base class fails, and
possibly not shutting things down again then.

https://bugzilla.gnome.org/show_bug.cgi?id=774480
2016-11-16 18:11:00 +02:00
Sebastian Dröge
57d40bec1a nlecomposition: Start task and initialize the stack after chaining up to parent's change state function
Otherwise we could set the state of the children to PAUSED already (i.e.
start dataflow) from the composition's task, while the composition
itself is currently chaining up to the parent class' change state
function and did not activate the pads yet. This causes buffers and
events to be discarded, and everything to stop with a not-negotiated
error.

https://bugzilla.gnome.org/show_bug.cgi?id=774480
2016-11-16 14:00:58 +02:00
Thibault Saunier
3ac6f84259 tests: Fix running python unit tests
Adding missing nose2-junit-xml.cfg.in file and minor fixes in
the way we call nose2 also making sure the .xunit files end
up in the right place.
2016-11-15 19:11:39 -03:00
Thibault Saunier
9bc06c755a ges: Check if GstDiscoverer could be created at init time
And fail initialization if it is not the case, we make the assumption
it worked all around the codebase so we should really concider it fatal.
2016-11-15 15:19:42 -03:00
Sebastian Dröge
acfa0e9045 nlecomposition: Fix small remaining race in previous commit
The seek action might currently be handled (in which case it is not in
the actions list and the action lock is not locked), but not actually
handled completely yet (the seqnum is not stored yet).

To prevent this, we remember what the current action is that is being
handled, and also compare to that.

https://bugzilla.gnome.org/show_bug.cgi?id=774149
2016-11-11 07:44:28 +02:00
Alexandru Băluț
d88cee856e tests_: Use nose2 instead of nosetests
Differential Revision: https://phabricator.freedesktop.org/D1394
2016-11-09 18:35:41 -03:00
Alexandru Băluț
3ed09c370a ges: Fix documentation and debug comments
Reviewed-by: Thibault Saunier <thibault.saunier@collabora.com>
Differential Revision: https://phabricator.freedesktop.org/D1393
2016-11-09 18:35:15 -03:00
Mathieu Duponchelle
73cf36fa25 timeline: reimplement snap_to_position a bit more appropriately.
It could yet be made be simpler, but it would require
touching the rest of the timeline editing code.

Fixes https://phabricator.freedesktop.org/T7587

Reviewed-by: Thibault Saunier <thibault.saunier@collabora.com>
Differential Revision: https://phabricator.freedesktop.org/D657
2016-11-09 18:35:12 -03:00
Sebastian Dröge
ff6dc38900 nlecomposition: De-duplicate seek events based on their sequence number
If there are e.g. multiple video sinks, we would get the same seek event
multiple times. But we only want to handle it once.

https://bugzilla.gnome.org/show_bug.cgi?id=774149
2016-11-09 18:09:22 +02:00
Thibault Saunier
951150581e test:validate: Port to python3 2016-11-09 11:16:27 -03:00
Sebastian Dröge
748d466ac9 ges-timeline: Fix typo in debug messages 2016-11-09 11:48:09 +02:00
Thibault Saunier
1b5c3cb865 timeline: Avoid creating extra transition when rippling clips
In some cases when rippling clip we could get the algo lost because
a transition existed between two clips (for example at the end of c1
and at the begining of c2) but while rippling it would have required
a transition at the end of c2 and beginning of c1, and we were properly
not destroying the old one (as the two clips were in the moving context)
but we were still creating the other transition in the end...

Reviewed-by: Alex Băluț <alexandru.balut@gmail.com>
Differential Revision: https://phabricator.freedesktop.org/D1362
2016-11-04 15:56:36 -03:00
Thibault Saunier
a2ae8762af timeline: Make sure transitions between rippled clips are never deleted
Reviewed-by: Alex Băluț <alexandru.balut@gmail.com>
Differential Revision: https://phabricator.freedesktop.org/D1361
2016-11-04 15:56:34 -03:00
Thibault Saunier
e31b8627ef timeline: Destroy transition if a neighbor is not being moved to a layer
And make sure that we move the transition to the right layer, not trying
to figure it out.

Differential Revision: https://phabricator.freedesktop.org/D1360
2016-11-04 15:56:31 -03:00
Alexandru Băluț
ad6aab49ae tests_: Check transition is gone when editing clip to another layer
Differential Revision: https://phabricator.freedesktop.org/D1359
2016-11-04 15:56:30 -03:00