Commit graph

1157 commits

Author SHA1 Message Date
Alexandru Băluț
df93acc581 ges-pipeline: Rename add_timeline to set_timeline
API BREAKAGE:
        - ges_pipeline_add_timeline
        + ges_pipeline_set_timeline
2014-02-04 14:17:47 +01:00
Thibault Saunier
f76000d750 uri-asset: Let a chance for user to change URI if the set one is not readable
It sounds like the most logical thing to do in that case.

https://bugzilla.gnome.org/show_bug.cgi?id=721111
2014-02-04 13:53:34 +01:00
Thibault Saunier
f4ce6dcab7 videosource: Always add a deinterlace at the beining of videosrcbin
It might be needed in some cases (for example when decoding prores files) and
it is the way it is done with playbin now. Also deinterlace now properly supports
passtrough mode.
2014-02-04 13:53:34 +01:00
Thibault Saunier
94dbf20400 ges-asset: Do not forget to give a ref to the registry
+ Add test in the testsuite
+ Fix broken tests

https://bugzilla.gnome.org/show_bug.cgi?id=721111
2014-01-30 22:27:54 +01:00
Mathieu Duponchelle
105d901c12 track-element: clamp interpolated keyframe values. 2014-01-10 18:40:37 +01:00
Thibault Saunier
14a2f5943d base-xml-formatter: Emit 'loaded' right after a project with empy timeline is loaded
https://bugzilla.gnome.org/show_bug.cgi?id=720040
2013-12-27 10:14:20 +01:00
Thibault Saunier
d00283f309 track-element: Remove constructors for TrackElement from the API
Most of the time the user should not create GESTrackElements
himself, instead he should add a GESAsset to a layer, that will
result in a clip creation and the proper TrackElements to be
created and added to the tracks.

The case of effects and overlays is a bit different as the user should
create the TrackElement and add them to a clip.
2013-12-27 10:14:19 +01:00
Thibault Saunier
b774783af8 ges: Remove versionning infos now that we start on the 1.X API serie
They are now meaningless, all the current symbols are the basic
ones for the 1.X serie.
2013-12-27 10:14:19 +01:00
Thibault Saunier
35cefaad1b ges: Add padding for API extension where missing 2013-12-27 10:14:19 +01:00
Thibault Saunier
289b04f170 ges: Reimplement 'always create a project to back a timeline'
Keeping it simple, and making sure everything is synchronous
2013-11-28 15:47:50 -03:00
Thibault Saunier
6e9e9338ae Revert "ges: Always create a project to back a timeline"
This reverts commit 59d83f1a93.

Conflicts:
	tests/check/ges/backgroundsource.c
	tests/check/ges/effects.c
	tests/check/ges/overlays.c
	tests/check/ges/simplelayer.c
	tests/check/ges/text_properties.c
	tests/check/ges/titles.c
2013-11-28 15:12:15 -03:00
Thibault Saunier
99a36b2b69 timeline: Add all assets of the clip added to the timeline to the project 2013-11-25 15:18:24 -03:00
Thibault Saunier
e7a45f0eef Remove GESSimplerLayer, that API should land into GESLayer in the end
The priority handling of clip is now handled by GESLayer itself, and
handling clip as a ordered list should be implemented in GESLayer itself
too, this way the user can decide to switch mode at any time instead of
2013-11-22 17:50:27 -03:00
Thibault Saunier
04071e7214 layer: Set clip start to the duration of the layer if == TIME_NONE
In the provided start of a clip is GST_CLOCK_TIME_NONE in
ges_layer_add_asset, it means that we want the clip to be
added at the end of the layer
2013-11-22 17:50:27 -03:00
Thibault Saunier
4c411761fd layer: Add an API to get the total duration of the layer
API:
    ges_layer_get_duration
2013-11-22 17:50:27 -03:00
Lubosz Sarnecki
7b1df27c86 gir: fix warnings 2013-11-22 17:50:27 -03:00
Thibault Saunier
a73644a7b9 video-uri-source: Handle interlaced videos
https://bugzilla.gnome.org/show_bug.cgi?id=710168
2013-11-19 12:37:23 -03:00
Thibault Saunier
371740ecdf framepositionner: Fix the range of properties dealing with number of pixels
This way it is possible to interpolate those values.
2013-11-09 10:35:13 -03:00
Thibault Saunier
59d83f1a93 ges: Always create a project to back a timeline
And fix all the tests as we need to wait for the project to be loaded
to check the reference count of the timeline (as we keep a ref on the
timeline in project to later emit "loaded" on idle).
2013-11-09 10:35:12 -03:00
Kishore Arepalli
5a5228a25a ges: Fix several memory leaks
https://bugzilla.gnome.org/show_bug.cgi?id=710390
2013-10-31 23:11:23 +01:00
Mathieu Duponchelle
219154eacb track-element: add start to the position to which we wish we split the bindings.
The bindings split is relative to the beginning of the clip.
2013-10-30 12:09:52 -03:00
Thibault Saunier
0e35a68aa6 clip: Fix the find_track_element method
What we want is to be able to find a TrackElement by its type, and
possibly specify a Track where to look into.
2013-10-29 17:31:06 -03:00
Kishore Arepalli
71a6d75d75 ges-formatter: don't use 'class' as function argument name in headers
It's a keyword in C++ and C++ compilers won't like it.

