<html xmlns:v="urn:schemas-microsoft-com:vml" xmlns:o="urn:schemas-microsoft-com:office:office" xmlns:w="urn:schemas-microsoft-com:office:word" xmlns:m="http://schemas.microsoft.com/office/2004/12/omml" xmlns="http://www.w3.org/TR/REC-html40"><head>
<meta http-equiv="Content-Type" content="text/html; charset=us-ascii">
<meta name="Generator" content="Microsoft Word 15 (filtered medium)">
<style><!--
/* Font Definitions */
@font-face
{font-family:"Cambria Math";
panose-1:2 4 5 3 5 4 6 3 2 4;}
@font-face
{font-family:Calibri;
panose-1:2 15 5 2 2 2 4 3 2 4;}
/* Style Definitions */
p.MsoNormal, li.MsoNormal, div.MsoNormal
{margin:0in;
margin-bottom:.0001pt;
font-size:11.0pt;
font-family:"Calibri",sans-serif;}
a:link, span.MsoHyperlink
{mso-style-priority:99;
color:#0563C1;
text-decoration:underline;}
a:visited, span.MsoHyperlinkFollowed
{mso-style-priority:99;
color:#954F72;
text-decoration:underline;}
span.EmailStyle17
{mso-style-type:personal-compose;
font-family:"Calibri",sans-serif;
color:windowtext;}
.MsoChpDefault
{mso-style-type:export-only;
font-family:"Calibri",sans-serif;}
@page WordSection1
{size:8.5in 11.0in;
margin:1.0in 1.0in 1.0in 1.0in;}
div.WordSection1
{page:WordSection1;}
/* List Definitions */
@list l0
{mso-list-id:558591485;
mso-list-type:hybrid;
mso-list-template-ids:-1037111050 67698703 67698713 67698715 67698703 67698713 67698715 67698703 67698713 67698715;}
@list l0:level1
{mso-level-tab-stop:none;
mso-level-number-position:left;
text-indent:-.25in;}
@list l0:level2
{mso-level-number-format:alpha-lower;
mso-level-tab-stop:none;
mso-level-number-position:left;
text-indent:-.25in;}
@list l0:level3
{mso-level-number-format:roman-lower;
mso-level-tab-stop:none;
mso-level-number-position:right;
text-indent:-9.0pt;}
@list l0:level4
{mso-level-tab-stop:none;
mso-level-number-position:left;
text-indent:-.25in;}
@list l0:level5
{mso-level-number-format:alpha-lower;
mso-level-tab-stop:none;
mso-level-number-position:left;
text-indent:-.25in;}
@list l0:level6
{mso-level-number-format:roman-lower;
mso-level-tab-stop:none;
mso-level-number-position:right;
text-indent:-9.0pt;}
@list l0:level7
{mso-level-tab-stop:none;
mso-level-number-position:left;
text-indent:-.25in;}
@list l0:level8
{mso-level-number-format:alpha-lower;
mso-level-tab-stop:none;
mso-level-number-position:left;
text-indent:-.25in;}
@list l0:level9
{mso-level-number-format:roman-lower;
mso-level-tab-stop:none;
mso-level-number-position:right;
text-indent:-9.0pt;}
ol
{margin-bottom:0in;}
ul
{margin-bottom:0in;}
--></style><!--[if gte mso 9]><xml>
<o:shapedefaults v:ext="edit" spidmax="1026" />
</xml><![endif]--><!--[if gte mso 9]><xml>
<o:shapelayout v:ext="edit">
<o:idmap v:ext="edit" data="1" />
</o:shapelayout></xml><![endif]-->
</head>
<body lang="EN-US"><div>Le vendredi 09 juin 2017 à 15:35 +0000, William Salibrici a écrit :</div><blockquote type="cite">
<div class="WordSection1">
<p class="MsoNormal" style="margin-bottom:8.0pt;line-height:106%">I am using the following simple pipeline segment to add a text area under my compositor video output. In a separate thread, I set the “text” property once every second to update the rendered
text. For my application, the text updates must be real-time. <o:p></o:p></p>
<p class="MsoNormalCxSpMiddle" style="margin-bottom:8.0pt;mso-add-space:auto;line-height:106%">
<o:p> </o:p></p>
<p class="MsoNormalCxSpMiddle" style="mso-margin-top-alt:0in;margin-right:0in;margin-bottom:8.0pt;margin-left:.5in;mso-add-space:auto;line-height:106%">
videotestsrc pattern=white ! textoverlay ! queue ! comp.sink_2 <o:p></o:p></p>
<p class="MsoNormalCxSpMiddle" style="margin-bottom:8.0pt;mso-add-space:auto;line-height:106%">
<o:p> </o:p></p>
<p class="MsoNormal" style="margin-bottom:8.0pt;line-height:106%">My development machine is windows 7 and I’m using GStreamer 1.10.4 with your windows pre-built binaries.
<o:p></o:p></p>
<p class="MsoNormal" style="margin-bottom:8.0pt;line-height:106%">My overall pipeline runs without errors but the text updates are not always 1 second apart. Sometimes there are pauses between updates greater than 1 second. Other times updates come back to
back with no discernable delay. Sometimes updates appear to be skipped altogether [maybe they are just flying by too fast for me to see them]. The latency for displaying text seems to vary quite a bit.
<o:p></o:p></p>
<p class="MsoNormal" style="margin-bottom:8.0pt;line-height:106%">So, here are some questions:<o:p></o:p></p>
<ol style="margin-top:0in" start="1" type="1">
<li class="MsoNormalCxSpMiddle" style="margin-bottom:8.0pt;mso-add-space:auto;line-height:106%;mso-list:l0 level1 lfo1">
What is the latency for displaying text [the time between when the g_object_set function is called to set the text to be displayed and when the text will actually be displayed]?
<o:p></o:p></li><li class="MsoNormalCxSpMiddle" style="margin-bottom:8.0pt;mso-add-space:auto;line-height:106%;mso-list:l0 level1 lfo1">
Is there any way to achieve a relatively constant latency for displaying text? <o:p>
</o:p></li><li class="MsoNormalCxSpMiddle" style="margin-bottom:8.0pt;mso-add-space:auto;line-height:106%;mso-list:l0 level1 lfo1">
Is there any way force the text to be synchronized with the other input video streams to my compositor?
</li></ol></div></blockquote><div><br></div><div>textoverlay has a text pad. You can use this pad to stream text with timestamp on it. The simply way it to connect "filesrc location=file.srt ! subparse ! ..." Subpase supports most common text based sub-title formats, letting you set a timestamp and a duration for each text. You can of course replace filesrc with an appsrc or fdsrc to stream the data.</div><div><br></div><div>Nicolas</div></body></html>