diff --git a/libavformat/matroskadec.c b/libavformat/matroskadec.c
index 31723b3b86ef74110cec24a176de84d5acf5269a..3caee3abf71c8f97a0f8f400a8dad10992e20b69 100644
--- a/libavformat/matroskadec.c
+++ b/libavformat/matroskadec.c
@@ -2012,8 +2012,8 @@ static int matroska_parse_tracks(AVFormatContext *s)
                 snprintf(buf, sizeof(buf), "%s_%d",
                          ff_matroska_video_stereo_plane[planes[j].type], i);
                 for (k=0; k < matroska->tracks.nb_elem; k++)
-                    if (planes[j].uid == tracks[k].uid && s->streams[k]) {
-                        av_dict_set(&s->streams[k]->metadata,
+                    if (planes[j].uid == tracks[k].uid && tracks[k].stream) {
+                        av_dict_set(&tracks[k].stream->metadata,
                                     "stereo_mode", buf, 0);
                         break;
                     }