Commit graph

717 commits

Author SHA1 Message Date
Robert Swain
fc97c16e7e 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.
2012-01-05 09:01:20 -03:00
Mateu Batle
d1de4b2114 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
2012-01-05 08:56:59 -03:00
Robert Swain
edf47f880d GESTimelinePipeline: Add API to get/set audio sink 2011-11-07 15:08:34 +01:00
Robert Swain
03ecfb80c0 GESTimelinePipeline: API documentation improvements
Added notes for refcounts and transference to API documentation for the
video sink getter/setter.
2011-10-05 12:24:36 +02:00
Robert Swain
8ff7b7def5 GESTimelinePipeline: Add video sink get/set API
This new API allows getting/setting of the preview mode's video sink
element through playsink's video-sink property.
2011-10-04 16:25:22 +02:00
Edward Hervey
1f6824cf87 GESTimelinePipeline: Return before the error labels
Avoids a warning for no reason
2011-08-30 16:40:03 +02:00
Edward Hervey
e02cf20326 GESTimelinePipeline: Handle some trivial error cases
Avoids ending up calling potentially NULL variables
2011-08-29 17:43:05 +02:00
Luis de Bethencourt
32f0a49c6a ges/ges-track-video-transition.c: fix transition of different video sizes 2011-08-15 11:58:15 +02:00
Luis de Bethencourt
f4fe8af5c4 GESTrackObject: missing Since tag and typo fixes 2011-08-14 00:52:23 +02:00
Luis de Bethencourt
92ee492588 docs: add Since tag to new TextOverlay functions
And add them to the GES API doc
2011-08-13 18:42:50 +02:00
Luis de Bethencourt
6dfce431a8 docs: add Since tag to new TitleSource functions
And add them to the GES API doc
2011-08-13 18:42:20 +02:00
Mathieu Duponchelle
973c3d2b2e Add ges-screenshot.h to ges.h
This is to make ges_play_sink_convert_frame available to the bindings.
2011-08-11 14:40:09 +02:00
Thibault Saunier
1efbf1ceec GESTimeleinePipeline: Create a flag type instead of a simple enum
Make it binding friendly
2011-08-10 17:12:45 +02:00
Luis de Bethencourt
237f19d63a GESTimelineTitleSource/TrackTitleSource: add xpos/ypos setting
Vertical and horizontal position properties of the title source
can be set and get.
2011-08-09 19:15:18 +02:00
Luis de Bethencourt
8704011597 GESTimelineTitleSource/TrackTitleSource: add color setting
Color property of the text overlay can be set and get.
2011-08-09 19:13:37 +02:00
Luis de Bethencourt
63a82c5274 GESTimelineTextOverlay/TrackTextOverlay: add xpos/ypos setting
Vertical and horizontal position properties of the text overlay
can be set and get.
2011-08-08 18:44:57 +02:00
Luis de Bethencourt
09ef6dbeac ges-enums: completed support for all options in TextAlign
Added the center and position options to the vertical, and horizontal
properties of text alignment.
2011-08-08 18:30:42 +02:00
Luis de Bethencourt
c62e18e219 ges: include indentation fixes
run gst-indent through ges-timeline-text-overlay.h and
ges-track-text-overlay.h
2011-08-03 12:27:04 +02:00
Luis de Bethencourt
ba5babd474 GESTimelineTextOverlay/TrackTextOverlay: add color setting
Color property of the text overlay can be set and get.
2011-08-03 12:20:27 +02:00
Mathieu Duponchelle
369efb0822 effects: implement the TrackParseLaunch get_property method properly 2011-07-07 21:27:37 -04:00
Mathieu Duponchelle
b0810ff5de GES : make sure to set n_properties to 0 when needed 2011-07-07 21:18:04 -04:00
Luis de Bethencourt
9a19d2ef64 GESTimelineFileSource: Check uri at _new()
Check if uri is valid before creating a new object in
ges_timeline_filesource_new()
2011-06-25 20:12:46 +02:00
Luis de Bethencourt
9af6843f16 GESTimelineFileSource: Fix documentation 2011-06-25 19:42:29 +02:00
Edward Hervey
6476d50b2c GESFormatter: Plug a leak
And make the two save methods have the same code/look
2011-05-26 09:28:02 -07:00
Edward Hervey
f07daf3beb GESFormatter: Move comments out of the way
Avoids having them appear in gtk-doc
2011-05-20 16:52:57 +02:00
Edward Hervey
7cbb93e487 GESTimelineObject/TrackObject: Don't break ABI for the Class
New addition go at the end, and the _reserved pointer gets reduced
accordingly
2011-05-20 16:52:43 +02:00
Edward Hervey
3bc2d8854c ges: More "Since: 0.10.2" doc markers 2011-05-20 16:52:36 +02:00
Thibault Saunier
f8a05b6d51 doc: Update the ges_init documentation 2011-05-19 21:58:51 +02:00
Thibault Saunier
8cb608eac0 ges: Fix introspection annotations 2011-05-19 21:58:51 +02:00
Thibault Saunier
deb88a1551 GESTimelineStandardTransition: keep track of TrackVideoTransition
Use the new track_object_added/release vfunc to get cleaner code
2011-05-19 21:58:51 +02:00
Thibault Saunier
a00f2f82df GESTimelineTitleSource: Keep track of contained TrackTitleSource objects
We use the new track_object_added and track_object_released vfunc to keep track
of the TrackObject we might be interested in. Makes cleaner code
2011-05-19 21:58:50 +02:00
Thibault Saunier
d5734ab94f GESTimelineObject: add track_object_added and track_object_removed virtual methods
Those methods are meant to be used in sublassed when needed. They are not doing
anything at this time, but will be used to clean some code in GESTimelineObject
sublcasses.
2011-05-19 21:58:50 +02:00
Thibault Saunier
6e0d6ba9c5 GESTrack: add a duration property
User can connect to the notify::duration signal if needed
2011-05-19 21:58:50 +02:00
Thibault Saunier
776060452d GESTrack: keep track of the properties GParamSpecs 2011-05-19 21:58:50 +02:00
Edward Hervey
d935459f33 ges: Initialize GES when building the gir/typelib 2011-05-09 14:26:53 +02:00
Edward Hervey
904aabe653 ges: Use %NULL instead of #NULL
Reported by Stefan Kost:
"% is for constants, # is for objects/structs/types, @ is for parameters."
2011-05-09 14:24:26 +02:00
Edward Hervey
50911c87a6 ges: Fix docs for alignment and introspection annotations
gtk-doc comments need to have a space before the '*' of each line else
they won't be picked up by gtk-doc.
2011-05-07 16:59:06 +02:00
Edward Hervey
75fbaa8e29 GESTrack: Make debug statement more useful 2011-05-07 13:43:10 +02:00
Edward Hervey
17b99d36b2 GESTrackParseLaunchEffect: Name the convert elements better
And bump a DEBUG to an ERROR
2011-05-07 13:43:10 +02:00
Edward Hervey
168c2d0327 GESTrackEffect: Cleanup of the property lookup code 2011-05-07 13:43:10 +02:00
Edward Hervey
44795fe51c GESTrackObject: Fix leak when iterating elements
We *always* need to unref elements and not just when they're effects
2011-05-07 13:43:10 +02:00
Edward Hervey
92ce17285b GESTrackObject: use gst_object_ref 2011-05-07 13:43:07 +02:00
Edward Hervey
7b303a38c5 GESTrackEffect: Use gst_object_unref for the hash value destroyfunc
The values are GstObjects and it makes it easier to track in debug logs
when they are being unreffed.
2011-05-07 13:22:50 +02:00
Thibault Saunier
3195bd1303 GESTrackkEffect: Fix Leaks 2011-05-07 12:33:33 +02:00
Thibault Saunier
65649722dd GESTimelineParseLaunchEffect: finalize to avoid leaks 2011-05-06 17:18:58 -03:00
Thibault Saunier
898ddfde87 ges: Add 'Since 0.10.2' to the new effects related API 2011-05-06 14:55:31 -03:00
Edward Hervey
ed8c00aa73 GESTrackObject: Check for valid argument 2011-05-06 19:41:38 +02:00
Edward Hervey
5fb9ec4148 GESTrackObject: Make a local function static 2011-05-06 19:41:16 +02:00
Edward Hervey
dab7501cdc GESTimelineObject: Check for valid arguments
and minor indentation fix
2011-05-06 19:40:22 +02:00
Edward Hervey
eccad44289 ges: Debug statement fixups 2011-05-06 19:39:26 +02:00
Edward Hervey
a6f3ae6dac ges: Doc fixes 2011-05-06 19:38:26 +02:00
Edward Hervey
88ab612df2 ges: Include indentation fixes 2011-05-06 19:36:35 +02:00
Edward Hervey
bca106e4b3 ges: Fix include orders 2011-05-06 19:35:13 +02:00
Edward Hervey
5b57ce7f4f ges: Don't break debug lines 2011-05-06 11:56:30 +02:00
Edward Hervey
5ac02d60be TrackLaunchEffect: Fix macros 2011-05-06 11:54:19 +02:00
Thibault Saunier
a1f11bed79 GESTrackParseLaunchEffect: better create_element implementation 2011-05-06 10:39:05 +02:00
Thibault Saunier
d6945879a0 TrackObject: fixe a crash in connect_signal 2011-05-06 10:39:05 +02:00
Thibault Saunier
54ed9b1709 GESTrackObject: add a ges_track_object_list_children_properties method
test: Test the new method, and also set/get_child_property_by_spec
2011-05-06 10:39:05 +02:00
Thibault Saunier
0e9658812e GESTrackObject: Implement a get/set_child_property_by_spec and get/set_child_property_valist methods
Reimplement the get/set_property accordingly
2011-05-06 10:39:05 +02:00
Thibault Saunier
1add2482b8 GESTrackObject: add a ges_track_object_lookup_child method 2011-05-06 10:39:05 +02:00
Thibault Saunier
b0f877a47c GESTrackObject: fixe the connect_properties_signals 2011-05-06 10:39:05 +02:00
Thibault Saunier
3179cb7c53 GESTrackObject: Change properties_hashtable format to GParamSpec->GstElement
It used to be 'ClassName-property-name' -> GstElement
2011-05-06 10:39:04 +02:00
Thibault Saunier
34f6d41d15 GESTrackEffect: move get_props_hastable implementation from GESTackParseLaunchEffect 2011-05-06 10:39:04 +02:00
Thibault Saunier
a69106ce53 GESTimelineObject: set_top_effect_priority refactoring 2011-05-06 10:39:04 +02:00
Thibault Saunier
7f3e64bd82 GESTimelineObject: Change the get_effects method to get_top_effects. 2011-05-06 10:39:04 +02:00
Thibault Saunier
0d02e26195 GESTrackObject: fixe a few issues with the get_props_hastable vmethod 2011-05-06 10:39:04 +02:00
Thibault Saunier
218cad6f16 GESTimelineEffect: keep the list of TrackObjects always sorted
Make sort_track_effects function static
2011-05-06 10:39:04 +02:00
Thibault Saunier
9dccf8d475 GESTimelineObject: use GESTrackEffect as base classe for effects and not GESTrackOperation. 2011-05-06 10:39:04 +02:00
Thibault Saunier
20c2d1df71 GESTimelineParseLaunchEffect: documentation fixing 2011-05-06 10:39:04 +02:00
Thibault Saunier
ecb280c85e TrackParseLaunchEffect: rename ges_track_parse_launch_effect_new_from_bin_desc method to ges_track_parse_launch_effect_new 2011-05-06 10:39:03 +02:00
Thibault Saunier
4b4439ad8a Make GESTimelineEffect abstract and move its implementation to GESTimelineParseLaunchEffect
test: Adapte the test suite to suite the new API
2011-05-06 10:39:03 +02:00
Thibault Saunier
ea3625f4b9 Make GESTrackEffect abstract and move its implementation to GESTrackParseLaunchEffect
test: update the effect test suite
2011-05-06 10:39:03 +02:00
Thibault Saunier
da717d6b25 GESTrackObject: add the deep-notify signal
tests: test the new signal
2011-05-06 10:39:03 +02:00
Thibault Saunier
68c1ade22d GESTimelineObject: Emit signal when adding and removing effects
tests: test that those signals are actually well sent
2011-05-06 10:39:03 +02:00
Thibault Saunier
34c55abd5d docs: fixe the GESTimelineObject documentation 2011-05-06 10:39:02 +02:00
Thibault Saunier
3f4a4a7134 GesTrackObject: add the ges_track_object_get_child_property method
test: Test this new method

