Thibault Saunier
f6c060b3fb
timelineobject: Reimplement properly the splitting method
2012-04-23 20:33:58 -04:00
Thibault Saunier
30d9ba2acf
timelineobject: Misc API guard fixes
2012-04-23 20:25:08 -04:00
Thibault Saunier
efc28fd35e
track-object: Add method to copy a TrackObject
...
API: ges_track_object_copy
2012-04-23 20:25:08 -04:00
Thibault Saunier
7b0797c992
ges-track-object: Make possible to add a track already containing a gnlobject to a track
2012-04-23 20:25:07 -04:00
Thiago Santos
299e186480
ges-timeline-pipeline: add todo to remember to remove hack
...
Remove playsink hack once we depend on gst-plugins-base 0.10.37
(next gst-plugins-base release)
2012-04-23 14:40:26 -03:00
Thiago Santos
094669391d
Revert "ges: timeline-pipeline: Remove playsink send_event hack"
...
This reverts commit 54aac450da
.
We need this hack until we depend on gst-p-base 0.10.36
2012-04-23 14:38:31 -03:00
Thibault Saunier
2741a8fb38
timeline-object: Add TrackObject to the Track after the TimelineObject
...
This way, the Track::track-object-added is emited after the TrackObject is ready to be used, and it make the API easier to use.
2012-04-07 22:26:08 -04:00
Thibault Saunier
2e43caf911
timeline-layer: Factor out a method to start observing timeline for auto-transitions
2012-04-07 22:26:08 -04:00
Thibault Saunier
e172c294fe
timeline-layer: Reorganize file
2012-04-07 22:26:08 -04:00
Thibault Saunier
64b4a38494
timeline-layer: Rework auto transition callbacks management
...
We now have a GESTrack::track-object-added signal so we now depend on it rather than on each GESTimelineObject::track-object-added signal.
2012-04-07 22:24:55 -04:00
Thibault Saunier
259af361bc
timeline-object: Properly reflect contained TrackObject duration and inpoint properties changes
2012-04-07 22:24:55 -04:00
Thibault Saunier
c783f4140a
trackobject: Some documentation fixing
2012-04-07 22:24:55 -04:00
Thibault Saunier
8ae1cddae2
trackobject: Add API documentation
2012-04-07 22:24:55 -04:00
Thibault Saunier
ad5bc85516
ges: Calm logging when not created TrackObject on purpose
2012-04-07 22:24:55 -04:00
Thibault Saunier
979b9ac0b6
timeline: Restructurate the file separting methods/callbacks/API
2012-04-07 22:24:55 -04:00
Thibault Saunier
1c04feace0
timelineobject: Emit effect-added when adding any kind of TrackEffect
...
We were only emitting it when working with TrackParseLaunch effects
2012-04-07 22:24:55 -04:00
Thibault Saunier
83dc13c63d
docs: Tell users that adding an object to a timeline layer creates media related objects
2012-04-07 22:24:55 -04:00
Thibault Saunier
a1aa78cd28
ges: Misc debug loggin cleanup
2012-04-07 22:24:55 -04:00
Thibault Saunier
4b34d2bbb3
timeline: Plug a leak when calling enable_update
2012-04-07 22:24:55 -04:00
Thibault Saunier
7e7059d37d
timeline: Rework the append_layer method
...
ges_timeline_append_layer now creates a new layer, adds it to the timeline
and returns it
This code has not been released yet so we can break this API.
2012-04-07 22:24:55 -04:00
Thibault Saunier
4a881a43d9
layer: Add a method to check if a layer is empty or not
...
API: ges_timeline_layer_is_empty
2012-04-07 22:24:55 -04:00
Thibault Saunier
4c26b89e3c
ges: Move the max-duration property from TrackFileSource to TrackObject
...
This property was firstly added to TrackFileSource, but in the end, it makes
more sense for it to be directly in TrackOject as it can be usefull in other cases.
2012-04-07 22:24:55 -04:00
Thibault Saunier
13a2857db7
timeline-layer: Do not call track_get_by_layer when track == NULL
2012-04-04 20:15:19 -04:00
Thiago Santos
54aac450da
ges: timeline-pipeline: Remove playsink send_event hack
...
This is fixed now in upstream playsink, remove the hack
https://bugzilla.gnome.org/show_bug.cgi?id=673211
2012-04-04 11:44:27 -03:00
Thibault Saunier
7282ee2ff4
formatter: Try to figure out new paths when media files have moved
...
Introduces a dependency to GIO
2012-04-03 20:41:27 -04:00
Thibault Saunier
148e7ef411
timelineobject: Set TrackObject's TimelineObject only when calling the add function
...
ges_timeline_object_add_track_object actually calls
ges_track_object_set_timeline_object so do not do it once more ourself.
Especially since it results in having a TrackObject.timeline_object refering
to a TimelineObject it is not actually in yet.
2012-03-28 13:10:27 -04:00
Thibault Saunier
6447a50001
timelineobject: Update the nb_effect when releasing a TrackEffect
2012-03-27 22:33:57 -04:00
Thibault Saunier
d5b4fa215e
ges: Add a way to know whether a timeline is updating on each changes
...
+ Bind the new API in python
API: ges_timeline_is_updating
API: ges_track_is_updating
2012-03-27 22:33:57 -04:00
Thibault Saunier
a762e72c13
trackobject: Enable adding a TrackObject in a Track before a TimelineObject
...
We were requiring it only for GESCustomTimelineSource, but it is not actually
necessary so, we can just check if the TrackObject is in a TimelineObject or
not, and react accordingly.
2012-03-27 22:33:57 -04:00
Thibault Saunier
149ceeab2e
timeline-layer: Add a method to get the timeline it is currently in
...
API: ges_timeline_layer_get_timeline
Bind it in python
2012-03-27 22:33:57 -04:00
Volodymyr Rudyi
4148d605ad
ges-track: Set gnlobject state to NULL before disposing it
...
Work around a deadlock if setting state to NULL right before removing the
gnlobject from the composition.
https://bugzilla.gnome.org/show_bug.cgi?id=672751
2012-03-27 22:33:00 -04:00
Tim-Philipp Müller
70c023626a
ges-pitivi-formatter: add copyright/license headers
...
https://bugzilla.gnome.org/show_bug.cgi?id=644943
2012-03-19 10:57:14 +00:00
Tim-Philipp Müller
e121368e37
configure: check for libxml2 explicitly
...
GStreamer may be built without the libxml2 dependency.
2012-03-12 15:15:22 +00:00
Tim-Philipp Müller
6a3391eae8
ges-pitivi-formatter: move libxml includes into .c file
...
There's no need to have them in the header file.
2012-03-12 15:09:39 +00:00
Sebastian Dröge
2fc0a0c619
ges: Fix 'implicit conversion from enumeration type 'GESTextHAlign' to different enumeration type 'GESTextVAlign'' and similar compiler warnings
2012-03-06 15:37:18 +01:00
Sebastian Dröge
70fda7d45d
ges: Fix 'comparison of unsigned expression < 0 is always false'
2012-03-06 15:35:51 +01:00
Mark Nauwelaerts
2162c635e2
ges: support and handle no-more-pads in GESTimeline(Pipeline)
...
... to arrange for a clean READY to PAUSED state change transition.
Not doing so might have playsink reaching PAUSED prematurely
as one track prerolls, only to lose this state again (temporarily)
when the other track needs to preroll.
This is generally not nice or convenient, and particularly nasty
when trying to perform seek in PAUSED.
2012-01-30 11:35:13 +01:00
Edward Hervey
ee237ec523
ges: Various doc fixups and cleanups
2012-01-12 16:34:57 +01:00
Mark Nauwelaerts
282c3c4b49
ges: only use glib constructs as required in configure.ac
2012-01-12 15:12:14 +01:00
Thibault Saunier
3df2f0ae0a
pitivi-formatter: Use the new Formatter->project_loaded vmethod
2012-01-11 11:56:18 -03:00
Thibault Saunier
f5c861ddc3
formatter: Add a "loaded" signal
...
API: GESFormatter::loaded signal
API: GESFormatter->project_loaded VMethod
2012-01-11 11:56:18 -03:00
Thibault Saunier
5672ac8159
docs: Add a pitivi-formatter documentation
...
Move the API to the API section of the pitivi-formatter file
2012-01-11 11:56:18 -03:00
Thibault Saunier
c2d5992af0
formatter: Enhance some debug logging
2012-01-11 11:56:18 -03:00
Thibault Saunier
10803b553d
ges: Rework the ges_pitivi_get_sources method
...
+ Remove the URI parameter of ges_pitivi_get_sources
+ Rework how we handle the PitiviFormatterPrivate.source_table HashTable
rename it to sources_table to make a difference between it and the
source_table(s) it containes
2012-01-11 11:56:17 -03:00
Thibault Saunier
31430b1e0a
ges: Let user set a source list on the PitiviFormatter
...
API: ges_pitivi_formatter_set_sources
Bind it in python
2012-01-11 11:56:17 -03:00
Thibault Saunier
a904904b77
ges: Handle the new SourceMoved API in PitiviFormatter
2012-01-11 11:56:17 -03:00
Thibault Saunier
7c0ba83b26
ges: Add an API to Formatter to be able to handle moved sources
...
API: GESFormatter::source-moved signal
API: GESFormatter::update_source_uri virtual method
Conflicts:
ges/ges-formatter.h
2012-01-11 11:56:17 -03:00
Thibault Saunier
b844ff04de
ges: Add a "discovery-error" signal to GESTimeline
...
API: GESTimeline::discovery-error signal
2012-01-11 11:56:17 -03:00
Thibault Saunier
3ca5e7bcaa
ges: Let user set TimelineObject URI while not containing any TrackObject
...
In the case of not properly set uri, we can keep using the same
TimelineFileSource changing its URI until its TrackObject could be created.
This is particularly usefull in the case of formatter trying to load filesource
when the file has been moved
2012-01-11 11:56:17 -03:00
mathieu duponchelle
ac6f8599fe
Add API to get all sources from xptv project
2012-01-11 11:56:17 -03:00
mathieu duponchelle
2376c313a1
Disconnect handlers when object is removed from layer
2012-01-11 11:56:17 -03:00
mathieu duponchelle
1bd6e9b758
Edit : typos
2012-01-11 11:56:17 -03:00
Mathieu Duponchelle
93046aad6b
GES : remove transitions when needed
...
Conflicts:
ges/ges-timeline.c
2012-01-11 11:56:17 -03:00
mathieu duponchelle
cc031a5f6a
Fixes auto transitions on layers + n.
2012-01-11 11:56:17 -03:00
Thibault Saunier
4acc711e52
ges: Add a maxduration property to TrackFileSource
...
API: GESTrackFileSource::maxduration property
2012-01-11 11:56:17 -03:00
Thibault Saunier
ce6edd94f4
ges: Disconnect the TrackObject when removed from a Track
2012-01-11 11:56:17 -03:00
Thibault Saunier
ba57355d95
ges: Add a runtime version checking function
...
Bind it in python
API: ges_version
2012-01-11 11:56:17 -03:00
Thibault Saunier
6c242b8cb1
ges: Reindent ges-track-object.h
2012-01-11 11:56:17 -03:00
Thibault Saunier
a71b46e080
ges: Make TrackObject:locked a GObject property
2012-01-11 11:56:16 -03:00
Thibault Saunier
9d4a528b9e
ges: Fix the TimelineObject::effect-added signal emission timing
...
We were emitting it before it gets added to the track_object list,
so the list we were getting with get_top_effects was containing
a TrackObject that wasen't a TrackEffect
+ A bit of refactoring
2012-01-11 11:56:16 -03:00
Thibault Saunier
059b798d12
ges: Reindent ges-track.h
2012-01-11 11:56:16 -03:00
Thibault Saunier
bc8c709303
ges: Some debug logging enhancements
2012-01-11 11:56:16 -03:00
Thibault Saunier
ef96f26e8a
ges: Expand track background duration equal to timeline duration
2012-01-11 11:56:16 -03:00
Thibault Saunier
ffd196d06a
ges: Add a duration property to GESTimeline
...
API: GESTimeline:duration property
2012-01-11 11:56:16 -03:00
Thibault Saunier
53c4eb35db
ges: Fix TimelineObject movement that contains unlocked and relocked objects
...
Record the TrackObject that initiated a TimelineObject movement so we don't
get inifite loops.
Also fix the new TrackObject calculation:
child.start = time - offset (not time + offset)
2012-01-11 11:56:16 -03:00
Thibault Saunier
826d4f9a71
ges: Bump layer height from 10 to 1000
2012-01-11 11:56:16 -03:00
Thibault Saunier
4d802c1241
ges: Little fixes to timeline_object_g(s)et_supprted_formats
2012-01-11 11:56:16 -03:00
Thibault Saunier
c0d60b9d17
ges: Add guards to all API calls in GESTimelineObject
...
And reindent the .h file
2012-01-11 11:56:16 -03:00
Thibault Saunier
714a7bf886
ges: Add a method to TimelineObject to set contained TrackObject-s locked state
...
API: ges_timeline_object_objects_set_locked
2012-01-11 11:56:16 -03:00
Thibault Saunier
5d35024cd3
docs: Update documentation
2012-01-11 11:56:16 -03:00
Thibault Saunier
97846d698c
ges: Remove transitions properly
2012-01-11 11:56:16 -03:00
Thibault Saunier
b85b2103ad
ges: Add a TimelineObject::track-object-removed signal
...
API: TimelineObject::track-object
2012-01-11 11:56:16 -03:00
Thibault Saunier
a9193def76
ges: Enhance some debug logging
...
Also make sure not to warn when it shouldn't
2012-01-11 11:56:16 -03:00
Thibault Saunier
82974d9a9d
ges: Misc fixes in ges-timeline-layer
...
Put the comment where they are meant to be
Make static functions static
Use LAYER_HEIGHT where needed
2012-01-11 11:56:16 -03:00
Thibault Saunier
5021017904
ges: Auto transition cleanup
2012-01-11 11:56:15 -03:00
Thibault Saunier
0c872c4340
ges: Do not add any audio source when still image
...
We now have a backgroud so no problem with that.
Fix the testsuite accordingly
Fix #657514
2012-01-11 11:56:15 -03:00
Thibault Saunier
6ed88075d9
ges: Fix debugging symbol to avoid segfaults
2012-01-11 11:56:15 -03:00
Thibault Saunier
8addbcddd0
ges: Big PiTiVi formatter cleanup
...
Also set the version to 0.2
2012-01-11 11:56:15 -03:00
Stéphane Maniaci
876add1fe5
ges: Don't release unexisting sources when destroying the formatter
...
This happens in case of an empty project.
2012-01-11 11:56:15 -03:00
Thibault Saunier
14480b43f4
ges: Add a gnl background object to tracks
...
This is in order to support gaps in the timeline.
This is not the proper solution, we should make sure to fill gaps properly,
but for the time being, it makes the trick
2012-01-11 11:56:15 -03:00
Thibault Saunier
2fe6210383
ges: Make sure not to set transition start to negative
...
gnlobject.start is a guint64, we can not set it to a negative value
2012-01-11 11:56:15 -03:00
Mathieu Duponchelle
7212307db5
ges: makes "pass over" accurate and reset priority when transition is removed
2012-01-11 11:56:15 -03:00
Mathieu Duponchelle
31688a9354
ges: don't reset the supported formats in the timeline when they're already set
...
My mom never told me goto was evil
2012-01-11 11:56:15 -03:00
Mathieu Duponchelle
7bb8e6f951
ges: make the offset positive as it should have been
...
Took me two days to figure that out :/ I'm pretty sure it's the way things are supposed to be
2012-01-11 11:56:15 -03:00
Mathieu Duponchelle
e1d97cfee0
ges: modifies emission of the track/object-removed signal
...
Make it be emitted right before the track objects is removed so we don't end up
with a TrackObject that has already been freed
2012-01-11 11:56:15 -03:00
Mathieu Duponchelle
55fbba27c3
ges: adds a ges_timeline_object_split method
...
Slightly improves the copy function to do so.
API: ges_timeline_object_split
2012-01-11 11:56:15 -03:00
Thibault Saunier
5f30a86214
ges: add a timeline_object copy function
2012-01-11 11:56:15 -03:00
Mathieu Duponchelle
2c4d614cb1
ges: adds an enable_update function to the GESTimeline
...
Binds it in python
API: ges_timeline_enable_update
2012-01-11 11:56:15 -03:00
Mathieu Duponchelle
76f256f0bd
ges : add a track-object(removed signal to the track
...
API: GESTrack::track-object-removed signal
2012-01-11 11:56:15 -03:00
Thibault Saunier
8f405d6a4d
ges: Handle supported formats in TimelineStandardTransition
2012-01-11 11:56:15 -03:00
Mathieu Duponchelle
0e11ec4137
ges: add an auto-transition to the layer
...
API: GESTimelineLayer.auto_transition property
2012-01-11 11:56:15 -03:00
Mathieu Duponchelle
9413d9f9e9
ges: Keep the track object list sorted in track
2012-01-11 11:56:14 -03:00
Mathieu Duponchelle
32ce69684c
ges: add track objects to the track before the track-object-added is emitted
...
NOTE: The caller of ges_timeline_object_create_track_object now needs to add it to
the timeline_object after calling the function.
Fix the testsuite to support that accordingly
2012-01-11 11:56:14 -03:00
Mathieu Duponchelle
c191715608
ges: Add API to get the TrackObject-s contained in a Track
...
Sort the track_objects list
API: ges_track_get_objects
2012-01-11 11:56:14 -03:00
Mathieu Duponchelle
c7a984824f
ges: Implement a Pitivi Formatter
...
API: ges_pitivi_formatter_new
2012-01-11 11:56:14 -03:00
Mathieu Duponchelle
0c92ca9b57
ges: add a track-object-added signal to GESTrack
...
API: GESTrack::track-object-added signal
2012-01-11 11:56:14 -03:00
Mathieu Duponchelle
ad85383be1
ges: Add a track-object-added signal to GESTimelineObject
...
API: GESTimelineObject::track-object-added signal
2012-01-11 11:56:14 -03:00
Thibault Saunier
6386247cc4
ges: Move supported formats from filesource to timelineobject
...
This is usefull by any subclass of GESTimelineObject
+ Bind it in python
+ Fix the keyfile formatter tests
API: ges_timeline_object_set_supported_formats
API: ges_timeline_object_get_supported_formats
2012-01-11 11:56:14 -03:00
Thibault Saunier
8d15025aae
ges: Add a ges_timeline_append_layer convenience method
...
API: ges_timeline_append_layer
2012-01-11 11:56:14 -03:00
Thibault Saunier
6e1a482a80
ges: add a function to move TimelineObject from a layer to another
...
API: ges_timeline_object_move_to_layer
API: ges_timeline_object_is_moving_from_layer
API: ges_timeline_object_set_moving_from_layer
2012-01-11 11:56:14 -03:00