Commit graph

3371 commits

Author SHA1 Message Date
Thibault Saunier
a3a4fb1a3d ges:validate: Allow setting keyframes using the clips directly
Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-editing-services/-/merge_requests/204>
2020-07-31 21:36:43 -04:00
Thibault Saunier
c834ce5bc4 ges-source: Ensure that we output stream with segments in time
Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-editing-services/-/merge_requests/198>
2020-07-30 18:44:13 -04:00
Thibault Saunier
8c622b18f6 pipeline: Restrict the presence only if the user didn't explicitly provided one
Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-editing-services/-/merge_requests/198>
2020-07-30 18:44:13 -04:00
Thibault Saunier
e6683f0c19 timeline: Add a simplified version of track selection signal
Most user do not need to select several tracks for a single
TrackElement and this signal is not binding friendly so
this is adding a simpler, more user and binding friendly version

Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-editing-services/-/merge_requests/198>
2020-07-30 18:44:13 -04:00
Thibault Saunier
3a32247630 uri-source: Respect user stream selection
Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-editing-services/-/merge_requests/198>
2020-07-30 18:44:13 -04:00
Thibault Saunier
981a027ecd launch: Also print the position when disabling validate
Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-editing-services/-/merge_requests/198>
2020-07-30 18:44:13 -04:00
Thibault Saunier
150e58af47 launch: Print more useful information to stdout
Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-editing-services/-/merge_requests/198>
2020-07-30 18:44:13 -04:00
Thibault Saunier
e291383237 build: Add an option to disable examples
And make it yield as in other modules

Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-editing-services/-/merge_requests/198>
2020-07-30 18:44:13 -04:00
Thibault Saunier
3a6530a127 launcher: Re activate smart rendering support
Trying to get the best encoding profile for smart rendering when
the user didn't specify anything.

Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-editing-services/-/merge_requests/198>
2020-07-30 18:44:13 -04:00
Thibault Saunier
6f7d4ac525 ges: Fix smart rendering
Smart rendering has been broken since, mostly forever, but some code
was there pretending it was supported... let's try to stop pretending.

We now keep track of the smart rendering state in the timeline, track
and sources to be able to:

 * tell decodebin to stop plugging more (decoding elements) as soon as
   downstream supports the format.

 * avoid plugging converters after the source element when smart
   rendering.

Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-editing-services/-/merge_requests/198>
2020-07-30 18:44:13 -04:00
Thibault Saunier
1ae290ec42 validate: Pipe debug output to a file when discovering scenarios
Otherwise `gst-validate-launcher` can get veeery noisy

Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-editing-services/-/merge_requests/198>
2020-07-30 18:44:13 -04:00
Thibault Saunier
fc7faf6a03 nle: Minor debug enhancement
Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-editing-services/-/merge_requests/198>
2020-07-30 18:44:13 -04:00
Thibault Saunier
879a4727ea tests: Mark audio identity as audio
Otherwise GES fallbacks to video...

Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-editing-services/-/merge_requests/198>
2020-07-30 18:44:13 -04:00
Henry Wilkes
c2532a48c2 pipeline: stop setting the track caps
Stop setting the track 'caps' property. The previous code could
overwrite a users own setting of the caps for video and audio caps.
Moreover, the 'caps' property is listed as construct only, and users
will likely expect it to stay the same after a track has been added to a
timeline.

Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-editing-services/-/merge_requests/198>
2020-07-30 18:44:13 -04:00
Thibault Saunier
5bb0b46809 launcher: Delay setting rendering setting to right before rendering
So that user settings have been applied to the timeline taking into
account any `validatetest` arguments

Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-editing-services/-/merge_requests/198>
2020-07-30 18:44:13 -04:00
Thibault Saunier
bf0265ad71 source: Refactor the way we plug converter elements
Paving the way to skipping converters when rendering smartly

Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-editing-services/-/merge_requests/198>
2020-07-30 18:44:13 -04:00
Thibault Saunier
09a6900d55 pipeline: Do not name urisink as urisink as it is useless
And actually harmful in case you are debugging several pipelines.

Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-editing-services/-/merge_requests/198>
2020-07-30 18:44:13 -04:00
Thibault Saunier
cc490854b5 pipeline: Remove urisink from timeline instead of unrefing it
Doing what was suggested in the FIXME and avoiding to unref
something it while we do not actually own it ourself.

Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-editing-services/-/merge_requests/198>
2020-07-30 18:44:13 -04:00
Thibault Saunier
0b05bb6587 pipeline: Discard encoding profiles that don't match any track
Otherwise we get a 'not linked' error and we should just help
the user as we can here.

If the user adds a new track, he should set a new encoding profile
anyway.

Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-editing-services/-/merge_requests/198>
2020-07-30 18:44:13 -04:00
Thibault Saunier
834345b1c8 uri*source: Factor out common logic into a GESUriSource private data
The two classes are *very* close but have different hierarchy so this
introduces a new GESUriSource structure that is used as private
structure by both subclasses and makes most of the logic shared this
way.

Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-editing-services/-/merge_requests/198>
2020-07-30 18:44:13 -04:00
Thibault Saunier
135707290e *uri-source: Call free from the object ->finalize not ->dispose
Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-editing-services/-/merge_requests/198>
2020-07-26 20:34:58 -04:00
Tim-Philipp Müller
a1d5282ba7 meson: install bash completion helper for ges-launch-1.0
Fixes #77

Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-editing-services/-/merge_requests/203>
2020-07-26 09:42:49 +00:00
Tim-Philipp Müller
2cd8e6d0db meson: add 'tools' and 'examples' options
To optionally disable build of those.

Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-editing-services/-/merge_requests/203>
2020-07-26 09:42:49 +00:00
AsociTon
9f202a0a72 Fix retrieving asset metadata on project reload.
Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-editing-services/-/merge_requests/202>
2020-07-25 08:28:44 +05:30
yatinmaan1@gmail.com
697102fbf3 tests: Add test for ges_clip_get_top_effect_index
Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-editing-services/-/merge_requests/201>
2020-07-24 15:28:14 +05:30
Guillaume Desmottes
30e9133cfa tests: clip: fix test_rate_effects_duration_limit
Fix this assertion:
g_value_copy: assertion 'g_value_type_compatible (G_VALUE_TYPE (src_value), G_VALUE_TYPE (dest_value))' failed

