<html dir="ltr"><head>
<meta http-equiv="Content-Type" content="text/html; charset=Windows-1252">
<style title="owaParaStyle"><!--P {
        MARGIN-TOP: 0px; MARGIN-BOTTOM: 0px
}
--></style>
</head>
<body ocsi="x">
<div dir="ltr"><font color="#000000" size="2" face="Tahoma">Hello Ross,</font></div>
<div dir="ltr"><font size="2" face="tahoma"></font> </div>
<div dir="ltr"> </div>
<div dir="ltr"><font color="#000000" size="2" face="Tahoma">thank you for your answer and the modification of the triggerEvent
<br>
function. Unfortunately I am not completely convinced whether this <br>
will cure all race conditions which are imaginable for the application <br>
of the trigger method in a multithreading environment. I will have to <br>
run some long term tests with the new eventTrigger method with 32 live <br>
sources and send you my findings. </font></div>
<div dir="ltr"><font color="#000000" size="2" face="Tahoma"></font> </div>
<div dir="ltr"><font color="#000000" size="2" face="Tahoma"></font> </div>
<div dir="ltr"><font color="#000000" size="2" face="Tahoma">One additional point which I would recommend you to change is the
<br>
implementation of the DeviceSource sample. Currently it uses a static <br>
member variable for the eventTriggerId. The intention was of course that <br>
all media sources which will be implemented by using that sample share ONE <br>
eventTriggerId for all instances of the same class. If that is done one <br>
will again have a racing condition similar to that of my first mail – even <br>
if your modification of triggerEvent would work for sources with individual <br>
eventTriggerIds. If multiple instances of source threads write to the same <br>
fTriggeredEventClientDatas array element then they can overwrite each other <br>
before the live555 message loop thread had a chance to handle the triggers. <br>
Probably one will miss triggers and henceforth images what can produce quite ugly
<br>
artifacts especially with H264 or MPEG2 sources. But even access violations <br>
are imaginable if the exchange of the instance pointers in the <br>
fTriggeredEventClientDatas array is not an atomic operation (what depends <br>
on the CPU which is used) and the callback function of the trigger <br>
gets corrupted source instance pointers when the live555 thread reads <br>
the values back from the array.</font></div>
<font color="#000000" size="2" face="Tahoma">
<div dir="ltr"><br>
 </div>
<div dir="ltr">Best regards<br>
Matthias<br>
</div>
</font>
<br>
<TABLE style="BORDER-COLLAPSE: collapse" id=table1 border=0 width="100%">
<TBODY>
<TR>
<TD width=272><FONT size=2 face=Arial>GEUTEBRÜCK GmbH </FONT></TD>
<TD width=45><FONT color=#808080 size=1 face=Arial>Tel: </FONT></TD>
<TD><FONT size=2 face=Arial>+49 2645 137-680 </FONT></TD></TR>
<TR>
<TD width=272><FONT size=2 face=Arial>Im Nassen 7-9</FONT></TD>
<TD width=45><FONT color=#808080 size=1 face=Arial>Mobil: </FONT></TD>
<TD><FONT size=2 face=Arial> </FONT></TD></TR>
<TR>
<TD width=272><FONT size=2 face=Arial>53578 Windhagen</FONT></TD>
<TD width=45><FONT color=#808080 size=1 face=Arial>Fax: </FONT></TD>
<TD><FONT size=2 face=Arial>+49 2645 137-999 </FONT></TD></TR>
<TR>
<TD width=272><FONT size=2 face=Arial><a href='http://www.geutebrueck.de' title='http://www.geutebrueck.de'>http://www.geutebrueck.de</a></FONT></TD>
<TD width=45><FONT color=#808080 size=1 face=Arial>E-Mail: </FONT></TD>
<TD><FONT size=2 face=Arial><a href='mailto:matthias.doering@geutebrueck.com' title='mailto:matthias.doering@geutebrueck.com'>matthias.doering@geutebrueck.com</a> </FONT></TD></TR>
<TR>
<TD colSpan=3><FONT color=#808080 size=1 face=Arial>Geschäftsführer: Katharina Geutebrück, Christoph Hoffmann; UST-Ident-Nr.: DE813443473; Handelsregister: HRB 14475 Montabaur </FONT></TD></TR>
<TR>
<TD><A href="http://www.geutebrueck.com/"><IMG border=0 hspace=0 alt=TopLine_Geu_Logo src="cid:topline_geu_logo.jpg" width=541 height=76></A> </TD>
<TR>
<TD style="BORDER-BOTTOM: 3px double" width=45>  </TD>
<TD style="BORDER-BOTTOM: 3px double">  </TD></TR></TBODY></TABLE>
<P align=justify><FONT color=#808080 size=1 face=Arial>Diese E-Mail enthält vertrauliche und/oder rechtlich geschützte Informationen. Wenn Sie nicht der richtige Adressat sind oder diese E-Mail irrtümlich erhalten haben, informieren Sie bitte sofort den Absender und vernichten Sie diese Mail. Das unerlaubte Kopieren sowie die unbefugte Weitergabe dieser Mail ist nicht gestattet. <BR><BR>This e-mail contains confidential and/or privileged information. If you are not the intended recipient (or have received this e-mail in error) please notify the sender immediately and destroy this e-mail. Any unauthorised copying, disclosure or distribution of the material in this e-mail is strictly forbidden. <BR><BR>Weder die GEUTEBRÜCK GmbH noch der Absender (Matthias Döring) übernehmen die Haftung für Viren; es obliegt Ihrer Verantwortung, die E-Mail und deren  Anhänge auf Viren zu prüfen. <BR> Anhänge: <BR> <BR>Versand am 19.06.2012 15:45 von Döring Matthias <BR><BR></FONT></P><br></body>
</html>