On 19.01.2017 18:32, Michael Niedermayer wrote:
On Wed, Jan 18, 2017 at 10:27:02AM +0100, Tobias Rapp wrote:
Allows the user to reserve space for the ODML master index. A sufficient
sized master index in the AVI header avoids storing follow-up master
indexes within the 'movi' data later.

If the option is omitted or zero the index size is estimated from output
duration and bitrate. A worst-case bitrate for video streams is assumed
in case it is not available.

Note: fate reference files changed because the video stream had zero
bitrate before and is guessed now.

Signed-off-by: Tobias Rapp <t.r...@noa-archive.com>
---
 libavformat/avi.h                       |  1 -
 libavformat/avienc.c                    | 77 ++++++++++++++++++++++++++++++---
 libavformat/version.h                   |  2 +-
 tests/ref/fate/mpeg4-bsf-unpack-bframes |  2 +-
 tests/ref/lavf-fate/avi_cram            |  2 +-
 5 files changed, 74 insertions(+), 10 deletions(-)

this breaks segment:
./ffmpeg -i lena.pnm -f segment test%d.avi

possibly related to avi_init()

Yes, I can reproduce the problem when going back to Git master and just adding a dummy init (see attached diff). Not sure how to fix this, other muxers also have an init but seem to work fine (mkv) ...

Of course I could simply work-around it by moving the code from avi_init into avi_write_header.

Regards,
Tobias
diff --git a/libavformat/avienc.c b/libavformat/avienc.c
index fd16fff..fb78300 100644
--- a/libavformat/avienc.c
+++ b/libavformat/avienc.c
@@ -134,6 +134,12 @@ static int avi_add_ientry(AVFormatContext *s, int 
stream_index, char *tag,
     return 0;
 }
 
+
+static int avi_init(struct AVFormatContext *s)
+{
+    return 0;
+}
+
 static int64_t avi_start_new_riff(AVFormatContext *s, AVIOContext *pb,
                                   const char *riff_tag, const char *list_tag)
 {
@@ -927,6 +933,7 @@ AVOutputFormat ff_avi_muxer = {
     .priv_data_size = sizeof(AVIContext),
     .audio_codec    = CONFIG_LIBMP3LAME ? AV_CODEC_ID_MP3 : AV_CODEC_ID_AC3,
     .video_codec    = AV_CODEC_ID_MPEG4,
+    .init           = avi_init,
     .write_header   = avi_write_header,
     .write_packet   = avi_write_packet,
     .write_trailer  = avi_write_trailer,
_______________________________________________
ffmpeg-devel mailing list
ffmpeg-devel@ffmpeg.org
http://ffmpeg.org/mailman/listinfo/ffmpeg-devel

Reply via email to