Stéphane Cerveau
3973b56e26
validate: disable plugins in static build
...
As the plugins can not be used in gstreamer-full,
disable the plugins.
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/4128 >
2023-05-31 15:17:11 +00:00
Stéphane Cerveau
dd17beb681
gstreamer-full: add full static support
...
Allow a project to use gstreamer-full as a static library
and link to create a binary without dependencies.
Introduce the option 'gst-full-target-type' to
select the build type, dynamic(default) or static.
In gstreamer-full/static build configuration gstreamer (gst.c)
needs the symbol gst_init_static_plugins which is defined
in gstreamer-full.
All the tests and examples are linking with gstreamer but the
symbol gst_init_static_plugins is only defined in the gstreamer-full
library. gstreamer-full can not be built first as it needs to know what plugins
will be built.
One option would be to build all the examples and tests after
gstreamer-full as the tools.
Disable tools build in subprojects too as it will be built at the end of
build process.
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/4128 >
2023-05-31 15:17:11 +00:00
Thibault Saunier
9dda8050f2
validate: Add a way to avoid checking property value after setting it
...
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/4485 >
2023-04-26 00:03:06 +00:00
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
Thibault Saunier
6646184791
validate: flow: Handle ignored fields for caps
...
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/4341 >
2023-04-12 15:07:28 +00:00
Thibault Saunier
00ed40dbfd
validate: scenario: Add a vmethod to free GstValidateActionParameter-s
...
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/4265 >
2023-03-27 01:25:43 +00:00
Tim-Philipp Müller
4380d12d78
gst-devtools: 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
Xavier Claessens
096bd3c4a2
gstbuffer: Add parent meta when a copy shares memory with parent
...
When copying a buffer, for example with gst_buffer_make_writable(), the
new buffer might reference the same GstMemory as the src buffer,
making those memories not writable. If the src buffer gets disposed
first it should return to its buffer pool, but since some of its
memories are not writable it gets discarded and new buffer/memory gets
allocated.
Solves this by making the new buffer keep a reference to the src buffer,
that ensures that by the time the src buffer gets disposed no other
buffer are referencing its memories and it can thus return safely to its
pool.
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/4176 >
2023-03-16 00:03:11 +00:00
Thibault Saunier
734263617b
validate: scenario: Allow scenario to define the pipeline state target
...
Some user might want to start executing actions from the start.
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/4164 >
2023-03-14 05:46:14 +00:00
Thibault Saunier
accbcabeea
validate: Protect init function with a recursive mutex
...
In tests in the rust bindings we end up with 2 thread initializing
concurrently, and it should not be a problem, -validate should be MT
safe.
Using a recursive mutex as we might recursively init for some reason
and we are not on the hot path here in any case.
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/4089 >
2023-03-02 02:50:45 +00:00
Thibault Saunier
12c4893131
validate:scenario: sink refs when building
...
Scenarios are no owned by anyone, even if they are GstObjects
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/4089 >
2023-03-02 02:50:45 +00:00
Thibault Saunier
2837f14b6b
tests: Move srtp test known issue def to the 'check' testuite
...
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/3979 >
2023-02-16 02:39:05 +00:00
Thibault Saunier
1146548c3d
validate:launcher: try to bne more explicit about where to add known failure
...
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/3979 >
2023-02-16 02:39:04 +00:00
Thibault Saunier
c637d90be9
validate:launcher: Handle known return code issue in none validate based tests
...
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/3979 >
2023-02-16 02:39:04 +00:00
Tim-Philipp Müller
7679011d1d
validate: drop use of GSlice allocator
...
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/3784 >
2023-02-03 17:48:10 +00:00
Colin Kinloch
25b4e84fe5
validate: Allow Ctrl-C to quit on fault
...
Signed-off-by: Colin Kinloch <colin.kinloch@collabora.com>
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/3868 >
2023-02-01 21:40:01 +00:00
Tim-Philipp Müller
9a300fc501
validate-scenario: fix g-i warning in annotation
...
gst-validate-scenario.c:2485: Warning: GstValidate: missing ":" at column 28:
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/3841 >
2023-01-28 20:03:05 +00:00
Thibault Saunier
fa23e24f41
validate: Fix gst_validate_execute_action annotation
...
The action passed in is transfer full
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/3829 >
2023-01-28 01:31:14 +00:00
Jan Schmidt
794ffe6ec6
validate: Place regex flags at the start of the regex
...
In Python 3.11 it is an error to have regex flags in the middle
of an expression, so make sure they appear at the start.
Fixes https://gitlab.freedesktop.org/gstreamer/gstreamer/-/issues/1630
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/3643 >
2022-12-28 10:04:41 +00:00
Tim-Philipp Müller
6c621bba02
validate-launcher: update testsuites checks for fixed bug
...
Should make CI functional again.
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/3646 >
2022-12-27 17:14:06 +01:00
Xavier Claessens
cd78cbac86
Fix API visibility macros
...
This copies the logic from GLib discussed there:
https://gitlab.gnome.org/GNOME/glib/-/merge_requests/2936
Beside being simpler, it also fix all public symbols being annotated
with dllexport when doing a static build, as discovered there:
https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/3540#note_1678335
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/3567 >
2022-12-20 14:03:35 +00:00
Stéphane Cerveau
1ba066bda2
validate: cleanup the use of GST_VALIDATE_API on Windows
...
Export or import properly the method from GST_VALIDATE_API
with a proper config.h
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/3429 >
2022-11-18 02:17:27 +00:00
Edward Hervey
0c59e3ce2a
validate-scenario: Avoid timeouts on EOS
...
If there is an EOS and the next action is waiting for a playback time, execute
it since we are guaranteed the position won't change anymore.
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/3403 >
2022-11-15 07:47:49 +01:00
Edward Hervey
e821b65a64
validate-scenario: Don't leak GFile
...
And use specific variables for clarity in loops.
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/3390 >
2022-11-13 06:59:11 +01:00
Edward Hervey
3f95779c30
validate: Don't leak discoverer information
...
The various streaminfo were being overwritten without being unreffed first
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/3390 >
2022-11-13 06:59:11 +01:00
Edward Hervey
f8f3615585
validate: Don't deinit too early
...
If we are going to use the validate functions ... do that *before*
deinit'ing.
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/3390 >
2022-11-12 12:24:21 +01:00
Edward Hervey
73762156f3
gst-validate-1.0: Don't leak arguments and context
...
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/3319 >
2022-11-04 17:59:22 +00:00
Edward Hervey
3beec9bad3
validate-scenario: Don't leak temporary path value
...
It's only use in the structure iterator
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/3319 >
2022-11-04 17:59:22 +00:00
Edward Hervey
2114490b9b
validate-scenario: Don't leak temporary local variables structures
...
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/3319 >
2022-11-04 17:59:21 +00:00
Edward Hervey
094d27585e
validate: plug some leaks
...
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/3319 >
2022-11-04 17:59:21 +00:00
Sebastian Dröge
3827f94574
validate: Add/fix various annotations
...
And fix monitor constructors to correctly check for valid arguments.
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/3194 >
2022-10-18 08:56:58 +00:00
Thibault Saunier
55dd7ff4b4
validate: Plug some leaks
...
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/3059 >
2022-10-11 11:48:09 -03:00
Thibault Saunier
9abceda343
validate:launcher: Cleanup test uuid when copying it
...
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/3122 >
2022-10-05 20:29:22 +00:00
Thibault Saunier
f3c162cc85
validate: launcher: Add a argument to avoid rereuning flaky tests
...
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/3122 >
2022-10-05 20:29:22 +00:00
Thibault Saunier
1577911d75
validate: launcher: Keep variable framerate from input when possible
...
But disable it if forcing a framerate for some reason
Fixing our support for variable framerate in the encoding profile
serialization format.
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/3122 >
2022-10-05 20:29:22 +00:00
Thibault Saunier
fbddaffc62
validate: launcher: Fix some pep8 issues
...
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/3122 >
2022-10-05 20:29:22 +00:00
Thibault Saunier
f9e6044124
validate: Handle testfiles that need an HTTP server
...
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/3122 >
2022-10-05 20:29:22 +00:00
Thibault Saunier
a642b17c97
validate:ssim: Show original/nok/diff images on error images
...
This way the user can easily see how off the image is very easily
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/3122 >
2022-10-05 20:29:22 +00:00
Thibault Saunier
ab64771ba8
validate:scenario: Fix setting iterating variable from arrays
...
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/3122 >
2022-10-05 20:29:22 +00:00
Thibault Saunier
7c26630651
validate:scenario: Make appsrc-push push a sample
...
Allowing setting a segment to the sample
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/3052 >
2022-09-20 17:14:36 +00:00
Thibault Saunier
e290e7913c
validate: Handle buffer pts/dts/duration in the appsrc-push action
...
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/3052 >
2022-09-20 17:14:36 +00:00
Thibault Saunier
d2b4e7a38e
validate:scenario: Simplify the way we override appsrc src pad chain
...
When pushing several buffers while the pipeline is in NULL state, meaning
that the action are executed "interlaced", previous code was deadlocking.
This new implementation makes it so the override is always on and we
expect all buffers to go through to be associated to a function, which
is a safe assumption.
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/3052 >
2022-09-20 17:14:36 +00:00
Thibault Saunier
515e1b55ee
validate:scenario: Fix a leak when done waiting for an ASYNC action
...
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/3000 >
2022-09-20 13:23:02 +00:00
Xavier Claessens
5f0493d33a
meson: Set install_tag on some targets
...
Trying to follow recommendation from Meson documentation:
https://mesonbuild.com/Installing.html#installation-tags
Move tools into 'bin' or 'bin-devel' categories to keep only libs and
plugins in the default 'runtime' category. This simplifies distribution
of GStreamer application skipping parts that are not needed, similarly
to what Cerbero does by hardcoding huge list of files.
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/3017 >
2022-09-20 10:08:15 +00:00
Thibault Saunier
ec291ce6bb
validate: Update action types documentation
...
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/3040 >
2022-09-17 01:25:39 +00:00
Thibault Saunier
04f036edc4
validate:scenario: Some minor fixes
...
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/3007 >
2022-09-09 15:25:45 +00:00
Thibault Saunier
879ae5ba02
validate: Add a 'check-current-pad-caps' check action type
...
Allowing to check that a specific pad has some specific caps set
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/3007 >
2022-09-09 15:25:45 +00:00
Thibault Saunier
15e76aa7d6
validate: Add a 'check' field to waits to allow running check actions after it get executed
...
Adding the notion of 'check' action types
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/3007 >
2022-09-09 15:25:45 +00:00
Thibault Saunier
6a4425e46a
meson: Call pkgconfig.generate in the loop where we declare plugins dependencies
...
Removing some copy pasted code
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/2970 >
2022-09-01 21:17:35 +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