Thiago Santos [Fri, 30 Mar 2012 22:10:33 +0000 (19:10 -0300)]
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
Thibault Saunier [Tue, 3 Apr 2012 23:25:18 +0000 (19:25 -0400)]
formatter: Try to figure out new paths when media files have moved
Introduces a dependency to GIO
Thibault Saunier [Mon, 30 Jan 2012 16:47:42 +0000 (17:47 +0100)]
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.
Thibault Saunier [Fri, 27 Jan 2012 16:09:08 +0000 (17:09 +0100)]
timelineobject: Update the nb_effect when releasing a TrackEffect
Thibault Saunier [Mon, 23 Jan 2012 01:50:24 +0000 (22:50 -0300)]
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
Thibault Saunier [Thu, 26 Jan 2012 10:53:54 +0000 (11:53 +0100)]
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.
Thibault Saunier [Wed, 25 Jan 2012 11:47:24 +0000 (12:47 +0100)]
timeline-layer: Add a method to get the timeline it is currently in
API: ges_timeline_layer_get_timeline
Bind it in python
Volodymyr Rudyi [Tue, 27 Mar 2012 23:53:50 +0000 (02:53 +0300)]
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
Tim-Philipp Müller [Mon, 19 Mar 2012 10:56:53 +0000 (10:56 +0000)]
ges-pitivi-formatter: add copyright/license headers
https://bugzilla.gnome.org/show_bug.cgi?id=644943
Tim-Philipp Müller [Tue, 13 Mar 2012 11:36:15 +0000 (11:36 +0000)]
tests: fix weird windowsy code in save_and_load unit test
Fixes compiler error about FILENAME_MAX in 0.11
Tim-Philipp Müller [Mon, 12 Mar 2012 15:15:22 +0000 (15:15 +0000)]
configure: check for libxml2 explicitly
GStreamer may be built without the libxml2 dependency.
Tim-Philipp Müller [Mon, 12 Mar 2012 15:09:39 +0000 (15:09 +0000)]
ges-pitivi-formatter: move libxml includes into .c file
There's no need to have them in the header file.
Sebastian Dröge [Tue, 6 Mar 2012 14:37:18 +0000 (15:37 +0100)]
ges: Fix 'implicit conversion from enumeration type 'GESTextHAlign' to different enumeration type 'GESTextVAlign'' and similar compiler warnings
Sebastian Dröge [Tue, 6 Mar 2012 14:35:51 +0000 (15:35 +0100)]
ges: Fix 'comparison of unsigned expression < 0 is always false'
Tim-Philipp Müller [Fri, 17 Feb 2012 13:46:36 +0000 (13:46 +0000)]
bindings: don't link to libges four times
And even less different versions of it.
Mark Nauwelaerts [Mon, 30 Jan 2012 10:34:09 +0000 (11:34 +0100)]
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.
Edward Hervey [Thu, 12 Jan 2012 15:34:13 +0000 (16:34 +0100)]
ges: Various doc fixups and cleanups
Mark Nauwelaerts [Thu, 12 Jan 2012 14:12:14 +0000 (15:12 +0100)]
ges: only use glib constructs as required in configure.ac
Mark Nauwelaerts [Thu, 12 Jan 2012 14:11:10 +0000 (15:11 +0100)]
pkgconfig: fix uninstalled pkgconfig to handle out-of-source build case
Thibault Saunier [Sat, 7 Jan 2012 16:36:33 +0000 (13:36 -0300)]
pitivi-formatter: Use the new Formatter->project_loaded vmethod
Thibault Saunier [Sat, 7 Jan 2012 16:28:15 +0000 (13:28 -0300)]
formatter: Add a "loaded" signal
API: GESFormatter::loaded signal
API: GESFormatter->project_loaded VMethod
Thibault Saunier [Thu, 22 Dec 2011 16:11:34 +0000 (17:11 +0100)]
docs: Add a pitivi-formatter documentation
Move the API to the API section of the pitivi-formatter file
Thibault Saunier [Thu, 5 Jan 2012 16:21:40 +0000 (13:21 -0300)]
formatter: Enhance some debug logging
Thibault Saunier [Wed, 4 Jan 2012 22:04:53 +0000 (19:04 -0300)]
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
Thibault Saunier [Wed, 4 Jan 2012 21:06:37 +0000 (18:06 -0300)]
ges: Let user set a source list on the PitiviFormatter
API: ges_pitivi_formatter_set_sources
Bind it in python
Thibault Saunier [Wed, 4 Jan 2012 18:06:11 +0000 (15:06 -0300)]
ges: Handle the new SourceMoved API in PitiviFormatter
Thibault Saunier [Wed, 4 Jan 2012 18:05:15 +0000 (15:05 -0300)]
bindings: Bind the new formatter API
Thibault Saunier [Wed, 4 Jan 2012 17:59:21 +0000 (14:59 -0300)]
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
Thibault Saunier [Wed, 4 Jan 2012 17:46:54 +0000 (14:46 -0300)]
ges: Add a "discovery-error" signal to GESTimeline
API: GESTimeline::discovery-error signal
Thibault Saunier [Wed, 4 Jan 2012 17:24:05 +0000 (14:24 -0300)]
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
mathieu duponchelle [Tue, 3 Jan 2012 10:59:29 +0000 (11:59 +0100)]
Add API to get all sources from xptv project
mathieu duponchelle [Fri, 23 Dec 2011 16:16:20 +0000 (17:16 +0100)]
Disconnect handlers when object is removed from layer
mathieu duponchelle [Thu, 22 Dec 2011 20:21:37 +0000 (21:21 +0100)]
Edit : typos
Mathieu Duponchelle [Wed, 24 Aug 2011 10:04:32 +0000 (12:04 +0200)]
GES : remove transitions when needed
Conflicts:
ges/ges-timeline.c
mathieu duponchelle [Wed, 21 Dec 2011 18:48:22 +0000 (19:48 +0100)]
Fixes auto transitions on layers + n.
Thibault Saunier [Thu, 29 Dec 2011 12:56:08 +0000 (13:56 +0100)]
ges: Add a maxduration property to TrackFileSource
API: GESTrackFileSource::maxduration property
Thibault Saunier [Fri, 23 Dec 2011 18:23:31 +0000 (19:23 +0100)]
ges: Disconnect the TrackObject when removed from a Track
Thibault Saunier [Mon, 26 Dec 2011 01:54:29 +0000 (02:54 +0100)]
ges: Add a runtime version checking function
Bind it in python
API: ges_version
Thibault Saunier [Thu, 22 Dec 2011 14:59:51 +0000 (15:59 +0100)]
ges: Reindent ges-track-object.h
Thibault Saunier [Thu, 22 Dec 2011 13:41:39 +0000 (14:41 +0100)]
bindings: Register the various enums/flags in python
Thibault Saunier [Mon, 19 Dec 2011 10:21:18 +0000 (11:21 +0100)]
ges: Make TrackObject:locked a GObject property
Thibault Saunier [Sun, 18 Dec 2011 00:49:24 +0000 (01:49 +0100)]
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
Thibault Saunier [Fri, 16 Dec 2011 08:56:08 +0000 (09:56 +0100)]
ges: Reindent ges-track.h
Thibault Saunier [Fri, 16 Dec 2011 08:54:58 +0000 (09:54 +0100)]
ges: Some debug logging enhancements
Thibault Saunier [Fri, 16 Dec 2011 08:52:35 +0000 (09:52 +0100)]
ges: Expand track background duration equal to timeline duration
Thibault Saunier [Fri, 16 Dec 2011 08:35:31 +0000 (09:35 +0100)]
ges: Add a duration property to GESTimeline
API: GESTimeline:duration property
Thibault Saunier [Fri, 16 Dec 2011 07:23:58 +0000 (04:23 -0300)]
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)
Thibault Saunier [Fri, 17 Jun 2011 18:29:52 +0000 (14:29 -0400)]
ges: Bump layer height from 10 to 1000
Thibault Saunier [Wed, 7 Dec 2011 23:17:55 +0000 (20:17 -0300)]
ges: Little fixes to timeline_object_g(s)et_supprted_formats
Thibault Saunier [Wed, 7 Dec 2011 23:50:13 +0000 (20:50 -0300)]
ges: Add guards to all API calls in GESTimelineObject
And reindent the .h file
Thibault Saunier [Wed, 7 Dec 2011 23:36:24 +0000 (20:36 -0300)]
ges: Add a method to TimelineObject to set contained TrackObject-s locked state
API: ges_timeline_object_objects_set_locked
Thibault Saunier [Wed, 7 Dec 2011 02:11:25 +0000 (23:11 -0300)]
docs: Update documentation
Thibault Saunier [Tue, 6 Dec 2011 17:11:21 +0000 (14:11 -0300)]
ges: Remove transitions properly
Thibault Saunier [Tue, 6 Dec 2011 17:10:14 +0000 (14:10 -0300)]
ges: Add a TimelineObject::track-object-removed signal
API: TimelineObject::track-object
Thibault Saunier [Thu, 1 Dec 2011 00:47:54 +0000 (21:47 -0300)]
ges: Enhance some debug logging
Also make sure not to warn when it shouldn't
Thibault Saunier [Thu, 1 Dec 2011 00:46:21 +0000 (21:46 -0300)]
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
Thibault Saunier [Wed, 2 Nov 2011 16:51:36 +0000 (13:51 -0300)]
ges: Auto transition cleanup
Thibault Saunier [Wed, 30 Nov 2011 23:13:09 +0000 (20:13 -0300)]
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
Thibault Saunier [Wed, 16 Nov 2011 18:22:33 +0000 (15:22 -0300)]
ges: Fix debugging symbol to avoid segfaults
Thibault Saunier [Wed, 2 Nov 2011 16:52:16 +0000 (13:52 -0300)]
ges: Big PiTiVi formatter cleanup
Also set the version to 0.2
Stéphane Maniaci [Sun, 9 Oct 2011 16:28:39 +0000 (12:28 -0400)]
ges: Don't release unexisting sources when destroying the formatter
This happens in case of an empty project.
Thibault Saunier [Thu, 20 Oct 2011 14:16:30 +0000 (16:16 +0200)]
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
Thibault Saunier [Tue, 6 Dec 2011 21:04:11 +0000 (18:04 -0300)]
ges: Make sure not to set transition start to negative
gnlobject.start is a guint64, we can not set it to a negative value
Mathieu Duponchelle [Wed, 14 Sep 2011 12:58:01 +0000 (14:58 +0200)]
ges: makes "pass over" accurate and reset priority when transition is removed
Mathieu Duponchelle [Sat, 27 Aug 2011 23:13:20 +0000 (01:13 +0200)]
ges: don't reset the supported formats in the timeline when they're already set
My mom never told me goto was evil
Mathieu Duponchelle [Fri, 26 Aug 2011 16:39:39 +0000 (18:39 +0200)]
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
Mathieu Duponchelle [Wed, 24 Aug 2011 10:06:22 +0000 (12:06 +0200)]
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
Mathieu Duponchelle [Wed, 24 Aug 2011 09:48:14 +0000 (11:48 +0200)]
ges: adds a ges_timeline_object_split method
Slightly improves the copy function to do so.
API: ges_timeline_object_split
Thibault Saunier [Thu, 9 Jun 2011 00:36:58 +0000 (20:36 -0400)]
ges: add a timeline_object copy function
Mathieu Duponchelle [Tue, 9 Aug 2011 13:56:56 +0000 (15:56 +0200)]
python : bind the new timeline_object functions
+ move_to_layer
+ is_moving_from_layer
+ set_moving_from_layer
Mathieu Duponchelle [Wed, 3 Aug 2011 00:33:10 +0000 (02:33 +0200)]
ges: adds an enable_update function to the GESTimeline
Binds it in python
API: ges_timeline_enable_update
Mathieu Duponchelle [Thu, 28 Jul 2011 16:49:04 +0000 (18:49 +0200)]
ges : add a track-object(removed signal to the track
API: GESTrack::track-object-removed signal
Thibault Saunier [Thu, 1 Dec 2011 03:33:38 +0000 (00:33 -0300)]
ges: Handle supported formats in TimelineStandardTransition
Mathieu Duponchelle [Sun, 24 Jul 2011 00:49:36 +0000 (02:49 +0200)]
ges: add an auto-transition to the layer
API: GESTimelineLayer.auto_transition property
Mathieu Duponchelle [Wed, 27 Jul 2011 00:04:48 +0000 (02:04 +0200)]
ges: Keep the track object list sorted in track
Mathieu Duponchelle [Wed, 27 Jul 2011 00:02:20 +0000 (02:02 +0200)]
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
Mathieu Duponchelle [Wed, 13 Jul 2011 16:30:06 +0000 (18:30 +0200)]
python: bind and override the ges_track_get_objects method
Mathieu Duponchelle [Fri, 8 Jul 2011 01:37:28 +0000 (03:37 +0200)]
ges: Add API to get the TrackObject-s contained in a Track
Sort the track_objects list
API: ges_track_get_objects
Mathieu Duponchelle [Sun, 28 Aug 2011 01:59:19 +0000 (03:59 +0200)]
python: binds the PiTiVi formatter
Mathieu Duponchelle [Sun, 28 Aug 2011 01:58:21 +0000 (03:58 +0200)]
examples: Add a load project option to ges-ui
Mathieu Duponchelle [Sun, 28 Aug 2011 01:57:13 +0000 (03:57 +0200)]
tools: Add a -y option to ges-launch to launch pitivi projects
Mathieu Duponchelle [Sun, 28 Aug 2011 01:56:26 +0000 (03:56 +0200)]
test: Add a pitivi formatter test
For now we requiere a project files and media files to be on the host system,
this is not optimal and we should rework that in the future.
Mathieu Duponchelle [Sun, 28 Aug 2011 01:55:46 +0000 (03:55 +0200)]
ges: Implement a Pitivi Formatter
API: ges_pitivi_formatter_new
Mathieu Duponchelle [Sun, 28 Aug 2011 01:48:36 +0000 (03:48 +0200)]
ges: add a track-object-added signal to GESTrack
API: GESTrack::track-object-added signal
Mathieu Duponchelle [Sun, 28 Aug 2011 04:25:37 +0000 (06:25 +0200)]
ges: Add a track-object-added signal to GESTimelineObject
API: GESTimelineObject::track-object-added signal
Thibault Saunier [Thu, 1 Dec 2011 03:18:30 +0000 (00:18 -0300)]
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
Thibault Saunier [Tue, 7 Jun 2011 16:54:06 +0000 (12:54 -0400)]
ges: Add a ges_timeline_append_layer convenience method
API: ges_timeline_append_layer
Thibault Saunier [Mon, 6 Jun 2011 19:56:23 +0000 (15:56 -0400)]
test: Better layer priority handling testing
We use the ges_timeline_object_move_to_layer new function to make sure it works,
and that everything goes well on priority handling with this new method
Thibault Saunier [Mon, 6 Jun 2011 19:55:47 +0000 (15:55 -0400)]
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
Thibault Saunier [Fri, 3 Jun 2011 02:03:19 +0000 (22:03 -0400)]
ges: Keep layers sorted by priorities in the timeline
Thibault Saunier [Fri, 3 Jun 2011 02:01:43 +0000 (22:01 -0400)]
ges: Add some debugging symbols
Thibault Saunier [Fri, 15 Apr 2011 23:34:28 +0000 (19:34 -0400)]
ges: Handle TimelineLayer and its contained TimelineObject priorities properly
GESTimelineObject.priority is now actually relative to its containing layer
priority.
Test it in the layer test-suite.
Thibault Saunier [Fri, 3 Jun 2011 01:35:59 +0000 (21:35 -0400)]
ges: Define a LAYER_HEIGHT constant in the normal layer
Edward Hervey [Wed, 11 Jan 2012 14:31:41 +0000 (15:31 +0100)]
docs: Add pipeline {get|set}_{audio|video}_sink() docs
Robert Swain [Fri, 6 Jan 2012 12:16:09 +0000 (09:16 -0300)]
timeline: simplify code to remove an object from the pendingobjects list
g_list_remove_all () can be used as a simplification as the private data to ges
timeline object are 1:1.
Robert Swain [Wed, 4 Jan 2012 16:24:16 +0000 (17:24 +0100)]
GESTimeline: Lock object discovery list
TimelineFileSource objects are asynchronously discovered with discoverer
with such objects being added to a pendingobjects list. If one were to
remove a layer before an object in said layer had been discovered, a
segfault could occur.
As such, management of the list has been made more robust with the
addition of a mutex and removal of the object from the pendingobjects
list upon layer removal.
Mateu Batle [Tue, 8 Nov 2011 22:29:38 +0000 (17:29 -0500)]
GESTimelineObject: fix trigger notify changing props
Notify signal was not triggered when changing properties through
ges_timeline_object_set_* functions, only when done through g_object_set
Edward Hervey [Fri, 30 Dec 2011 16:18:18 +0000 (17:18 +0100)]
tools: Add proper include for g_printf
Mark Nauwelaerts [Wed, 30 Nov 2011 15:15:35 +0000 (16:15 +0100)]
ges-launch: allow for optional audio or video track
Mark Nauwelaerts [Wed, 30 Nov 2011 14:44:45 +0000 (15:44 +0100)]
ges-launch: port over gst-launch verbose setting
... as it is useful for a quick peek as to what is going on.