> I met another bug about dealing with range time. > Version: live.2014.12.09.tar.gz > <http://www.live555.com/liveMedia/public/live.2014.12.09.tar.gz> > File: RTSPServer.cpp line: 1954 code: > fStreamStates[i].subsession->seekStream(fOurSessionId, > fStreamStates[i].streamToken, absStart, absEnd); > > the absStart and absEnd will be freed(deleted) in File: > OnDemandServerMediaSubsession.cpp line: 361
You’re misunderstanding the code. This is the *default version* of the “seekStreamSource()” virtual function - i.e., the version that gets called if you don’t explicitly implement seeking in your own subclass of “OnDemandServerMediaSubsession”. If you don’t override (i.e., implement your own version of) the “seekStreamSource()” virtual function (note, BTW, that there are two forms of this function - one for seeking by NPT (‘normal play time’); another for seeking by absolute time), then this default version of the function will get called, and the RTSP response will have a “range: 0-0” header, to show that the server (by default) does not implement seeking. Therefore, to implement seeking by absolute time, your subclass of “OnDemandServerMediaSubsession” must reimplement the “seekStreamSource()” virtual function (the second version - the version that supports seeking by absolute time - if that’s what you want to do). See http://live555.com/liveMedia/faq.html#trick-mode <http://live555.com/liveMedia/faq.html#trick-mode> (although that web page mentions only the first (NPT, i.e., ‘normal play time’) version of “seekStreamSource()”, because most developers want to implement only seeking by NPT). Ross Finlayson Live Networks, Inc. http://www.live555.com/
_______________________________________________ live-devel mailing list live-devel@lists.live555.com http://lists.live555.com/mailman/listinfo/live-devel