[FFmpeg-devel] [PATCH] avformat/rtsp: don't overwrite session control uri

Andriy Gelman andriy.gelman at gmail.com
Wed Oct 21 20:39:10 EEST 2020


On Sat, 10. Oct 19:22, Andriy Gelman wrote:
> From: Andriy Gelman <andriy.gelman at gmail.com>
> 
> Fixes #1941
> 
> Currently the session control uri gets overwritten by the media's uri
> when mpegts is signalled in the media description. This happens because
> s->nb_streams doesn't count mpegts which is instead part of the private
> context in RTSPStream.
> 
> Instead use rt->nb_rtsp_streams which counts all of the media streams
> signalled in the sdp.
> 
> This solution was originally proposed by user "tpol" on trac:
> https://trac.ffmpeg.org/ticket/1941
> 
> Signed-off-by: Andriy Gelman <andriy.gelman at gmail.com>
> ---
>  libavformat/rtsp.c | 2 +-
>  1 file changed, 1 insertion(+), 1 deletion(-)
> 
> diff --git a/libavformat/rtsp.c b/libavformat/rtsp.c
> index e9fca034b4..4d5459ac41 100644
> --- a/libavformat/rtsp.c
> +++ b/libavformat/rtsp.c
> @@ -542,7 +542,7 @@ static void sdp_parse_line(AVFormatContext *s, SDPParseState *s1,
>          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));
> -- 
> 2.28.0
> 

ping

-- 
Andriy


More information about the ffmpeg-devel mailing list