I tried reproducing what you did - by using a modified version of "testRTSPClient" that
- plays a stream for 5 seconds
- pauses for 7 seconds
- plays the stream again (starting from 0, as you did[*])
(It also prints out the NPT time (along with the presentation time) for each received frame.)

However, I didn't see anything wrong with the NPT values at any time.

FYI, I have attached my modified "testRTSPClient.cpp" to this message.  Feel free to compile and run it for yourself.

However, I'm curious about what you've written here: 

presentationTime before NPT: 13469992513654
presentationTime after NPT:     10000000
(etc.)

This suggests to me that perhaps you don't quite understand the difference between "presentation time" and "normal play time" (aka. NPT).  They are *different* times, with *different* time scales, so it doesn't make sense to talk about "presentationTime before NPT" or "presentationTime after NPT".

"presentation time" (in seconds and microseconds) indicates a (relative) time at which each frame should be fed to a decoder.

"normal play time" (NPT) indicates the current 'human readable' position in the stream.  I.e., think of it as being like the play time shown on the front of a VCR, if you had a VCR playing the stream.

(Also, neither time is an integer, so I don't know why you've written integers above.)

[*] Actually, your second call to "sendPlayCommand()" specified a start time of -1.0 (which got converted to 0.0).  I don't know why you did that...


Ross Finlayson
Live Networks, Inc.
http://www.live555.com/

Attachment: testRTSPClient.cpp
Description: Binary data

_______________________________________________
live-devel mailing list
[email protected]
http://lists.live555.com/mailman/listinfo/live-devel

Reply via email to