gstreamer/subprojects/gst-editing-services/ges
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
..
python Move files from gst-editing-services into the "subprojects/gst-editing-services/" subdir 2021-09-24 16:15:30 -03:00
ges-asset.c ges: Fix critical warning 2024-03-08 21:00:51 +09:00
ges-asset.h Move files from gst-editing-services into the "subprojects/gst-editing-services/" subdir 2021-09-24 16:15:30 -03:00
ges-audio-source.c ges: Expose audioconvert mix-matrix property in audio sources 2024-01-04 12:02:41 +00:00
ges-audio-source.h Move files from gst-editing-services into the "subprojects/gst-editing-services/" subdir 2021-09-24 16:15:30 -03:00
ges-audio-test-source.c Move files from gst-editing-services into the "subprojects/gst-editing-services/" subdir 2021-09-24 16:15:30 -03:00
ges-audio-test-source.h Move files from gst-editing-services into the "subprojects/gst-editing-services/" subdir 2021-09-24 16:15:30 -03:00
ges-audio-track.c Move files from gst-editing-services into the "subprojects/gst-editing-services/" subdir 2021-09-24 16:15:30 -03:00
ges-audio-track.h Move files from gst-editing-services into the "subprojects/gst-editing-services/" subdir 2021-09-24 16:15:30 -03:00
ges-audio-transition.c Move files from gst-editing-services into the "subprojects/gst-editing-services/" subdir 2021-09-24 16:15:30 -03:00
ges-audio-transition.h Move files from gst-editing-services into the "subprojects/gst-editing-services/" subdir 2021-09-24 16:15:30 -03:00
ges-audio-uri-source.c Move files from gst-editing-services into the "subprojects/gst-editing-services/" subdir 2021-09-24 16:15:30 -03:00
ges-audio-uri-source.h Move files from gst-editing-services into the "subprojects/gst-editing-services/" subdir 2021-09-24 16:15:30 -03:00
ges-auto-transition.c Move files from gst-editing-services into the "subprojects/gst-editing-services/" subdir 2021-09-24 16:15:30 -03:00
ges-auto-transition.h Move files from gst-editing-services into the "subprojects/gst-editing-services/" subdir 2021-09-24 16:15:30 -03:00
ges-base-effect-clip.c Move files from gst-editing-services into the "subprojects/gst-editing-services/" subdir 2021-09-24 16:15:30 -03:00
ges-base-effect-clip.h Move files from gst-editing-services into the "subprojects/gst-editing-services/" subdir 2021-09-24 16:15:30 -03:00
ges-base-effect.c Move files from gst-editing-services into the "subprojects/gst-editing-services/" subdir 2021-09-24 16:15:30 -03:00
ges-base-effect.h Move files from gst-editing-services into the "subprojects/gst-editing-services/" subdir 2021-09-24 16:15:30 -03:00
ges-base-transition-clip.c Move files from gst-editing-services into the "subprojects/gst-editing-services/" subdir 2021-09-24 16:15:30 -03:00
ges-base-transition-clip.h Move files from gst-editing-services into the "subprojects/gst-editing-services/" subdir 2021-09-24 16:15:30 -03:00
ges-base-xml-formatter.c ges: base-xml-formatter: Don't pass non-GObject pointers to GST_DEBUG_OBJECT 2023-04-18 10:03:46 +00:00
ges-base-xml-formatter.h Move files from gst-editing-services into the "subprojects/gst-editing-services/" subdir 2021-09-24 16:15:30 -03:00
ges-clip-asset.c ges: Add a few missing annotations 2021-09-26 06:59:04 +00:00
ges-clip-asset.h Move files from gst-editing-services into the "subprojects/gst-editing-services/" subdir 2021-09-24 16:15:30 -03:00
ges-clip.c ges: clip: doc: Add a reference for more information about effect index 2024-01-30 11:09:00 +00:00
ges-clip.h Move files from gst-editing-services into the "subprojects/gst-editing-services/" subdir 2021-09-24 16:15:30 -03:00
ges-command-line-formatter.c structure: Allow STRICT flag only in _serialize_full() 2024-02-09 15:45:33 +00:00
ges-command-line-formatter.h Move files from gst-editing-services into the "subprojects/gst-editing-services/" subdir 2021-09-24 16:15:30 -03:00
ges-container.c ges: Also track children props 'duplicates' in TimelineElement 2024-04-18 00:19:31 +00:00
ges-container.h Move files from gst-editing-services into the "subprojects/gst-editing-services/" subdir 2021-09-24 16:15:30 -03:00
ges-discoverer-manager.c ges: discoverer-manager: Use a recursive mutex to protect the discoverers 2024-01-24 18:48:22 +00:00
ges-discoverer-manager.h ges: Implement a new GESDiscovererManager object 2023-04-29 06:54:10 -04:00
ges-effect-asset.c ges: track-element: Fix FIXME about handling NULL factories to add properties 2024-01-25 09:54:19 +00:00
ges-effect-asset.h Move files from gst-editing-services into the "subprojects/gst-editing-services/" subdir 2021-09-24 16:15:30 -03:00
ges-effect-clip.c ges: Add a few missing annotations 2021-09-26 06:59:04 +00:00
ges-effect-clip.h Move files from gst-editing-services into the "subprojects/gst-editing-services/" subdir 2021-09-24 16:15:30 -03:00
ges-effect.c ges: effect: Report asset request errors 2024-01-25 09:54:19 +00:00
ges-effect.h Move files from gst-editing-services into the "subprojects/gst-editing-services/" subdir 2021-09-24 16:15:30 -03:00
ges-enums.c ges-video-transition: add a new "fade-in" transition type 2022-05-13 17:17:06 +03:00
ges-enums.h ges-video-transition: add a new "fade-in" transition type 2022-05-13 17:17:06 +03:00
ges-extractable.c Move files from gst-editing-services into the "subprojects/gst-editing-services/" subdir 2021-09-24 16:15:30 -03:00
ges-extractable.h Move files from gst-editing-services into the "subprojects/gst-editing-services/" subdir 2021-09-24 16:15:30 -03:00
ges-formatter.c ges, gst-python: Fix libpython dlopen on macOS 2024-02-21 21:47:12 +00:00
ges-formatter.h Fix various warnings from gobject-introspection 2022-10-25 09:45:25 +03:00
ges-frame-composition-meta.c ges: Expose FrameCompositionMeta in public API 2023-11-16 11:45:40 +00:00
ges-frame-composition-meta.h ges: frame-composition-meta: Stop using keyword 'operator' for field in C++ 2024-03-26 14:21:34 +00:00
ges-gerror.h Move files from gst-editing-services into the "subprojects/gst-editing-services/" subdir 2021-09-24 16:15:30 -03:00
ges-group.c Move files from gst-editing-services into the "subprojects/gst-editing-services/" subdir 2021-09-24 16:15:30 -03:00
ges-group.h Move files from gst-editing-services into the "subprojects/gst-editing-services/" subdir 2021-09-24 16:15:30 -03:00
ges-image-source.c Move files from gst-editing-services into the "subprojects/gst-editing-services/" subdir 2021-09-24 16:15:30 -03:00
ges-image-source.h Move files from gst-editing-services into the "subprojects/gst-editing-services/" subdir 2021-09-24 16:15:30 -03:00
ges-internal.h ges: Also track children props 'duplicates' in TimelineElement 2024-04-18 00:19:31 +00:00
ges-layer.c ges: drop use of GSlice allocator 2023-02-03 17:48:09 +00:00
ges-layer.h Move files from gst-editing-services into the "subprojects/gst-editing-services/" subdir 2021-09-24 16:15:30 -03:00
ges-marker-list.c Move files from gst-editing-services into the "subprojects/gst-editing-services/" subdir 2021-09-24 16:15:30 -03:00
ges-marker-list.h Move files from gst-editing-services into the "subprojects/gst-editing-services/" subdir 2021-09-24 16:15:30 -03:00
ges-meta-container.c ges: drop use of GSlice allocator 2023-02-03 17:48:09 +00:00
ges-meta-container.h Move files from gst-editing-services into the "subprojects/gst-editing-services/" subdir 2021-09-24 16:15:30 -03:00
ges-multi-file-source.c docs: fix unnecessary ampersand, < and > escaping in code blocks 2021-11-12 11:39:19 +00:00
ges-multi-file-source.h Move files from gst-editing-services into the "subprojects/gst-editing-services/" subdir 2021-09-24 16:15:30 -03:00
ges-operation-clip.c Move files from gst-editing-services into the "subprojects/gst-editing-services/" subdir 2021-09-24 16:15:30 -03:00
ges-operation-clip.h Move files from gst-editing-services into the "subprojects/gst-editing-services/" subdir 2021-09-24 16:15:30 -03:00
ges-operation.c Move files from gst-editing-services into the "subprojects/gst-editing-services/" subdir 2021-09-24 16:15:30 -03:00
ges-operation.h Move files from gst-editing-services into the "subprojects/gst-editing-services/" subdir 2021-09-24 16:15:30 -03:00
ges-overlay-clip.c Move files from gst-editing-services into the "subprojects/gst-editing-services/" subdir 2021-09-24 16:15:30 -03:00
ges-overlay-clip.h Move files from gst-editing-services into the "subprojects/gst-editing-services/" subdir 2021-09-24 16:15:30 -03:00
ges-pipeline.c ges: Minor debug enhancements 2024-01-25 09:54:19 +00:00
ges-pipeline.h Move files from gst-editing-services into the "subprojects/gst-editing-services/" subdir 2021-09-24 16:15:30 -03:00
ges-pitivi-formatter.c Move files from gst-editing-services into the "subprojects/gst-editing-services/" subdir 2021-09-24 16:15:30 -03:00
ges-pitivi-formatter.h Move files from gst-editing-services into the "subprojects/gst-editing-services/" subdir 2021-09-24 16:15:30 -03:00
ges-prelude.h Move files from gst-editing-services into the "subprojects/gst-editing-services/" subdir 2021-09-24 16:15:30 -03:00
ges-project.c ges: project: Start making MT safe where needed 2023-10-04 09:29:04 +01:00
ges-project.h Move files from gst-editing-services into the "subprojects/gst-editing-services/" subdir 2021-09-24 16:15:30 -03:00
ges-screenshot.c ges: Add/fix various annotations 2022-10-18 13:51:16 +03:00
ges-screenshot.h Move files from gst-editing-services into the "subprojects/gst-editing-services/" subdir 2021-09-24 16:15:30 -03:00
ges-smart-adder.c ges: drop use of GSlice allocator 2023-02-03 17:48:09 +00:00
ges-smart-adder.h Move files from gst-editing-services into the "subprojects/gst-editing-services/" subdir 2021-09-24 16:15:30 -03:00
ges-smart-video-mixer.c ges: framepositioner: Expose positioning properties as doubles 2024-02-29 00:56:30 +00:00
ges-smart-video-mixer.h ges: Fix issues avoiding to use operator when unavailable on mixer 2023-01-17 20:10:19 +00:00
ges-source-clip-asset.c Move files from gst-editing-services into the "subprojects/gst-editing-services/" subdir 2021-09-24 16:15:30 -03:00
ges-source-clip-asset.h Move files from gst-editing-services into the "subprojects/gst-editing-services/" subdir 2021-09-24 16:15:30 -03:00
ges-source-clip.c Move files from gst-editing-services into the "subprojects/gst-editing-services/" subdir 2021-09-24 16:15:30 -03:00
ges-source-clip.h Move files from gst-editing-services into the "subprojects/gst-editing-services/" subdir 2021-09-24 16:15:30 -03:00
ges-source.c ges: Add support for sources reverse playback 2024-04-18 00:19:31 +00:00
ges-source.h Move files from gst-editing-services into the "subprojects/gst-editing-services/" subdir 2021-09-24 16:15:30 -03:00
ges-structure-parser.c ges-structure-parser: Don't leak failed strings 2022-11-18 07:22:23 +00:00
ges-structure-parser.h Move files from gst-editing-services into the "subprojects/gst-editing-services/" subdir 2021-09-24 16:15:30 -03:00
ges-structured-interface.c ges: launcher: Make +effect stack effects from source to last effect added 2024-01-16 20:13:23 +00:00
ges-structured-interface.h Move files from gst-editing-services into the "subprojects/gst-editing-services/" subdir 2021-09-24 16:15:30 -03:00
ges-test-clip.c ges: test-clip: Fix setting children asset ids 2024-04-18 00:19:31 +00:00
ges-test-clip.h Move files from gst-editing-services into the "subprojects/gst-editing-services/" subdir 2021-09-24 16:15:30 -03:00
ges-text-overlay-clip.c ges: Add/fix various annotations 2022-10-18 13:51:16 +03:00
ges-text-overlay-clip.h Move files from gst-editing-services into the "subprojects/gst-editing-services/" subdir 2021-09-24 16:15:30 -03:00
ges-text-overlay.c ges: Add/fix various annotations 2022-10-18 13:51:16 +03:00
ges-text-overlay.h Move files from gst-editing-services into the "subprojects/gst-editing-services/" subdir 2021-09-24 16:15:30 -03:00
ges-time-overlay-clip.c Move files from gst-editing-services into the "subprojects/gst-editing-services/" subdir 2021-09-24 16:15:30 -03:00
ges-time-overlay-clip.h Move files from gst-editing-services into the "subprojects/gst-editing-services/" subdir 2021-09-24 16:15:30 -03:00
ges-timeline-element.c ges: Add support for sources reverse playback 2024-04-18 00:19:31 +00:00
ges-timeline-element.h Fix license as GES is released under the LGPL2+ license 2022-03-24 01:18:24 +00:00
ges-timeline-tree.c ges: Add API to disable timeline coherence checks 2022-12-02 18:37:29 +00:00
ges-timeline-tree.h Move files from gst-editing-services into the "subprojects/gst-editing-services/" subdir 2021-09-24 16:15:30 -03:00
ges-timeline.c timeline: forward element messages we do not know 2024-01-31 17:37:41 +00:00
ges-timeline.h ges: Add API to disable timeline coherence checks 2022-12-02 18:37:29 +00:00
ges-title-clip.c ges: Add/fix various annotations 2022-10-18 13:51:16 +03:00
ges-title-clip.h Move files from gst-editing-services into the "subprojects/gst-editing-services/" subdir 2021-09-24 16:15:30 -03:00
ges-title-source.c ges: Add/fix various annotations 2022-10-18 13:51:16 +03:00
ges-title-source.h Move files from gst-editing-services into the "subprojects/gst-editing-services/" subdir 2021-09-24 16:15:30 -03:00
ges-track-element-asset.c ges: Add a few missing annotations 2021-09-26 06:59:04 +00:00
ges-track-element-asset.h Move files from gst-editing-services into the "subprojects/gst-editing-services/" subdir 2021-09-24 16:15:30 -03:00
ges-track-element-deprecated.h Move files from gst-editing-services into the "subprojects/gst-editing-services/" subdir 2021-09-24 16:15:30 -03:00
ges-track-element.c ges: Also track children props 'duplicates' in TimelineElement 2024-04-18 00:19:31 +00:00
ges-track-element.h Move files from gst-editing-services into the "subprojects/gst-editing-services/" subdir 2021-09-24 16:15:30 -03:00
ges-track.c ges: Keep internal stream selection messages internally 2024-01-31 17:37:41 +00:00
ges-track.h Move files from gst-editing-services into the "subprojects/gst-editing-services/" subdir 2021-09-24 16:15:30 -03:00
ges-transition-clip.c ges: transition: Notify vtype change on ges_extractable_set_asset call 2022-10-24 14:14:30 +00:00
ges-transition-clip.h Move files from gst-editing-services into the "subprojects/gst-editing-services/" subdir 2021-09-24 16:15:30 -03:00
ges-transition.c Move files from gst-editing-services into the "subprojects/gst-editing-services/" subdir 2021-09-24 16:15:30 -03:00
ges-transition.h Move files from gst-editing-services into the "subprojects/gst-editing-services/" subdir 2021-09-24 16:15:30 -03:00
ges-types.h ges: Implement a new GESDiscovererManager object 2023-04-29 06:54:10 -04:00
ges-uri-asset.c ges: Keep internal stream selection messages internally 2024-01-31 17:37:41 +00:00
ges-uri-asset.h ges: Implement a new GESDiscovererManager object 2023-04-29 06:54:10 -04:00
ges-uri-clip.c ges: uri-clip: Set error on invalid URI's in check_id 2024-01-25 09:54:18 +00:00
ges-uri-clip.h Move files from gst-editing-services into the "subprojects/gst-editing-services/" subdir 2021-09-24 16:15:30 -03:00
ges-uri-source.c ges: Add support for gessrc as subtimeline element 2023-06-29 19:24:37 +00:00
ges-uri-source.h Move files from gst-editing-services into the "subprojects/gst-editing-services/" subdir 2021-09-24 16:15:30 -03:00
ges-utils.c ges: framepositioner: Expose positioning properties as doubles 2024-02-29 00:56:30 +00:00
ges-utils.h Move files from gst-editing-services into the "subprojects/gst-editing-services/" subdir 2021-09-24 16:15:30 -03:00
ges-validate.c validate: Add an action to group containers 2024-04-18 00:19:31 +00:00
ges-version.h.in Move files from gst-editing-services into the "subprojects/gst-editing-services/" subdir 2021-09-24 16:15:30 -03:00
ges-video-source.c ges: framepositioner: Expose positioning properties as doubles 2024-02-29 00:56:30 +00:00
ges-video-source.h Move files from gst-editing-services into the "subprojects/gst-editing-services/" subdir 2021-09-24 16:15:30 -03:00
ges-video-test-source.c Move files from gst-editing-services into the "subprojects/gst-editing-services/" subdir 2021-09-24 16:15:30 -03:00
ges-video-test-source.h Move files from gst-editing-services into the "subprojects/gst-editing-services/" subdir 2021-09-24 16:15:30 -03:00
ges-video-track.c Move files from gst-editing-services into the "subprojects/gst-editing-services/" subdir 2021-09-24 16:15:30 -03:00
ges-video-track.h Move files from gst-editing-services into the "subprojects/gst-editing-services/" subdir 2021-09-24 16:15:30 -03:00
ges-video-transition.c ges-video-transition: add a new "fade-in" transition type 2022-05-13 17:17:06 +03:00
ges-video-transition.h Move files from gst-editing-services into the "subprojects/gst-editing-services/" subdir 2021-09-24 16:15:30 -03:00
ges-video-uri-source.c ges/videourisource: handle non-1/1 PAR source videos 2022-05-17 20:49:30 +00:00
ges-video-uri-source.h Move files from gst-editing-services into the "subprojects/gst-editing-services/" subdir 2021-09-24 16:15:30 -03:00
ges-xml-formatter.c ges: drop use of GSlice allocator 2023-02-03 17:48:09 +00:00
ges-xml-formatter.h Move files from gst-editing-services into the "subprojects/gst-editing-services/" subdir 2021-09-24 16:15:30 -03:00
ges.c ges: Implement a gesvideoscale bin 2024-01-16 20:13:23 +00:00
ges.h ges: Expose FrameCompositionMeta in public API 2023-11-16 11:45:40 +00:00
ges.resource Move files from gst-editing-services into the "subprojects/gst-editing-services/" subdir 2021-09-24 16:15:30 -03:00
gesmarshal.list Move files from gst-editing-services into the "subprojects/gst-editing-services/" subdir 2021-09-24 16:15:30 -03:00
gesvideoscale.c ges: framepositioner: Expose positioning properties as doubles 2024-02-29 00:56:30 +00:00
gstframepositioner.c ges: framepositioner: Expose positioning properties as doubles 2024-02-29 00:56:30 +00:00
gstframepositioner.h ges: framepositioner: Expose positioning properties as doubles 2024-02-29 00:56:30 +00:00
meson.build ges: Implement a gesvideoscale bin 2024-01-16 20:13:23 +00:00
parse.l Move files from gst-editing-services into the "subprojects/gst-editing-services/" subdir 2021-09-24 16:15:30 -03:00