<html dir="ltr">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
<style id="owaParaStyle" type="text/css">P {margin-top:0;margin-bottom:0;}</style>
</head>
<body ocsi="0" fpstyle="1">
<div style="direction: ltr;font-family: Tahoma;color: #000000;font-size: 10pt;">Hello,<br>
<br>
I use the gstlatency tracer plugins but I found some limitations for my need so I would like to add multiple features to this plugin.<br>
So I have few questions:<br>
<br>
- Is there a basic implementation of the timer feature like latency(timer=100ms) or its only in the draft document ?<br>
- Is the parameters system for the trace plugins already exist ? I don't manage to find a trace plugin with a parameter as example.<br>
<br>
I would add to add the following parameters :<br>
<br>
start/stop/duration parameters<br>
------------------------------<br>
<br>
The goal is to add 3 optionnals parameters to latency plugin to enables traces for a limited duration and/or start the trace after few seconds.<br>
In my use case, I have a pipeline with a valve and i want to read the latency when the valve is open (this is not the case at the start of my process).<br>
<br>
<br>
Examples :<br>
<br>
latency(start=10s)                 # trace from 10s to EOS<br>
latency(start=120s;duration=5s)    # trace from 120s during 5s<br>
latency(start=120s;end=130s)       # trace from 120s during 10s<br>
latency(end=30s)                   # trace from pipeline start during 30s<br>
<br>
These parameters could be useful for all GstTracer plugins.<br>
<br>
from_pad/to_pad parameters<br>
--------------------------<br>
<br>
The goal is to add 2 parameters to configure the bound of the latency mesurement. This could permit to  mesure the latency on a part of the pipeline and not only the whole pipeline. The parameters from_pad and to_pad would target a specific pad in the pipeline.<br>
<br>
<br>
Examples with this pipeline :  videotestsrc ! videoconvert name=convert ! gaussianblur name=blur ! videoconvert ! autovideosink<br>
<br>
latency(to_pad=blur)   # measure latency between videotestsrc:src and blur:sink<br>
latency(from_pad=blur)   # measure latency between blur:src and autovideosink:sink<br>
latency(from_pad=convert, to_pad=blur) # measure latency between convert:src and blur:sink<br>
latency(to_pad=blur:src) # measure latency between videotestsrc:src and blur:src<br>
latency(from_pad=blur:sink, to_pad=blur:src) # measure latency between blur:sink and blur:src<br>
latency(to_pad=blur), latency(from_pad=blur:sink) # measure separately latency from videotestsrc:src to blur:sink and from blur:sink to autovideosink:sink<br>
<br>
The main difficulty of this change is to pass parameter to the plugins. Then the current event generation system in pad hook should works.<br>
<br>
output destination parameter<br>
----------------------------<br>
<br>
The goal is to have a separate log for each tracing plugin. For this an optional parameter for all tracing plugins could be useful.<br>
<br>
Example :<br>
latency(output=/tmp/latency.log), rusage(output=/tmp/rusage.log)<br>
<br>
<br>
<br>
Do you think these changes could be integrated upstream ? Do you have any suggestions to improve all this ?<br>
<br>
<br>
Thanks,<br>
<br>
Frédéric Bertolus<br>
</div>
</body>
</html>