X-Git-Url: https://git.sesse.net/?a=blobdiff_plain;f=libavformat%2Frtspdec.c;h=a4cd1f68ff0e3890fb54ef51d266dfdb5a5ca677;hb=e1c4a3ea7d2830a2e6c1e5212066c7995fffbdf2;hp=32dff2319c51f7bf0c71f0420cfa0dff1281f774;hpb=ebdc5c419aef0d9eed8c1ec57b30238194c1db0a;p=ffmpeg diff --git a/libavformat/rtspdec.c b/libavformat/rtspdec.c index 32dff2319c5..a4cd1f68ff0 100644 --- a/libavformat/rtspdec.c +++ b/libavformat/rtspdec.c @@ -172,7 +172,7 @@ static int rtsp_read_announce(AVFormatContext *s) { RTSPState *rt = s->priv_data; RTSPMessageHeader request = { 0 }; - char sdp[4096]; + char sdp[SDP_MAX_SIZE]; int ret; ret = rtsp_read_request(s, &request, "ANNOUNCE"); @@ -289,11 +289,9 @@ static int rtsp_read_setup(AVFormatContext *s, char* host, char *controlurl) } else { do { AVDictionary *opts = NULL; - char buf[256]; - snprintf(buf, sizeof(buf), "%d", rt->buffer_size); - av_dict_set(&opts, "buffer_size", buf, 0); + av_dict_set_int(&opts, "buffer_size", rt->buffer_size, 0); ff_url_join(url, sizeof(url), "rtp", NULL, host, localport, NULL); - av_log(s, AV_LOG_TRACE, "Opening: %s", url); + av_log(s, AV_LOG_TRACE, "Opening: %s\n", url); ret = ffurl_open_whitelist(&rtsp_st->rtp_handle, url, AVIO_FLAG_READ_WRITE, &s->interrupt_callback, &opts, s->protocol_whitelist, s->protocol_blacklist, NULL); @@ -306,7 +304,7 @@ static int rtsp_read_setup(AVFormatContext *s, char* host, char *controlurl) return ret; } - av_log(s, AV_LOG_TRACE, "Listening on: %d", + av_log(s, AV_LOG_TRACE, "Listening on: %d\n", ff_rtp_get_local_rtp_port(rtsp_st->rtp_handle)); if ((ret = ff_rtsp_open_transport_ctx(s, rtsp_st))) { rtsp_send_reply(s, RTSP_STATUS_TRANSPORT, NULL, request.seq); @@ -699,7 +697,7 @@ static int rtsp_listen(AVFormatContext *s) } } -static int rtsp_probe(AVProbeData *p) +static int rtsp_probe(const AVProbeData *p) { if ( #if CONFIG_TLS_PROTOCOL @@ -770,7 +768,7 @@ redo: } ret = ffurl_read_complete(rt->rtsp_hd, buf, 3); if (ret != 3) - return -1; + return AVERROR(EIO); id = buf[0]; len = AV_RB16(buf + 1); av_log(s, AV_LOG_TRACE, "id=%d len=%d\n", id, len); @@ -779,10 +777,10 @@ redo: /* get the data */ ret = ffurl_read_complete(rt->rtsp_hd, buf, len); if (ret != len) - return -1; + return AVERROR(EIO); if (rt->transport == RTSP_TRANSPORT_RDT && - ff_rdt_parse_header(buf, len, &id, NULL, NULL, NULL, NULL) < 0) - return -1; + (ret = ff_rdt_parse_header(buf, len, &id, NULL, NULL, NULL, NULL)) < 0) + return ret; /* find the matching stream */ for (i = 0; i < rt->nb_rtsp_streams; i++) {