Commit graph

125 commits

Author SHA1 Message Date
Thibault Saunier
84f02f288e tools: Handle request state changes from GstValidate 2014-05-18 18:34:26 +02:00
Thibault Saunier
b2c8a9efb3 ges: Do not use freed pointers
COVERTY CID 1212182
COVERTY CID 1212184
COVERTY CID 1212185
2014-05-10 23:00:45 +02:00
Thibault Saunier
9184c7ed7e tool: Add the option to set audiosink
And use gst_parse_bin_from_description to create the sinks letting more
control to users.
2014-05-08 17:28:00 +02:00
Mathieu Duponchelle
6b61c29907 scenarios: update the prototype of ges_validate_activate
if validate is not present.
2014-05-08 17:11:54 +02:00
Mathieu Duponchelle
7138bfb700 ges-launch: add an option to use a custom video sink 2014-05-08 14:28:58 +02:00
Mathieu Duponchelle
324742826b validate: make sure we release our ref when we get_timeline.
Conflicts:
	tools/ges-validate.c
2014-05-08 14:28:45 +02:00
Mathieu Duponchelle
0de6ecebcf scenarios: Check priority before creating a layer. 2014-05-08 14:27:06 +02:00
Mathieu Duponchelle
171710f0c5 ges-launch: Make it so actions are executed directly when needed. 2014-05-08 14:26:49 +02:00
Mathieu Duponchelle
48f3315e9b validate: implement remove / add clip actions
And a helper to get a layer by priority
2014-05-08 14:26:45 +02:00
Mathieu Duponchelle
f16ad15ef3 ges-launch: Only create a layer if needed.
That way scenarios can start with an empty timeline
2014-05-08 14:26:38 +02:00
Mathieu Duponchelle
5d21fb74fe validate: Add add-layer and remove-layer 2014-05-08 14:26:33 +02:00
Mathieu Duponchelle
e8713bbf87 scenarios: add a remove-asset action 2014-05-08 14:26:30 +02:00
Mathieu Duponchelle
3c7b9d0ea4 ges-validate: add an add-asset action
Conflicts:
	tools/ges-validate.c
2014-05-08 14:26:16 +02:00
Mathieu Duponchelle
49a21044ca ges-launch: When a scenario is set, don't request triplets 2014-05-08 14:25:22 +02:00
Tim-Philipp Müller
10820bd41d ges-launch: remove dead code
duration can't be smaller than 0 because it's unsigned,
and it can't be 0 because 0 is transformed to CLOCK_TIME_NONE
earlier.

Coverity CID 1211822.
2014-05-05 11:58:45 +01:00
Thibault Saunier
5785178e52 tools: Add a way to look for moved media sample recursively
In ges-launch let the user set a folder where the media sample that
move can be found recursing into that specified folder.

https://bugzilla.gnome.org/show_bug.cgi?id=729382
2014-05-02 16:59:08 +02:00
Thibault Saunier
2dd59ab53a tools: Add an option to disable mixing
+ Add a a GObject property so that the info is seralized

https://bugzilla.gnome.org/show_bug.cgi?id=729382
2014-05-02 16:59:08 +02:00
Thibault Saunier
92b115d3e0 tools: Always activate gst-validate to have position printing
https://bugzilla.gnome.org/show_bug.cgi?id=729382
2014-05-02 16:58:42 +02:00
Thibault Saunier
36cc9f13ec tools: Handle times as doubles + concider duration=0 as TIME_NONE
https://bugzilla.gnome.org/show_bug.cgi?id=729382
2014-05-02 16:58:42 +02:00
Thibault Saunier
44cbc27cb8 tools: Disable --set-scenario if not compiled against gst-validate
https://bugzilla.gnome.org/show_bug.cgi?id=729382
2014-05-02 16:58:42 +02:00
Thibault Saunier
8601666a5a ges-validate: Add an action to serialize the project
https://bugzilla.gnome.org/show_bug.cgi?id=729382

Conflicts:
	tools/ges-validate.c
2014-05-02 16:58:42 +02:00
Thibault Saunier
4ce52d8a62 tools:validate: Always seek after editing a clip
Otherwize the displayed frame will not be updated when paused.

+ Add a get_timeline internal helper method in ges-validate.c

