<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=gb2312"><meta name=Generator content="Microsoft Word 14 (filtered medium)"><base href="x-msg://2070/"><style><!--
/* Font Definitions */
@font-face
        {font-family:Helvetica;
        panose-1:2 11 6 4 2 2 2 2 2 4;}
@font-face
        {font-family:宋体;
        panose-1:2 1 6 0 3 1 1 1 1 1;}
@font-face
        {font-family:宋体;
        panose-1:2 1 6 0 3 1 1 1 1 1;}
@font-face
        {font-family:Calibri;
        panose-1:2 15 5 2 2 2 4 3 2 4;}
@font-face
        {font-family:"\@宋体";
        panose-1:2 1 6 0 3 1 1 1 1 1;}
/* Style Definitions */
p.MsoNormal, li.MsoNormal, div.MsoNormal
        {margin:0cm;
        margin-bottom:.0001pt;
        font-size:12.0pt;
        font-family:宋体;}
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;}
span.apple-tab-span
        {mso-style-name:apple-tab-span;}
span.apple-style-span
        {mso-style-name:apple-style-span;}
span.EmailStyle19
        {mso-style-type:personal-reply;
        font-family:"Calibri","sans-serif";
        color:#1F497D;}
.MsoChpDefault
        {mso-style-type:export-only;
        font-size:10.0pt;}
@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=ZH-CN link=blue vlink=purple><div class=WordSection1><p class=MsoNormal><span lang=EN-US style='font-size:10.5pt;font-family:"Calibri","sans-serif";color:#1F497D'>Thanks for your patient. <o:p></o:p></span></p><p class=MsoNormal><span lang=EN-US style='font-size:10.5pt;font-family:"Calibri","sans-serif";color:#1F497D'>Now I adjust the settings. Since I collect the data from one card, then convert them to g711 and h264.<o:p></o:p></span></p><p class=MsoNormal><span lang=EN-US style='font-size:10.5pt;font-family:"Calibri","sans-serif";color:#1F497D'>My card’s raw video:50fps.<o:p></o:p></span></p><p class=MsoNormal><span lang=EN-US style='font-size:10.5pt;font-family:"Calibri","sans-serif";color:#1F497D'>Raw audio: 48000hz,16bits, 2channel.<o:p></o:p></span></p><p class=MsoNormal><span lang=EN-US style='font-size:10.5pt;font-family:"Calibri","sans-serif";color:#1F497D'>Then I convert audio to be g711 8000hz,8bit, 1channel.<o:p></o:p></span></p><p class=MsoNormal><span lang=EN-US style='font-size:10.5pt;font-family:"Calibri","sans-serif";color:#1F497D'>Video is still 50fps.<o:p></o:p></span></p><p class=MsoNormal><span lang=EN-US style='font-size:10.5pt;font-family:"Calibri","sans-serif";color:#1F497D'><o:p> </o:p></span></p><p class=MsoNormal><span lang=EN-US style='font-size:10.5pt;font-family:"Calibri","sans-serif";color:#1F497D'>At last the duration of  video and audio are all 20000us, and I call newTask()=envir().taskScheduler().scheduleDelayedTask(20000,(TaskFunc*)FramedSource::aftergetting,this) in the doGetNextFrame().<o:p></o:p></span></p><p class=MsoNormal><span lang=EN-US style='font-size:10.5pt;font-family:"Calibri","sans-serif";color:#1F497D'>So in such case, my fPresentationTime should be correct.<o:p></o:p></span></p><p class=MsoNormal><span lang=EN-US style='font-size:10.5pt;font-family:"Calibri","sans-serif";color:#1F497D'>But I don’t know why the vlc said “early picture skipped”, it seems that shows my video frame is old.<o:p></o:p></span></p><p class=MsoNormal><span lang=EN-US style='font-size:10.5pt;font-family:"Calibri","sans-serif";color:#1F497D'><o:p> </o:p></span></p><div><div style='border:none;border-top:solid #B5C4DF 1.0pt;padding:3.0pt 0cm 0cm 0cm'><p class=MsoNormal><b><span style='font-size:10.0pt'>发件人<span lang=EN-US>:</span></span></b><span lang=EN-US style='font-size:10.0pt'> live-devel-bounces@ns.live555.com [mailto:live-devel-bounces@ns.live555.com] </span><b><span style='font-size:10.0pt'>代表 </span></b><span lang=EN-US style='font-size:10.0pt'>Ross Finlayson<br></span><b><span style='font-size:10.0pt'>发送时间<span lang=EN-US>:</span></span></b><span lang=EN-US style='font-size:10.0pt'> 2012</span><span style='font-size:10.0pt'>年<span lang=EN-US>9</span>月<span lang=EN-US>28</span>日<span lang=EN-US> 22:18<br></span><b>收件人<span lang=EN-US>:</span></b><span lang=EN-US> LIVE555 Streaming Media - development & use<br></span><b>主题<span lang=EN-US>:</span></b><span lang=EN-US> Re: [Live-devel] Regarding the audio and video packet sent rate<o:p></o:p></span></span></p></div></div><p class=MsoNormal><span lang=EN-US><o:p> </o:p></span></p><div><blockquote style='margin-top:5.0pt;margin-bottom:5.0pt'><div><p class=MsoNormal style='text-align:justify;text-justify:inter-ideograph;text-indent:21.0pt'><span lang=EN-US style='font-size:10.5pt;font-family:"Calibri","sans-serif"'>I use live555 send the audio and video packet as soon as possible.<o:p></o:p></span></p><p class=MsoNormal style='text-align:justify;text-justify:inter-ideograph;text-indent:21.0pt'><span lang=EN-US style='font-size:10.5pt;font-family:"Calibri","sans-serif"'>but the video and audio encoding rate isn't same. so the video and audio packet  vlc receives  isn't synchro.<o:p></o:p></span></p><p class=MsoNormal style='text-align:justify;text-justify:inter-ideograph;text-indent:21.0pt'><span lang=EN-US style='font-size:10.5pt;font-family:"Calibri","sans-serif"'>So I tried to adjust the video and audio send rate, but I can't get the balance. I always get the error "pts is out of range" or "the received buffer is in future".<o:p></o:p></span></p><p class=MsoNormal style='text-align:justify;text-justify:inter-ideograph;text-indent:21.0pt'><span lang=EN-US style='font-size:10.5pt;font-family:"Calibri","sans-serif"'>Does live555 have mechanism to balance it?<o:p></o:p></span></p></div></blockquote><div><p class=MsoNormal><span lang=EN-US><o:p> </o:p></span></p></div></div><p class=MsoNormal><span lang=EN-US>Once again, you are probably not setting "fPresentationTime" correctly for both audio and video streams.<o:p></o:p></span></p><div><p class=MsoNormal><span lang=EN-US><o:p> </o:p></span></p></div><div><p class=MsoNormal><span lang=EN-US>In the code that you noted in one of your earlier messages, there was a bug:<o:p></o:p></span></p></div><div><p class=MsoNormal><span lang=EN-US><o:p> </o:p></span></p></div><div><p class=MsoNormal style='text-align:justify;text-justify:inter-ideograph'><span class=apple-tab-span><span lang=EN-US style='font-family:"Calibri","sans-serif"'>    </span></span><span lang=EN-US style='font-family:"Calibri","sans-serif"'>fDurationInMicroseconds = 5000; // because 40 samples at 8000 samples-per-second have a duration of 5 ms (== 5000 us)<o:p></o:p></span></p></div><div><p class=MsoNormal><span lang=EN-US><o:p> </o:p></span></p></div><div><p class=MsoNormal><span lang=EN-US>That line of code is correct for audio (because each outgoing audio packet contains 40 samples).  However, you used the exact same line for video, which is wrong (because your video frame rate is (presumably) *not* also 200 frames-per-second).<o:p></o:p></span></p></div><div><p class=MsoNormal><span lang=EN-US><o:p> </o:p></span></p></div><div><p class=MsoNormal><span lang=EN-US>For video, you need to set a correct value of "</span><span lang=EN-US style='font-family:"Calibri","sans-serif"'>fDurationInMicroseconds" that corresponds to your video frame rate.</span><span lang=EN-US><o:p></o:p></span></p></div><p class=MsoNormal style='margin-bottom:12.0pt'><span lang=EN-US><o:p> </o:p></span></p><div><p class=MsoNormal><span class=apple-style-span><span lang=EN-US style='font-size:13.5pt;font-family:"Helvetica","sans-serif";color:black'>Ross Finlayson</span></span><span lang=EN-US style='font-size:13.5pt;font-family:"Helvetica","sans-serif";color:black'><br><span class=apple-style-span>Live Networks, Inc.</span><br><span class=apple-style-span><a href="http://www.live555.com/">http://www.live555.com/</a></span></span><span lang=EN-US> <o:p></o:p></span></p></div><p class=MsoNormal><span lang=EN-US><o:p> </o:p></span></p></div></body></html>