On Fri, 2016-01-29 at 17:45 +0100, Sebastian Dröge wrote: > From: Sebastian Dröge <sebast...@centricular.com> > > This reverts commit 8ed82d8174a666f80ab8834e3617cbe91ae740a9. > > SMPTE S377-1-2009c defines in F.4.1 that the Video Line Map should > always be an array with two 32 bit integers as elements. This is > repeated in G.2.12 with actual examples for progressive content, > where the second value would always be 0. > > Additionally, the IRT MXF analyser also lists this as the only > error in the MXF output from ffmpeg: https://mxf-analyser-cloud.irt.de > --- > libavformat/mxfenc.c | 10 +++++----- > tests/ref/lavf/mxf | 6 +++--- > tests/ref/lavf/mxf_opatom | 2 +- > 3 files changed, 9 insertions(+), 9 deletions(-) > > diff --git a/libavformat/mxfenc.c b/libavformat/mxfenc.c > index 35c67f7..6da8b10 100644 > --- a/libavformat/mxfenc.c > +++ b/libavformat/mxfenc.c > @@ -1013,7 +1013,7 @@ static void mxf_write_cdci_common(AVFormatContext *s, > AVStream *st, const UID ke > int stored_height = (st->codec->height+15)/16*16; > int display_height; > int f1, f2; > - unsigned desc_size = size+8+8+8+8+8+8+8+5+16+sc->interlaced*4+12+20+5; > + unsigned desc_size = size+8+8+8+8+8+8+8+5+16+4+12+20+5;
Not strictly related to this patch but: Can we do something about this? Other muxers (such as movenc) use a combination of ftell() and fseek() to rewrite size fields like these. Or perhaps mxfenc needs to be able to write to a pipe? In that case seeking in a short buffer is allowed in avio IIRC > if (sc->interlaced && sc->field_dominance) > desc_size += 5; > if (sc->signal_standard) > @@ -1081,12 +1081,12 @@ static void mxf_write_cdci_common(AVFormatContext *s, > AVStream *st, const UID ke > f1 *= 2; > } > > - mxf_write_local_tag(pb, 12+sc->interlaced*4, 0x320D); > - avio_wb32(pb, sc->interlaced ? 2 : 1); > + > + mxf_write_local_tag(pb, 16, 0x320D); > + avio_wb32(pb, 2); > avio_wb32(pb, 4); > avio_wb32(pb, f1); > - if (sc->interlaced) > - avio_wb32(pb, f2); > + avio_wb32(pb, f2); Looks OK.. /Tomas
signature.asc
Description: This is a digitally signed message part
_______________________________________________ ffmpeg-devel mailing list ffmpeg-devel@ffmpeg.org http://ffmpeg.org/mailman/listinfo/ffmpeg-devel