Support seeking as defined by the rfc

a PLAY with Range alone while in PLAY status should be interpreted
as an enqueue
a PAUSE followed by a PLAY with Range is the proper way to ask to
seek to a point.

See rfc2326

Originally committed as revision 19143 to svn://svn.ffmpeg.org/ffmpeg/trunk
release/0.6
Luca Barbato 16 years ago
parent 4db819bc7f
commit ec606b36b4
  1. 3
      libavformat/rtsp.c
  2. 1
      libavformat/rtsp.h

@ -1599,6 +1599,9 @@ static int rtsp_read_seek(AVFormatContext *s, int stream_index,
case RTSP_STATE_IDLE:
break;
case RTSP_STATE_PLAYING:
if (rtsp_read_pause(s) != 0)
return -1;
rt->state = RTSP_STATE_SEEKING;
if (rtsp_read_play(s) != 0)
return -1;
break;

@ -151,6 +151,7 @@ enum RTSPClientState {
RTSP_STATE_IDLE, /**< not initialized */
RTSP_STATE_PLAYING, /**< initialized and receiving data */
RTSP_STATE_PAUSED, /**< initialized, but not receiving data */
RTSP_STATE_SEEKING, /**< initialized, requesting a seek */
};
/**

Loading…
Cancel
Save