design: change the design file to fit the implementation
2011-05-06 10:39:02 +02:00
Thibault Saunier
d9c07a4ed4 GESTrackObject: add a ges_track_object_set_child_property_method
test: Test the new method
2011-05-06 10:39:02 +02:00
Thibault Saunier
5376ff21ce GESTrackEffect: add the get_props_hastable virtual method
Implements this virtual method for bin described effects.
2011-05-06 10:39:02 +02:00
Thibault Saunier
c67bcb1684 GESTrackObject: add an hashtable linking childs properityName -> GstElement
We also add a Virtual method that should be implementented in subclasses to generate the new GHasTable
2011-05-06 10:39:02 +02:00
Thibault Saunier
d18c9fe8fb GESTimelineObject: add a ges_timeline_object_set_top_effect_priority method
Lets the user have a minimum of control over effects priorities
2011-05-06 10:39:02 +02:00
Thibault Saunier
bad1b419c2 GESTimelineObject: Do not rely on the fact that the trackobject list is sorted 2011-05-06 10:39:02 +02:00
Thibault Saunier
8717290bb0 GESTimelineObject: Update TrackObject priorities handling
make use of the new TrackObject getters
2011-05-06 10:39:01 +02:00
Thibault Saunier
bbf8aba733 GESTimelineObject: make debugging symbols more usefull 2011-05-06 10:39:01 +02:00
Thibault Saunier
c84d87961d GESTrackEffect: add getters for the: start, inpoint, duration, priority, active properties
docs: add new symbols
2011-05-06 10:39:01 +02:00
Thibault Saunier
861b724cd6 TimelineEffect: implement the create_track_object vmethod
tests: test the new vmethod
2011-05-06 10:39:01 +02:00
Thibault Saunier
b2d9ba6f1e TimelineObject: take a private update_height method out of priority_update_cb 2011-05-06 10:39:01 +02:00
Thibault Saunier
5ebeec2df1 TimelineEffect: create 2 properties for bin_descrption, one for the audio track, another for the video one
This is more for testing purposes since in the long run we should use Materials
2011-05-06 10:39:01 +02:00
Thibault Saunier
b566453e4a TimelineEffect: Add the basis for GESTimelineEffect implementation 2011-05-06 10:39:01 +02:00
Thibault Saunier
67cefa009d TrackEffect: Fixe the documentation 2011-05-06 10:39:00 +02:00
Thibault Saunier
25daa3c6a0 TimelineObject: fixe new API documentation 2011-05-06 10:39:00 +02:00
Thibault Saunier
ca2d5bca2b TimelineObject: add the ges_timeline_object_get_top_effect_position method
tests: adapt the effect testsuite to use this function

