<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
<HTML xmlns="http://www.w3.org/TR/REC-html40" xmlns:v = 
"urn:schemas-microsoft-com:vml" xmlns:o = 
"urn:schemas-microsoft-com:office:office" xmlns:w = 
"urn:schemas-microsoft-com:office:word" xmlns:dt = 
"uuid:C2F41010-65B3-11d1-A29F-00AA00C14882" xmlns:m = 
"http://schemas.microsoft.com/office/2004/12/omml"><HEAD>
<META http-equiv=Content-Type content="text/html; charset=iso-8859-1">
<META content="MSHTML 6.00.6000.21264" name=GENERATOR><!--[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]-->
<STYLE>@font-face {
        font-family: Calibri;
}
@font-face {
        font-family: Tahoma;
}
@page WordSection1 {size: 8.5in 11.0in; margin: 1.0in 1.25in 1.0in 1.25in; }
P.MsoNormal {
        FONT-SIZE: 12pt; MARGIN: 0in 0in 0pt; FONT-FAMILY: "Times New Roman","serif"
}
LI.MsoNormal {
        FONT-SIZE: 12pt; MARGIN: 0in 0in 0pt; FONT-FAMILY: "Times New Roman","serif"
}
DIV.MsoNormal {
        FONT-SIZE: 12pt; MARGIN: 0in 0in 0pt; FONT-FAMILY: "Times New Roman","serif"
}
H2 {
        FONT-SIZE: 13pt; MARGIN: 10pt 0in 0pt; COLOR: #4f81bd; FONT-FAMILY: "Cambria","serif"; mso-style-priority: 9; mso-style-link: "Heading 2 Char"
}
A:link {
        COLOR: blue; TEXT-DECORATION: underline; mso-style-priority: 99
}
SPAN.MsoHyperlink {
        COLOR: blue; TEXT-DECORATION: underline; mso-style-priority: 99
}
A:visited {
        COLOR: purple; TEXT-DECORATION: underline; mso-style-priority: 99
}
SPAN.MsoHyperlinkFollowed {
        COLOR: purple; TEXT-DECORATION: underline; mso-style-priority: 99
}
P.MsoAcetate {
        FONT-SIZE: 8pt; MARGIN: 0in 0in 0pt; FONT-FAMILY: "Tahoma","sans-serif"; mso-style-priority: 99; mso-style-link: "Balloon Text Char"
}
LI.MsoAcetate {
        FONT-SIZE: 8pt; MARGIN: 0in 0in 0pt; FONT-FAMILY: "Tahoma","sans-serif"; mso-style-priority: 99; mso-style-link: "Balloon Text Char"
}
DIV.MsoAcetate {
        FONT-SIZE: 8pt; MARGIN: 0in 0in 0pt; FONT-FAMILY: "Tahoma","sans-serif"; mso-style-priority: 99; mso-style-link: "Balloon Text Char"
}
P.MsoNoSpacing {
        FONT-SIZE: 12pt; MARGIN: 0in 0in 0pt; FONT-FAMILY: "Times New Roman","serif"; mso-style-priority: 1
}
LI.MsoNoSpacing {
        FONT-SIZE: 12pt; MARGIN: 0in 0in 0pt; FONT-FAMILY: "Times New Roman","serif"; mso-style-priority: 1
}
DIV.MsoNoSpacing {
        FONT-SIZE: 12pt; MARGIN: 0in 0in 0pt; FONT-FAMILY: "Times New Roman","serif"; mso-style-priority: 1
}
SPAN.BalloonTextChar {
        FONT-FAMILY: "Tahoma","sans-serif"; mso-style-priority: 99; mso-style-link: "Balloon Text"; mso-style-name: "Balloon Text Char"
}
SPAN.EmailStyle19 {
        COLOR: #1f497d; FONT-FAMILY: "Calibri","sans-serif"; mso-style-type: personal
}
SPAN.EmailStyle20 {
        COLOR: #1f497d; FONT-FAMILY: "Calibri","sans-serif"; mso-style-type: personal-reply
}
SPAN.Heading2Char {
        FONT-WEIGHT: bold; COLOR: #4f81bd; FONT-FAMILY: "Cambria","serif"; mso-style-priority: 9; mso-style-link: "Heading 2"; mso-style-name: "Heading 2 Char"
}
.MsoChpDefault {
        FONT-SIZE: 10pt; mso-style-type: export-only
}
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=EN-US vLink=purple link=blue>
<DIV dir=ltr align=left><FONT face=Arial color=#0000ff size=2><SPAN 
class=638343116-12072010>Thank you,</SPAN></FONT></DIV>
<DIV dir=ltr align=left><FONT face=Arial color=#0000ff size=2><SPAN 
class=638343116-12072010>I'm going to do that and Dektec is also preparing a 
small log of what happening on the DTE-3114 side... Perhaps it is the way to 
treat the rtp packets on its side that causes the issue.</SPAN></FONT></DIV>
<DIV dir=ltr align=left><FONT face=Arial color=#0000ff size=2><SPAN 
class=638343116-12072010></SPAN></FONT>&nbsp;</DIV><BR>
<DIV class=OutlookMessageHeader lang=fr dir=ltr align=left>
<HR tabIndex=-1>
<FONT face=Tahoma size=2><B>De&nbsp;:</B> live-devel-bounces@ns.live555.com 
[mailto:live-devel-bounces@ns.live555.com] <B>De la part de</B> BONNEAU 
Guy<BR><B>Envoyé&nbsp;:</B> lundi 12 juillet 2010 17:22<BR><B>À&nbsp;:</B> 
LIVE555 Streaming Media - development &amp; use<BR><B>Objet&nbsp;:</B> Re: 
[Live-devel] RTP packet lostwhenLive555MediaServerstreamsforward Dektec 
DTE3114<BR></FONT><BR></DIV>
<DIV></DIV>
<DIV class=WordSection1>
<P class=MsoNormal><SPAN 
style="FONT-SIZE: 11pt; COLOR: #1f497d; FONT-FAMILY: 'Calibri','sans-serif'">You 
shouldn’t try to modify the code of the library unless you find a bug. The 
library send the packets at the appropriate time following the RTP specification 
unless the OS timer resolution create an issue. The library does indeed call the 
sendPacketIfNecessary routine to send the packets. &gt;From what I remember the 
library does a good job at computing the time when the Mpeg2 TS RTP packets are 
to be sent. I suggest you try to use the function gettimeofday() to log the time 
and the delay requested when nextTask() = 
envir().taskScheduler().scheduleDelayedTask(…) &nbsp;is called in function 
sendPacketIfNecessary() in file MultiFramedTPSink. &nbsp;Then log the time again 
with gettimeofday() in function MultiFramedRTPSink::sendNext. Then check check 
that you were called at the time requested by the library scheduler. If you are 
not then you know the problem is likely to be a timer resolution issue with the 
OS. This is how I was able to find my issue and find why the library was 
bursting the RTP packets.<o:p></o:p></SPAN></P>
<P class=MsoNormal><SPAN 
style="FONT-SIZE: 11pt; COLOR: #1f497d; FONT-FAMILY: 'Calibri','sans-serif'"><o:p>&nbsp;</o:p></SPAN></P>
<P class=MsoNormal><SPAN 
style="FONT-SIZE: 11pt; COLOR: #1f497d; FONT-FAMILY: 'Calibri','sans-serif'">GB</SPAN><SPAN 
style="FONT-SIZE: 11pt; COLOR: #1f497d; FONT-FAMILY: 'Calibri','sans-serif'"><o:p></o:p></SPAN></P>
<P class=MsoNormal><SPAN 
style="FONT-SIZE: 11pt; COLOR: #1f497d; FONT-FAMILY: 'Calibri','sans-serif'"><o:p>&nbsp;</o:p></SPAN></P>
<DIV 
style="BORDER-RIGHT: medium none; PADDING-RIGHT: 0in; BORDER-TOP: medium none; PADDING-LEFT: 4pt; PADDING-BOTTOM: 0in; BORDER-LEFT: blue 1.5pt solid; PADDING-TOP: 0in; BORDER-BOTTOM: medium none">
<DIV>
<DIV 
style="BORDER-RIGHT: medium none; PADDING-RIGHT: 0in; BORDER-TOP: #b5c4df 1pt solid; PADDING-LEFT: 0in; PADDING-BOTTOM: 0in; BORDER-LEFT: medium none; PADDING-TOP: 3pt; BORDER-BOTTOM: medium none">
<P class=MsoNormal><B><SPAN 
style="FONT-SIZE: 10pt; FONT-FAMILY: 'Tahoma','sans-serif'">From:</SPAN></B><SPAN 
style="FONT-SIZE: 10pt; FONT-FAMILY: 'Tahoma','sans-serif'"> 
live-devel-bounces@ns.live555.com [mailto:live-devel-bounces@ns.live555.com] 
<B>On Behalf Of </B>Lambert Marc<BR><B>Sent:</B> Monday, July 12, 2010 
6:31<BR><B>To:</B> LIVE555 Streaming Media - development &amp; 
use<BR><B>Subject:</B> Re: [Live-devel] RTP packet lost 
whenLive555MediaServerstreamsforward Dektec 
DTE3114<o:p></o:p></SPAN></P></DIV></DIV>
<P class=MsoNormal><o:p>&nbsp;</o:p></P>
<P class=MsoNormal><SPAN 
style="FONT-SIZE: 10pt; COLOR: blue; FONT-FAMILY: 'Arial','sans-serif'">I just 
tried to modify the fDurationInMicroseconds but it doesn't 
work.</SPAN><o:p></o:p></P>
<P class=MsoNormal><SPAN 
style="FONT-SIZE: 10pt; COLOR: blue; FONT-FAMILY: 'Arial','sans-serif'">Actually, 
It seems the task sends packet through "sendPacketIfNecessary" as soon as the 
packet is prepared when I would like to wait for 3 or 4 packets ready before to 
send them on the network.</SPAN><o:p></o:p></P>
<P class=MsoNormal><SPAN 
style="FONT-SIZE: 10pt; COLOR: blue; FONT-FAMILY: 'Arial','sans-serif'">I tried 
to find a way to skip to send data but when I do that, it seems also than the 
packet is lost...</SPAN><o:p></o:p></P>
<DIV>
<P class=MsoNormal>&nbsp;<o:p></o:p></P></DIV>
<DIV>
<P class=MsoNormal><SPAN 
style="FONT-SIZE: 10pt; COLOR: blue; FONT-FAMILY: 'Arial','sans-serif'">It looks 
like the output buffer gathers frames and when there are enough frames to do a 
packet the RTP packet is done and sent, could I let prepare many packets and 
wait for few to effectively send them ?</SPAN><o:p></o:p></P></DIV>
<DIV>
<P class=MsoNormal>&nbsp;<o:p></o:p></P></DIV>
<DIV>
<P class=MsoNormal>&nbsp;<o:p></o:p></P></DIV>
<P class=MsoNormal><o:p>&nbsp;</o:p></P>
<DIV class=MsoNormal style="TEXT-ALIGN: center" align=center><SPAN lang=FR>
<HR align=center width="100%" SIZE=2>
</SPAN></DIV>
<P class=MsoNormal style="MARGIN-BOTTOM: 12pt"><B><SPAN lang=FR 
style="FONT-SIZE: 10pt; FONT-FAMILY: 'Tahoma','sans-serif'">De&nbsp;:</SPAN></B><SPAN 
lang=FR style="FONT-SIZE: 10pt; FONT-FAMILY: 'Tahoma','sans-serif'"> 
live-devel-bounces@ns.live555.com [mailto:live-devel-bounces@ns.live555.com] 
<B>De la part de</B> BONNEAU Guy<BR><B>Envoyé&nbsp;:</B> dimanche 11 juillet 
2010 05:51<BR><B>À&nbsp;:</B> LIVE555 Streaming Media - development &amp; 
use<BR><B>Objet&nbsp;:</B> Re: [Live-devel] RTP packet lost when 
Live555MediaServerstreamsforward Dektec DTE3114</SPAN><SPAN 
lang=FR><o:p></o:p></SPAN></P>
<P class=MsoNormal><SPAN 
style="FONT-SIZE: 11pt; COLOR: #1f497d; FONT-FAMILY: 'Calibri','sans-serif'">This 
&nbsp;problem seems to be very similar to one I have had about 1 year ago while 
trying to stream a Mpeg2 TS with the live555 library with a very high datarate. 
Unfortunately I do not remember all the details but I eventually pinpointed the 
problem to the scheduler of Windows. (My testing application was Windows based). 
If a remember &nbsp;the library would compute a delay to callback a routine to 
schedule a new RTP packet to be sent over the network. I believe that was done 
through a select or sleep() function. The computing of the delay was well done 
by the library. But the timer resolution of Windows is 15 or 10 ms by default 
and the requested delay in my case was much lower given the requested bitrate 
from the Mpeg2 TS stream. The jitter of the packets over the network was 
terrible and the library much of the time was trying to catch-up from the 
misbehavior of the Windows Timer default resolution of 15 ms by bursting the RTP 
packets over the network.<o:p></o:p></SPAN></P>
<P class=MsoNormal><SPAN 
style="FONT-SIZE: 11pt; COLOR: #1f497d; FONT-FAMILY: 'Calibri','sans-serif'"><o:p>&nbsp;</o:p></SPAN></P>
<P class=MsoNormal><SPAN 
style="FONT-SIZE: 11pt; COLOR: #1f497d; FONT-FAMILY: 'Calibri','sans-serif'">I 
solved that problem by using the TimeBeginPeriod(1) to change the Windows period 
of the timer to 1 ms. The callback function would then wakeup much faster and 
the jitter of the packets went down to an acceptable 
level.<o:p></o:p></SPAN></P>
<P class=MsoNormal><SPAN 
style="FONT-SIZE: 11pt; COLOR: #1f497d; FONT-FAMILY: 'Calibri','sans-serif'"><o:p>&nbsp;</o:p></SPAN></P>
<P class=MsoNormal><SPAN 
style="FONT-SIZE: 11pt; COLOR: #1f497d; FONT-FAMILY: 'Calibri','sans-serif'">Guy 
Bonneau<o:p></o:p></SPAN></P>
<P class=MsoNormal><SPAN 
style="FONT-SIZE: 11pt; COLOR: #1f497d; FONT-FAMILY: 'Calibri','sans-serif'"><o:p>&nbsp;</o:p></SPAN></P>
<P class=MsoNormal><SPAN 
style="FONT-SIZE: 11pt; COLOR: #1f497d; FONT-FAMILY: 'Calibri','sans-serif'"><o:p>&nbsp;</o:p></SPAN></P>
<DIV 
style="BORDER-RIGHT: medium none; PADDING-RIGHT: 0in; BORDER-TOP: medium none; PADDING-LEFT: 4pt; PADDING-BOTTOM: 0in; BORDER-LEFT: blue 1.5pt solid; PADDING-TOP: 0in; BORDER-BOTTOM: medium none">
<P class=MsoNormal><SPAN 
style="FONT-SIZE: 10pt; COLOR: blue; FONT-FAMILY: 'Arial','sans-serif'">Just to 
complet my explaination, please find the 2 IO Graphs Qvidium vs Live555 rtp 
streaming.</SPAN><o:p></o:p></P>
<P class=MsoNormal>&nbsp;<o:p></o:p></P>
<P class=MsoNormal><SPAN 
style="FONT-SIZE: 10pt; COLOR: blue; FONT-FAMILY: 'Arial','sans-serif'">Regards</SPAN><o:p></o:p></P>
<P class=MsoNormal><o:p>&nbsp;</o:p></P>
<DIV class=MsoNormal style="TEXT-ALIGN: center" align=center><SPAN lang=FR>
<HR align=center width="100%" SIZE=2>
</SPAN></DIV>
<P class=MsoNormal style="MARGIN-BOTTOM: 12pt"><B><SPAN lang=FR 
style="FONT-SIZE: 10pt; FONT-FAMILY: 'Tahoma','sans-serif'">De&nbsp;:</SPAN></B><SPAN 
lang=FR style="FONT-SIZE: 10pt; FONT-FAMILY: 'Tahoma','sans-serif'"> Lambert 
Marc <BR><B>Envoyé&nbsp;:</B> vendredi 9 juillet 2010 15:35<BR><B>À&nbsp;:</B> 
'live-devel@lists.live555.com'<BR><B>Objet&nbsp;:</B> RTP packet lost when 
Live555MediaServer streams forward Dektec DTE3114</SPAN><SPAN 
lang=FR><o:p></o:p></SPAN></P>
<DIV>
<P class=MsoNormal><SPAN 
style="FONT-SIZE: 10pt; FONT-FAMILY: 'Arial','sans-serif'">Hello,</SPAN><o:p></o:p></P></DIV>
<DIV>
<P class=MsoNormal>&nbsp;<o:p></o:p></P></DIV>
<DIV>
<P class=MsoNormal><SPAN 
style="FONT-SIZE: 10pt; FONT-FAMILY: 'Arial','sans-serif'">First of all, I'm 
certainly not the first to say that but thank you for this very nice 
software.</SPAN><o:p></o:p></P></DIV>
<DIV>
<P class=MsoNormal><SPAN 
style="FONT-SIZE: 10pt; FONT-FAMILY: 'Arial','sans-serif'">I use 
live555MediaServer in the context of my job and I compilled it with the option 
"RTSP_ALLOW_CLIENT_DESTINATION_SETTING" to make me able to control the server 
from a device connected on the network and to stream forward an IPtoTS modulator 
(DTE-3114 from Dektec) providing a DVB-C signal to a 
TV.</SPAN><o:p></o:p></P></DIV>
<DIV>
<P class=MsoNormal><SPAN 
style="FONT-SIZE: 10pt; FONT-FAMILY: 'Arial','sans-serif'">My client is working 
well and everything is working perfectly with VLC 
but...</SPAN><o:p></o:p></P></DIV>
<DIV>
<P class=MsoNormal><SPAN 
style="FONT-SIZE: 10pt; FONT-FAMILY: 'Arial','sans-serif'">When I replace VLC by 
the DTE-3114, the outgoing signal is not good with many RTP packet 
loss.</SPAN><o:p></o:p></P></DIV>
<DIV>
<P class=MsoNormal><SPAN 
style="FONT-SIZE: 10pt; FONT-FAMILY: 'Arial','sans-serif'">Then, I tryed to 
change many parameters on each sides but nothing is fixing 
that.</SPAN><o:p></o:p></P></DIV>
<DIV>
<P class=MsoNormal>&nbsp;<o:p></o:p></P></DIV>
<DIV>
<P class=MsoNormal><SPAN 
style="FONT-SIZE: 10pt; FONT-FAMILY: 'Arial','sans-serif'">I also used the 
DTE-3114 with the QVidium file streamer (it doesn't have the rtsp server, just 
the rtp streamer) and, in that case, I succeed to stream perfectly until 
25Mbps...</SPAN><o:p></o:p></P></DIV>
<DIV>
<P class=MsoNormal><SPAN 
style="FONT-SIZE: 10pt; FONT-FAMILY: 'Arial','sans-serif'">I captured with 
Wireshark and there is a difference between the 2 streaming methodes, the 
Qvidium&nbsp;seems to allow more time&nbsp;before to send the next frame and the 
frame is composed of many UDP packet when Live555 try to gather perfectly the 
packets during the time and I guess it is stressing too much the DTE-3114 to 
treat this bandwidth on the fly.</SPAN><o:p></o:p></P></DIV>
<DIV>
<P class=MsoNormal><SPAN 
style="FONT-SIZE: 10pt; FONT-FAMILY: 'Arial','sans-serif'">Then, I would like to 
know if it is possible to change the way to send packet on the network to try to 
make my test bench working.</SPAN><o:p></o:p></P></DIV>
<DIV>
<P class=MsoNormal>&nbsp;<o:p></o:p></P></DIV>
<DIV>
<P class=MsoNormal><SPAN 
style="FONT-SIZE: 10pt; FONT-FAMILY: 'Arial','sans-serif'">Thank's in 
advance</SPAN><o:p></o:p></P></DIV>
<DIV>
<P class=MsoNormal>&nbsp;<o:p></o:p></P></DIV></DIV></DIV></DIV></BODY></HTML>