Alicia Boya García
506af5b8e4
gst-validate: Don't treat FALSE when sending flushes as an error
...
gst_element_send_event(FLUSH_START / FLUSH_STOP) returns FALSE in cases
where any of the most downstream elements have unlinked pads, even if
the pipeline is successfully flushed.
Currently this is considered expected behavior in GStreamer. This patch
updates gst-validate to treat it as such and therefore not fail the test
for a "failing" flush.
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/7064 >
2024-07-02 19:06:02 +00:00
Jordan Petridis
60454336c8
validate: Remove G_REGEX_OPTIMIZE usage
...
It's not needed and causes issues with valgrind (which doesn't support jit)
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/7112 >
2024-06-28 14:13:31 +00:00
Thibault Saunier
c8dfb7c8f0
validate: tool: Use gst_macos_main
...
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/7056 >
2024-06-18 22:31:40 +00:00
Loïc Le Page
cbc58c0483
gst-validate: add formatting for GstAudioMeta
...
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/6461 >
2024-04-16 15:33:42 +00:00
Thibault Saunier
2a4b9c8dc1
validate: reporter: Use an MT safe weak ref to reporter for GLog handling
...
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/6412 >
2024-03-20 16:45:34 +00:00
Jonas K Danielsson
f0b8a33f10
check: Add valgrind leak exception for srt test
...
The srt unittest test_src_listener_sink_call will sometimes fail under
valgrind with the following splat:
Memcheck, a memory error detector
Copyright (C) 2002-2017, and GNU GPL'd, by Julian Seward et al.
Using Valgrind-3.18.1 and LibVEX; rerun with -h for copyright info
Parent PID: 14579
HEAP SUMMARY:
in use at exit: 799,848 bytes in 2,182 blocks
total heap usage: 64,090 allocs, 61,908 frees, 37,891,032 bytes allocated
120 bytes in 1 blocks are definitely lost in loss record 1,563 of 1,681
at 0x4842FF5: operator new(unsigned long) (vg_replace_malloc.c:422)
by 0x6031E29: srt::sync::SetThreadLocalError(CUDTException const&) (sync_posix.cpp:461)
by 0x5FCD77E: CUDT::epoll_wait(int, std::set<int, std::less<int>,
std::allocator<int> >*, std::set<int, std::less<int>,
std::allocator<int> >*, long, std::set<int, std::less<int>,
std::allocator<int> >*, std::set<int, std::less<int>, std::allocator<int> >*) [clone .cold] (api.cpp:3796)
by 0x5FE2F79: UDT::epoll_wait2(int, int*, int*, int*, int*, long, int*, int*, int*, int*) (api.cpp:4277)
by 0x5F0C626: gst_srt_object_read (gstsrtobject.c:1569)
by 0x5F0F978: gst_srt_src_fill (gstsrtsrc.c:180)
by 0x5F5A2A1: gst_base_src_default_create (gstbasesrc.c:1620)
by 0x5F5C9AE: gst_base_src_get_range (gstbasesrc.c:2630)
by 0x5F5EF5A: gst_base_src_loop (gstbasesrc.c:2959)
by 0x4918B13: gst_task_func (gsttask.c:399)
by 0x4A60B33: g_thread_pool_thread_proxy.lto_priv.0 (gthreadpool.c:354)
by 0x4A5DC41: g_thread_proxy (gthread.c:826)
by 0x4F532A4: start_thread (pthread_create.c:481)
by 0x4C71322: clone (clone.S:95)
An issue has been started against libsrt here:
https://github.com/Haivision/srt/issues/2867
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/6098 >
2024-02-12 13:24:21 +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
Thibault Saunier
1891fff7a9
validate: flow: Plug leak about ignored fields
...
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/899 >
2024-01-31 11:00:24 +00:00
Tim-Philipp Müller
bd77d81267
validate: filter check.gst-editing-services.complex_effect_bin_desc
...
Add this check to the known issues list, fails way too often.
https://gitlab.freedesktop.org/gstreamer/gstreamer/-/issues/2973
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/6003 >
2024-01-29 00:08:55 +00:00
Robert Mader
46259c634b
check: Add valgrind leak exception for glcolorconvert
...
The following commit will add a test triggering a leak in GLX / the
driver.
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/5948 >
2024-01-25 20:39:37 +00:00
ekwange
100497df20
validate: check: Fix known-not-leaky to work
...
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/3940 >
2024-01-15 19:56:06 +00:00
ekwange
264a57dabe
validate: launcher: Fix typo
...
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/3940 >
2024-01-15 19:56:06 +00:00
ekwange
248044329c
validate: launcher: Add debug message and fix typo
...
Add messages to clearly see why test was excluded.
And fix typo prerrol
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/3940 >
2024-01-15 19:56:06 +00:00
Thibault Saunier
7fe786135f
validate: scenario: Do not use a NULL scenario description structure
...
The scenario meta is optional and we have to take that into account.
Fixes: https://gitlab.freedesktop.org/gstreamer/gstreamer/-/issues/3199
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/5892 >
2024-01-06 09:47:16 -03:00
Thibault Saunier
04ae39f25b
validate: scenario: Add a 'forward-eos' parameter to forward-appsink-to-appsrc
...
There might be cases where the user doesn't want to forward it
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/5803 >
2023-12-27 02:14:19 +00:00
Thibault Saunier
80e44ac344
validate: scenario: Handle the case where execute_next_action is called with an action that is OK
...
It is now a valid case when running subaction in foreign scenarios
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/5803 >
2023-12-27 02:14:19 +00:00
Thibault Saunier
93f1ffe715
validate: doc: Enhance the way we render action type parameters
...
And update gst-validate-action-types.md
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/5803 >
2023-12-27 02:14:19 +00:00
Thibault Saunier
f1e34de800
validate: scenario: Do not print position on sub pipelines
...
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/5803 >
2023-12-27 02:14:19 +00:00
Thibault Saunier
a4a97c7568
validate: doc: Enhance documentation about testfile and meta
fields
...
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/5803 >
2023-12-27 02:14:19 +00:00
Thibault Saunier
a5a65b74ff
validate: scenario: Ensure all pipelines with scenarios are stopped when exiting runner
...
Otherwise we end up with "dangling" sub pipelines on SIGINT
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/5803 >
2023-12-27 02:14:18 +00:00
Thibault Saunier
6abc36ad34
validate: scenario: Cleanup the 'switch-track' action implementation
...
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/5803 >
2023-12-27 02:14:18 +00:00
Thibault Saunier
fbf478b3f5
validate: scenario: Add a way to set pipeline base-time, start-time and force using the system clock
...
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/5803 >
2023-12-27 02:14:18 +00:00
Thibault Saunier
aad06b091e
validate: scenario: Add an action type to forward stream from an appsink to an appsrc
...
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/5803 >
2023-12-27 02:14:18 +00:00
Thibault Saunier
fd4cd3d85f
validate:scenario: Add a 'create-sub-pipeline' action type
...
And allow running parallel pipelines, scenarios, and pass data from
one to the other using appsrc/appsink
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/5803 >
2023-12-27 02:14:18 +00:00
Philippe Normand
0b5e2ee80a
validate: Fix memory leak in gst_validate_abort()
...
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/5757 >
2023-12-04 20:04:05 +00:00
ekwang.lee
6b0f7729e1
validate:launcher: Using surrogateescape error handler
...
Use surrogateescape error handler to convert undecodable bytes without error.
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/5008 >
2023-11-28 13:00:15 +00:00
Thibault Saunier
ce661c3b99
validate: Add support to replace variables in deeply nested structures
...
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/5713 >
2023-11-23 16:56:40 -03:00
Thibault Saunier
2f7d402f7b
validate: utils: Plug some leaks
...
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/5636 >
2023-11-17 15:57:46 +00:00
Thibault Saunier
ef62696505
fakevideodec: Add some tests
...
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/5636 >
2023-11-17 15:57:46 +00:00
Thibault Saunier
47dbd03604
validate: scenario: Add a 'fill-mode' to the appsrc-push
action type
...
So the user doesn't need a file
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/5636 >
2023-11-17 15:57:46 +00:00
Thibault Saunier
a075264215
validate: scenario: Avoid reporting issue with SCENARIO_LOCK taken
...
This might lead to deadlock and is not needed here
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/5666 >
2023-11-15 19:07:36 +00:00
Thibault Saunier
a56abe2c9d
validate: launcher: Lower some 'coredumpctl' info messages
...
Those are verbose and are not really useful in our context
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/5666 >
2023-11-15 19:07:36 +00:00
Thibault Saunier
e251522805
validate: scenario: Add a "select-streams" action type
...
This is a "non-blocking" action type which will send the `select-streams`
event when a `GST_STREAM_COLLECTION` message is received on the bus.
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/5666 >
2023-11-15 19:07:36 +00:00
Thibault Saunier
d81fe1352c
validate: ssim: Minor debug message enhancements
...
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/5666 >
2023-11-15 19:07:36 +00:00
Thibault Saunier
ad68ce7f64
validate: launcher: Make the output markdown file more readable
...
Without ansi color codes and marking logs as such
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/5666 >
2023-11-15 19:07:36 +00:00
Thibault Saunier
c530c94239
validate: launcher: Keep gst debug logs in main log fails in debug mode
...
It makes reading the logs much simpler
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/5666 >
2023-11-15 19:07:36 +00:00
Thibault Saunier
89434a077c
validate: launcher: Add a way to specify the source to use for precise seeking tests
...
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/5666 >
2023-11-15 19:07:36 +00:00
Thibault Saunier
ca584da58d
validate: scenario: Add a way to wait for a property to reach a specified value
...
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/5666 >
2023-11-15 19:07:36 +00:00
Thibault Saunier
158f469de6
validate: scenario: Add a way to accept suposdely invalid position reporting
...
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/5666 >
2023-11-15 19:07:36 +00:00
Jordan Petridis
e436f87ea2
launcher: Fix ambigious python strings
...
```
gst-devtools/validate/launcher/baseclasses.py:2399: SyntaxWarning: invalid escape sequence '\.'
if re.findall("%s\..*\.%s$" % (re.escape(mfile_bname), self.FILE_EXTENSION), f):
gst-devtools/validate/launcher/apps/gstvalidate.py:1354: SyntaxWarning: invalid escape sequence '\.'
("file\.transcode.*mxf",
```
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/5541 >
2023-11-11 12:47:12 +00:00
Jordan Yelloz
b1f3722530
gst-validate: Fixed compatibility with Python 3.12
...
config.readfp() was removed in python 3.12 and config.read_file() does the same
thing and has been available since Python 3.2
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/5624 >
2023-11-08 15:50:52 -07:00
Detlev Casanova
78e40a018f
dev-tools: Add glib valgrind suppressions
...
The local glib subproject doesn't exist so the glib/glib.supp file
cannot be included.
As it is needed for the do_lookup_by_name() function call, let's add the
system wide suppression file so that its version matches the installed glib
version.
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/5434 >
2023-10-31 12:06:30 -04:00
Doug Nazar
bac8a74f04
validate: Don't clear global mutex
...
gst_validate_deinit() may be called multiple times and expects the
mutex to still be valid.
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/5539 >
2023-10-25 22:56:15 +00:00
Doug Nazar
aee8ac1942
validate: Initialize mutex before use
...
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/5539 >
2023-10-25 22:56:15 +00:00
Jordan Petridis
18578643ca
check: Move CI specific ignored tests into their own list
...
Instead of ignoring the tests always, check if a CI env var is
present and only ignore the tests then.
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/1060 >
2023-10-22 05:23:30 +03:00
Jordan Petridis
88e6dd0555
ci: switch the Fedora base image to f34
...
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/1060 >
2023-10-22 05:23:28 +03:00
Alicia Boya García
135f859629
validate: Fix error on GstTest.copy()
...
Fixes regression introduced in ba61160d6c
,
where running check tests with gst-validate-launcher -f would trigger
this exception:
AttributeError: 'GstCheckTest' object has no attribute 'reports'.
Did you mean: 'reporter'?
The member `reports` is meant to be just part of GstValidateTest, but
not other subclasses, even though a usage is still found in the base
class GstTest in the method test_end().
This patch introduces an override of the methods copy() and test_end()
in GstValidateTest so that `reports` is copied and cleared respectively,
but only for validate tests.
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/5281 >
2023-09-05 14:16:57 +00:00
Alicia Boya García
f033160ea2
gst-validate: Use fatal-criticals by default
...
Fixes https://gitlab.freedesktop.org/gstreamer/gstreamer/-/issues/2903
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/5182 >
2023-09-05 13:25:40 +00:00
Sebastian Dröge
d50c842d87
video: Fix ordering of video formats in GST_VIDEO_FORMATS_ALL_STR
...
This now follows the algorithm again that is described in the
documentation and implemented in gstreamer-rs.
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/5243 >
2023-08-25 15:27:02 +00:00
Piotr Brzeziński
2cc30770cf
tools: Disable fault signal handlers in gst-launch/gst-validate on macOS
...
By default, macOS attempts to run lldb against a misbehaving process to handle the crash. This does not play well
with the SISEGV/SIGQUIT handler we add in gst-launch/gst-validate. The 'spinning' mechanism causes the lldb
and debugserver processes ran by macOS to misbehave, taking 100% CPU and rendering both themselves and the GStreamer
instance frozen and very hard to effectively kill. macOS's Activity Monitor is also unusable while this is happening.
This patch takes the quickest possible solution of just disabling those signal handlers entirely on macOS.
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/5190 >
2023-08-16 08:52:36 +00:00