Commit graph

37 commits

Author SHA1 Message Date
Thibault Saunier b14e675a27 gir: Checkout all .gir files and check that they are updated on the CI
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/3010>
2023-04-22 09:32:32 -04:00
Sebastian Dröge 63a4d8bb54 ges: base-xml-formatter: Don't pass non-GObject pointers to GST_DEBUG_OBJECT
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/4443>
2023-04-18 10:03:46 +00:00
Tim-Philipp Müller f9eb4c5862 ges: re-indent with GNU indent 2.2.12
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/4182>
2023-03-17 03:18:54 +00:00
Thibault Saunier 47a07a4f5a uri-asset: Don't create AudioSource asset for unknown track types
And just skip them as we can't do anything else with them right now

Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/3976>
2023-02-16 01:47:28 +00:00
Luke McGartland 396c758544 Update subprojects/gst-editing-services/ges/ges-uri-asset.c
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/3976>
2023-02-16 01:47:28 +00:00
Mathieu Duponchelle e728c0e71a ges-source: make sure internal decodebin doesn't get seeked too early
When uridecodebin exposes pads for its streams, we immediately ghost
the relevant (selected) one and let composition send a seek as soon as a
buffer is probed.

This means that sometimes uridecodebin is still linking elements
internally (for non-selected streams) and sees flush events travel down
the elements it is still busy trying to link / forward sticky events to.

This causes all sorts of nasty issues, which can be avoided by simply
blocking all data flow from the source until no-more-pads has been
emitted by uridecodebin (or whatever sub_element is wrapped).

Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/3971>
2023-02-15 22:24:51 +00:00
Mathieu Duponchelle 2fd2af9420 ges-source: do not emit no-more-pads on child element
This most likely never caused any issues as we don't connect to
no-more-pads in the first place, and the element isn't directly exposed
to the user, but emitting it makes no sense, and we are actually going
to connect to no-more-pads in a subsequent commit.

The call was added in 86b893e54c, a patch
by me in 2013, I have no idea why but I probably didn't have a firm
grasp on what I was doing then.

Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/3971>
2023-02-15 22:24:51 +00:00
Tim-Philipp Müller 18a3c32323 ges: drop use of GSlice allocator
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/3784>
2023-02-03 17:48:09 +00:00
Thibault Saunier 18f313d317 ges: smart-mixer: Avoid video freeze on NLE stack changes
Since we support "nested compositors"[0] we were not finalizing the pads_infos
and thus not releasing the mixer pad on stack change, meaning that
the following stacks were never prerolling.

[0] https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/2094

Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/3738>
2023-01-17 20:10:19 +00:00
Thibault Saunier 3065608730 ges: Fix issues avoiding to use operator when unavailable on mixer
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/3738>
2023-01-17 20:10:19 +00:00
Sebastian Dröge bd534af999 ges: gst_bin_add() is transfer floating so wrappers around it are too
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/3678>
2023-01-04 10:22:45 +00:00
Thibault Saunier 712bda84db ges: Add API to disable timeline coherence checks
There are cases where user might want to be in full control of the
timeline and not be limited by the checks that are being done by GES
to go from one timeline layout to another, this should be doable as
it is a valid use case.

Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/3501>
2022-12-02 18:37:29 +00:00
Edward Hervey 4aaaf29761 ges-xml-formatter: Plug some leaks
* Don't leak the mainloop
* Don't leak temporary strings
* Don't leak id when searching in hash table

Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/3428>
2022-11-18 07:22:23 +00:00
Edward Hervey ba5beb55ab ges-project: Don't leak string
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/3428>
2022-11-18 07:22:23 +00:00
Edward Hervey 40d9858371 ges-structure-parser: Don't leak failed strings
We pass the ownership of current_string to the list of wrong strings, it will be
cleared then.

Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/3428>
2022-11-18 07:22:23 +00:00
Sebastian Dröge 366893e9ac Fix various warnings from gobject-introspection
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/3261>
2022-10-25 09:45:25 +03:00
Fabian Orccon db5b4e6a06 ges: transition: Notify vtype change on ges_extractable_set_asset call
Fixes #1454

Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/3215>
2022-10-24 14:14:30 +00:00
Sebastian Dröge f705da7131 ges: Add/fix various annotations
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/3194>
2022-10-18 13:51:16 +03:00
Thibault Saunier 7167721cac ges-video-source: Remove limit on frame duplication on EOS in videorate
Fixes https://gitlab.freedesktop.org/gstreamer/gstreamer/-/issues/1352

Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/3000>
2022-09-20 13:23:02 +00:00
Thibault Saunier 65b2172fe8 ges: Enhance element names in video uri sources
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/3000>
2022-09-20 13:23:02 +00:00
Thibault Saunier bc9c1e3956 meson: Namespace the plugins_doc_dep/libraries variables
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/2970>
2022-09-01 21:17:35 +00:00
Seungha Yang f5c5f881e4 ges: Update outdated comment
d3d11compositor is a videoaggregator subclass and no more wrapper bin
since the MR
https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/2631

Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/2825>
2022-08-02 21:45:21 +00:00
Mathieu Duponchelle 52f7150de4 ges: preserve discovery order
The previous code was storing container children in reverse
addition order, this was mitigated by the fact that track elements
were also stored in reverse order, thus restoring the original
order, but it seems more consistent to preserve order throughout,
the extra cost of append operations is negligible.

Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/1549>
2022-08-02 15:48:12 +00:00
Mathieu Duponchelle 4b50e674c3 ges/gstframepositioner: don't create one compositor per frame meta
Instead, cache the looked up operator property

Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/2623>
2022-06-17 23:17:31 +00:00
Matthew Waters 2b94359765 ges/videourisource: handle non-1/1 PAR source videos
The automatic scaling done by framepositioner does not account for the
par of the video source.

Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/2423>
2022-05-17 20:49:30 +00:00
George Kiagiadakis 5294a720f8 ges-video-transition: add a new "fade-in" transition type
This transition is meant to be very similar to crossfade, but
instead of fading out the background video at the same time as the
foreground fades in, the background video stays at 100% opacity
during the whole transition.

