Commit graph

51 commits

Author SHA1 Message Date
Thibault Saunier
9b14c001b0 ges: Implement GESAudioTrack and GESVideoTrack, subclasses of GESTrack 2013-06-23 17:38:57 -04:00
Sebastian Dröge
e7c748a7f2 ges-pitivi-formatter: Remove some unneeded includes and clean up includes
Fixes the build on Windows, where there's no unistd.h... which wasn't
needed at all.

https://bugzilla.gnome.org/show_bug.cgi?id=701115
2013-05-28 08:51:08 +02:00
Thibault Saunier
b2b96c743d Rename GESTimelineLayer to GESLayer 2013-04-23 20:22:31 -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
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
811e68811c Changing remaining clip::track-element-added to container::child-added 2013-03-30 15:40:38 +01: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
7943bb510a ges: Make GESTimeline responsible for adding GESTrackElement to GESTrack
+ Fix tests as necessary (Do not use agingtv as it can be "applied" on any TrackType
    	   and is not representative of what happens IRL)

We already had the infrastructure so the user can have the control over where to add
the elements (through the "select-track-for-object" signal). We now make use of that
signal everytime a GESClip is added to a GESTimelineLayer. This make user's life easier,
and object responsability clearer.
2013-03-15 00:13:09 -03:00
Thibault Saunier
795b8df1b6 Implement GESContainer
+ Fix unit tests
  + Minor enhancement in unit tests

API changes:
-----------
  * ges_track_element_get_clip     -> ges_timeline_element_get_parent
  * ges_clip_add_track_element     -> ges_container_add
  * ges_clip_release_track_element -> ges_container_remove
  * ges_clip_get_track_elements    -> ges_container_get_children
                                      (or GES_CONTAINER_CHILDREN)
2013-03-15 00:13:08 -03:00
Thibault Saunier
0888e5e25b Rename object/tobj/trobj to clip or track_element as necessary
Not really complete but it is a good start!
2013-02-15 16:26:30 -03:00
Thibault Saunier
7f3c952737 Finish renaming tck_obj and derivate to track_element 2013-02-15 15:23:16 -03:00
Thibault Saunier
d21791a8d0 Rename GESTimelineLayer.xxx_object to GESTimelineLayer.xxx_clip 2013-02-15 15:23:15 -03:00
Thibault Saunier
ec1db99266 track: Rename all GESTrack.xxx_object to GESTrack.xxx_element 2013-02-15 15:23:15 -03:00
Thibault Saunier
4ddcfb642d Finish renaming timeline object to clip 2013-02-15 15:23:15 -03:00
Thibault Saunier
b4e1131b70 Finish renaming track object to track element 2013-02-15 15:23:15 -03:00
Thibault Saunier
28e86cbc6c pitiviformatter: Fix renaming issues 2013-02-15 14:42:07 -03:00
Thibault Saunier
e24cccabfd Rename GESTrackParseLaunchEffect to GESEffect 2013-02-15 14:42:05 -03:00
Thibault Saunier
5da8fa89e2 Rename TrackEffect to BaseEffect 2013-02-15 14:42:05 -03:00
Thibault Saunier
d69964fd2a Rename GESTrackObject to GESTrackElement 2013-02-15 14:42:05 -03:00
Thibault Saunier
695c381bb1 Rename GESTimelineFileSource to GESUriClip
Conflicts:
	ges/ges-pitivi-formatter.c
	ges/ges-uri-clip.c
	tests/check/ges/project.c
	tests/check/ges/uriclip.c
2013-02-15 14:42:02 -03:00
Thibault Saunier
04a3c49ebd Rename GESTimelineObject to GESClip 2013-02-15 14:42:02 -03:00
Thibault Saunier
7f81f16674 pitiviformatter: Handle project metadatas 2013-01-14 09:02:26 -03:00
Thibault Saunier
1d397591af project: Handle assets that are being loaded
API:
    ges_project_get_loading_assets