https://bugzilla.gnome.org/show_bug.cgi?id=729382
2014-05-02 16:58:42 +02:00
Thibault Saunier
9cb7d8e3e7 ges-validate: Add a GstValidate action to set children properties
https://bugzilla.gnome.org/show_bug.cgi?id=729382
2014-05-02 16:58:42 +02:00
Thibault Saunier
87e10c4478 tools:validate: Add an action to allow editing clips
https://bugzilla.gnome.org/show_bug.cgi?id=729382
2014-05-02 16:30:08 +02:00
Thibault Saunier
3197a02487 tools: Position printing is now done at the gst-validate level
https://bugzilla.gnome.org/show_bug.cgi?id=729382
2014-05-02 14:34:00 +02:00
Thibault Saunier
fe69b92455 ges-launch: Not being able to load an asset is an error 2014-03-26 11:45:07 +01:00
Thibault Saunier
1108a2c6ac ges-launch: Format the position printing as in gst-validate and friends 2014-03-20 17:25:53 +01:00
Thibault Saunier
95126cd0ef ges-launch: Play nicely with gst-validate if avalaible 2014-03-20 17:25:53 +01:00
Thibault Saunier
98e1977633 ges-launch: Add a way to mute test video and audio output 2014-03-20 17:25:53 +01:00
Thibault Saunier
fa742de968 ges-launch: Properly handle project loading
So we start the pipeline only when the project is done loading, and we save it when it is
loaded, taking into account possible media URI updates.
2014-03-20 17:25:53 +01:00
Thibault Saunier
f921277ac2 Rename TIMELINE_MODE_XXX to GES_PIPELINE_MODE_XXX so it corresponds to reality
First, it was not in any namespace, second the name of the enum is
GESPipelineFlags.
2014-02-17 12:37:57 +01:00
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
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
e5d28fa86e ges-launch: Let user set the track types to use 2013-11-14 16:17:31 -03:00
Thibault Saunier
4367933747 ges-launch: Dot the pipeline on state changes and warnings 2013-11-09 10:35:13 -03:00
Thibault Saunier
87ca058e3f ges-launch: Remember URIS that we tried to discover
So we do not fail several time trying to discover the same URI

Conflicts:
	tools/ges-launch.c
2013-10-11 17:09:34 -03:00
Thibault Saunier
2414453a0c ges-launch: Handle path for project uri 2013-09-13 20:38:43 -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
Thibault Saunier
d8cb8fec52 launch: Simplify encoding profile description
Use a 'simple' synthax to describe encoding profiles
2013-08-30 20:43:01 -04:00
Thibault Saunier
c97b9f7e04 launch: Make it easier to render project
Now providing an output uri is enough to tell that you want to render.

It will use project rendering infos when possible, missing a way to
specify which info if various are disponnible (we use the first one
right now).

+ Make options more logical now, -l mean --load, and -r means repeat
2013-08-30 20:10:47 -04:00
Lubosz Sarnecki
9f0b0c26e3 Rename GESTimelinePipeline to GESPipeline
rename ges_timeline_pipeline methods to ges_pipeline
2013-07-21 21:42:42 -04:00
Alban Browaeys
6a187e09dd ges-launch: make it portable to all locales.
Call setlocale (LC_ALL, "") as per setlocale man page
to make ges-launch portable to all locales (instead of default
"C" one).

Fixes g_option_context_parse on:
$ ges-launch-1.0 --verbose -r -q /home/prahal/Vidéos/Test3.xges -o
file:///home/prahal/Test3.mpeg
Error initializing: Invalid byte sequence in conversion input

The accentuated character in "Vidéos" the french xdg user directory
for "Videos" is what is choked upon.

https://bugzilla.gnome.org/show_bug.cgi?id=702425
2013-07-01 10:02:10 +02:00
Thibault Saunier
9b14c001b0 ges: Implement GESAudioTrack and GESVideoTrack, subclasses of GESTrack 2013-06-23 17:38:57 -04:00
Thibault Saunier
ea95cb1ee3 ges-launch: Report position while playing back
Giving more feedbacks to the user
2013-06-23 16:33:33 -04:00
Thibault Saunier
6c7b28161c ges-launch: Remove xptv formatter related code
It is not usefull anymore
2013-06-23 16:33:33 -04:00
Thibault Saunier
90f4e571ad ges-launch: Properly add UriClipAssets to the project 2013-06-23 16:33:33 -04:00
Thibault Saunier
f6038e3ad2 ges: Port to the new commit based API in GNL
The GNL API changed to go from a model where user could
enable/disable updates in the composition, which leaded to races
in many places, to a model where any positioning change in the
composition is not directly done but 'cached' and then the user
has to commit those changes so they become effective in the media
processing stack.

The new API in GES is pretty similare and is basically copy
pasting this new design.

We still need to see if in some context it would make sense to add
a mode where we would commit any changes ourself at the end of our
operation for basic use cases.

Removed APIs:
  ges_timeline_enable_update
  ges_timeline_is_updating
  ges_track_enable_update
  ges_track_is_updating

New APIs:
  ges_track_commit
  ges_timeline_commit
2013-06-23 16:33:33 -04:00
Thibault Saunier
be765f564c ges-launch: Make use of assets for uri clips
It avoids races in TrackElement creations.

We should make use of assets everywhere in ges-launch but start using
them for uriclips first for now.
2013-06-12 10:49:50 -04:00
Thibault Saunier
b2b96c743d Rename GESTimelineLayer to GESLayer 2013-04-23 20:22:31 -03:00
Thibault Saunier
70d5680748 pipeline: Add a GError argument 2013-04-18 18:48:19 -03:00