[Live-devel] Issue faced with JPEGVideo

Ryan Chong fantasychong at yahoo.com
Sun Jul 24 22:40:31 PDT 2005


I am not really sure on the actual flow with the PAUSE->PLAY state
change. The following is the test I ran:
Reading video index: 178
Reading video index: 179
Reading video index: 180
Reading video index: 181
Reading video index: 182
Requesting seek for source at 4.156667
Seeking at 4.156667
Reading video index: 125
Reading video index: 126
Reading video index: 127
Reading video index: 128
Reading video index: 129

I print the "Reading video index: xxx" at my video file reader (when
the doGetNextFrame() is called), and the "Requesting seek for source at
xxx" in the:
void JPEGVideoFileServerMediaSubsession::seekStreamSource(FramedSource*
inputSource, float seekNPT)
function. 

This log is printed as the state change from PAUSE to PLAY. As I could
see, the video source was rewind back a few frames when it is resume. I
suppose this will supply enough frame to the RTSP server to resume the
stream from the time it PAUSE?

As I could see, when the PLAY command is issued by the client, the
Server will respond with some steps:
1. In void RTSPServer::RTSPClientSession::handleCmd_PLAY (...), the
subsession->seekStream(...) is called. This is corresponding to the
Seek in the logged above.
2. In void RTSPServer::RTSPClientSession::handleCmd_PLAY (...),  the
subsession->startStream(...) is called, which is calling the  void
OnDemandServerMediaSubsession::startStream (...). This will resume the
streaming, and start calling the doGetNextFrame(...) in the VideoSource
implemented.

Is there some steps that are taken out, but that I did not taken care
of, and thus causing the frame missing at the client side? How should
my implementation react to the state change of PLAY-PAUSE-PLAY so there
is no frame missing? i.e., which virtual functions I should look into
or implement to avoid the problem?

Thanks for reading.

Regards,
Ryan




--- Ross Finlayson <finlayson at live.com> wrote:

> 
> >
> >Then I found the problem that, when the stream is resume with the
> PLAY
> >command, there are a few seconds of video missing, normally more
> than 2
> >seconds. Is there anyway to overcome this issue?
> 
> I don't know.  Are you sure that your data source object is not to
> blame 
> for this?
> 
> 
> 	Ross Finlayson
> 	LIVE.COM
> 	<http://www.live.com/>
> 
> _______________________________________________
> live-devel mailing list
> live-devel at lists.live.com
> http://lists.live.com/mailman/listinfo/live-devel
> 



		
____________________________________________________
Start your day with Yahoo! - make it your home page 
http://www.yahoo.com/r/hs 
 


More information about the live-devel mailing list