GstShark - Example: Scheduling time
Open-source project from Ridgerun. |
GstShark |
---|
Getting Started |
Generating trace files |
Tracer Parameters |
Available Tracers |
Results |
Visualization Tools |
Examples |
Contact Us |
The purpose of the GstShark scheduling time tracer is to measure the elapsed time from the moment when a buffer reaches the sink pad of an element and the moment in which it reaches the immediate consecutive element sink pad. It is important to mention that the measurements of this tracer do not take into consideration the time needed for the element to compute the arrived data buffer. Similar to the processing time tracer, the schedule time tracer provides information about the amount of time needed by the pipeline to process a given data buffer completely and with this gives an idea of the performance of the pipeline.
This tracer does not have any limitation with the category of the element that is being measured, and that makes the schedule time tracer specially useful for detecting bottlenecks on the pipeline, buffer drops, inter-clock differences, among others. For more detailed information about this tracer and its behavior refer to the tracer's page.
|
Test pipeline
The following pipeline is an encoding example and it is the type of pipeline in which the GstShark scheduling time tracer can be very helpful. It has a video source, then the user might have big concerns about issues like detecting bottlenecks or frame drops. This is important, in particular, if the user recording to a video file.
GST_DEBUG="GST_TRACER:7" GST_TRACERS="scheduletime" gst-launch-1.0 \ videotestsrc is-live=true do-timestamp=true num-buffers=50 ! \ 'video/x-raw, format=(string)YUY2, width=(int)1280, height=(int)720, framerate=(fraction)10/1' ! \ videoconvert ! queue ! avenc_h263p ! fakesink sync=true
Plot