docs: add the method to the documentation
2011-05-06 10:39:00 +02:00
Thibault Saunier
dd298b99c7 TimelineObject: remove trailling spaces 2011-05-06 10:39:00 +02:00
Thibault Saunier
5e84bf8fe3 TimelineObject: add ges_timeline_object_get_effects API
tests: Test the new TimelineObject API

docs: add the corresponding fonction
2011-05-06 10:39:00 +02:00
Thibault Saunier
78a4afe2dc TimelineObject: adapt the add_track_object so we can add effects to it.
We keep the list of contained TrackObject-s order by priority
2011-05-06 10:39:00 +02:00
Thibault Saunier
070be5aff3 TimelineObject: add a function to sort list of applied effects 2011-05-06 10:39:00 +02:00
Thibault Saunier
0e4528112d TimelineObject: add a property to count the number of effects applied on it 2011-05-06 10:39:00 +02:00
Thibault Saunier
f8154914a0 TrackEffect: add padding to give a margin for API expension without breaking ABI 2011-05-06 10:38:59 +02:00
Thibault Saunier
e499a1142a TrackEffect: change the create_element function arguments to fit what is expected 2011-05-06 10:38:59 +02:00
Thibault Saunier
3aa68dac63 TrackEffect: Change copyright 2011-05-06 10:38:59 +02:00
Thibault Saunier
647f7c34d9 effects: Make TrackEffect implementation corresponding to the new effect API description
Make the effects testsuite correspond to the new API