'tempo' is a float, not a double.

Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-editing-services/-/merge_requests/199>
2020-07-14 10:20:32 +02:00
Thibault Saunier
50616ad293 build: Add version.h to the headers list
So it is properly installed and the gir contains the required information

Fixes https://gitlab.freedesktop.org/gstreamer/gst-editing-services/-/issues/75

Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-editing-services/-/merge_requests/197>
2020-07-10 08:21:11 -04:00
Thibault Saunier
6938800bc8 pitivi-formatter: Also skip the class 2020-07-09 21:43:33 -04:00
Tim-Philipp Müller
3a291cf450 meson: set release date from .doap file for releases
Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-editing-services/-/merge_requests/196>
2020-07-08 17:33:07 +01:00
Thibault Saunier
2c30962172 title: Make deprecated symbols visible API
Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-editing-services/-/merge_requests/195>
2020-07-08 10:03:43 -04:00
Tim-Philipp Müller
34b6dfd9bf Back to development 2020-07-03 02:04:08 +01:00
Tim-Philipp Müller
aed1959f87 Release 1.17.2 2020-07-03 00:35:20 +01:00
Mathieu Duponchelle
734c3ebb0a docs: fix links 2020-06-23 18:37:12 +02:00
Mathieu Duponchelle
eada034a5b plugins_cache: add base classes 2020-06-23 12:09:12 -04:00
Mathieu Duponchelle
9dc7443f72 meson: mark plugins cache target as always stale 2020-06-23 12:09:12 -04:00
Mathieu Duponchelle
1094b89c3d docs: mark more types as plugin API 2020-06-23 12:09:12 -04:00
Thibault Saunier
ae2cb7d0f5 doc: Stop documenting properties from parents 2020-06-23 12:09:12 -04:00
Sebastian Dröge
361c638d74 smart-video-mixer: Don't call gst_ghost_pad_construct() anymore
It's deprecated, unneeded and doesn't do anything anymore.

Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-editing-services/-/merge_requests/192>
2020-06-22 12:34:20 +03:00
Tim-Philipp Müller
5bcf0e079a Back to development 2020-06-20 00:28:31 +01:00
Tim-Philipp Müller
f14c2ea9d5 Release 1.17.1 2020-06-19 19:25:58 +01:00
Thibault Saunier
fe49c80c8d ges: Add all missing Since markers from 1.16 onward
Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-editing-services/-/merge_requests/191>
2020-06-19 11:13:24 -04:00
Thibault Saunier
c05f9b1d5e asset: Do not try to update proxies when we are in a proxying loop
This is a regression introduced in
c12b84788d, this commit simply brings back
the previous behavior.

Fixes https://gitlab.freedesktop.org/gstreamer/gst-editing-services/-/issues/113

Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-editing-services/-/merge_requests/185>
2020-06-17 20:45:40 +00:00
Thibault Saunier
c09de963be ges: Refactor the way we plug converters in effects
Stopping to do it at the bin description level but properly
plugging them where they are needed and cleanly ghosting the pads
where it makes most sense.

This introduces support for GES to request pads on the most upstream
element in case no static pad can be ghosted.

Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-editing-services/-/merge_requests/187>
2020-06-17 10:48:41 -04:00
Thibault Saunier
c217346fa0 structured-interface: Add support for setting effects inpoint
Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-editing-services/-/merge_requests/187>
2020-06-16 18:21:01 -04:00
Thibault Saunier
f070373def track-element: Make set_has_internal_source return a boolean
Telling the user if it is legal to have an internal source in that
particular GESTrackElement.

Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-editing-services/-/merge_requests/187>
2020-06-16 18:21:01 -04:00
Thibault Saunier
ba6c842831 pipeline: doc: Add a note about trying to render before setting rendering settings
Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-editing-services/-/merge_requests/189>
2020-06-16 15:49:41 -04:00
Thibault Saunier
9e0fbe964f uri-clip: Add a warning about synchronous uri discovery
Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-editing-services/-/merge_requests/189>
2020-06-16 15:49:41 -04:00
Thibault Saunier
4fd1bb8163 docs: Update plugins cache 2020-06-09 15:22:30 -04:00
Thibault Saunier
5c22bf0e42 docs: Update plugins cache 2020-06-09 08:50:37 -04:00
Guillaume Desmottes
96d1df3cb7 tests: enforce I420 format
Tests are assuming video is I420 with a specific chroma and colorimetry
but were not actually enforcing it.
Fixes needed as I420 will no longer be the first video format, see
gst-plugins-base!689

Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-editing-services/-/merge_requests/184>
2020-06-08 13:10:54 +02:00