2013-01-14 09:02:26 -03:00
Thibault Saunier
a962f07087 Refrase formatters descriptions 2012-12-29 19:38:13 -03:00
Sebastian Dröge
bc0f335734 Allow applications to select to which track a track object should be added
Modifies some  API:
    ges_timeline_object_create_track_objects now take a GESTrackType instead of a
        GESTrack as second argument, and return a GList instead of a boolean
    ges_timeline_object_create_track_object now take a GESTrackType instead of a
        GESTrack as second argument
2012-12-29 19:36:52 -03:00
Thibault Saunier
c1110f2c85 timelinefilesource: Remove deprectated methods
Removed API:
	ges_timeline_filesource_get_supported_formats
2012-12-29 19:36:50 -03:00
Thibault Saunier
66abaa40d4 formatter: Make it work with GESProject
+ Compile new GESProject code

The formatter and projects should work together, and the user will in the end not need
the GESFormatter API in most cases. Start making that happening

Update the GESPitiviFormatter to the new behaviour and remove APIs that became
obselete

API:
 + Adds:

    * Pass the GESFormatterClass to can_load/save_uri vmethods
    * Add an @overwrite argumenent to ges_formatter_save_to_uri and the
      corresponding vmethod
    * Add name, description, extension, mimetype, version, rank metadatas
      to GESFormatterClass

 + Removes:

    * ges_pitivi_formatter_set_sources:
    * ges_pitivi_formatter_get_sources:
2012-12-19 18:59:50 -03:00
Thibault Saunier
ce9aa02723 formatter: Remove obselete APIs
Removed APIs:
ges_formatter_update_source_uri
GESFormatter::source-moved
ges_formatter_update_source_uri
ges_formatter_load
ges_formatter_save
ges_formatter_set_data
ges_formatter_clear_data
ges_formatter_get_data
GESFormatterLoadMethod
GESFormatterSaveMethod

This is now GESProject's role
2012-12-19 11:45:38 -03:00
Thibault Saunier
35a3f72ad5 pitiviformatter: Some minor restrtucturation 2012-12-19 11:45:37 -03:00
Thibault Saunier
f8037f857d trackobject: Properly rename get/set_child_property
We used to have a ges_track_object_get/set_child_property that was in
fact letting user set/get various properties at once, rename it to
get/set_properties, and implement:

API:
    ges_track_object_get_child_property (GESTrackObject *object, const gchar
            *property_name, GValue * value);
    ges_track_object_set_child_property (GESTrackObject *object, const gchar
            *property_name, GValue * value);
2012-12-19 11:44:26 -03:00
Tim-Philipp Müller
426fffb6c3 Fix FSF address 2012-11-04 00:25:20 +00:00
Thibault Saunier
fbefd6dae3 pitiviformatter: Implement can_load_uri vmethod 2012-09-25 15:10:33 +02:00
Thibault Saunier
52edf1704d formatter: Add GError everywhere needed in the API
We should give as much information as possible to the user when serialization/deserialization doesn't work.
2012-09-23 02:37:12 +02:00
Thibault Saunier
b13942c5b5 formatter: Make the emit_loaded a real method and not a virtual method
+ Modify formatter subclasses accordingly

API:ges_formatter_emit_loaded

This API wasn't released so it could still be changed
2012-07-01 20:07:46 -04:00
Thibault Saunier
2d13b12878 pitivi-formatter: Make use of the Formatter:timeline protected field 2012-07-01 20:07:44 -04:00
Volodymyr Rudyi
963cce240c ges-pitivi-formatter: Fixed loading of projects with empty timeline
Because 'project-loaded' signal was triggered from track object loading
callback in case with projects that have empty timeline this signal was
never emitted.
2012-07-01 19:26:02 -04:00
Thibault Saunier
1e3e7c5276 docs: Misc documentation fixing 2012-05-19 13:57:35 -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
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
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
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
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
mathieu duponchelle
ac6f8599fe Add API to get all sources from xptv project 2012-01-11 11:56:17 -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