https://bugzilla.gnome.org/show_bug.cgi?id=710172
2013-10-15 10:49:50 +01:00
Thibault Saunier
ee36beb244 uri-asset: Check if file exists before trying it as a proxy
This avoids:

  1- discovering file that we know do not exist
  2- proposing the current proxy path (that failed) as a possible proxy
     which lead to errors
2013-10-11 17:09:46 -03:00
Thibault Saunier
35acbae033 formatter: Try to use best formatter first 2013-10-09 20:25:47 -03:00
Thibault Saunier
d77f260f9e audiosource: Add audioconvert and audioresample before the volume element
https://bugzilla.gnome.org/show_bug.cgi?id=709777
2013-10-09 20:08:03 -03:00
Mathieu Duponchelle
fb6aabfe4d timeline: pass the correct argument to disconnect_by_func.
fixes #709205
2013-10-02 21:17:56 +02:00
Thibault Saunier
ca562ba8a0 clip: Return the newly created TrackElement when adding an asset
This is a minor API change
2013-09-28 18:09:49 +02:00
Thibault Saunier
002977cd85 timeline: Add a signal to know when it is commited 2013-09-28 15:42:20 +02:00
MathieuDuponchelle
1c389d6af3 clip: split_bindings at position * + inpoint* 2013-09-28 02:44:06 +02:00
MathieuDuponchelle
e6f82c68e5 video-track: update gaps framerate along with restriction caps. 2013-09-28 02:44:06 +02:00
MathieuDuponchelle
1fac84c7b9 xml-formatter: add support for restriction caps. 2013-09-25 23:54:49 +02:00
Simon Corsin
3970e2fac7 video-source: Add a videorate in video-source.
And control it in framepositionner.

Conflicts:
	ges/ges-video-source.c
2013-09-25 23:54:49 +02:00
Thibault Saunier
efb638efe8 pipeline: Let some queuing in encodebin
It is sometimes necessary
2013-09-22 23:06:22 +02:00
Thibault Saunier
7b96c50b4e examples: Make project loading more generic
Pitivi formatter is deprecated, do not use it by default
2013-09-22 23:06:22 +02:00
Thibault Saunier
c0eae0c790 Revert "ges: Disable the Pitivi formatter"
This reverts commit e54ceff720.

Let's just keep it... it does not cost anything.
2013-09-22 23:06:22 +02:00
Thibault Saunier
ec28489b84 formatter: Keep timeline duration as a meta 2013-09-13 20:37:58 -03:00
Thibault Saunier
f661c3ea55 ges-launch: Make it possible to provid pathes to look for moved asset
For example if a project was sent from someone else thus the pates in
there are meaningless on the other computer, we need to be able
to specify a list of pathes where the files are.

+ Fix documentation
2013-09-12 19:07:58 -03:00
Kishore Arepalli
6c993d36ba ges-pipeline: Don't unref buffer obtained from a GstSample
https://bugzilla.gnome.org/show_bug.cgi?id=707914
2013-09-12 09:06:27 +02:00
Thibault Saunier
0daf523dfd pipeline: Create it through a factory
Making it possible to use it with GstValidate LD_PRELOAD feature
2013-09-09 12:51:06 -03:00
Thibault Saunier
0d0fc767ee pipeline: Finnish renaming from GESTimelinePipeline 2013-09-09 12:47:02 -03:00
Thibault Saunier
9c77d52f30 timeline: Make sure we do not move object when only trimming
We were missing a few checks so that we do not move objects when their
duration is equal to the max duration, or 0
2013-09-08 19:19:24 -03:00
Thibault Saunier
c47c115dd1 timeline: Avoid setting duration > max_duration when rippling
We should use the trimming method to set duration to make sure to avoid
going over the max duration.

Also avoid computing when setting duration to the same old value.
2013-09-07 12:59:17 -04:00
Thibault Saunier
c4c26f8748 ges: Handle trimming in groups
This was broken, clips where moving all around, make it behave properly.
2013-09-07 12:55:58 -04:00
Thibault Saunier
c74aee5fdc timeline: Make ripple start be trimming
This is a more natural behaviour as a user instead of doing nothing at
all.
2013-09-07 02:10:12 -04:00
Thibault Saunier
2f03a5df25 ges: Make GESAudioSource and GESVideoSource abstract 2013-09-03 20:57:31 -04:00
Mathieu Duponchelle
17122c44fb gstframepositionner: correctly tag metadata.
We do not use GST_VIDEO_META_TAG_STR as it would mean depending on
GstVideo which is not the case right now
2013-09-03 20:57:31 -04:00
Thibault Saunier
9ed5803323 videosource: Make sure to update z-order when layer priority changes
Conflicts:
	ges/ges-video-source.c
2013-09-03 20:57:31 -04:00
Thibault Saunier
9fa99df5a7 timeline-element: Add a set_parent vmethod
API:
        GESTimelineElment->set_parent vmethod
2013-09-03 20:57:31 -04:00
Simon Corsin
93de0baf96 videotransition: No need to hard set width and height anymore. 2013-09-03 20:57:31 -04:00