<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:st1="urn:schemas-microsoft-com:office:smarttags" 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 11 (filtered medium)">
<!--[if !mso]>
<style>
v\:* {behavior:url(#default#VML);}
o\:* {behavior:url(#default#VML);}
w\:* {behavior:url(#default#VML);}
.shape {behavior:url(#default#VML);}
</style>
<![endif]-->
<title>Re: [Live-devel] doEventLoop with fWatchVariable</title>
<o:SmartTagType namespaceuri="urn:schemas-microsoft-com:office:smarttags" name="PersonName" /><!--[if !mso]>
<style>
st1\:*{behavior:url(#default#ieooui) }
</style>
<![endif]--><style>
<!--
 /* Font Definitions */
 @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:0in;
        margin-bottom:.0001pt;
        font-size:12.0pt;
        font-family:"Times New Roman";}
a:link, span.MsoHyperlink
        {color:blue;
        text-decoration:underline;}
a:visited, span.MsoHyperlinkFollowed
        {color:purple;
        text-decoration:underline;}
pre
        {margin:0in;
        margin-bottom:.0001pt;
        font-size:10.0pt;
        font-family:"Courier New";}
span.EmailStyle18
        {mso-style-type:personal-reply;
        font-family:Arial;
        color:navy;}
@page Section1
        {size:8.5in 11.0in;
        margin:1.0in 1.25in 1.0in 1.25in;}
div.Section1
        {page:Section1;}
-->
</style>
</head>
<body lang="EN-US" link="blue" vlink="purple">
<div class="Section1">
<p class="MsoNormal"><font size="2" color="navy" face="Arial"><span style="font-size:
10.0pt;font-family:Arial;color:navy">I have written directshow filter for receiving streams.I have encapsulate playcomman.cpp in my code. I am able to play the stream &nbsp;I
 have spawn a thread<o:p></o:p></span></font></p>
<p class="MsoNormal"><font size="2" color="navy" face="Arial"><span style="font-size:
10.0pt;font-family:Arial;color:navy"><o:p>&nbsp;</o:p></span></font></p>
<p class="MsoNormal"><font size="2" face="Courier New"><span style="font-size:10.0pt;
font-family:&quot;Courier New&quot;">startStreaming<o:p></o:p></span></font></p>
<p class="MsoNormal"><font size="2" face="Courier New"><span style="font-size:10.0pt;
font-family:&quot;Courier New&quot;">{<o:p></o:p></span></font></p>
<p class="MsoNormal"><font size="2" face="Courier New"><span style="font-size:10.0pt;
font-family:&quot;Courier New&quot;">&nbsp;Watch = 0<o:p></o:p></span></font></p>
<p class="MsoNormal"><font size="2" face="Courier New"><span style="font-size:10.0pt;
font-family:&quot;Courier New&quot;">&nbsp;Spawn the
</span></font><font size="2" color="navy" face="Arial"><span style="font-size:10.0pt;font-family:Arial;
color:navy">Thread</span></font><font size="2" face="Courier New"><span style="font-size:10.0pt;font-family:&quot;Courier New&quot;"><o:p></o:p></span></font></p>
<p class="MsoNormal"><font size="2" face="Courier New"><span style="font-size:10.0pt;
font-family:&quot;Courier New&quot;">}<o:p></o:p></span></font></p>
<p class="MsoNormal"><font size="2" color="navy" face="Arial"><span style="font-size:
10.0pt;font-family:Arial;color:navy"><o:p>&nbsp;</o:p></span></font></p>
<p class="MsoNormal"><font size="2" color="navy" face="Arial"><span style="font-size:
10.0pt;font-family:Arial;color:navy">Thread<o:p></o:p></span></font></p>
<p class="MsoNormal"><font size="2" color="navy" face="Arial"><span style="font-size:
10.0pt;font-family:Arial;color:navy">{<o:p></o:p></span></font></p>
<p class="MsoNormal"><font size="2" face="Courier New"><span style="font-size:10.0pt;
font-family:&quot;Courier New&quot;">&nbsp;startPlayingStreams();<o:p></o:p></span></font></p>
<p class="MsoNormal"><font size="2" face="Courier New"><span style="font-size:10.0pt;
font-family:&quot;Courier New&quot;">&nbsp;env-&gt;taskScheduler().doEventLoop(&amp;watch)</span></font><font size="2" color="navy" face="Arial"><span style="font-size:10.0pt;font-family:Arial;
color:navy"><o:p></o:p></span></font></p>
<p class="MsoNormal"><font size="2" color="navy" face="Arial"><span style="font-size:
10.0pt;font-family:Arial;color:navy">}<o:p></o:p></span></font></p>
<p class="MsoNormal"><font size="2" color="navy" face="Arial"><span style="font-size:
10.0pt;font-family:Arial;color:navy"><o:p>&nbsp;</o:p></span></font></p>
<p class="MsoNormal"><font size="2" color="navy" face="Arial"><span style="font-size:
10.0pt;font-family:Arial;color:navy">In stopStreaming()<o:p></o:p></span></font></p>
<p class="MsoNormal"><font size="2" color="navy" face="Arial"><span style="font-size:
10.0pt;font-family:Arial;color:navy">{<o:p></o:p></span></font></p>
<p class="MsoNormal"><font size="2" face="Courier New"><span style="font-size:10.0pt;
font-family:&quot;Courier New&quot;">Watch = 1;// it force doEventLoop to exit
<o:p></o:p></span></font></p>
<p class="MsoNormal"><font size="2" color="green" face="Courier New"><span style="font-size:10.0pt;font-family:&quot;Courier New&quot;;color:green">sessionAfterPlaying();</span></font><font size="2" face="Courier New"><span style="font-size:10.0pt;font-family:&quot;Courier New&quot;"><o:p></o:p></span></font></p>
<p class="MsoNormal"><font size="2" face="Courier New"><span style="font-size:10.0pt;
font-family:&quot;Courier New&quot;">//if I use this method I successfully send and recive Teradown message.<o:p></o:p></span></font></p>
<p class="MsoNormal"><font size="2" face="Courier New"><span style="font-size:10.0pt;
font-family:&quot;Courier New&quot;">//If comment watch=1 then teardown response become wrong WHY ?</span></font><font size="2" color="navy" face="Arial"><span style="font-size:10.0pt;font-family:Arial;color:navy"><o:p></o:p></span></font></p>
<p class="MsoNormal"><font size="2" color="navy" face="Arial"><span style="font-size:
10.0pt;font-family:Arial;color:navy">}
<o:p></o:p></span></font></p>
<p class="MsoNormal"><font size="2" color="navy" face="Arial"><span style="font-size:
10.0pt;font-family:Arial;color:navy"><o:p>&nbsp;</o:p></span></font></p>
<p class="MsoNormal"><font size="2" color="navy" face="Arial"><span style="font-size:
10.0pt;font-family:Arial;color:navy">In pauseStreaming<o:p></o:p></span></font></p>
<p class="MsoNormal"><font size="2" color="navy" face="Arial"><span style="font-size:
10.0pt;font-family:Arial;color:navy">{<o:p></o:p></span></font></p>
<p class="MsoNormal"><font size="2" face="Courier New"><span style="font-size:10.0pt;
font-family:&quot;Courier New&quot;">Watch = 1;// it force doEventLoop to exit as well as
<o:p></o:p></span></font></p>
<p class="MsoNormal"><font size="2" face="Courier New"><span style="font-size:10.0pt;
font-family:&quot;Courier New&quot;">pauseMediaSession<font color="green"><span style="color:green"> ();</span></font><o:p></o:p></span></font></p>
<p class="MsoNormal"><font size="2" face="Courier New"><span style="font-size:10.0pt;
font-family:&quot;Courier New&quot;">//if I use this method I successfully send and recive pause message.<o:p></o:p></span></font></p>
<p class="MsoNormal"><font size="2" face="Courier New"><span style="font-size:10.0pt;
font-family:&quot;Courier New&quot;">//If comment watch=1 then pause response become wrong WHY ?</span></font><font size="2" color="navy" face="Arial"><span style="font-size:10.0pt;font-family:Arial;color:navy"><o:p></o:p></span></font></p>
<p class="MsoNormal"><font size="2" color="navy" face="Arial"><span style="font-size:
10.0pt;font-family:Arial;color:navy">}
<o:p></o:p></span></font></p>
<p class="MsoNormal"><font size="2" color="navy" face="Arial"><span style="font-size:
10.0pt;font-family:Arial;color:navy"><o:p>&nbsp;</o:p></span></font></p>
<p class="MsoNormal"><font size="2" color="navy" face="Arial"><span style="font-size:
10.0pt;font-family:Arial;color:navy">After pause streaming again I invoke
</span></font><font size="2" face="Courier New"><span style="font-size:10.0pt;font-family:&quot;Courier New&quot;">startStreaming but after this call bytesReads() (groupsockhelper.cpp) return -1 ?
<o:p></o:p></span></font></p>
<p class="MsoNormal"><font size="2" color="navy" face="Arial"><span style="font-size:
10.0pt;font-family:Arial;color:navy"><o:p>&nbsp;</o:p></span></font></p>
<p class="MsoNormal"><font size="2" color="navy" face="Arial"><span style="font-size:
10.0pt;font-family:Arial;color:navy"><o:p>&nbsp;</o:p></span></font></p>
<p class="MsoNormal"><font size="2" color="navy" face="Arial"><span style="font-size:
10.0pt;font-family:Arial;color:navy"><o:p>&nbsp;</o:p></span></font></p>
<p class="MsoNormal"><font size="2" color="navy" face="Arial"><span style="font-size:
10.0pt;font-family:Arial;color:navy"><o:p>&nbsp;</o:p></span></font></p>
<p class="MsoNormal"><font size="2" color="navy" face="Arial"><span style="font-size:
10.0pt;font-family:Arial;color:navy"><o:p>&nbsp;</o:p></span></font></p>
<div>
<div class="MsoNormal" align="center" style="text-align:center"><font size="3" face="Times New Roman"><span style="font-size:12.0pt">
<hr size="2" width="100%" align="center" tabindex="-1">
</span></font></div>
<p class="MsoNormal"><b><font size="2" face="Tahoma"><span style="font-size:10.0pt;
font-family:Tahoma;font-weight:bold">From:</span></font></b><font size="2" face="Tahoma"><span style="font-size:10.0pt;font-family:Tahoma"> live-devel-bounces@ns.live555.com
 [mailto:live-devel-bounces@ns.live555.com] <b><span style="font-weight:bold">On Behalf Of
</span></b>Ross Finlayson<br>
<b><span style="font-weight:bold">Sent:</span></b> Thursday, January 22, 2009 11:47 AM<br>
<b><span style="font-weight:bold">To:</span></b> <st1:PersonName w:st="on">LIVE555 Streaming Media - development &amp; use</st1:PersonName><br>
<b><span style="font-weight:bold">Subject:</span></b> Re: [Live-devel] doEventLoop with fWatchVariable</span></font><o:p></o:p></p>
</div>
<p class="MsoNormal"><font size="3" face="Times New Roman"><span style="font-size:
12.0pt"><o:p>&nbsp;</o:p></span></font></p>
<blockquote style="margin-top:5.0pt;margin-bottom:5.0pt">
<p class="MsoNormal"><font size="2" face="Arial"><span style="font-size:10.0pt;
font-family:Arial">I am using the fWatchVariable to notift the eventLoop to exit. (as it should be)</span></font><o:p></o:p></p>
</blockquote>
<blockquote style="margin-top:5.0pt;margin-bottom:5.0pt" type="cite" cite="">
<p class="MsoNormal"><font size="2" face="Arial"><span style="font-size:10.0pt;
font-family:Arial">However if no connection is avaialble (nothing is waking the loop), this variable will not be tested and the eventLoop is blocked.</span></font><o:p></o:p></p>
</blockquote>
<blockquote style="margin-top:5.0pt;margin-bottom:5.0pt" type="cite" cite="">
<p class="MsoNormal"><font size="2" face="Arial"><span style="font-size:10.0pt;
font-family:Arial">Is there some &quot;refresh&quot; command to the loop that will force it to wake , so the variable can be tested?</span></font><o:p></o:p></p>
</blockquote>
<div>
<p class="MsoNormal"><font size="3" face="Times New Roman"><span style="font-size:
12.0pt"><o:p>&nbsp;</o:p></span></font></p>
</div>
<div>
<p class="MsoNormal"><font size="3" face="Times New Roman"><span style="font-size:
12.0pt">Yes, see http://lists.live555.com/pipermail/live-devel/2006-March/004192.html<o:p></o:p></span></font></p>
</div>
<pre><font size="2" face="Courier New"><span style="font-size:10.0pt"><x-sigsep>-- <o:p></o:p></span></font></pre>
<div>
<p class="MsoNormal"><font size="3" face="Times New Roman"><span style="font-size:
12.0pt"><br>
</x-sigsep>Ross Finlayson<br>
Live Networks, Inc.<br>
http://www.live555.com/<o:p></o:p></span></font></p>
</div>
</div>
<br>
<hr>
<font face="Arial" color="Gray" size="3">&quot;DISCLAIMER: This message is proprietary to Aricent and is intended solely for the use of the individual to whom it is addressed. It may contain privileged or confidential information and should not be circulated or
 used for any purpose other than for what it is intended. If you have received this message in error,please notify the originator immediately. If you are not the intended recipient, you are notified that you are strictly prohibited from using, copying, altering,
 or disclosing the contents of this message. Aricent accepts no responsibility for loss or damage arising from the use of the information transmitted by this email including damage from virus.&quot;<br>
</font>
</body>
</html>