Fixe a few compilation issues due to TrackEffect
2011-05-06 10:38:59 +02:00
Thibault Saunier
6e5d16ac6d GESTrackEffect: add private struct 2011-05-06 10:38:58 +02:00
Thibault Saunier
63e901ed12 GESTrackEffect: implementation of this new class 2011-05-06 10:38:58 +02:00
Alessandro Decina
62a3a7ed8c android: make it ready for androgenizer
Remove the android/ top dir
Fixe the Makefile.am to be androgenized

To build gstreamer for android we are now using androgenizer which generates the needed Android.mk files.
Androgenizer can be found here: http://git.collabora.co.uk/?p=user/derek/androgenizer.git
2011-04-11 17:15:55 +02:00
Thibault Saunier
49ac8a4e3e GESTimelinePipeline: the _init_ method shouldn't return before the end
Fixes #644939
2011-03-23 15:45:48 +01:00
Edward Hervey
8927e8d72e KeyFileFormatter: Handle return value of gst_value_deserialize() 2011-03-15 14:01:41 +01:00
Alessandro Decina
d5622071f5 ges: fix compiler warnings 2011-03-01 17:38:52 +01:00
Vincent Penquerc'h
a35a29a810 ges: make uri strings const 2011-03-01 17:29:09 +01:00
Edward Hervey
762c447936 TimelineObject: Store GParamSpec for height and layer 2011-02-09 11:21:02 +01:00
Vincent Penquerc'h
857142a15d ges: Check that the gnonlin elements are present at initialization time
This avoids hanging with no obvious cause later when they're not.

