gstreamer/validate/docs/validate/envvariables.xml

218 lines
7.9 KiB
XML

<?xml version="1.0"?>
<!DOCTYPE book PUBLIC "-//OASIS//DTD DocBook XML V4.1.2//EN"
"http://www.oasis-open.org/docbook/xml/4.1.2/docbookx.dtd" [
<!ENTITY % version-entities SYSTEM "version.entities">
%version-entities;
]>
<sect1 id="envvariables" revision="20 Apr 2015">
<title>GstValidate Environment Variables</title>
<para>
The runtime behaviour of GstValidate applications can be influenced by a number of environment variables.
</para>
<formalpara id="GST-VALIDATE:CAPS">
<title><envar>GST_VALIDATE</envar></title>
<para>
This environment variable can be set to a list of debug options,
which cause GstValidate to print out different types of test result information
and consider differently the level of the reported issues.
<variablelist>
<varlistentry>
<term>fatal-criticals</term>
<listitem><para>Causes GstValidate to consider only critical issues as import enough to consider the test failed (default behaviour)</para>
</listitem>
</varlistentry>
<varlistentry>
<term>fatal-warnings</term>
<listitem><para>Causes GstValidate to consider warning, and critical issues as import enough to consider the test failed</para>
</listitem>
</varlistentry>
<varlistentry>
<term>fatal-issues</term>
<listitem><para>Causes GstValidate to consider issue, warning, and critical issues as import enough to consider the test failed</para>
</listitem>
</varlistentry>
<varlistentry>
<term>print-issues</term>
<listitem><para>Causes GstValidate to print issue, warning and critical issues in the final reports (default behaviour)</para>
</listitem>
</varlistentry>
<varlistentry>
<term>print-warnings</term>
<listitem><para>Causes GstValidate to only print warning and critical issues in the final reports</para>
</listitem>
</varlistentry>
<varlistentry>
<term>print-criticals</term>
<listitem><para>Causes GstValidate to only print critical issues in the final reports</para>
</listitem>
</varlistentry>
</variablelist>
</para>
</formalpara>
<formalpara id="GST-VALIDATE-FILE">
<title><envar>GST_VALIDATE_FILE</envar></title>
<para>
Set this variable to a colon-separated list of paths to redirect all
GstValidate messages to this file. If left unset, debug messages will be
outputed into the standard error.
</para>
<para>
You can use the special names <literal>stdout</literal> and <literal>stderr</literal> to use those output.
</para>
</formalpara>
<formalpara id="GST-VALIDATE-SCENARIOS-PATH">
<title><envar>GST_VALIDATE_SCENARIOS_PATH</envar></title>
<para>
Set this variable to a colon-separated list of paths. GstValidate will
scan these paths for GstValidate scenario files.
By default GstValidate will look for scenarios in the user data directory as
specified in the <ulink url="http://www.freedesktop.org/wiki/Software/xdg-user-dirs/">XDG standard</ulink>:
<filename>.local/share/gstreamer-&GST_API_VERSION;/validate/scenarios</filename>
and the system wide user data directory: <filename>/usr/lib/gstreamer-&GST_API_VERSION;/validate/scenarios</filename>
</para>
</formalpara>
<formalpara id="GST-VALIDATE-CONFIG">
<title><envar>GST_VALIDATE_CONFIG</envar></title>
<para>
Set this variable to a colon-separated list of paths to GstValidate config files.
The config file has a format similar to the scenario file. The name of the configuration
corresponds to the name of the plugin the configuration applies to.
</para>
<para>
The special name "core" is used to configure GstValidate core functionnalities
(monitors, scenarios, etc...).
</para>
<informalexample>
For example if you want to make sure to set a property on a element of a type
(for example to disable QoS on all sinks) you can do:
<programlisting>
core, action=set-property, target-element-klass=Sink
</programlisting>
</informalexample>
<para>
For more examples you can look at the ssim GstValidate plugin documentation to
see how to configure that plugin.
</para>
</formalpara>
<formalpara id="GST-VALIDATE-OVERRIDE">
<title><envar>GST_VALIDATE_OVERRIDE</envar></title>
<para>
Set this variable to a colon-separated list of dynamically linkable files that GstValidate will
scan looking for overrides.
By default GstValidate will look for scenarios in the user data directory as
specified in the <ulink url="http://www.freedesktop.org/wiki/Software/xdg-user-dirs/">XDG standard</ulink>:
<filename>.local/share/gstreamer-&GST_API_VERSION;/validate/scenarios</filename>
and the system wide user data directory: <filename>/usr/lib/gstreamer-&GST_API_VERSION;/validate/scenarios</filename>
</para>
</formalpara>
<formalpara id="GST-VALIDATE-WAIT-MULTIPLIER">
<title><envar>GST_VALIDATE_SCENARIO_WAIT_MULITPLIER</envar></title>
<para>
A decimal number to set as a multiplier for the wait actions. For example if you set
<literal>GST_VALIDATE_SCENARIO_WAIT_MULITPLIER=0.5</literal>, for a wait action that has a duration of 2.0
the waiting time will only be of 1.0 second. If set to 0, wait action will be ignored.
</para>
</formalpara>
<formalpara id="GST-VALIDATE-REPORTING-DETAILS">
<title><envar>GST_VALIDATE_REPORTING_DETAILS</envar></title>
<para>
The reporting level can be set through the <envar>GST_VALIDATE_REPORTING_DETAILS</envar>
environment variable, as a comma-separated list of (optional) object categories / names
and levels. Omit the object category / name to set the global level.
<informalexample>
Examples:
<programlisting>
GST_VALIDATE_REPORTING_DETAILS=synthetic,h264parse:all
GST_VALIDATE_REPORTING_DETAILS=none,h264parse::sink_0:synthetic
</programlisting>
</informalexample>
<para>
Levels being:
</para>
<variablelist>
<varlistentry>
<term>none</term>
<listitem><para>No debugging level specified or desired. Used to deactivate debugging output.</para>
</listitem>
</varlistentry>
<varlistentry>
<term>
synthetic
</term>
<listitem>
<para>
Summary of the issues found, with no details.
</para>
</listitem>
</varlistentry>
<varlistentry>
<term>
subchain
</term>
<listitem>
<para>
If set as the default level, similar issues can be reported multiple times for
different subchains. If set as the level for a particular object (<literal>my_object:subchain</literal>),
validate will report the issues where the object is the first to report an issue for
a subchain.
</para>
</listitem>
</varlistentry>
<varlistentry>
<term>
monitor
</term>
<listitem>
<para>
If set as the default level, all the
distinct issues for all the monitors will be reported.
If set as the level for a particular object, all the distinct issues for this object
will be reported.
Note that if the same issue happens twice on the same object, up until this
level that issue is only reported once.
</para>
</listitem>
</varlistentry>
<varlistentry>
<term>
all
</term>
<listitem>
<para>
All the issues will be reported, even those
that repeat themselves inside the same object. This can be <emphasis role="bold">very</emphasis> verbose if
set globally.
</para>
</listitem>
</varlistentry>
</variablelist>
Setting the reporting level allows to control the way issues are reported
when calling <function>gst_validate_runner_printf()</function>.
</para>
</formalpara>
</sect1>