Split rtsp_read_header() into two functions, so that the main part (now also
known as rtsp_connect()) can be used in the RTSP muxer. Patch by Martin Storsjö <$firstname $firstname st>. Originally committed as revision 21915 to svn://svn.ffmpeg.org/ffmpeg/trunk
This commit is contained in:
parent
e23d195deb
commit
4280f9bbcd
@ -1295,8 +1295,7 @@ static int rtsp_setup_input_streams(AVFormatContext *s)
|
|||||||
return 0;
|
return 0;
|
||||||
}
|
}
|
||||||
|
|
||||||
static int rtsp_read_header(AVFormatContext *s,
|
static int rtsp_connect(AVFormatContext *s)
|
||||||
AVFormatParameters *ap)
|
|
||||||
{
|
{
|
||||||
RTSPState *rt = s->priv_data;
|
RTSPState *rt = s->priv_data;
|
||||||
char host[1024], path[1024], tcpname[1024], cmd[2048], auth[128];
|
char host[1024], path[1024], tcpname[1024], cmd[2048], auth[128];
|
||||||
@ -1424,14 +1423,6 @@ redirect:
|
|||||||
|
|
||||||
rt->state = RTSP_STATE_IDLE;
|
rt->state = RTSP_STATE_IDLE;
|
||||||
rt->seek_timestamp = 0; /* default is to start stream at position zero */
|
rt->seek_timestamp = 0; /* default is to start stream at position zero */
|
||||||
if (ap->initial_pause) {
|
|
||||||
/* do not start immediately */
|
|
||||||
} else {
|
|
||||||
if (rtsp_read_play(s) < 0) {
|
|
||||||
err = AVERROR_INVALIDDATA;
|
|
||||||
goto fail;
|
|
||||||
}
|
|
||||||
}
|
|
||||||
return 0;
|
return 0;
|
||||||
fail:
|
fail:
|
||||||
rtsp_close_streams(s);
|
rtsp_close_streams(s);
|
||||||
@ -1446,6 +1437,29 @@ redirect:
|
|||||||
return err;
|
return err;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
static int rtsp_read_header(AVFormatContext *s,
|
||||||
|
AVFormatParameters *ap)
|
||||||
|
{
|
||||||
|
RTSPState *rt = s->priv_data;
|
||||||
|
int ret;
|
||||||
|
|
||||||
|
ret = rtsp_connect(s);
|
||||||
|
if (ret)
|
||||||
|
return ret;
|
||||||
|
|
||||||
|
if (ap->initial_pause) {
|
||||||
|
/* do not start immediately */
|
||||||
|
} else {
|
||||||
|
if (rtsp_read_play(s) < 0) {
|
||||||
|
rtsp_close_streams(s);
|
||||||
|
url_close(rt->rtsp_hd);
|
||||||
|
return AVERROR_INVALIDDATA;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
return 0;
|
||||||
|
}
|
||||||
|
|
||||||
static int udp_read_packet(AVFormatContext *s, RTSPStream **prtsp_st,
|
static int udp_read_packet(AVFormatContext *s, RTSPStream **prtsp_st,
|
||||||
uint8_t *buf, int buf_size)
|
uint8_t *buf, int buf_size)
|
||||||
{
|
{
|
||||||
|
Loading…
x
Reference in New Issue
Block a user