summaryrefslogtreecommitdiff
path: root/libavformat/mvdec.c
diff options
context:
space:
mode:
Diffstat (limited to 'libavformat/mvdec.c')
-rw-r--r--libavformat/mvdec.c10
1 files changed, 7 insertions, 3 deletions
diff --git a/libavformat/mvdec.c b/libavformat/mvdec.c
index d58281c3a9..8492928820 100644
--- a/libavformat/mvdec.c
+++ b/libavformat/mvdec.c
@@ -340,8 +340,8 @@ static int mv_read_header(AVFormatContext *avctx)
return AVERROR_INVALIDDATA;
}
avpriv_set_pts_info(ast, 33, 1, ast->codecpar->sample_rate);
- if (set_channels(avctx, ast, avio_rb32(pb)) < 0)
- return AVERROR_INVALIDDATA;
+
+ avio_skip(pb, 4);
v = avio_rb32(pb);
if (v == AUDIO_FORMAT_SIGNED) {
@@ -350,7 +350,11 @@ static int mv_read_header(AVFormatContext *avctx)
avpriv_request_sample(avctx, "Audio compression (format %i)", v);
}
- avio_skip(pb, 12);
+ if (set_channels(avctx, ast, avio_rb32(pb)) < 0)
+ return AVERROR_INVALIDDATA;
+
+ avio_skip(pb, 8);
+
var_read_metadata(avctx, "title", 0x80);
var_read_metadata(avctx, "comment", 0x100);
avio_skip(pb, 0x80);