mirror of
https://gitlab.freedesktop.org/gstreamer/gstreamer.git
synced 2025-01-20 06:08:14 +00:00
48fa4b6c4b
Otherwise there is a race leading to a segfault where ASYNC_DONE is received *after* generating EOS ourselves: ``` Executing stop ( - generated-after-eos=true ) <Caught SIGNAL: SIGSEGV> **Stack trace**: ... Thread 1 (Thread 0x7f3c3e50df00 (LWP 10183)): #8 0x00007f3c3f01bea5 in g_cclosure_marshal_generic (closure=<optimized out>, return_gvalue=<optimized out>, n_param_values=<optimized out>, param_values=<optimized out>, invocation_hint=<optimized out>, marshal_data=<optimized out>) at gclosure.c:1496 #9 0x00007f3c3f01b3dd in g_closure_invoke (closure=0x1855980, return_value=0x0, n_param_values=2, param_values=0x7ffda2e0a7e0, invocation_hint=0x7ffda2e0a760) at gclosure.c:810 #10 0x00007f3c3f02e983 in signal_emit_unlocked_R (node=node@entry=0x15af670, detail=detail@entry=298, instance=instance@entry=0x171fc80, emission_return=emission_return@entry=0x0, instance_and_params=instance_and_params@entry=0x7ffda2e0a7e0) at gsignal.c:3635 #11 0x00007f3c3f037aaa in g_signal_emit_valist (instance=<optimized out>, signal_id=<optimized out>, detail=<optimized out>, var_args=var_args@entry=0x7ffda2e0a9c0) at gsignal.c:3391 [Inferior 1 (process 10183) detached] ``` |
||
---|---|---|
.. | ||
common@59cb678164 | ||
data | ||
docs | ||
gst | ||
gst-libs | ||
launcher | ||
pkgconfig | ||
plugins | ||
po | ||
tests | ||
tools | ||
win32 | ||
.gitignore | ||
AUTHORS | ||
autogen.sh | ||
ChangeLog | ||
configure.ac | ||
COPYING | ||
gst-validate.doap | ||
Makefile.am | ||
meson.build | ||
NEWS | ||
README | ||
RELEASE |
== 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 The 'master' branch uses gstreamer 1.0, there is a '0.10' branch for gstreamer 0.10. The default is the 'master' branch, if you want to use it for 0.10, do: git checkout --track origin/0.10 Build with: ./autogen.sh --prefix=<installation-prefix> make sudo make 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