[vlc-devel] commit: Remove non-sensical NPT computation code from c9569b35. ( Rémi Denis-Courmont )

Derk-Jan Hartman hartman at videolan.org
Mon Jul 21 03:13:01 CEST 2008

On 10 jul 2008, at 02:04, Ross Finlayson wrote:
>> vlc | branch: master | Rémi Denis-Courmont  
>> <rdenis at simphalempin.com> | Wed Jul  9 22:52:21 2008 +0300|  
>> [64417a25b912edb125c8a06c1f028115ba504eef]
>> Remove non-sensical NPT computation code from c9569b35.
>> If you want RTSP time, please come up with an algorithm that makes  
>> some
>> kind of sense. In the mean, it's better not to claim to support
>> somethign we don't support.
> I remind people of the following, which I originally posted back in  
> January:
>> Note, in particular, the definition of
>>         MediaSubsession::getNormalPlayTime()
>> in "liveMedia/include/MediaSession.hh".

I've being doing some work on the live555 code, because it was in a  
dismal state. partially caused by my absence last year.
I have attached a patch that has many of my proposed changes.

This tackles several issues:
1: removes all LIVEMEDIA version checks. It's about time we force  
another update here. Versions from this year are much better
    (P.S. Ross, do you have a recent VERSION_INT from the last "API  
change" ? )
2: add support for NPT and also DEMUX_GET_TIME DEMUX_SET_TIME based on  
3: fixes 461 Unsupported transport fallback, that was broken in the  
recent "force-mcast" patch [175310ff6066991ee45e2a839f8c53e12b75e6d4]
4: fixes RollOverTcp no-data timeout on TCP data. broken in  
5: re-add DEMUX_GET_POSITION (now based on NPT, not on PTS)
6: cleanup initialized ES when we do the SETUPS again in RollOverTcp
7: fix RollOverTcp re-sending of Connect()
8: Some other pts/pcr cleanup
9: removal of startseq code (no longer needed due to  
getNormalPlayTime() )

I will try to split these changes as much as possible when i commit, i  
just wanted to show everyone what I was working on, and give people  
the opportunity to test and give feedback.

Issues that I still have:
1: Seeking with QTSS/DSS hosted RTSP sessions doesn't work, because  
the timestamps act out. (Ross known issue right?)
2: When opening Apple QTSS streams, data is not send at wall time.  
Since VLC assumes the highest PTS to be the wall time, the streams act  
weird. They play to fast, because they seem to receive data for NOW,  
as well as for the future (Which i guess apple uses for buffering). I  
have no idea how to let VLC handle this properly, we need a way to  
differentiate the pts times from the wall time. There has to be a hack  
to do this, anyone got an idea?

Sample stream: rtsp://a2047.v1411b.c1411.g.vq.akamaistream.net/5/2047/1411/1_h264_650/1a1a1ae454c430950065de4cbb2f94c226950c7ae655b61a48a91475e243acda3dac194879adde0f/080690210abcn_2a_650.mov

Also, if anyone has more test streams, I'm dying to find more.
I need live streams, VoD streams, RTSP/ASF, RTSP/QT, multicast, RTP/ 


-------------- next part --------------
A non-text attachment was scrubbed...
Name: live_npt.patch
Type: application/octet-stream
Size: 21514 bytes
Desc: not available
URL: <http://mailman.videolan.org/pipermail/vlc-devel/attachments/20080721/ba4c3324/attachment.obj>
-------------- next part --------------

More information about the vlc-devel mailing list