问题
I have an IP camera that is located in a different country (with a different time zone) and that has it's own date-time values applied, (for example:~2012-04-16 11:30:00) then the one my PC is located at. (so my PC's time for example is ~2012-14-16 06:10:00)
My purpose: When streaming, i need to get this date-time value that is set in camera ("11:30:00") (I'm not interested in a current local time of my PC).
- Is there any way to calculate camera's date-time value from RTP's timestamp?
- Is there any other approach?
I'm using a Live555 library, and for frame's date-time retrieval I was using a "presentation time" value, but this gives me a local time of my PC (not the time that is set in my camera)
So I'm stuck here..
回答1:
Read the RFC on RTP packet layout
Note that the Timestamp is in the RTP packet at 0x32. This is the timestamp from the camera that encoded the stream.
For a CPP implementation, processing RTP packet and headers including the timestamp , see the link.
Java implementation of RTP packet handler here
来源:https://stackoverflow.com/questions/10171542/rtsp-rtp-client-streaming-timestamp-live555