diff --git a/libavformat/flvenc.c b/libavformat/flvenc.c index 7fad21cc13..dd74d4c4da 100644 --- a/libavformat/flvenc.c +++ b/libavformat/flvenc.c @@ -304,7 +304,7 @@ static int flv_write_header(AVFormatContext *s) /* mixed array (hash) with size and string/type/data tuples */ avio_w8(pb, AMF_DATA_TYPE_MIXEDARRAY); metadata_count_pos = avio_tell(pb); - metadata_count = 5 * !!video_enc + + metadata_count = 4 * !!video_enc + 5 * !!audio_enc + 1 * !!data_enc + 2; // +2 for duration and file size @@ -330,6 +330,7 @@ static int flv_write_header(AVFormatContext *s) if (framerate != 0.0) { put_amf_string(pb, "framerate"); put_amf_double(pb, framerate); + metadata_count++; } put_amf_string(pb, "videocodecid");