Commit graph

992 commits

Author SHA1 Message Date
Thibault Saunier b5c52a17ec layer: Remove the "rate" property of ges_timeline_layer_add_asset
API:
 - ges_timeline_layer_add_asset (layer, asset,  start,  inpoint, duration, rate, track_types);
 + ges_timeline_layer_add_asset (layer, asset,  start,  inpoint, duration, track_types);
2013-04-23 20:22:27 -03:00
Mathieu Duponchelle 5ef1a8afa9 trackelement: asynchronously add bindings if the track-element is not in a track yet.
Also fix annotations.
2013-04-23 19:31:32 -03:00
Thibault Saunier f3372dfb0f formatter: Pass a dummy instance of formatter to virtual method
Instead of passing the class itself
2013-04-23 19:31:32 -03:00
Thibault Saunier bf4a05d2e7 Fix compilation 2013-04-22 09:42:10 -03:00
Thibault Saunier dcb1114806 xml-formatter: Use G_GUINT64_FORMAT where needed 2013-04-21 21:29:29 -03:00
Thibault Saunier f5eb42c664 uri-clip-asset: Add "_class_" to a class method
API CHANGE:
	- ges_uri_clip_asset_set_timeout
	+ ges_uri_clip_asset_class_set_timeout
2013-04-21 21:13:00 -03:00
Thibault Saunier 5ab40ce5cb ges: Fix compilation with clang 2013-04-21 21:11:52 -03:00
Thibault Saunier 723fee10b6 project: Accept NULL as a valid value for @id in _create_asset 2013-04-19 19:59:26 -03:00
Thibault Saunier 10c25fef13 clip: Rework the splitting method
+ Avoid setting clip duration of our parent ourself

Now each and every TrackElement inside a clip have the same
start/inpoint/duration
2013-04-19 19:05:43 -03:00
Thibault Saunier 858a630e65 ges: Fix compilation 2013-04-18 18:59:52 -03:00
Thibault Saunier 64e188772e pipeline: Add API guards where needed 2013-04-18 18:48:19 -03:00
Thibault Saunier 70d5680748 pipeline: Add a GError argument 2013-04-18 18:48:19 -03:00
Thibault Saunier fee4167292 pipeline: Return FALSE in save_thumbnail when the operation fails 2013-04-17 16:48:05 -03:00
Thibault Saunier e1cac75df4 container: The TimelineElement.inpoint property is call "in-point" not inpoint 2013-04-15 00:18:05 -03:00
Thibault Saunier cdd00ed207 ges-clip: Remove the unlocked TrackElement APIs
Remove APIs:
  ges_track_element_set_locked
  ges_track_element_is_locked

Those APIs where really not nice to use and were causing more issues
than solving them. If 2 time related properties of TimelineElement must
be different, then those element can *not* have the same parent.

Plus, with the new ges_container_group () API, we will recreate 1
GESClip containing the proper GESTimelineElements if it is the thing
to do.
2013-04-15 00:18:05 -03:00
Thibault Saunier 6775097e66 pitivi-formatter: Remove broken code to handle unlocked track object
WARNING: The plan is to remove unlocked track object APIs so this is
the first part of that process... that code was already broken, and
*needs* to be fixed anyway, better do it using new APIs
2013-04-15 00:18:05 -03:00
Thibault Saunier fff2511597 pitivi-formatter: Remove saving code 2013-04-15 00:18:04 -03:00
Thibault Saunier 4039468b57 timeline: call sync_state_with_parent when adding a child 2013-04-09 00:11:18 -03:00
Thibault Saunier 78d80c8ca4 track-element: Rename set_property_controlling_parameters set_control_source
+ Generate the documentation
2013-03-31 16:37:41 +02:00
Mathieu Duponchelle e655a75605 [Keyframes] Adds API to set a control binding on a track element, and the serialization code. 2013-03-31 16:31:26 +02:00
Thibault Saunier 811e68811c Changing remaining clip::track-element-added to container::child-added 2013-03-30 15:40:38 +01:00
Thibault Saunier d3595d4706 pipeline: Implement the video overlay interface 2013-03-30 14:35:45 +01:00
Thibault Saunier 8b1039a87a timeline-pipeline: Enhance API guards 2013-03-30 13:34:56 +01:00
Thibault Saunier 40376f9219 timeline: Do no unref the timeline before returning it 2013-03-30 13:34:36 +01:00
Thibault Saunier 8d4ce97fc3 container: s/get_priorty_range/get_priority_range/ 2013-03-30 12:31:50 +01:00
Thibault Saunier f114b6eb3b timeline: Comment some variables goals 2013-03-29 15:50:12 +01:00
Thibault Saunier cd188c851d container: Let subclasses handle the height
+ Fix tests (starting using GESTestClip instead of GESCustomClip)

