From RidgeRun Developer Connection
Jump to: navigation, search


Getting Started

GstShark is an open-source benchmarking and profiling tool for GStreamer 1.7.1 (and above).


GstShark is an open-source project from Ridgerun that provides benchmarks and profiling tools for GStreamer 1.7.1 (and above). It includes tracers for generating debug information plus some tools to analyze the debug information. GstShark provides easy to use and useful tracers, paired with analysis tools to enable straightforward optimizations.

GstShark leverages GStreamer's tracing hooks and open-source and standard tracing and plotting tools to simplify the process of understanding the bottlenecks in your pipeline.

Overview video

RR Sponsor.jpg


GstShark is a set of data acquisition tools that yield some intermediate results and some data analysis tools that process those results.


GstShark currently includes nine different tracers. They are described in detail in the tracers section later in this documentation.

Tracer Description
InterLatency Measures the latency time at different points in the pipeline.
ProcTime Measures the time an element takes to produce an output given the corresponding input.
Framerate Measures the amount of frames that go through a src pad every second.
ScheduleTime Measures the amount of time between two consecutive buffers in a sink pad. T
CPUUsage Measures the CPU usage every second. In multiprocessor systems this measurements are presented per core.
Graphic Records a graphical representation of the current pipeline.
Bitrate Measures the current stream bitrate in bits per second.
Queue Level Measures the amount of data queued in every queue element in the pipeline.
Buffer Prints information of every buffer that passes through every sink pad in the pipeline. This information contains PTS and DTS, duration, size, flags and even refcount.

Results generated

GstShark outputs two sets of data that are relevant for the debug of the pipelines.

Data Description
CTF trace files Trace files that comply with the standard Common Trace File format.
Pipeline diagram Useful visualization of the pipeline generated by the graphic tracer.

Analysis tools

GstShark provides some analysis tools that will help in parsing and extracting useful information from the trace data.

Tool Description
GstShark plot Octave scripts that process the trace files into easy-to-understand charts.
Eclipse plugins Experimental support for loading trace files in to Eclipse and providing charts.

Getting Started

Start navigating this wiki by going to the Getting Started page in the table of contents.

How to reach RidgeRun

Please reach us at for technical questions.


Getting Started