I have an OnDemand RTSP server based around Live555 that streams out live H.264; I implemented a subsession and framer.  On the client side, I have a receiver application based loosely around openRTSP, but with my own custom H264 MediaSink class.<br>
<br>My problem is fPresentationTime; the values I hand off to Live555 on the server side are not the values I get on the client side.  Furthermore, the _first_ value I receive on the client side is always crazy, and then values thereafter appear to increase monotonically (although they still differ from what was supplied to the server).  I think I&#39;m misunderstanding something here.<br>
<br>In the server, my samples come to me timestamped with a REFERENCE_TIME, which is an __int64 value with 100 nanosecond units.  So to convert from this to the timeval, I do the following:<br><br>        // Our samples are 100 NS units.  So to get to usec, we divide by 10.<br>
        fDurationInMicroseconds = sample-&gt;m_duration / 10;<br>        REFERENCE_TIME sampleTimeInUsec = sample-&gt;m_time / 10;<br>        fPresentationTime.tv_sec = (long) sampleTimeInUsec / 1000000;<br>        fPresentationTime.tv_usec = (long) sampleTimeInUsec % 1000000;<br>
<br>...I am likely doing something wrong, but I don&#39;t understand why the first timestamp I get on the receiver is out in left field.  Could it be that running on Windows has some effect on the time stamp?  (both server/client are running on Win32)<br>
<br>Any help is much appreciated.<br>