gstreamer/validate
Thibault Saunier 9c08bfcaca validate:scenario: Replace the sub-action with a foreach action type
Sub-actions were really hard to use and conceptually weird. The
implementation was ugly and made the code complex for nothing.

Instead this commit introduces a `foreach` action type which allows
repeating actions passed in an `actions` array the number of time
specified by any `GstIntRange` value defined in the structure or its
`repeat` field.

This commit also makes sure that all action got through
gst_validate_action_set_done upon finalization.

+ Cleanup surrounding code
+ Add tests

Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-devtools/-/merge_requests/207>
2020-06-22 17:20:32 +00:00
..
data validate:scenario: Replace the sub-action with a foreach action type 2020-06-22 17:20:32 +00:00
docs validate: remove autotools build 2019-10-15 00:24:00 +01:00
gst validate:scenario: Replace the sub-action with a foreach action type 2020-06-22 17:20:32 +00:00
gst-libs validate:ssim: Allow specifying file framerate to use frame numbers during comparison 2020-03-12 12:35:45 -03:00
launcher launcher: Keep running tests forever on KNOWN_ERROR 2020-06-22 17:20:32 +00:00
pkgconfig validate: remove autotools build 2019-10-15 00:24:00 +01:00
plugins validate:ssim: Avoid dereferencing NULL pointer 2020-06-06 06:00:11 +00:00
tests validate:scenario: Replace the sub-action with a foreach action type 2020-06-22 17:20:32 +00:00
tools validate: Add an action type to set timed value properties 2020-06-22 17:20:32 +00:00
.gitignore validate: remove autotools build 2019-10-15 00:24:00 +01:00
COPYING qa: adds gst-qa binary and basic classes to run the QA tests 2013-07-09 16:08:30 -03:00
meson.build Ship validate as part of a gst-devtools tarball 2020-05-29 14:30:26 +00:00
README validate: remove autotools build 2019-10-15 00:24:00 +01:00

== Gst-Validate

The goal of GstValidate is to be able to detect when elements are not
behaving as expected and report it to the user so he knows how things
are supposed to work inside a GstPipeline. In the end, fixing issues
found by the tool will ensure that all elements behave all together in
the expected way.

The easiest way of using GstValidate is to use one of its command-line
tools, located at tools/ directory. It is also possible to monitor
GstPipelines from any application by using the LD_PRELOAD gstvalidate
lib. The third way of using it is to write your own application that
links and uses libgstvalidate.

== BUILDING

Getting the code:

Releases are available at <URL>, download and extract the tarball. If you
want to use latest git version, do:

git clone <URI>

After cloning or extracting from a tarball, enter the gst-validate directory:

cd gst-validate

Build with:

meson build --prefix=<installation-prefix>
ninja -C build
sudo ninja -C build install (only if you want to install it)

Replace <installation-prefix> with your desired installation path, you can omit
the --prefix argument if you aren't going to install it or if you want the
default /usr/local. It is possible to use gst-validate CLI tools without
installation.

== INSTRUCTIONS

If you are looking for informations on how to use gst-validate -> docs/validate-usage.txt
If you are looking for informations on gst-validate design -> docs/validate-design.txt