Commit c0628919 authored by Steven Liu's avatar Steven Liu

avformat/flvdec: check FLVHeader PreviousTagSize0

refer to SPEC:
Annex E. The FLV File Format said:
E.3 TheFLVFileBody have a table:
Field            Type    Comment
PreviousTagSize0 UI32    Always 0
Reviewed-by: 's avatarBela Bodecs <bodecsb@vivanet.hu>
Reviewed-by: 's avatarHendrik Leppkes <h.leppkes@gmail.com>
Signed-off-by: 's avatarSteven Liu <lq@chinaffmpeg.org>
parent 3fe7bb2b
......@@ -709,6 +709,7 @@ static int flv_read_header(AVFormatContext *s)
int flags;
FLVContext *flv = s->priv_data;
int offset;
int pre_tag_size = 0;
avio_skip(s->pb, 4);
flags = avio_r8(s->pb);
......@@ -719,7 +720,16 @@ static int flv_read_header(AVFormatContext *s)
offset = avio_rb32(s->pb);
avio_seek(s->pb, offset, SEEK_SET);
avio_skip(s->pb, 4);
/* Annex E. The FLV File Format
* E.3 TheFLVFileBody
* Field Type Comment
* PreviousTagSize0 UI32 Always 0
* */
pre_tag_size = avio_rb32(s->pb);
if (pre_tag_size) {
av_log(s, AV_LOG_WARNING, "Read FLV header error, input file is not a standard flv format, first PreviousTagSize0 always is 0\n");
}
s->start_time = 0;
flv->sum_flv_tag_size = 0;
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment