[Live-devel] Question about FileSink and presentation time

David BERTRAND bidibulle at operamail.com
Thu Aug 24 09:57:11 PDT 2006


Hi Ross,

I'm trying to implement sort of video recorder by receiving a MP4 RTP stream (tanks to MPEG4ESVideoRTPSource class) and feeding a FileSink with the corresponding frames. I'm not using openRTSP to do that (basically because my RTP stream comes from a sip phone). When I try to replay the recorded stream with testOnDemandRTSPServer program, the clip I get run faster than what I recorded. So, If I record 30 seconds, the 30 seconds are played within 10 seconds approximatively. 
I suspect a timestamp problem in the RTP packets sent by testOnDemandRTSPServer (via MPEG4ESVideoRTPSink). The frame rate is supposed to be 10fps but I think there is some variable frame rate that might be the problem. For example, I see that the first VOP received from my SIP phone (during recording phase) is fragmented in several packets and is followed 1 second later by the second VOP with a timestamp difference equivalent to 1 second. This would correspond to 10 frames in a constant frame rate. When I play the file back, the second VOP is sent with a timestamp difference corresponding to 1OO ms (as with a normal frame rate of 10), which IMO is the problem. 
Do you think MPEG4VideoStreamFramer object is able to compute presentation times and frame durations correctly from the ByteStreamFileSource in this case ?
How could I check that the MPEG4 frames sent by my sip phones are correctly conveying timestamping information ?
Any other idea that I would have missed ?
I would appreciate any help.
Thanks a lot
David

-- 
_______________________________________________
Surf the Web in a faster, safer and easier way:
Download Opera 9 at http://www.opera.com

Powered by Outblaze



More information about the live-devel mailing list