Edward Hervey
a032c1e1bd
ges-command-line-formatter: Handle transitions
...
Avoids getting a noisy g_warning
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/6683 >
2024-04-19 08:03:48 +00:00
Edward Hervey
37b60e5354
ges-timeline-tree: Fix debug statement
...
Was printing out garbage in the logs
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/6683 >
2024-04-19 08:03:48 +00:00
Thibault Saunier
a342d14ba9
ges: Add support for sources reverse playback
...
It introduces a `reverse` property at the `nlesource` level which will
basically reverse playback of the clip.
We guarantee that outside that clip, the data flow looks like it was
playing forward as we add an 'identity' element with `single-segment=true`.
This start making use of the newly introduced concept of
`CHILD_PROP_FLAG_SET_ON_ALL_INSTANCES` as it is natural that
doing `source_clip.set_child_property("reverse", True)` will make
the whole clip go reverse, meaning that all the GESSource children
properties will be set. To set an individual source "reverse" child
property as the desired effect.
Fixes: https://gitlab.freedesktop.org/gstreamer/gst-editing-services/-/issues/24
Depends on: https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/451
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/918 >
2024-04-18 00:19:31 +00:00
Thibault Saunier
526f00b07f
ges: test-clip: Fix setting children asset ids
...
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/918 >
2024-04-18 00:19:31 +00:00
Thibault Saunier
388ad9e574
validate: Add an action to group containers
...
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/918 >
2024-04-18 00:19:31 +00:00
Thibault Saunier
38d60c9f43
ges: Also track children props 'duplicates' in TimelineElement
...
We used to only track the first one but this was wrong, so we start
tracking all the children properties here, adapting the test which
was already thought for this to be implemented.
At the same time add some flags to determine how children properties
need to be handled adding a mode that means that all duplicated
children props will be set together when the user sets that particular
child property. This is going to be tested in a following commit.
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/918 >
2024-04-18 00:19:31 +00:00
Thibault Saunier
47029ca9de
ges: tools: Fix printing validate action types
...
We were not taking into account some arguments could have been eaten
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/918 >
2024-04-18 00:19:31 +00:00
Edward Hervey
a2254a4968
ges-launcher: Fix for forcing container profiles
...
If the input profile doesn't have a container, it's fine since we are overriding
it. Just add the elementary stream to the target container profile
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/6674 >
2024-04-17 16:07:47 +02:00
Tim-Philipp Müller
9e2cc83f23
ges: add check to make sure headers are C++ compiler clean
...
See https://gitlab.freedesktop.org/gstreamer/gstreamer/-/issues/3421
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/6440 >
2024-03-26 14:21:34 +00:00
Thibault Saunier
324c211283
ges: frame-composition-meta: Stop using keyword 'operator' for field in C++
...
Fixes https://gitlab.freedesktop.org/gstreamer/gstreamer/-/issues/3421
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/6440 >
2024-03-26 14:21:34 +00:00
Seungha Yang
2e1eaaec5e
ges: Fix critical warning
...
GStreamer-CRITICAL **: 20:44:38.256: gst_debug_log_full_valist:
assertion 'category != NULL' failed
Make sure debug category initialized.
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/6304 >
2024-03-08 21:00:51 +09:00
Tim-Philipp Müller
756064b9c3
Back to development
...
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/6261 >
2024-03-05 12:58:57 +00:00
Tim-Philipp Müller
b125253cad
Release 1.24.0
2024-03-04 23:59:25 +00:00
Thibault Saunier
14d6773aba
ges: framepositioner: Expose positioning properties as doubles
...
Making it possible to properly handle compositors that have those
properties as doubles and handle antialiasing.
Internally we were handling those values as doubles in framepositioner,
so expose new properties so user can set values as doubles also.
This changes the GESFramePositionMeta API but we are still on time for 1.24
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/6241 >
2024-02-29 00:56:30 +00:00
Edward Hervey
a3980f4838
docs: Use Discourse and Matrix as prefered communication channels
...
Part of: https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/6220
2024-02-27 09:35:47 +01:00
Tim-Philipp Müller
d474de8ff0
Release 1.23.90
2024-02-23 18:20:11 +00:00
Nirbheek Chauhan
768aeb739a
meson: Use cdata.set_quoted() for configuration data
...
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/6159 >
2024-02-21 21:47:12 +00:00
Nirbheek Chauhan
64fdded13a
ges, gst-python: Fix libpython dlopen on macOS
...
First encountered at https://gitlab.freedesktop.org/gstreamer/gstreamer/-/issues/1171#note_2290789
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/6159 >
2024-02-21 21:47:12 +00:00
Nirbheek Chauhan
2cc9a181f9
ges, gst-python: Rework libpython loading to be relocatable
...
If we don't specify a path for loading, the runtime linker will search
for the library instead, which will use the usual mechanisms: RPATHs,
LD_LIBRARY_PATH, PATH (on Windows), etc.
Also try harder to load a non-devel libpython using INSTSONAME, if
available.
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/6159 >
2024-02-21 21:47:12 +00:00
Nirbheek Chauhan
ad8ea38e0a
meson: Use host_system for the host_machine system
...
This is a convention everywhere else in gstreamer.
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/6159 >
2024-02-21 21:47:12 +00:00
Tim-Philipp Müller
88412ef100
Back to development
...
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/6126 >
2024-02-15 16:38:53 +00:00
Tim-Philipp Müller
88751d4110
Release 1.23.2
2024-02-15 15:37:17 +00:00
Xavier Claessens
561f8b71ee
structure: Allow STRICT flag only in _serialize_full()
...
The STRICT flag makes _serialize() nullable which is an API break for
bindings. Forbid it and add _serialize_full() that accepts it and is
properly annotated.
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/5829 >
2024-02-09 15:45:33 +00:00
Tim-Philipp Müller
2111d6f015
Back to development
...
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/6066 >
2024-02-06 18:29:31 +00:00
Tim-Philipp Müller
9255e397f0
Release 1.23.1
2024-02-06 16:43:27 +00:00
Thibault Saunier
5051a34318
nlecomposition: Do not forward QoS event while setting up the new stack
...
Otherwise we might end up dropping buffers even before prerolling the sources
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/6032 >
2024-01-31 19:43:06 +00:00
Thibault Saunier
b684ce33b7
timeline: forward element messages we do not know
...
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/5983 >
2024-01-31 17:37:41 +00:00
Thibault Saunier
1627a944e7
nlecomposition: Use a bus message to retrieve pipeline position
...
Instead of recursing up, as this will allow to have nested composition
run inside auxiliary pipelines. It is a bit cleaner also.
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/5983 >
2024-01-31 17:37:41 +00:00
Thibault Saunier
79c211a5fb
nlecomposition: Use a message to check if we need an initialization seek
...
Subtimeline might be in an auxiliary pipeline which make the current
recurse up approach not working.
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/5983 >
2024-01-31 17:37:41 +00:00
Thibault Saunier
37602d1d02
ges: Keep internal stream selection messages internally
...
Timeline StreamCollection are very specific to inner working of nested
timelines and should not interfere with the usual stream selection
process and are now handled as element messages.
Stream selection inside `nleobject` need to be handled internally by the
application or GES itself so we should just drop all those as they would
interfere and fail if they are exposed to other elements.
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/5983 >
2024-01-31 17:37:41 +00:00
Thibault Saunier
b14207cc9e
nle: Use a message based mechanism to detect parent nleobject duration
...
Recursing up is pretty ugly and will fail when we start using ancillary
pipelines for sources in nle, using a message/event based mechanism is
a common pattern that is much cleaner.
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/5983 >
2024-01-31 17:37:41 +00:00
Thibault Saunier
e7803d1582
ges: clip: doc: Add a reference for more information about effect index
...
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/6009 >
2024-01-30 11:09:00 +00:00
Tim-Philipp Müller
c84285d44d
meson: bump Meson requirement to >= 1.1 for all modules
...
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/6002 >
2024-01-29 01:11:55 +00:00
Philippe Normand
20340e71f2
gesbasebin: Fix a couple leaks
...
Also clean-up unused queue when we failed to link a track to it.
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/5981 >
2024-01-25 09:54:19 +00:00
Thibault Saunier
ff9fec521b
ges: track-element: Fix FIXME about handling NULL factories to add properties
...
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/5981 >
2024-01-25 09:54:19 +00:00
Thibault Saunier
4c8396da8e
ges: launch: Enhance the way we detect explicitly added track
...
When using subtimeline serialized with the command line formatter
syntax, we had a false positive when detecting if the user had explicitly
specified tracks with the `+track` syntax. Verifying the presence of
`+track` explicitly in the `args` array ensure the `+track` is not for
a subtimeline.
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/5981 >
2024-01-25 09:54:19 +00:00
Thibault Saunier
8d58d2b43b
ges: Minor debug enhancements
...
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/5981 >
2024-01-25 09:54:19 +00:00
Thibault Saunier
f205b357bd
ges: Minor typo fix
...
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/5981 >
2024-01-25 09:54:19 +00:00
Thibault Saunier
bc42175fd3
nlecomposition: Pass object to debug messages in more places
...
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/5981 >
2024-01-25 09:54:19 +00:00
Philippe Normand
2de5984300
ges: effect: Report asset request errors
...
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/5981 >
2024-01-25 09:54:19 +00:00
Philippe Normand
49fec0726f
ges-asset: Fix typo in warning message
...
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/5981 >
2024-01-25 09:54:18 +00:00
Philippe Normand
b2c790783d
ges-asset: Log asset ids in ges_asset_request
...
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/5981 >
2024-01-25 09:54:18 +00:00
Philippe Normand
a5e8dedff0
ges-asset: Propagate errors from GInitable
...
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/5981 >
2024-01-25 09:54:18 +00:00
Philippe Normand
86ab695e8d
ges-effect: Chain-up to parent constructed vfunc
...
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/5981 >
2024-01-25 09:54:18 +00:00
Philippe Normand
fa8a2ec55e
ges: uri-clip: Set error on invalid URI's in check_id
...
The _check_id function signature was incomplete and the last GError
argument was ignored instead of being properly used.
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/5981 >
2024-01-25 09:54:18 +00:00
Thibault Saunier
4aaca2cc02
ges: launch: Print the timeline after we set its state to READY
...
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/5974 >
2024-01-24 23:12:56 +00:00
Thibault Saunier
0a292b8246
ges: discoverer-manager: Use a recursive mutex to protect the discoverers
...
So we can have subtimelines specified in `ges-launch` without
deadlocking
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/5973 >
2024-01-24 18:48:22 +00:00
Thibault Saunier
bf420a3a20
ges: launcher: Commit timeline before setting state
...
Ensuring that all operations related to commit are properly performed
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/5859 >
2024-01-19 11:10:13 +00:00
Thibault Saunier
5575d9cb02
ges: launcher: Make +effect stack effects from source to last effect added
...
Until now when doing `+test-clip blue +effect effect1 + effect effect2`
leaded to the following pseudo pipeline
videotestsrc ! effect2 ! effect1
given the `ges-launch` syntax this is quite unexpected and this needed
fixing
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/5735 >
2024-01-16 20:13:23 +00:00
Thibault Saunier
8cf17e5d0d
ges: Add scaler in the 'gap filling' clip on too short nested timelines
...
So we can respect user request on source that can scale
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/5735 >
2024-01-16 20:13:23 +00:00