Now the height is not only growing, but can also go down, as the value
is just simply computed

API:
	GESContainer::compute_height virtual method
2013-03-28 11:16:41 +01:00
Thibault Saunier b5f2c819fc container: Properly implement ges_container_group 2013-03-28 11:16:41 +01:00
Thibault Saunier 134ce9a8d8 clip: Emit notify signal when setting Clip.layer 2013-03-28 11:16:41 +01:00
Thibault Saunier 7313916ae8 timeline: Remove TrackElement from its container on GESTimelineLayer::"clip-removed"
.... when the Track is NULL
2013-03-28 11:16:41 +01:00
Thibault Saunier 0df2d4f945 container: Make sure that the child exists when emiting the "child-removed" signal
+ Add a test
2013-03-28 11:16:41 +01:00
Thibault Saunier 229ec5f435 container: Replace ignore_notify by a GESChildrenControlMode flag 2013-03-23 03:26:33 -03:00
Thibault Saunier c6078abc97 container: Stop ignoring notifies if ->add_child fails 2013-03-23 01:35:02 -03:00
Thibault Saunier 7f1fbd2300 internal: Add a element_end_compare 2013-03-23 01:34:50 -03:00
Thibault Saunier e72f5a6012 timeline-element: Add a macro to get element 'end' 2013-03-23 01:31:23 -03:00
Thibault Saunier c84f4ec9fb ges: Keep ges-gerror categories simple. 2013-03-22 17:39:04 -03:00
Thibault Saunier fa5ed5111d Misc cleaning 2013-03-21 22:17:10 -03:00
Thibault Saunier 48b5903ef8 track-element: Make ges_track_element_set_track internal
Removed API:
  + ges_track_element_set_track
2013-03-21 22:12:47 -03:00
Thibault Saunier cae3aabbca ges: Make ges_clip_create_track_element(s) internal methods
+ Fix tests (we still need a round of modernisation, making use of
      assets where it makes sense)

There is no reason to use those method outside of GES, so remove them,
cleaning the API and making it easier for users.

Removed APIs:
-----------
    * ges_clip_create_track_element
    * ges_clip_create_track_elements
2013-03-21 22:05:45 -03:00
Thibault Saunier 9a751269bb uri-asset: Properly handle images and do not duplicate the TrackType 2013-03-19 21:07:58 -03:00
Thibault Saunier 855270566c uri-asset: Implement a ges_uri_clip_asset_request_sync method
This way we let the possibility to the user to actually do it, but we avoid him to do it
without knowing it is absolutely not recommanded to.

API:
	+ ges_uri_clip_asset_request_sync
2013-03-19 20:06:30 -03:00
Thibault Saunier 6a3331cc67 Start categorizing GError types in GES 2013-03-19 20:06:30 -03:00
Thibault Saunier 5b2183076a timeline-element: Do not give a reference to the calles of g_object_get_property
... for both the "parent" and the "timeline" properties

Making things simpler to handle for the copy method.
2013-03-19 20:06:30 -03:00
Thibault Saunier f8334dba24 clip: Make it mandatory that a clip is in a layer to be splittable
Otherwize we will not be able to describe if the returned object has a floating reference or not, and this would screw the introspection.
2013-03-19 20:06:30 -03:00
Thibault Saunier 5a5b07297c Use gst_object_ref_sink instead of g_object_ref_sink when appropriate
Making refcount issue debugging simpler
2013-03-18 12:48:42 -03:00
Thibault Saunier 0767f08c7a Always prefer gst_object_(un)ref over g_object_(un)ref
Making the refcount issue debugging easier
2013-03-18 12:48:41 -03:00
Thibault Saunier dd50427714 clip: Make set/is_moving_from_layer internal 2013-03-15 12:01:58 -03:00
Thibault Saunier 058f0d0099 clip: Reindent header and make ges_clip_set_layer internal 2013-03-15 11:58:59 -03:00
Thibault Saunier 2fede3adeb track: Cleanup header and add a FIXME 2013-03-15 11:38:03 -03:00
Thibault Saunier aa740d86bd Remove GESTrackElements from GESTracks when removing from a GESClip
... Not the other way round.

  + Add and enhance debugging info on the way

The user should not be responsible for removing the GESTrackElements from
GESTracks, instead, removing it from a GESClip should imply removing
it from any GESTrack it is in.

This patch changes sensibly the behaviour when we remove a
GESTrackElement from a GESTrack, not remoing it from the GESClip it is
in. *But*, users should never remove a GESTrackElement from a GESTrack
anyway. The testsuite has been updated to that new behaviour.
2013-03-15 11:17:06 -03:00