break;
case 'a':
if (av_strstart(p, "control:", &p)) {
- if (s->nb_streams == 0) {
+ if (rt->nb_rtsp_streams == 0) {
if (!strncmp(p, "rtsp://", 7))
av_strlcpy(rt->control_uri, p,
sizeof(rt->control_uri));
break;
}
- if (CONFIG_RTSP_DEMUXER && s->iformat) {
+#if CONFIG_RTSP_DEMUXER
+ if (s->iformat) {
if (rt->server_type == RTSP_SERVER_SATIP)
err = init_satip_stream(s);
else
err = ff_rtsp_setup_input_streams(s, reply);
- } else if (CONFIG_RTSP_MUXER)
+ } else
+#endif
+ if (CONFIG_RTSP_MUXER)
err = ff_rtsp_setup_output_streams(s, host);
else
av_assert0(0);
RTSPState *rt = s->priv_data;
const char *p;
AVBPrint sdp;
+ AVDictionary *opts = NULL;
if (!ff_network_init())
return AVERROR(EIO);
+ opts = map_to_opts(rt);
ret = ffurl_open_whitelist(&in, s->url, AVIO_FLAG_READ,
- &s->interrupt_callback, NULL, s->protocol_whitelist, s->protocol_blacklist, NULL);
+ &s->interrupt_callback, &opts, s->protocol_whitelist, s->protocol_blacklist, NULL);
+ av_dict_free(&opts);
if (ret)
goto fail;