]> git.sesse.net Git - ffmpeg/commitdiff
avformat/rtsp: correctly set media control uri with mpegts
authortpol <>
Sat, 10 Oct 2020 23:22:18 +0000 (19:22 -0400)
committerAndriy Gelman <andriy.gelman@gmail.com>
Mon, 18 Jan 2021 02:36:16 +0000 (21:36 -0500)
Fixes #1941

Currently the media control uri is not correctly assigned when mpegts is
signalled in the media description.

The code checks whether at least one AVStream has been setup before
assigning to the media's uri. With mpegts the AVStreams are setup when
parsing packets and so the media's uri is skipped. This is fixed by
using rt->nb_rtsp_streams in the check which counts all medias in the
sdp.

Reviewed-by: Andriy Gelman <andriy.gelman@gmail.com>
Signed-off-by: Andriy Gelman <andriy.gelman@gmail.com>
libavformat/rtsp.c

index d1f5762f7cf3ff9f5c998fda25f43262ad4b31fb..1b24496f3c699b844f1f80c538d74b60d4d636df 100644 (file)
@@ -571,7 +571,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));