This directory contains regression tests, functionality tests, examples,
benchmarks, ...

benchmarks/
   benchmarks to profile pieces of GStreamer
check/
   unit tests using the check library, non-interactive
examples/
   small examples demonstrating the use of various features
misc/
   prototypes, random bits, ...

