diff --git a/libavformat/asfdec.c b/libavformat/asfdec.c
index a7d860927b1bf9fb4116ae4d617c8258cf4152b0..03f4b20164be7581942a9e81f49cbe4c1dcfa22b 100644
--- a/libavformat/asfdec.c
+++ b/libavformat/asfdec.c
@@ -501,6 +501,8 @@ static int asf_read_stream_properties(AVFormatContext *s, int64_t size)
         }
         if (st->codec->codec_id == AV_CODEC_ID_H264)
             st->need_parsing = AVSTREAM_PARSE_FULL_ONCE;
+        if (st->codec->codec_id == AV_CODEC_ID_MPEG4)
+            st->need_parsing = AVSTREAM_PARSE_FULL_ONCE;
     }
     pos2 = avio_tell(pb);
     avio_skip(pb, size - (pos2 - pos1 + 24));