Thibault Saunier
4aaee7d5f5
tools:launch: Print out the timeline description as an INFO not an ERROR
2015-04-16 10:28:46 +02:00
Thibault Saunier
de256fcf13
tools:launch: clean user facing message on wrong timeline description
...
Summary:
Before:
$ ../gst-editing-services/tools/ges-launch-1.0 -p
0:00:00.028629728 8155 0x17e1b60 ERROR default ges-launcher.c:214:_create_timeline: serialized timeline is -p
** (lt-ges-launch-1.0:8155): ERROR **: Could not create timeline, error: Could not find a suitable formatter
[1] 8155 trace trap (core dumped) ../gst-editing-services/tools/ges-launch-1.0 -p
$
After:
$ GST_DEBUG=0 ges-launch-1.0 -p
ERROR: Could not create timeline, error: Could not find a suitable formatter
$
Reviewers: Mathieu_Du
Differential Revision: http://phabricator.freedesktop.org/D95
2015-04-15 17:53:01 +02:00
Mathieu Duponchelle
506662e2dc
nleobject: It is wrong to update object->stop in set_property.
...
Summary: It must only be done when the object is commited.
We can do that in constructed though, as the changes will
anyway be commited when the object is added to a composition.
Also update the tests, as we set properties spearately then
check the stop, we can commit the source at its creation without
removing meaning from the tests.
Reviewers: thiblahute
Differential Revision: http://phabricator.freedesktop.org/D84
2015-04-09 15:40:32 +02:00
Mathieu Duponchelle
2e26a9e926
timeline, track: Emit commited at the correct moment.
...
Summary:
+ [API] GESTrack::commited signal.
+ [API] ges_track_commit_sync
We were emitting commited when timeline_commit was called, which
wasn't very helpful. This commit makes it so we emit commited once
all the compositions have actually been commited.
We also add a synchronous commit method to spare the user
the need to connect to the signal and wait, and update the
documentation.
Reviewers: thiblahute
Differential Revision: http://phabricator.freedesktop.org/D83
2015-04-09 14:44:11 +02:00
Mathieu Duponchelle
54190d9dd8
layer: call timeline_element_set_timeline in layer_set_timeline.
...
Summary:
Otherwise if there was still a reference to the layer when it
is removed from the timeline, it fails when the last reference
is released, because timeline_element_set_timeline calls
timeline_remove_element, which tries to remove the element from
an already disposed hashtable.
Reviewers: thiblahute
Differential Revision: http://phabricator.freedesktop.org/D82
2015-04-08 23:35:01 +02:00
Edward Hervey
6753ad5bd1
tests: Use AM_TESTS_ENVIRONMENT
...
Needed by the new automake test runner
2015-04-08 17:05:19 +02:00
Mathieu Duponchelle
c271f89d4a
ges-launch: Add support for +test-clip
...
Summary: With the pattern as a mandatory argument.
Reviewers: thiblahute
Differential Revision: http://phabricator.freedesktop.org/D68
2015-04-07 14:15:36 +02:00
Mathieu Duponchelle
47f1713f1e
ges-project: Surface a meaningful error when no suitable formatter.
...
Reviewers: thiblahute
Differential Revision: http://phabricator.freedesktop.org/D67
2015-04-07 14:15:36 +02:00
Mathieu Duponchelle
44af36026f
ges-launch: Add a save-only option.
...
Summary: + Allows to serialize the timeline without playing it back.
Reviewers: thiblahute
Differential Revision: http://phabricator.freedesktop.org/D66
2015-04-07 14:15:36 +02:00
Tim-Philipp Müller
ea348dccc5
Automatic update of common submodule
...
From bc76a8b to c8fb372
2015-04-03 18:58:32 +01:00
Mathieu Duponchelle
e89dccc9aa
timeline-element: Disconnect child properties handlers.
...
Summary:
+ And freeze notifies while doing so.
We had a race with GstController which isn't MT safe, we can
fix it by propertly disconnecting signals, and making sure
no notifies are emitted while doing so.
Reviewers: thiblahute
Differential Revision: http://phabricator.freedesktop.org/D64
2015-03-31 15:32:08 +02:00
Mathieu Duponchelle
1ea442a021
track: Set any caps features on tmpcaps.
...
Summary: Before checking if we have a specific constructor for a track type.
Reviewers: thiblahute
Differential Revision: http://phabricator.freedesktop.org/D63
2015-03-31 15:32:08 +02:00
Mathieu Duponchelle
0d3a3eb9d2
pipeline: no reason to disconnect a pad that is NULL anyway.
...
Reviewers: thiblahute
Differential Revision: http://phabricator.freedesktop.org/D62
2015-03-31 15:31:49 +02:00
Mathieu Duponchelle
4a519bcf5c
ges-launch: Better document options.
...
+ Sort them by topic
+ remove --sample-paths and --sample-paths-recurse.
http://phabricator.freedesktop.org/D58
2015-03-25 19:46:59 +01:00
Mathieu Duponchelle
2c4b92fd98
ges-launch: port to GApplication
...
Summary: + Extract some utility functions.
Reviewers: thiblahute
Differential Revision: http://phabricator.freedesktop.org/D55
2015-03-25 12:27:52 +01:00
Mathieu Duponchelle
d4deeae5c1
build: no reason to introspect nodist sources.
...
Summary: g-ir-scanner was erroring like crazy on the generated sources.
Reviewers: thiblahute
Differential Revision: http://phabricator.freedesktop.org/D57
2015-03-25 12:27:02 +01:00
Mathieu Duponchelle
54c5723b75
ges-pitivi-formatter: Don't flood stdout with alarming conclusions.
...
Reviewers: thiblahute
Differential Revision: http://phabricator.freedesktop.org/D56
2015-03-25 12:23:24 +01:00
Mathieu Duponchelle
4f3b223f98
completions: port to new base gst script
2015-03-24 19:02:58 +01:00
Mathieu Duponchelle
c70f005970
completions: Fix completions after the first command.
2015-03-24 17:13:20 +01:00
Mathieu Duponchelle
b55265c70d
Revert "ges-launch: no need for a tmp string pointer"
...
This reverts commit 44a0924c1f
.
There indeed is a need for a tmp string pointer.
2015-03-24 13:01:39 +01:00
Luis de Bethencourt
44a0924c1f
ges-launch: no need for a tmp string pointer
2015-03-24 11:21:08 +00:00
Luis de Bethencourt
865634d66c
ges-launch: free string before going out of scope
...
CID #1291632
2015-03-24 11:19:50 +00:00
Mathieu Duponchelle
710d34adf4
build: fix make distcheck.
2015-03-23 12:41:00 +01:00
Thibault Saunier
d114cc60bd
ges: Do not clear potentially NULL errors
...
And avoid dereferencing NULL errors
2015-03-23 12:41:00 +01:00
Thibault Saunier
663824d20f
ges-launch: Prefix clip, transition and effect instruction with a +
...
Slightly changing the CLI so that we have indicators of the timeline
commands adding new objects.
2015-03-23 12:41:00 +01:00
Thibault Saunier
20d94bea13
ges: Accept path as URI in the create clip structured interface
2015-03-23 12:41:00 +01:00
Mathieu Duponchelle
7efa8c86a9
ges-launch: Remove useless options, rename some short options.
2015-03-23 12:41:00 +01:00
Mathieu Duponchelle
8e18fd790c
bash-completion: Add support for new ges-launch commands.
2015-03-23 12:41:00 +01:00
Mathieu Duponchelle
d77ad923a6
parse.l: Modify command arguments.
...
+ --clip uri=file:// becomes clip file:// for example.
2015-03-20 13:53:42 +01:00
Thibault Saunier
e37d8e768f
ges: command-line-formatter: Properly error out on invalid arguments
2015-03-20 13:53:42 +01:00
Thibault Saunier
28a1e97aa2
ges: Factor out a GESCommandLineFormatter class
...
This formatter will allow any user to deserialize a timeline using
the new ges-launch command line interface
2015-03-20 13:53:42 +01:00
Mathieu Duponchelle
ed0839dd82
structured-interface: Be clever when no layer priority specified.
...
And add the new element to the same layer as the last clip that
was added, insted of adding to the last layer of the timeline
(and with the current code, actually adding a new layer each time)
2015-03-20 13:53:41 +01:00
Mathieu Duponchelle
7cfdc2265d
ges-structured-interface: fix build
2015-03-20 13:53:41 +01:00
Thibault Saunier
dbb2368a39
ges: Automatically put clips at the end of layer if no start specified
...
In the 'structured' interface we should add it at the end of the layer
And make use of the new ges_timeline_get_layer API
2015-03-20 13:53:41 +01:00
Mathieu Duponchelle
761067b685
structure-interface: rename layer-priority to layer.
...
+ And add a short name for it in ges-launch.
2015-03-20 13:53:41 +01:00
Thibault Saunier
396196dfdf
ges: Add layer up to the wanted layer priority in the structure interface
...
Making the thing easier to use
2015-03-20 13:53:41 +01:00
Mathieu Duponchelle
6f1091f84a
ges-launch: parse property names longer than 1 char.
...
+ And finish the previous structure when encountering a setter.
2015-03-20 13:53:41 +01:00
Mathieu Duponchelle
c6dedf2f36
ges-launch: Update lexer / parser to handle set-*
...
+ cleanup of the lexer
2015-03-20 13:53:40 +01:00
Thibault Saunier
ecf167e95e
tools: Implement a new CLI interface for the timeline creation
2015-03-20 13:53:40 +01:00
Thibault Saunier
2ffa9477e9
ges: Handle setting child property on container directly in the structured based interface
2015-03-20 13:53:40 +01:00
Thibault Saunier
5d7b37112f
launcher: Add support to --set-property in the parser
2015-03-20 13:53:40 +01:00
Mathieu Duponchelle
abb5f2cc2f
ges-launch: Implement a new parser for the commandline.
...
Summary: + flex-based lexing and manual simplistic parsing.
Test Plan: Use that stuff to make awesome things, see if it breaks.
2015-03-20 13:53:40 +01:00
Thibault Saunier
3105797913
ges: Add an internal GstStructure based interface
...
To be use by GstValidate action and ges-launch
Reviewers: Mathieu_Du, thiblahute
Differential Revision: http://phabricator.freedesktop.org/D42
2015-03-20 13:53:35 +01:00
Thibault Saunier
7d0015b973
ges: Fix build for older GLib
...
The return type of g_hash_table_insert changed from void to boolean
2015-03-19 09:33:18 +01:00
Thibault Saunier
dd47def4e3
container: implement children property handling
2015-03-18 20:36:39 +01:00
Thibault Saunier
42477a5ec3
ges: Move the notion of children properties to GESTimelineElement
...
Summary:
Deprecate the old GESTrackElement children property handling API.
New APIs:
* ges_timeline_element_list_children_properties
* ges_timeline_element_lookup_child
* ges_timeline_element_get_child_property_by_pspec
* ges_timeline_element_get_child_property_valist
* ges_timeline_element_get_child_properties
* ges_timeline_element_set_child_property_valist
* ges_timeline_element_set_child_property_by_pspec
* ges_timeline_element_set_child_properties
* ges_timeline_element_set_child_property
* ges_timeline_element_get_child_property
* ges_timeline_element_add_child_property
* ges_timeline_element_remove_child_property
Deprecated APIs:
* ges_track_element_list_children_properties
* ges_track_element_lookup_child
* ges_track_element_get_child_property_by_pspec
* ges_track_element_get_child_property_valist
* ges_track_element_get_child_properties
* ges_track_element_set_child_property_valist
* ges_track_element_set_child_property_by_pspec
* ges_track_element_set_child_properties
* ges_track_element_set_child_property
* ges_track_element_get_child_property
* ges_track_element_add_child_property
Reviewers: Mathieu_Du
Differential Revision: http://phabricator.freedesktop.org/D40
2015-03-18 20:36:39 +01:00
Thibault Saunier
3e49850e6d
timeline: Add API to find a layer with a specific priority in a timeline
...
Summary:
API:
* ges_timeline_get_layer
Test Plan: Nan
Reviewers: mathieu.duponchelle
2015-03-18 20:36:38 +01:00
Thibault Saunier
f470222f3d
Revert "ges: Move the notion of children properties to GESTimelineElement"
...
I got some trouble with
arc land
and I wanted to push the 3 commit coming after this revert as 3
different commits but they ended up being all squash into one single
commit, which is clearly not cool for later bisecting and blaming.
Reverting that commit and re pushing those 3 commits as they were
supposed to be.
This reverts commit 9fe15ef435
.
2015-03-18 20:33:48 +01:00
Thibault Saunier
9fe15ef435
ges: Move the notion of children properties to GESTimelineElement
...
Summary:
Deprecate the old GESTrackElement children property handling API.
New APIs:
* ges_timeline_element_list_children_properties
* ges_timeline_element_lookup_child
* ges_timeline_element_get_child_property_by_pspec
* ges_timeline_element_get_child_property_valist
* ges_timeline_element_get_child_properties
* ges_timeline_element_set_child_property_valist
* ges_timeline_element_set_child_property_by_pspec
* ges_timeline_element_set_child_properties
* ges_timeline_element_set_child_property
* ges_timeline_element_get_child_property
* ges_timeline_element_add_child_property
* ges_timeline_element_remove_child_property
Deprecated APIs:
* ges_track_element_list_children_properties
* ges_track_element_lookup_child
* ges_track_element_get_child_property_by_pspec
* ges_track_element_get_child_property_valist
* ges_track_element_get_child_properties
* ges_track_element_set_child_property_valist
* ges_track_element_set_child_property_by_pspec
* ges_track_element_set_child_properties
* ges_track_element_set_child_property
* ges_track_element_get_child_property
* ges_track_element_add_child_property
Reviewers: Mathieu_Du
Reviewed By: Mathieu_Du
Differential Revision: http://phabricator.freedesktop.org/D40
2015-03-18 20:23:55 +01:00
Thibault Saunier
f21132c3d5
ges: Remove all reference to already dead GESSimpleLayer
2015-03-13 10:02:39 +00:00