https://bugzilla.gnome.org/show_bug.cgi?id=641246
2011-02-08 16:43:11 +01:00
Tim-Philipp Müller
2a98347461 ges: fix a couple of printf format warnings 2011-01-31 19:00:49 +00:00
Alessandro Decina
77d789b077 ges: fix compiler warnings 2011-01-27 17:44:43 +01:00
Edward Hervey
753c16055e ges: Fix more ges_timeline_get_layers() usage memory leaks 2011-01-11 18:14:41 +01:00
Sebastian Dröge
8dff71aa08 ges: Don't install ges-internal.h and hide the GES debug category symbols
Fixes bug #639219.
2011-01-11 18:02:33 +01:00
Edward Hervey
fb93259f12 ges-utils: minor doc update 2011-01-11 17:55:34 +01:00
Sebastian Dröge
93eb5cc74a ges: Only export symbols starting with ges_ or GES_
https://bugzilla.gnome.org/show_bug.cgi?id=639218
2011-01-11 17:55:33 +01:00
Sebastian Dröge
818368ffcf ges: Mark some private symbols static
https://bugzilla.gnome.org/show_bug.cgi?id=639218
2011-01-11 17:55:33 +01:00
Edward Hervey
5387d36a15 TimelinePipeline: minor doc fix 2011-01-10 16:50:51 +01:00
Thibault Saunier
dc6290a5e2 docs: Document all the undocumented public functions 2011-01-10 15:14:45 +01:00
Edward Hervey
38d306db2e TrackObject: Small cleanup 2011-01-10 15:10:01 +01:00
Edward Hervey
4b5d350121 TrackObject: Remove deprecated FIXME
You just need to connect to the notify signal to get updates
2011-01-10 15:09:40 +01:00
Edward Hervey
3359fe22b3 Track: Mark as private the instance private structure 2011-01-10 11:12:55 +01:00
Edward Hervey
9f26d1a14e Timeline: Fix documentation of return value 2011-01-10 11:12:38 +01:00
Thibault Saunier
ba5770993f GESFormatter: Add private instance and move private variables to it 2011-01-08 22:45:44 +01:00
Thibault Saunier
98b51d8cd1 TimelineFileSource: Create instance private and move private variables to it
Fixe/Add getter and setters methods for those variables

