diff --git a/libavformat/rtspdec.c b/libavformat/rtspdec.c
index d2f49a41fa46cdfe017afb63ee3a08c15dec544a..fd74b08c5370f4916470a5c2a3f620f65f7299b0 100644
--- a/libavformat/rtspdec.c
+++ b/libavformat/rtspdec.c
@@ -136,7 +136,7 @@ static int rtsp_read_header(AVFormatContext *s,
     rt->real_setup_cache = av_mallocz(2 * s->nb_streams * sizeof(*rt->real_setup_cache));
     if (!rt->real_setup_cache)
         return AVERROR(ENOMEM);
-    rt->real_setup = rt->real_setup_cache + s->nb_streams * sizeof(*rt->real_setup);
+    rt->real_setup = rt->real_setup_cache + s->nb_streams;
 
     if (ap->initial_pause) {
          /* do not start immediately */