<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
<HTML><HEAD><TITLE>Re: [vlc-devel] demux/live555.cpp Elementary Stream Synchr</TITLE>
<META http-equiv=Content-Type content="text/html; charset=us-ascii">
<STYLE type=text/css>BLOCKQUOTE {
        PADDING-BOTTOM: 0px; PADDING-TOP: 0px
}
DL {
        PADDING-BOTTOM: 0px; PADDING-TOP: 0px
}
UL {
        PADDING-BOTTOM: 0px; PADDING-TOP: 0px
}
OL {
        PADDING-BOTTOM: 0px; PADDING-TOP: 0px
}
LI {
        PADDING-BOTTOM: 0px; PADDING-TOP: 0px
}
</STYLE>

<META content="MSHTML 6.00.6000.16587" name=GENERATOR></HEAD>
<BODY>
<DIV dir=ltr align=left><SPAN class=630293118-05022008><FONT face=Arial 
color=#0000ff size=2>Thanks Ross for the answers. They are very helpful. I 
believe I have found the cause of my synchronization problems. I switched that 
thread to the live555 email list.</FONT></SPAN></DIV>
<DIV dir=ltr align=left><SPAN class=630293118-05022008><FONT face=Arial 
color=#0000ff size=2></FONT></SPAN> </DIV>
<DIV dir=ltr align=left><SPAN class=630293118-05022008><FONT face=Arial 
color=#0000ff size=2>Guy Bonneau</FONT></SPAN></DIV><BR>
<BLOCKQUOTE dir=ltr 
style="PADDING-LEFT: 5px; MARGIN-LEFT: 5px; BORDER-LEFT: #0000ff 2px solid; MARGIN-RIGHT: 0px">
  <DIV class=OutlookMessageHeader lang=en-us dir=ltr align=left>
  <HR tabIndex=-1>
  <FONT face=Tahoma size=2><B>From:</B> vlc-devel-bounces@videolan.org 
  [mailto:vlc-devel-bounces@videolan.org] <B>On Behalf Of </B>Ross 
  Finlayson<BR><B>Sent:</B> Tuesday, February 05, 2008 11:08 AM<BR><B>To:</B> 
  Mailing list for VLC media player developers<BR><B>Subject:</B> Re: 
  [vlc-devel] demux/live555.cpp Elementary Stream 
  Synchronization.<BR></FONT><BR></DIV>
  <DIV></DIV>
  <BLOCKQUOTE cite="" type="cite"><FONT face=Arial size=-1>I'm trying to play 
    with VLC Media Player 2 elementary streams that are sent in 2 RTP subsession 
    with the live555 library in a testing application. One subsession is an 
    Mpeg2 Video Elementary Stream and the other subsession is a 2 
    channels audio PCM sampled at 48000 KHz. Both elementary stream are in 
    sync and genlocked at the source. I have much trouble getting VLC Media 
    player plays the 2 streams synchronized.</FONT></BLOCKQUOTE>
  <DIV><BR></DIV>
  <DIV>First, to get a/v synchronization at the client, you *must* be using 
  RTCP, as well as RTP.</DIV>
  <DIV><BR></DIV>
  <DIV>Second, your presentation times - at the sender - must be aligned with 
  'wall clock' time - i.e., the times you would get if you were to call 
  "gettimeofday()".</DIV>
  <DIV><BR></DIV>
  <DIV>If your audio and video streams have correct presentation times which are 
  aligned with 'wall clock' time, and you are using RTCP, then - at the receiver 
  (VLC) end - these same presentation times *will* be delivered to the decoding 
  software, and the decoding software *will* do a/v synchronization 
  correctly.</DIV>
  <DIV><BR></DIV>
  <BLOCKQUOTE cite="" type="cite"><FONT face=Arial size=-1>I have looked at 
    the code of live555.cpp in the VLC Media Player project. It seems to me 
    that the code is designed such that it is not possible to receive 2 
    streams that doesn't have the same sample rate. In this case 90 KHz for the 
    video and 48KHz for the audio.</FONT></BLOCKQUOTE>
  <DIV><BR></DIV>
  <DIV>No, that's not correct.  (BTW, instead of "sample rate", you mean 
  "RTP timestamp frequency".)  The code handles different RTP timestamp 
  frequencies (for different streams) just fine.</DIV><X-SIGSEP><PRE>-- 
</PRE></X-SIGSEP>
  <DIV><BR>Ross Finlayson<BR>Live Networks, 
Inc.<BR>http://www.live555.com/</DIV></BLOCKQUOTE></BODY></HTML>