Fixup documentation
2011-01-08 22:45:44 +01:00
Thibault Saunier
3d6764d6e9 Timeline: Add instance private and Move private variables to it
Fixe/Add getter methods to get those variables

Fixup documentation
2011-01-08 22:45:44 +01:00
Thibault Saunier
e793cb6f9c TimelineTestSource: Move private variables to instance private
Fixe/Add getter and setter methods for those variables

Fixup documentation
2011-01-08 22:45:44 +01:00
Thibault Saunier
59c5cdfb33 TimelineTextOverlay: Move private variables to instance private
Fixe/Add getter and setter methods for those variables

Fixup documentation
2011-01-08 22:45:36 +01:00
Thibault Saunier
595e6434cb TimelineTitleSource: Move private variables to instance private
Fixe/Add getter and setters methods for those variables

Fixup documentation
2011-01-08 22:37:52 +01:00
Thibault Saunier
b8493f8896 TrackAudioTestSource: Move private variables to instance private
Add getter methods to get those variables

Fixup documentation
2011-01-08 22:32:53 +01:00
Thibault Saunier
5c757c1093 TrackAudioTransition: : Move private variables to instance private 2011-01-08 22:32:53 +01:00
Thibault Saunier
e042aa30e4 TrackTextOverlay: Move private variables to instance private
Add getter methods to get those variables

Add/Fixup documentation
2011-01-08 22:32:53 +01:00
Tim-Philipp Müller
9637de0afd gobject-introspection: fix g-i build for uninstalled setup
Requires gst-plugins-base git (> 0.10.31.2) to actually work.
2011-01-08 01:36:13 +00:00
Edward Hervey
e6f5bc0f13 enums: Fix transition enum
Leftovers from when we were using the old name
2011-01-06 12:06:24 +01:00
Edward Hervey
7c255ff247 TrackTitleSource: Move private variables to instance private
Add getter methods to get those variables

Add/Fixup documentation
2011-01-06 12:04:53 +01:00
Edward Hervey
fec797f298 TimelinePipeline: Fix thumbnail method docs and arguments
The provided gchar* aren't modified
2011-01-06 11:30:26 +01:00
Edward Hervey
2d9f03fde0 TrackVideoTestSource: Move private data to instance private
Add a getter for the pattern

Document methods
2011-01-06 11:29:44 +01:00
Edward Hervey
58afc44fd7 TrackVideoTransition: Move private variable to instance private
Also add/fixup methods to get/set the transition type and document them.
2011-01-06 11:21:51 +01:00
Edward Hervey
c8dc8973b0 TimelinePipeline: Updates for pbutils API change 2011-01-06 10:55:06 +01:00
Edward Hervey
1dcc4b56bc GESTrackAudioTransition: Fix empty if() body 2010-12-21 15:24:26 +01:00
Edward Hervey
74d41ef414 GESTimelinePipeline: Fix usage of encodebin
The property name is now avoid-reencoding
2010-12-20 19:09:48 +01:00
Edward Hervey
785c9d9253 GESTimeline: minor cleanup 2010-12-20 12:03:48 +01:00
Edward Hervey
1450d539d4 GESTimelineObject: Subclass from GInitiallyUnowned
The floating reference will be owned by the Layer
2010-12-20 12:03:48 +01:00
Edward Hervey
11887e0058 GESTimelineLayer: Subclass from GInitiallyUnowned
The floating reference will be owned by the Timeline
2010-12-20 12:03:48 +01:00
Edward Hervey
752e6cfb75 GESTrackObject: Subclass from GInitiallyUnowned
The floating reference will be owned by the Track
2010-12-20 12:03:48 +01:00
Edward Hervey
c90f399bfb TimelineObject: Hold a reference to the controlled TrackObject 2010-12-20 12:03:48 +01:00
Edward Hervey
05df4ec7b6 GES*Object: only use g_object_notify_by_pspec if available 2010-12-17 11:27:37 +01:00
Edward Hervey
a96a483fae GESTrackObject: Remove unused quarks 2010-12-17 11:27:23 +01:00
Edward Hervey
c568efb663 GESSimpleTimelineLayer: reverting const-ification 2010-12-16 19:37:06 +01:00
Brandon Lewis
82e4d95a28 GESSimpleTimelineLayer: add _index() method 2010-12-16 19:37:06 +01:00
Edward Hervey
e970c86753 GESTimelineObject: Add mapping/offset support [start/priority properties]
Allows moving independently (or not) timelineobjects and trackobjects and
have them synchronized with the offsets taken into account.

