GstValidate Reference Manual: Overview and usage

# Overview and usage

GstValidate is a tool that allows GStreamer developers to check that the GstElements they write behave the way they are supposed to. It was first started to provide plug-ins developers with a tool to check that they use the framework the proper way.

GstValidate implements a monitoring logic that allows the system to check that the elements of a GstPipeline respect some rules GStreamer components have to follow so that elements can properly interact together. For example, a GstValidatePadMonitor will make sure that if we receive a GstSegment from upstream, an equivalent segment is sent downstream before any buffer gets out.

Then GstValidate implements a reporting system that allows users to get detailed informations about what was not properly handle in elements. The reports are order by level of importance from "issue" to "critical".

Some tools have been implemented to help the developer validate and test their GstElement, you can have a look at the command line tools section to find more information

On top of those tools, the notion of scenario has been implemented so that developers can easily execute a set of actions on pipelines and thus test real world interactive cases and reproduce existing issues in a convenient way.