[FFmpeg-devel] [PATCH 3/4] mxfenc: write optional field dominance flag in picture description

Matthieu Bouron matthieu.bouron at gmail.com
Thu May 31 13:52:12 CEST 2012


On Thu, May 31, 2012 at 01:42:42PM +0200, Tomas Härdin wrote:
> On Sun, 2012-05-27 at 14:21 +0200, Matthieu Bouron wrote:
> > ---
> > $title
> > ---
> >  libavformat/mxfenc.c   |   15 ++++++++++++++-
> >  tests/ref/lavf/mxf     |    6 +++---
> >  tests/ref/lavf/mxf_d10 |    2 +-
> >  3 files changed, 18 insertions(+), 5 deletions(-)
> > 
> > diff --git a/libavformat/mxfenc.c b/libavformat/mxfenc.c
> > index 1d11bae..fce8446 100644
> > --- a/libavformat/mxfenc.c
> > +++ b/libavformat/mxfenc.c
> > @@ -73,6 +73,7 @@ typedef struct {
> >      const UID *codec_ul;
> >      int order;               ///< interleaving order if dts are equal
> >      int interlaced;          ///< whether picture is interlaced
> > +    int field_dominance;     ///< tff=1, bff=2
> 
> Wasn't there a plan to add this information to AVCodecContext?
> top_field_first IIRC.
> 
> > @@ -790,8 +792,11 @@ 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+5+16+sc->interlaced*4+12+20;
> > +    if (sc->interlaced && sc->field_dominance)
> > +        desc_size += 5;
> >  
> > -    mxf_write_generic_desc(s, st, key, size+8+8+8+8+8+8+5+16+sc->interlaced*4+12+20);
> > +    mxf_write_generic_desc(s, st, key, desc_size);
> 
> 
> Looks correct.
> 
> Just noting that I think this could be reworked to  use the "write
> everything, then update the length" approach that movenc uses.
> 

Thanks. I was thinking about reworking this in a later patch.

Matthieu

> /Tomas
> 
> _______________________________________________
> ffmpeg-devel mailing list
> ffmpeg-devel at ffmpeg.org
> http://ffmpeg.org/mailman/listinfo/ffmpeg-devel


More information about the ffmpeg-devel mailing list