Right now only the start and priority properties are synchronized. The duration
and in-point properties will require more thoughts.
2010-12-16 19:29:14 +01:00
Edward Hervey
73209e1f21 GESTrackObject: priority offset is handled by the TimelineObject 2010-12-16 19:24:25 +01:00
Edward Hervey
411ac1cb99 GESTrackObject: re-factor property setting code
And make sure notifications are emitted at the right time
2010-12-16 19:23:20 +01:00
Edward Hervey
e6aeb97040 GESTrackObject: Add a 'locked' property for position synchronization
And update all code using it
2010-12-16 16:27:26 +01:00
Edward Hervey
8ca6f66f4c GESTrackObject: Hide more variables and provide accessors for them 2010-12-16 15:00:46 +01:00
Edward Hervey
4028baaa5b GESTimeline: Remove useless variable 2010-12-16 12:46:48 +01:00
Edward Hervey
5a170091e6 GESTimelineLayer: Hide the object list and priority
Add needed setters/getters
2010-12-16 12:41:26 +01:00
Edward Hervey
3eadc4aa31 ges: Add more documentation and annotations
This should make GES gobject-introspection compliant now.
2010-12-15 19:40:11 +01:00
Edward Hervey
7146c33617 TimelineObject: Put more function name in sync with others 2010-12-15 19:18:42 +01:00
Edward Hervey
7ef6f365d9 GESSimpleTimelineLayer: _nth() returns a const
The refcount isn't incremented.
2010-12-15 19:18:16 +01:00
Edward Hervey
ed6b2ce4c4 GESTrack: Make more properties private
And ensure exported symbols are properly documented and have
argument checking.
2010-12-15 19:05:48 +01:00
Brandon Lewis
c60a4b5734 GESSimpleTimelineLayer: ensure the object can be located before "object-added"
fires
2010-12-15 18:01:33 +01:00
Brandon Lewis
7bb28f0a6a GESSimpleTimelineLayer: add _nth() method 2010-12-15 18:01:33 +01:00
Edward Hervey
132cb68ab2 all: add/extend more .gitignore 2010-12-15 15:52:03 +01:00
Edward Hervey
ecc168c13c ges: Don't shorten symbol names
It wasn't making us gain anything, and confuses the hell out of g-ir-scanner.
2010-12-15 13:27:39 +01:00
Edward Hervey
122d3cda02 ges: Add gobject-introspection support 2010-12-15 12:58:26 +01:00
Edward Hervey
4c63aa21f2 ges: Switch to encoding-profile API from base
Remove dependency on gst-convenience.
2010-12-15 12:38:03 +01:00
Edward Hervey
5f6dadab77 GESTrackObject: Make base_priority/priority-offset a private field 2010-12-14 17:38:55 +01:00
Edward Hervey
3912245f87 GESTrackObject: Add create_element vmethod
API: GESTrackObjectClass::gnlobject_factorytype
API: GESTrackObjectClass::create_element

Most track objects are only specific by the contents of the gnlobject,
therefore move the 'create_element' vmethod which was already present
in some subclasses to the top-level class.

Also make the code more robust
2010-12-10 12:26:44 +01:00
Edward Hervey
8389feb971 GESTrackTransition: Make it a subclass of GESTrackOperation 2010-12-10 12:14:32 +01:00
Edward Hervey
7a098a423d GESTimelineSource: Remove textoverlay properties
This will be made more generic by allowing any overlay/effect to
be put on any source object.
2010-12-09 19:36:44 +01:00
Edward Hervey
ef7eb9efdd GESTransition: Make it a base class and add GESTimelineStandardTransition
This is to ensure people can create their own Layer Transition subclass.

