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
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
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
Luis de Bethencourt
8b4b2562a6
project: remove unnecessary dereference
...
g_clear_error() already dereferences the error pointer, no need to manually
check and do it.
CID #1257630
2015-03-05 13:53:32 +00:00
Tim-Philipp Müller
af3fd19637
ges-base-xml-formatter: fix setting of child properties
...
Make sure all child properties get set. GstStructureForeachFunc
takes a gboolean return value that decides whether to
continue or not.
2015-02-27 01:26:24 +00:00
Tim-Philipp Müller
7e9a2ef6c0
ges-meta-container: fix ges_meta_container_foreach()
...
Really call function on all metadata inside the container
instead of stopping randomly. GstStructureForeachFunc
takes a gboolean return value.
2015-02-27 01:24:30 +00:00
Tim-Philipp Müller
80909fb99a
ges-base-xml-formatter: fix property setting
...
GstStructureForeachFunc has a gboolean return value,
and the foreach function will stop unless we return
TRUE here. This meant it was potluck whether all
properties in the structure got set or not.
Fixes setting of text overlay clip text property
in particular.
https://bugzilla.gnome.org/show_bug.cgi?id=743874
2015-02-26 20:14:31 +00:00
Thibault Saunier
d0421639e0
ges: Always set ANY capsfeatures on tracks caps property
...
Summary:
We should not restrict the CapsFeatures on the track caps.
If someone want to do such a restriction he should add it to
the restriction caps directly
Test Plan: Run testsuite
Reviewers: mathieu.duponchelle
2015-02-20 14:10:56 +01:00
Mathieu Duponchelle
6321a9135f
ges-project: no need to commit an empty timeline.
...
Summary: Can lead to deadlocks if the user commits at the same time.
Test Plan: Ran make check, it worked
Reviewers: tsaunier
2015-02-19 18:24:39 +01:00
Luis de Bethencourt
7dd8dbab28
ges: initialize timeline_duration value
...
If priv->timeline is False the function does not set any value for
timeline_duration before using it in gap_new (). Initialize the value to aviod
unexpected behaviour.
CID #1268405
2015-02-10 10:29:39 +00:00
Thibault Saunier
f192ba3192
nlecomposition: Properly protect the children task
2015-02-06 10:06:05 +01:00
Mathieu Duponchelle
1bfe0b7ef3
Cleanly handle removing the last object in a composition
...
The strategy here is to seek at the new end of the composition. And in
GES we always add a 1ns long gap at the end of the tracks so that all
track have the exact same duration, and we have black frames when the
timeline is empty
2015-02-03 12:03:33 +01:00
Thibault Saunier
f3f27bd636
validate: Do not wrongly set clip duration for UriClips
...
That was making no sense at all....
2015-02-02 11:57:19 +01:00
Thibault Saunier
23c71e8222
validate: Properly expose the commit action as ASYNC
2015-02-02 11:57:03 +01:00
Thibault Saunier
0bb313030b
layer: Remove child from children list before emitting "child-removed"
2015-01-28 11:39:58 +01:00
Luis de Bethencourt
1efe0639de
ges: remove useless gpointer variable
...
gpointer useless is indeed useless since we can use GST_DEBUG_REGISTER_FUNCPTR
to avoid having to store the return of the GST_DEBUG_FUNCPTR registration.
CID #1265771
2015-01-26 18:25:02 +00:00
Luis de Bethencourt
8f79ee9230
ges: merge MIN() and MAX() into CLAMP()
...
Merge the usage of MIN() and MAX() into one CLAMP() function.
CID #1265770
2015-01-26 17:47:55 +00:00
Thibault Saunier
7a9d39fadb
ges: Make sure the GESTextOverlayClip is register on init
...
So it can be used when de serializing projects containing it.
https://bugzilla.gnome.org/show_bug.cgi?id=743406
2015-01-24 10:56:30 +01:00
Thibault Saunier
dc2f48a726
uri-asset: Check that the newly computed URI exist
...
No the one we know failed!
2014-12-12 12:07:01 +01:00
Thibault Saunier
7c6ad5e3ba
validate: Add an action type to load a project from its content
2014-12-12 12:07:01 +01:00
Thibault Saunier
752a2c6885
Revert "track: [API]: ges_track_update_restriction_caps."
...
This reverts commit e9544ce1d6
.
This commit should never have landed we decided we do not want to do
that.
2014-12-06 10:41:33 +01:00
Thibault Saunier
97c56da95b
timeline: Add a method to easily check if a timeline is empty
...
API:
+ ges_timeline_is_empty
2014-12-06 10:34:19 +01:00
Thibault Saunier
78913931b2
ges: Recompute Group priority when one of its clip.layer change priority
...
And add a unit test for that case where it was previously failing
2014-12-06 10:34:18 +01:00
Mathieu Duponchelle
e9544ce1d6
track: [API]: ges_track_update_restriction_caps.
...
+ And specify default restriction caps for audio and video tracks.
+ Add ges_track_set_restriction_caps to the sections, it was missing.
https://bugzilla.gnome.org/show_bug.cgi?id=740726
2014-12-06 10:34:18 +01:00
Thibault Saunier
523e279e91
nlecomposition: Minor debug enhancements
2014-12-06 10:34:17 +01:00
Thibault Saunier
122dcbc190
pipeline: Expose playsink::video-filter and playsink::audio-filter
...
That can be used to add filters at the very end of the pipeline,
and one can think of adding a watchdog element in there for
example.
2014-12-06 10:34:17 +01:00
Thibault Saunier
068c20ff60
pipeline: Dot not check for chain->tee twice
2014-12-06 10:34:17 +01:00
Thibault Saunier
c7cceae128
validate: Avoid depending on not stable APIs
...
And cleanup includes
2014-12-06 10:34:17 +01:00
Thibault Saunier
452ebc1965
validate: Move to new action type registration API
2014-12-06 10:34:17 +01:00
Thibault Saunier
8e3790495f
validate: Add missing action execution printing
2014-12-06 10:34:16 +01:00
Thibault Saunier
b7daa03a6e
timeline-element: Properly handle setting name to NULL
2014-12-06 10:34:16 +01:00
Thibault Saunier
6367c96d7d
nlecomposition: Add a 'query-position' signal
...
In order to get the precise position of the pipeline, the only
way is to ask the 'application' to query the pipeline position and
use it.
2014-12-06 10:34:16 +01:00
Thibault Saunier
3b353be8ea
ges: Keep backward compatibility for relocated assets CLI
...
Meaning adding an API for user to add relacation URI paths
API:
ges_add_missing_uri_relocation_uri
2014-12-06 10:34:16 +01:00
Thibault Saunier
e5b57db7a2
ges: Add a method to pass argc/argv to GES at init time
...
Allowing user to set configuration actions without using
the GES GOptionGroup
https://bugzilla.gnome.org/show_bug.cgi?id=740717
2014-12-06 10:34:15 +01:00
Thibault Saunier
ac3cad47b6
validate: Expose GES Validate action
...
So other can also make use of those action outside
ges-launch itself
https://bugzilla.gnome.org/show_bug.cgi?id=740718
2014-12-06 10:34:15 +01:00
Thibault Saunier
dc0770bfa6
uri-asset: Ensure that UriAssets loaded with error are remembered
2014-12-06 10:34:15 +01:00
Thibault Saunier
55c88a726e
project: Add a method to create assets synchronously
...
This allows to create a add an asset to a project in a
synchronous way.
API:
ges_project_create_asset_sync
https://bugzilla.gnome.org/show_bug.cgi?id=740716
2014-12-06 10:34:15 +01:00
Thibault Saunier
58d525a4e7
ges: Add an init option to set media paths for moved assets
...
Allowing user to easily set a set of paths to look for moved
assets instead of needing the to re implement that logic
over and over.
https://bugzilla.gnome.org/show_bug.cgi?id=740714
2014-12-06 10:34:15 +01:00
Thibault Saunier
c8b2ab8dbb
ges: Add a method to get GES GOption group
...
This allow us to have global options to be
passed as arguments of the program to configure
GES behaviour
API:
ges_init_get_option_group
https://bugzilla.gnome.org/show_bug.cgi?id=740715
2014-12-06 10:34:14 +01:00
Thibault Saunier
39a7ce6ca0
pipeline: Disable encoding format renegotiation when rendering
2014-12-06 10:34:14 +01:00
Mathieu Duponchelle
fb34c5056e
*source: new lines in xml break my parser.
...
+ So I removed them cause I'm clever
https://bugzilla.gnome.org/show_bug.cgi?id=740727
2014-12-05 22:12:12 +01:00
Mathieu Duponchelle
f85c463b93
track: [API]: ges_track_update_restriction_caps.
...
+ And specify default restriction caps for audio tracks.
+ Add ges_track_set_restriction_caps to the sections, it
was missing.
https://bugzilla.gnome.org/show_bug.cgi?id=740726
2014-12-05 22:12:11 +01:00
Thibault Saunier
fd268f0387
element: Add a property allowing user to avoid serializing TimelineElements on demand
2014-11-10 17:03:46 +01:00
Thibault Saunier
5665e3abb1
xml-formatter: Serialize groups
...
They were not serialized until now.
That implies several changes:
* Override GESTimelineElement [start, inpoint, duration] properties in
GESGroup to ensure that those properties are not serialized as they
should not be.
* Rename GESBaseXmlContainer->clips field to
GESBaseXmlContainer->containers as the hashtable now contains Groups
https://bugzilla.gnome.org/show_bug.cgi?id=709148
2014-11-10 16:22:43 +01:00
Thibault Saunier
e36c4c2bf7
pipeline: Do not relink an already linked track
2014-11-10 16:22:43 +01:00
Thibault Saunier
08af3721bf
frameposition: In case sources have the same size as track, follow track size
...
For example if the size has been serialized in a file, but the user has
not personalized the size, we want that whenever the restriction caps
change the size, the video should take the size of the track
restriction caps.
We know need to keep track of the current positionner.size even if
setting through caps size changes.
https://bugzilla.gnome.org/show_bug.cgi?id=739527
2014-11-10 16:22:42 +01:00
Thibault Saunier
21807d6637
xml-formatter: Do not forget to set properties on the track elements
...
We were just setting children properties, even if the propertie to be
set on themselves where properly passed in
https://bugzilla.gnome.org/show_bug.cgi?id=729487
2014-11-10 16:22:42 +01:00
Thibault Saunier
7f71914f07
title-source: Expose the shaded-background property
...
Rework the way we override the background property to avoid trying to
lookup shaded-foreground-color!
https://bugzilla.gnome.org/show_bug.cgi?id=728635
2014-11-10 16:22:42 +01:00
Thibault Saunier
fcfdbef0b2
titlesource: Expose the outline-color property
...
https://bugzilla.gnome.org/show_bug.cgi?id=728634
2014-11-10 16:22:42 +01:00
Mathieu Duponchelle
ee2b3f7d24
pipeline: connect tracks when added, not only on state change.
...
+ ghost track src pad before calling track added so that
pipeline has a pad to link.
+ Remove silly comment.
2014-11-10 16:22:42 +01:00
Thibault Saunier
ac906a9143
Document known and usable child properties for GESTrackElements subclasses
2014-11-10 16:22:41 +01:00
Thibault Saunier
20f76fe86f
trackelement: Add a lookup_child vmethod
...
This method can be used for subclass to override the default behaviour
for child lookup. This vmethod can be used for example in the case where
you want the name of a child property to be 'overridden'.
As an example in the GESTitleSource where we have a videotestsrc
which has a 'foreground-color' property that is used in the TitleSource
to set the background color of the title, this vmethod is now used to
tweak the name passed as parameter to rename "background" to
"foreground-backend" making our API understandable.
API:
GESTrackElement::lookup_child
https://bugzilla.gnome.org/show_bug.cgi?id=727880
2014-11-10 16:22:41 +01:00
Thibault Saunier
190643508f
title: Deprecate all method related to child properties
...
The standard way setting children properties is by using the
GESTrackElement::set_child_propery and friend methods
https://bugzilla.gnome.org/show_bug.cgi?id=727880
2014-11-10 16:22:41 +01:00
Mathieu Duponchelle
3035bcb405
timeline: connect_after to layer.object_added.
...
We want the user provided signal handlers to be called before
we add track elements.
2014-11-10 16:22:41 +01:00
Mathieu Duponchelle
3f97397b4f
nle: Downgrade some INFO to DEBUG.
...
+ makes it more pleasant to read logs in info.
2014-11-10 16:22:40 +01:00
Thibault Saunier
79230eef1f
nle: Handle sending SEEK event recursively to our children
...
Instead of relying on it being implemented in core (as it is currently
not!)
2014-11-10 16:22:40 +01:00
Thibault Saunier
c4f43c88f2
track-element: Add a signal about added control bindings
...
API:
GESTrackElement::control-binding-added
2014-11-10 16:22:40 +01:00
Thibault Saunier
24e2c88180
track-element: Add an API to list all set ControlBinding
...
API:
ges_track_element_get_all_control_bindings
2014-11-10 16:22:40 +01:00
Thibault Saunier
a022b4b394
title-source: Properly expose children properties
...
+ Make sure that the TitleClip properties are not serialized anymore as
they are serialized through children properties now.
+ Enhance debugging for not serialized properties in GESXmlFormatter.
2014-11-10 16:22:40 +01:00
Mathieu Duponchelle
19ee23cdcc
nlecomposition: update base time before seeking current stack.
...
There could be a race where the new segments were pushed after
a seek on some / all pads before the operation had had its basetime
updated, and thus incoming segments were tweaked wrongly.
Reproducible with 3 clips composited and multiple seeks,
FIXME hard to validate.
2014-11-10 16:22:39 +01:00
Joris Valette
84610050ae
formatter: save and load source's children properties
2014-11-10 16:22:39 +01:00
Thibault Saunier
e8fd816e33
project: Do not concider adding am already tracked asset as failure
...
It is not really a failure, just a special case.
2014-11-10 16:22:39 +01:00
Thibault Saunier
bc7a465fcd
extractable: Make extractable_set_asset return a boolean
...
WARNING: This is a minor API breakage, it should be harmless
and allows us to let users know whether changing setting the
asset worked or no.
2014-11-10 16:22:39 +01:00
Thibault Saunier
6a371b308b
nlecomposition: Fix the get_current_position method
2014-11-10 16:22:38 +01:00
Thibault Saunier
d419bccf4f
nlecomposition: Wait for a buffer from the new segment to restart task
...
Avoiding races where we would launch a seek right after a FLUSH_STOP and
before we get a Buffer which would possibly lead to ERROR message when upstream
elements try to push a buffer and check_sticky fails because downstream
is flushing.
2014-11-10 16:22:37 +01:00
Thibault Saunier
578364ce41
nlecomposition: Do useless thing so that the compiler doesn't warn us!
...
Otherwize we get a gcc warning about useless statements.
2014-11-10 16:22:37 +01:00
Thibault Saunier
2fb33d69f8
nlecomposition: Update start stop and duration on initialization
...
So that the composition is usable right after the initialization
2014-10-31 11:58:12 +01:00
Thibault Saunier
0d54d796de
ges: Avoid to always commit when a project is loaded
...
In case we are not in a PLAYING state and the project is loaded, the
only thing that should be done is to fill the gaps and this way when the
composition get to PLAYING, their initialization will be enough to get
everything on track.
2014-10-31 11:58:12 +01:00
Thibault Saunier
95223fd46b
Start taking advantage of the fact that NLE is in the same three as GES!
2014-10-31 11:58:12 +01:00
Thibault Saunier
50cf1fb5fe
nlecomposition: Fix several leaks
...
* In the action closure invokation we were alway leaking the composition.
* gst_bin_add will actually take an extra ref since we already gst_object_ref_sink so we
own the object, other call to that method will increase the refcount which means we do
not need to pass an extra ref to the bin.
* We want to ref_sink right when the object is added to the composition, making things
cleaner and simpler to follow in the tests.
2014-10-31 11:58:12 +01:00
Thibault Saunier
3e79e28213
nlecomposition: Activate the composition ghostpad to flush downstream
...
Since commit 060b16ac75
"pad: don't accept flush-stop on inactive pads" in -core, the flush_stop event will not be
fowarded downstream in case the pad is not activated. In our case the element is in
READY state, so pads are deactivated. In that commit we simply make sure that the
event can be fowarded downstream
2014-10-31 11:58:12 +01:00
Thibault Saunier
02665dae91
nlecomposition: Restart the main task on FLUSH_STOP
...
It means stop using a dedicated probe to restart task so that the main probe does not
drop the FLUSH_STOP event before we have a chance to restart the task. (and this is
for sure cleaner/and simpler to read).
2014-10-31 11:58:12 +01:00
Thibault Saunier
37f50193fd
nle:source: Protect the probeid field with the GST_OBJECT_LOCK
...
Avoiding races where we try to remove a probe on an already destroyed pad.
2014-10-31 11:58:12 +01:00
Thibault Saunier
03c284abb6
framepositionner: Add a weak pointer to the track_source
...
Avoiding assertions when the object is destroyed.
2014-10-31 11:58:12 +01:00
Mathieu Duponchelle
e31d0554c8
nle: Seek gnlsource when prerolled only
...
Instead of implementing seek on ready all around GStreamer, just
seek in PAUSED, when the source gets 'prerolled'.
2014-10-31 11:58:12 +01:00
Thibault Saunier
6bd27667eb
ges-track: Do not set removed object state
...
It is the composition to handle
2014-10-31 11:58:12 +01:00
Thibault Saunier
8913c14c58
nle: Stop using a MainContext avoiding needing one iter per source dispach
...
Using GClosure to handle the source handling and handle our action
ordering ourselves
https://bugzilla.gnome.org/show_bug.cgi?id=733342
2014-10-31 11:58:12 +01:00
Thibault Saunier
aa69de7514
ges: Use audiomixer instead of adder by default
2014-10-31 11:58:12 +01:00
Thibault Saunier
b3336fe26e
Port to the new NLE API
...
Port the timeline, track and pipeline to the new NLE API where
all objects have static src pads.
2014-10-31 11:58:12 +01:00
Thibault Saunier
11f9c6e108
Cleanup import of GNL and rename gnl to nle for Non Linear Engine
...
Conflicts:
ges/ges-track-element.c
gnl/Makefile.am
gnl/common
Conflicts:
ges/ges-internal.h
ges/ges-track.c
ges/ges-utils.c
ges/nle/.gitignore
ges/nle/gnlmarshal.list
ges/nle/nle.h
ges/nle/nlecomposition.c
ges/nle/nlecomposition.h
ges/nle/nleghostpad.c
ges/nle/nleghostpad.h
ges/nle/nleobject.c
ges/nle/nleoperation.c
ges/nle/nleoperation.h
ges/nle/nlesource.c
ges/nle/nlesource.h
ges/nle/nletypes.h
ges/nle/nleurisource.c
ges/nle/nleurisource.h
gnl/Makefile.am
gnl/gnl.c
gnl/gnl.h
gnl/gnl/gnl.h
gnl/gnl/gnlcomposition.c
gnl/gnl/gnlcomposition.h
gnl/gnl/gnlghostpad.c
gnl/gnl/gnlghostpad.h
gnl/gnl/gnlmarshal.list
gnl/gnl/gnlobject.c
gnl/gnl/gnloperation.c
gnl/gnl/gnloperation.h
gnl/gnl/gnlsource.c
gnl/gnl/gnlsource.h
gnl/gnl/gnltypes.h
gnl/gnl/gnlurisource.c
gnl/gnl/gnlurisource.h
gnl/gnlcomposition.c
gnl/gnlcomposition.h
gnl/gnlghostpad.c
gnl/gnlghostpad.h
gnl/gnlmarshal.list
gnl/gnlobject.c
gnl/gnlobject.h
gnl/gnloperation.c
gnl/gnloperation.h
gnl/gnlsource.c
gnl/gnlsource.h
gnl/gnltypes.h
gnl/gnlurisource.c
gnl/gnlurisource.h
gnl/tests/check/gnl/common.c
gnl/tests/check/gnl/common.h
gnl/tests/check/gnl/complex.c
gnl/tests/check/gnl/gnlcomposition.c
gnl/tests/check/gnl/gnloperation.c
gnl/tests/check/gnl/gnlsource.c
gnl/tests/check/gnl/seek.c
gnl/tests/check/gnl/simple.c
tests/check/gnl/common.c
tests/check/gnl/common.h
tests/check/gnl/complex.c
tests/check/gnl/gnlcomposition.c
tests/check/gnl/gnloperation.c
tests/check/gnl/gnlsource.c
tests/check/gnl/seek.c
tests/check/gnl/simple.c
tests/check/nle/common.c
tests/check/nle/common.h
tests/check/nle/complex.c
tests/check/nle/nlecomposition.c
tests/check/nle/nleoperation.c
tests/check/nle/nlesource.c
tests/check/nle/seek.c
tests/check/nle/simple.c
2014-10-31 11:58:12 +01:00
Thibault Saunier
b752eea818
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
2014-10-31 11:58:07 +01:00
Thibault Saunier
b9c6606e89
ges: Use the new GNL element message feature to notify async operations
2014-10-31 11:58:07 +01:00
Mathieu Duponchelle
2104cd9e50
xml-formatter: message-forward is not something that should be parsed.
2014-10-31 11:58:07 +01:00
Mathieu Duponchelle
565591e9ee
timeline: handle async start
2014-10-31 11:58:07 +01:00
Tim-Philipp Müller
5c79b5539b
smart-video-mixer: unref pads_info hash table in dispose
...
Before gst_bin_dispose() runs and destroys elements.
2014-10-30 15:54:04 +00:00
Tim-Philipp Müller
9b82267aef
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).
2014-10-30 15:49:21 +00:00
Tim-Philipp Müller
717985182a
track: fix indentation
2014-10-26 20:36:22 +00:00
Tim-Philipp Müller
e1f92be62b
timeline-element: don't leak name string
2014-10-26 20:35:52 +00:00
Tim-Philipp Müller
29bac48934
timeline: fix mutex and all_elements hash table leaks
2014-10-26 20:35:20 +00:00
Tim-Philipp Müller
44724f8d6d
timeline: free tracks obtained via select-tracks-for-object signal
2014-10-26 20:33:50 +00:00
Tim-Philipp Müller
30d879f357
timeline: free track elements list
2014-10-26 20:32:41 +00:00
Tim-Philipp Müller
b3114b6a4d
video-test-source: fix caps leak
2014-10-26 20:31:40 +00:00
Tim-Philipp Müller
0c5dfcf931
framepositionner: fix caps leak
2014-10-26 20:31:26 +00:00
Tim-Philipp Müller
0f809b481b
audiotrack: fix caps leak
2014-10-26 20:31:08 +00:00
Tim-Philipp Müller
4ecb7c88fb
videotrack: fix caps leak
2014-10-26 20:30:53 +00:00
Tim-Philipp Müller
8edb4a7ec6
track: don't leak restriction caps
2014-10-26 20:30:29 +00:00
Tim-Philipp Müller
d2e33a35e9
smart-adder: don't leak pads_infos hash table
2014-10-26 20:29:06 +00:00
Tim-Philipp Müller
dd7d2d26ec
smart-video-mixer: don't leak pads_infos hash table
2014-10-26 20:28:48 +00:00
Tim-Philipp Müller
3e02157f02
project: fix string leak
2014-10-26 20:27:29 +00:00
Tim-Philipp Müller
4ad628bb13
metacontainer: don't leak GValue contents
2014-10-26 20:25:46 +00:00
Lazar Claudiu
b850f3042e
text-overlay: added text properties as child-properties
2014-07-23 16:11:31 +02:00
Thibault Saunier
ea2b814fba
ges: Use registry to select the compositor element
2014-07-23 16:11:30 +02:00
Mathieu Duponchelle
0d2256b5bd
xml-formatter: Set errno to 0 before g_ascii_strtoll.
2014-07-18 20:23:57 +02:00
Vincent Penquerc'h
31257a260c
smart-video-mixer: fix memory leak on error path
...
Coverity 1212166
2014-06-12 09:51:02 +01:00
Thibault Saunier
edd95cf57d
trackelement: Sort paramspec by name in list_children_properties
...
https://bugzilla.gnome.org/show_bug.cgi?id=720023
2014-06-09 16:10:41 +02:00
Thibault Saunier
03c87dbbc7
clip: Fix the ges_clip_set_position function
...
And enhance the new test
https://bugzilla.gnome.org/show_bug.cgi?id=731248
2014-06-09 16:10:41 +02:00
Thibault Saunier
bb4cf62b62
clip: Rename top_effect_index to top_effect_index
...
Keeping the old method to not break the API but removing it from the
documentation as users should use the new method (which is the exact
same with a better naming)
https://bugzilla.gnome.org/show_bug.cgi?id=731248
2014-06-09 16:10:41 +02:00
Thibault Saunier
2db5368b9d
tests: Check ges_clip_set_position behaviour
...
+ Minor fix to handle properly the feature when clip is not in any layer
https://bugzilla.gnome.org/show_bug.cgi?id=731248
2014-06-09 16:10:41 +02:00
Thibault Saunier
b3a240126d
pipeline: Add support to rendering without container
...
+ Simplify the support in ges-launch as we should not require the
profile desc to start with : in that case
https://bugzilla.gnome.org/show_bug.cgi?id=731245
2014-06-09 16:10:41 +02:00
Christoph Reiter
ba2b4920b6
Fix invalid GEnumValue.value_name entries.
...
This makes the enum entries in the gir have valid c:identifiers and documentation.
https://bugzilla.gnome.org/show_bug.cgi?id=730691
2014-06-09 16:10:41 +02:00
Mathieu Duponchelle
4494296830
ges-track: fill the gaps left empty by deactivated track elements.
2014-06-03 18:14:21 +02:00
Thibault Saunier
1fed9555cf
ges:clip: Add a method to look for a list of TrackElement-s
...
+ Add unit tests to check it works properly.
API:
+ ges_clip_find_track_elements
2014-05-19 12:21:52 +02:00
Thibault Saunier
be23365899
ges: Do not forget to update the count when updating already used name
...
That could still lead to naming conflicts
2014-05-15 20:47:28 +02:00
Thibault Saunier
10c3e97f42
ges: Add a queue after the decoder in video test src
2014-05-15 20:07:58 +02:00
Thibault Saunier
19df708207
ges: Avoid GESTimelineElement naming conflicts
...
When users (can be formatters) set timeline element names in the
default 'namespace' we need to update our counter to avoid setting
twice the same name on TimelineElements so afterward there is no
problem adding them in the GESTimeline
+ add a testcase to check that new code and fix leaks on the
existing testcases.
+ Sensibly enhance debugs
2014-05-14 22:29:44 +02:00
Edward Hervey
8da506f931
xml-formatter: Don't leak children_props
...
By going through the cleanup code-path
CID #1212146
2014-05-13 14:30:39 +02:00
Thibault Saunier
b2c8a9efb3
ges: Do not use freed pointers
...
COVERTY CID 1212182
COVERTY CID 1212184
COVERTY CID 1212185
2014-05-10 23:00:45 +02:00
Thibault Saunier
3c1518be6c
ges: Plug a leak in ges-smart-adder
...
COVERTY CID 1212166
2014-05-10 22:48:12 +02:00
Thibault Saunier
cf492d3839
ges-xml-formatter: fix memory leak
...
COVERTY CID 1212148
2014-05-10 22:45:34 +02:00
Thibault Saunier
9cbdfad546
ges-xml-formatter: fix memory leak in error path
...
COVERITY CID 1212147
2014-05-10 22:41:23 +02:00
Thibault Saunier
a1bf40b9e1
ges: Assert if an asset is not in the global hashtable
...
COVERITY CID 1151679
2014-05-10 22:38:21 +02:00
Thibault Saunier
0cf5d3df13
ges: Remove useless pointer assignement
...
COVERITY CID: 1139442
2014-05-10 22:33:15 +02:00
Thibault Saunier
9cbcd9617a
ges: Remove useless pointer assignement
...
COVERITY CID: 1139941
2014-05-10 22:30:00 +02:00
Thibault Saunier
27ecb81037
ges: Add license header in ges-meta-container
2014-05-10 22:28:28 +02:00
Thibault Saunier
8015359f16
ges: remove comparison of unsigned inferior to 0
...
COVERITY CID 1139769
2014-05-10 22:14:34 +02:00
Tim-Philipp Müller
6d68f55c63
ges-xml-formatter: fix memory leak in error path
...
CID 1212146
2014-05-09 13:00:32 +01:00
Mathieu Duponchelle
12a2d96a34
timeline-element: return TRUE in _set_name when both names match.
2014-05-08 14:26:41 +02:00
Mathieu Duponchelle
71b9d421b8
ges-timeline: Fix ges_timeline_get_project macro.
...
This macro was a little confused about its own meaning.
2014-05-08 14:25:18 +02:00
Thibault Saunier
2dd59ab53a
tools: Add an option to disable mixing
...
+ Add a a GObject property so that the info is seralized
https://bugzilla.gnome.org/show_bug.cgi?id=729382
2014-05-02 16:59:08 +02:00
Thibault Saunier
cba79c09ac
project: Enhance debugging when updating URI with an invalid one
...
https://bugzilla.gnome.org/show_bug.cgi?id=729382
2014-05-02 16:58:55 +02:00
Thibault Saunier
ff1446c2b2
ges: Rename remaning tlobj to clip
...
https://bugzilla.gnome.org/show_bug.cgi?id=729382
2014-05-02 16:58:42 +02:00
Thibault Saunier
1adb9a0030
Add a notion of 'name' in GESTimelineElement
...
https://bugzilla.gnome.org/show_bug.cgi?id=729382
2014-05-02 16:27:25 +02:00
Thibault Saunier
56abc17a70
uri-asset: Check return value of gst_tag_list_copy_value
...
CID 1139597
2014-04-17 13:18:19 +02:00
Edward Hervey
d582da74d3
framepositioner: Set the proper default value
...
Most likely a copy/paste error.
CID #1139646
2014-04-10 18:03:55 +02:00
Edward Hervey
73713c157d
xml-formatter: Use proper value for string extraction
...
The pass would be filled with some bogus (pointer) numerical value
CID #1139652
2014-04-10 18:01:03 +02:00
Edward Hervey
e58a0a0fd8
base-xml-formatter: Don't attempt to use NULL entry
...
Instead return straight away
CID #1139739
2014-04-10 17:52:20 +02:00
Christoph Reiter
a66e674649
Include class related section documentation in the gir file.
...
g-ir-scanner includes section docs as class/interface docs if the section name is equal to the lowercase type name.
Since all the documentation is in section blocks, rename them to match the type names.
https://bugzilla.gnome.org/show_bug.cgi?id=727776
2014-04-07 22:13:25 +02:00
Thibault Saunier
af10f530ad
build: Add reference to GstVideo in gir file
2014-04-06 16:43:07 +02:00