This essentially "restores" the old crossfade behaviour that was changed in:
eb48faf342
but using a new type enum, so that both behaviours are available,
letting applications choose.

Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/2385>
2022-05-13 17:17:06 +03:00
Xabier Rodriguez Calvar d522b17d9c ges-smart-video-mixer: use the proper pad to get the positioner meta
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/2094>
2022-04-01 13:07:46 +02:00
Thibault Saunier 1440ca2157 Fix license as GES is released under the LGPL2+ license
This was a mistake that some of the licensing notice in a few files was
referring to GPL3+ and it needs fixing

Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/1956>
2022-03-24 01:18:24 +00:00
Sebastian Dröge 34964b6a98 ges: Include ges-image-source.h in the installed headers
It's referenced by `ges.h` and was previously available, so removing it
is an API change.

Fixes https://gitlab.freedesktop.org/gstreamer/gstreamer/-/issues/963

Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/1563>
2022-01-24 19:54:57 +00:00
Tim-Philipp Müller 972615cf22 docs: fix unnecessary ampersand, < and > escaping in code blocks
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/1340>
2021-11-12 11:39:19 +00:00
Thibault Saunier a2460a8adc meson:ges: Fix typo adding ges gir to libs list
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/1322>
2021-11-08 11:10:11 -03:00
Thibault Saunier ba37e0aa2f ges:docs: Ignore GESImageSource as it is plain useless now
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/1093>
2021-10-15 19:28:29 -03:00
Thibault Saunier 6e79932ad9 meson: List libraries and their corresponding gir definition
Introduces a `libraries` variable that contains all libraries in a
list with the following format:

``` meson
libraries = [
    [pkg_name, {
        'lib': library_object
        'gir': [ {full gir definition in a dict } ]
    ],
    ....
]
```

It therefore refactors the way we build the gir so that we can reuse the
same information to build them against 'gstreamer-full' in gst-build
when linking statically

Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/1093>
2021-10-15 19:27:30 -03:00
Thibault Saunier a2964eb1ad ges:uri-asset: Ignore streams with no ID
Since 0d95d9258b we respect the asset stream-id in `GESUriSource` so
we can not work with unknown or broken stream ID in the assets.

We just ignore them, warning about it and we should fix that in
demuxer so they don't expose pad without providing a stream id for them.

Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/1001>
2021-10-02 10:44:26 +00:00
Sebastian Dröge dc30676002 commandline-formatter: Fix version documentation for ges_command_line_formatter_get_help()
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/929>
2021-09-27 09:24:16 +03:00
Sebastian Dröge 3db957c10d ges: Add a few missing annotations
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/921>
2021-09-26 06:59:04 +00:00
Thibault Saunier 01e70e3552 Move files from gst-editing-services into the "subprojects/gst-editing-services/" subdir 2021-09-24 16:15:30 -03:00