API : GESTimelineTransition is now GESTimelineStandardTransition
2010-12-09 17:09:11 +01:00
Edward Hervey
36e165e190 ges: Make some classes abstract with G_DEFINE_ABSTRACT_TYPE 2010-12-09 15:21:10 +01:00
Edward Hervey
eb4cf96b29 ges: Avoid leaking a GList of GESTrackObject 2010-12-09 15:13:27 +01:00
Edward Hervey
237ea89aa7 ges: Remove unused GObject vmethods 2010-12-09 15:12:34 +01:00
Edward Hervey
d8b2781ddc GESTimelineOperation: New abstract class for operations
This is a new class for all timeline objects that both produce and
consume data.

The existing subclasses of it are now:
* GESTimelineOverlay
* GESTimelineTransition
2010-12-09 14:25:22 +01:00
Edward Hervey
f352404159 GESTimelineObject: Clarify usage of create_track_object(s) by subclasses 2010-12-09 12:53:07 +01:00
Edward Hervey
a98b77a648 GESTimelineSource: Remove empty create_track_object vmethod
The parent class will check if it is present or not, and call
track_objects if needed.
2010-12-09 12:52:15 +01:00
Edward Hervey
fd44f95618 GESFormatter: Hide the save/load vmethod from the docs
We need to deprecated them before API/ABI freeze
2010-12-09 12:46:27 +01:00
Edward Hervey
218bd56866 ges: Remove creators for base classes 2010-12-08 16:11:55 +01:00
Edward Hervey
8cef09279a GESTimelineSource: Remove _new() since it's a base class 2010-12-08 15:48:55 +01:00
Edward Hervey
faec1e803d docs: A round of updates 2010-12-08 15:36:55 +01:00
Thibault Saunier
dfeb7afe85 GESTimelineObject: add private structure 2010-12-08 13:00:21 +01:00
Thibault Saunier
7fc3be7d44 GESSimpleTimelineLayer: add private structure 2010-12-08 13:00:15 +01:00
Thibault Saunier
4c91a36f9a ges: Add instance private structures 2010-12-08 12:54:02 +01:00
Thibault Saunier
8d19b737d8 GESTimelinePipeline: add a private structure 2010-12-08 12:53:59 +01:00
Thibault Saunier
a66d8eaf16 GESCustomTimelineSource: add private structure 2010-12-08 12:53:59 +01:00
Thibault Saunier
4add2937de SimpleTimelineLayer: Remove bogus check and extend unit test to validate it 2010-12-02 11:55:44 +01:00
Edward Hervey
849d6ab872 ges: Add padding to all public structures
This will give us margin for API expansion without breaking ABI.

The ABI restriction will only come in place once we do the first
official release (i.e. 0.x.0).
2010-11-29 13:24:13 +01:00
Edward Hervey
3a9e4cdd74 Formatter: Extend and fixup documentation 2010-11-27 18:12:49 +01:00
Edward Hervey
2ff3d8ce12 Timeline: Add doc and more comments/fixmes 2010-11-27 18:12:49 +01:00
Edward Hervey
1da6d7a5dd GESTimeline: Prevent saving timelines without any layers 2010-11-27 18:12:49 +01:00
Edward Hervey
7176c26810 TimelineLayer: Add debug statement regarding priorities 2010-11-27 18:12:49 +01:00
Brandon Lewis
cc3634e18c GESFormatter: fix a few typos in documention 2010-11-27 18:08:20 +01:00
Brandon Lewis
33bc336a11 GESTimeline: add more fixmes 2010-11-27 18:08:20 +01:00
Brandon Lewis
39088c8f58 GESKeyFileFormatter: use ges_formatter_get/set data 2010-11-27 18:08:20 +01:00
Brandon Lewis
0ce5053ac4 GESFormatter: Add data-related methods 2010-11-27 18:08:20 +01:00
Brandon Lewis
9f1dc7709a GESKeyFileFormatter: New GKeyFile GESFormatter 2010-11-27 18:08:20 +01:00
Brandon Lewis
27481c3c26 GESTimeline: implementation of save_to/load_from uri 2010-11-27 18:08:19 +01:00
Brandon Lewis
124100b957 GESFormatter: Project file format support 2010-11-27 18:07:46 +01:00
Brandon Lewis
abce2912b8 GESTimeline: set track state to NULL before removing from timeline 2010-11-27 17:55:50 +01:00