diff --git a/libavformat/mxfenc.c b/libavformat/mxfenc.c index 928f3e1531..e71593e404 100644 --- a/libavformat/mxfenc.c +++ b/libavformat/mxfenc.c @@ -1072,7 +1072,10 @@ static void mxf_write_index_table_segment(AVFormatContext *s) // index duration mxf_write_local_tag(pb, 8, 0x3F0D); - put_be64(pb, mxf->edit_units_count); + if (mxf->edit_unit_byte_count) + put_be64(pb, 0); // index table covers whole container + else + put_be64(pb, mxf->edit_units_count); // edit unit byte count mxf_write_local_tag(pb, 4, 0x3F05); diff --git a/tests/lavf.regression.ref b/tests/lavf.regression.ref index 4645c643ca..e4ae9c7c20 100644 --- a/tests/lavf.regression.ref +++ b/tests/lavf.regression.ref @@ -12,7 +12,7 @@ bfdec98337e6a9d89dc648d1e65a41db *./tests/data/b-lavf.mpg dfae2e9e7572c000bec1edb8ea3e6cf3 *./tests/data/b-lavf.mxf 535097 ./tests/data/b-lavf.mxf ./tests/data/b-lavf.mxf CRC=0xd7ff387d -0cf22217d46b55c4fd178890305f9025 *./tests/data/b-lavf.mxf_d10 +8e70bc1e7602bb07f02159d1a2dd69cd *./tests/data/b-lavf.mxf_d10 5330989 ./tests/data/b-lavf.mxf_d10 ./tests/data/b-lavf.mxf_d10 CRC=0xd241c8b6 2e9bd99fbb121ae4887109e3a4169acd *./tests/data/b-lavf.ts