diff --git a/libavformat/flacenc.c b/libavformat/flacenc.c index 5595d76b7d..23d1be8721 100644 --- a/libavformat/flacenc.c +++ b/libavformat/flacenc.c @@ -29,7 +29,6 @@ static int flac_write_header(struct AVFormatContext *s) }; AVCodecContext *codec = s->streams[0]->codec; uint8_t *streaminfo; - int len = s->streams[0]->codec->extradata_size; enum FLACExtradataFormat format; if (!ff_flac_is_extradata_valid(codec, &format, &streaminfo)) @@ -37,8 +36,11 @@ static int flac_write_header(struct AVFormatContext *s) if (format == FLAC_EXTRADATA_FORMAT_STREAMINFO) { put_buffer(s->pb, header, 8); - put_buffer(s->pb, streaminfo, len); } + + /* write STREAMINFO or full header */ + put_buffer(s->pb, codec->extradata, codec->extradata_size); + return 0; }