<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 14 (filtered medium)"><style><!--
/* Font Definitions */
@font-face
        {font-family:Calibri;
        panose-1:2 15 5 2 2 2 4 3 2 4;}
@font-face
        {font-family:Tahoma;
        panose-1:2 11 6 4 3 5 4 4 2 4;}
/* Style Definitions */
p.MsoNormal, li.MsoNormal, div.MsoNormal
        {margin:0cm;
        margin-bottom:.0001pt;
        font-size:11.0pt;
        font-family:"Calibri","sans-serif";
        mso-fareast-language:EN-US;}
a:link, span.MsoHyperlink
        {mso-style-priority:99;
        color:blue;
        text-decoration:underline;}
a:visited, span.MsoHyperlinkFollowed
        {mso-style-priority:99;
        color:purple;
        text-decoration:underline;}
p.MsoAcetate, li.MsoAcetate, div.MsoAcetate
        {mso-style-priority:99;
        mso-style-link:"Balloon Text Char";
        margin:0cm;
        margin-bottom:.0001pt;
        font-size:8.0pt;
        font-family:"Tahoma","sans-serif";
        mso-fareast-language:EN-US;}
span.BalloonTextChar
        {mso-style-name:"Balloon Text Char";
        mso-style-priority:99;
        mso-style-link:"Balloon Text";
        font-family:"Tahoma","sans-serif";}
span.EmailStyle19
        {mso-style-type:personal-compose;
        font-family:"Calibri","sans-serif";
        color:windowtext;}
.MsoChpDefault
        {mso-style-type:export-only;
        font-size:10.0pt;
        font-family:"Calibri","sans-serif";
        mso-fareast-language:EN-US;}
@page WordSection1
        {size:612.0pt 792.0pt;
        margin:72.0pt 90.0pt 72.0pt 90.0pt;}
div.WordSection1
        {page:WordSection1;}
--></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=FR-CA link=blue vlink=purple><div class=WordSection1><p class=MsoNormal><span lang=EN-CA>Hi,<o:p></o:p></span></p><p class=MsoNormal><span lang=EN-CA>I have two suggestions of modification to the code.  Well, it is at least things I’ve added to the library I’m using.<o:p></o:p></span></p><p class=MsoNormal><span lang=EN-CA><o:p> </o:p></span></p><p class=MsoNormal><span lang=EN-CA>The first modification is to avoid compilation warnings under windows.  It is just to add the file “errno.h” in “Netcommon.h”.  This way the redefinition warnings do not appear and disappear depending on inclusion order.<o:p></o:p></span></p><p class=MsoNormal><span lang=EN-CA><o:p> </o:p></span></p><p class=MsoNormal><span lang=EN-CA>  #if defined(__WIN32__) || defined(_WIN32) || defined(_WIN32_WCE)<o:p></o:p></span></p><p class=MsoNormal><span lang=EN-CA>  /* Windows */<o:p></o:p></span></p><p class=MsoNormal><span lang=EN-CA>  #if defined(WINNT) || defined(_WINNT) || defined(__BORLANDC__) || defined(__MINGW32__) || defined(_WIN32_WCE) || defined (_MSC_VER)<o:p></o:p></span></p><p class=MsoNormal><span lang=EN-CA>  #define _MSWSOCK_<o:p></o:p></span></p><p class=MsoNormal><span lang=EN-CA>  #include <winsock2.h><o:p></o:p></span></p><p class=MsoNormal><span lang=EN-CA>  #include <ws2tcpip.h><o:p></o:p></span></p><p class=MsoNormal><span lang=EN-CA>  #endif<o:p></o:p></span></p><p class=MsoNormal><span lang=EN-CA>  #include <windows.h><o:p></o:p></span></p><p class=MsoNormal><span lang=EN-CA>+ #include <errno.h><o:p></o:p></span></p><p class=MsoNormal><span lang=EN-CA>  #include <string.h><o:p></o:p></span></p><p class=MsoNormal><span lang=EN-CA><o:p> </o:p></span></p><p class=MsoNormal><span lang=EN-CA>The second suggestion is about the stream replicator.  I observed that component do not pass doStopGettingFrame to its source.  I don’t know if it is on purpose though.  In my application, the source needs to know when all replicas stop so I added this to the end of the function “deactivateStreamReplica”:<o:p></o:p></span></p><p class=MsoNormal><span lang=EN-CA><o:p> </o:p></span></p><p class=MsoNormal><span lang=EN-CA>  if(fNumActiveReplicas == 0)<o:p></o:p></span></p><p class=MsoNormal><span lang=EN-CA>  {<o:p></o:p></span></p><p class=MsoNormal><span lang=EN-CA>    fInputSource->stopGettingFrames();  //last replica stop, pass message to source<o:p></o:p></span></p><p class=MsoNormal><span lang=EN-CA>  }<o:p></o:p></span></p><p class=MsoNormal><span lang=EN-CA><o:p> </o:p></span></p><p class=MsoNormal><span lang=EN-CA>I hope these suggestions can be of some use.<o:p></o:p></span></p><p class=MsoNormal><span lang=EN-CA>Regards,<o:p></o:p></span></p><p class=MsoNormal><span lang=EN-CA><o:p> </o:p></span></p><p class=MsoNormal><span lang=EN-CA>Bruno Marchand<o:p></o:p></span></p><p class=MsoNormal style='mso-margin-top-alt:auto;margin-bottom:1.5pt'><span lang=EN-CA style='font-size:7.5pt;font-family:"Arial","sans-serif";mso-fareast-language:FR-CA'><br><br></span><span lang=EN-CA style='mso-fareast-language:FR-CA'><o:p></o:p></span></p><p class=MsoNormal><span lang=EN-CA><o:p> </o:p></span></p></div></body></html>