Merge remote-tracking branch 'qatar/master'
authorMichael Niedermayer <michaelni@gmx.at>
Wed, 15 May 2013 08:50:20 +0000 (10:50 +0200)
committerMichael Niedermayer <michaelni@gmx.at>
Wed, 15 May 2013 09:10:09 +0000 (11:10 +0200)
* qatar/master:
  pixdesc: rename PIX_FMT_* flags to AV_PIX_FMT_FLAG_*

Conflicts:
doc/APIchanges
libavcodec/avpicture.c
libavcodec/ffv1dec.c
libavcodec/ffv1enc.c
libavcodec/imgconvert.c
libavcodec/tiffenc.c
libavfilter/vf_pixdesctest.c
libavfilter/vf_scale.c
libavutil/imgutils.c
libavutil/pixdesc.c
libavutil/version.h
libswscale/swscale_internal.h

Merged-by: Michael Niedermayer <michaelni@gmx.at>
19 files changed:
1  2 
cmdutils.c
doc/APIchanges
libavcodec/imgconvert.c
libavcodec/pnm.c
libavcodec/rawdec.c
libavcodec/utils.c
libavcodec/xwdenc.c
libavfilter/formats.c
libavfilter/vf_crop.c
libavfilter/vf_fieldorder.c
libavfilter/vf_pixdesctest.c
libavfilter/vf_scale.c
libavutil/frame.c
libavutil/imgutils.c
libavutil/pixdesc.c
libavutil/pixdesc.h
libavutil/version.h
libswscale/swscale_internal.h
libswscale/swscale_unscaled.c

diff --cc cmdutils.c
Simple merge
diff --cc doc/APIchanges
@@@ -15,164 -13,9 +15,167 @@@ libavutil:     2012-10-2
  
  API changes, most recent first:
  
 +2013-05-13 - xxxxxxx - lavu 52.31.100 - mem.h
 +  Add av_dynarray2_add().
 +
 +2013-05-12 - xxxxxxx - lavfi 3.65.100
 +  Add AVFILTER_FLAG_SUPPORT_TIMELINE* filter flags.
 +
 +2013-04-19 - xxxxxxx - lavc 55.4.100
 +  Add AV_CODEC_PROP_TEXT_SUB property for text based subtitles codec.
 +
 +2013-04-18 - xxxxxxx - lavf 55.3.100
 +  The matroska demuxer can now output proper verbatim ASS packets. It will
 +  become the default starting lavf 56.0.100.
 +
 +2013-04-10 - xxxxxxx - lavu 25.26.100 - avutil.h,opt.h
 +  Add av_int_list_length()
 +  and av_opt_set_int_list().
 +
 +2013-03-30 - xxxxxxx - lavu 52.24.100 - samplefmt.h
 +  Add av_samples_alloc_array_and_samples().
 +
 +2013-03-29 - xxxxxxx - lavf 55.1.100 - avformat.h
 +  Add av_guess_frame_rate()
 +
 +2013-03-20 - xxxxxxx - lavu 52.22.100 - opt.h
 +  Add AV_OPT_TYPE_DURATION value to AVOptionType enum.
 +
 +2013-03-17 - xxxxxx - lavu 52.20.100 - opt.h
 +  Add AV_OPT_TYPE_VIDEO_RATE value to AVOptionType enum.
 +
 +2013-03-07 - xxxxxx - lavu 52.18.100 - avstring.h,bprint.h
 +  Add av_escape() and av_bprint_escape() API.
 +
 +2013-02-24 - xxxxxx - lavfi 3.41.100 - buffersink.h
 +  Add sample_rates field to AVABufferSinkParams.
 +
 +2013-01-17 - a1a707f - lavf 54.61.100
 +  Add av_codec_get_tag2().
 +
 +2013-01-01 - 2eb2e17 - lavfi 3.34.100
 +  Add avfilter_get_audio_buffer_ref_from_arrays_channels.
 +
 +2012-12-20 - 34de47aa - lavfi 3.29.100 - avfilter.h
 +  Add AVFilterLink.channels, avfilter_link_get_channels()
 +  and avfilter_ref_get_channels().
 +
 +2012-12-15 - 2ada584d - lavc 54.80.100 - avcodec.h
 +  Add pkt_size field to AVFrame.
 +
 +2012-11-25 - c70ec631 - lavu 52.9.100 - opt.h
 +  Add the following convenience functions to opt.h:
 +   av_opt_get_image_size
 +   av_opt_get_pixel_fmt
 +   av_opt_get_sample_fmt
 +   av_opt_set_image_size
 +   av_opt_set_pixel_fmt
 +   av_opt_set_sample_fmt
 +
 +2012-11-17 - 4cd74c81 - lavu 52.8.100 - bprint.h
 +  Add av_bprint_strftime().
 +
 +2012-11-15 - 92648107 - lavu 52.7.100 - opt.h
 +  Add av_opt_get_key_value().
 +
 +2012-11-13 - 79456652 - lavfi 3.23.100 - avfilter.h
 +  Add channels field to AVFilterBufferRefAudioProps.
 +
 +2012-11-03 - 481fdeee - lavu 52.3.100 - opt.h
 +  Add AV_OPT_TYPE_SAMPLE_FMT value to AVOptionType enum.
 +
 +2012-10-21 - 6fb2fd8 - lavc  54.68.100 - avcodec.h
 +                       lavfi  3.20.100 - avfilter.h
 +  Add AV_PKT_DATA_STRINGS_METADATA side data type, used to transmit key/value
 +  strings between AVPacket and AVFrame, and add metadata field to
 +  AVCodecContext (which shall not be accessed by users; see AVFrame metadata
 +  instead).
 +
 +2012-09-27 - a70b493 - lavd 54.3.100 - version.h
 +  Add LIBAVDEVICE_IDENT symbol.
 +
 +2012-09-27 - a70b493 - lavfi 3.18.100 - version.h
 +  Add LIBAVFILTER_IDENT symbol.
 +
 +2012-09-27 - a70b493 - libswr 0.16.100 - version.h
 +  Add LIBSWRESAMPLE_VERSION, LIBSWRESAMPLE_BUILD
 +  and LIBSWRESAMPLE_IDENT symbols.
 +
 +2012-09-06 - 29e972f - lavu 51.72.100 - parseutils.h
 +  Add av_small_strptime() time parsing function.
 +
 +  Can be used as a stripped-down replacement for strptime(), on
 +  systems which do not support it.
 +
 +2012-08-25 - 2626cc4 - lavf 54.28.100
 +  Matroska demuxer now identifies SRT subtitles as AV_CODEC_ID_SUBRIP instead
 +  of AV_CODEC_ID_TEXT.
 +
 +2012-08-13 - 5c0d8bc - lavfi 3.8.100 - avfilter.h
 +  Add avfilter_get_class() function, and priv_class field to AVFilter
 +  struct.
 +
 +2012-08-12 - a25346e - lavu 51.69.100 - opt.h
 +  Add AV_OPT_FLAG_FILTERING_PARAM symbol in opt.h.
 +
 +2012-07-31 - 23fc4dd - lavc 54.46.100
 +  Add channels field to AVFrame.
 +
 +2012-07-30 - f893904 - lavu 51.66.100
 +  Add av_get_channel_description()
 +  and av_get_standard_channel_layout() functions.
 +
 +2012-07-21 - 016a472 - lavc 54.43.100
 +  Add decode_error_flags field to AVFrame.
 +
 +2012-07-20 - b062936 - lavf 54.18.100
 +  Add avformat_match_stream_specifier() function.
 +
 +2012-07-14 - f49ec1b - lavc 54.38.100 - avcodec.h
 +  Add metadata to AVFrame, and the accessor functions
 +  av_frame_get_metadata() and av_frame_set_metadata().
 +
 +2012-07-10 - 0e003d8 - lavc 54.33.100
 +  Add av_fast_padded_mallocz().
 +
 +2012-07-10 - 21d5609 - lavfi 3.2.0 - avfilter.h
 +  Add init_opaque() callback to AVFilter struct.
 +
 +2012-06-26 - e6674e4 - lavu 51.63.100 - imgutils.h
 +  Add functions to libavutil/imgutils.h:
 +  av_image_get_buffer_size()
 +  av_image_fill_arrays()
 +  av_image_copy_to_buffer()
 +
 +2012-06-24 - c41899a - lavu 51.62.100 - version.h
 +  version moved from avutil.h to version.h
 +
 +2012-04-11 - 359abb1 - lavu 51.58.100 - error.h
 +  Add av_make_error_string() and av_err2str() utilities to
 +  libavutil/error.h.
 +
 +2012-06-05 - 62b39d4 - lavc 54.24.100
 +  Add pkt_duration field to AVFrame.
 +
 +2012-05-24 - f2ee065 - lavu 51.54.100
 +  Move AVPALETTE_SIZE and AVPALETTE_COUNT macros from
 +  libavcodec/avcodec.h to libavutil/pixfmt.h.
 +
 +2012-05-14 - 94a9ac1 - lavf 54.5.100
 +  Add av_guess_sample_aspect_ratio() function.
 +
 +2012-04-20 - 65fa7bc - lavfi 2.70.100
 +  Add avfilter_unref_bufferp() to avfilter.h.
 +
 +2012-04-13 - 162e400 - lavfi 2.68.100
 +  Install libavfilter/asrc_abuffer.h public header.
 +
 +2012-03-26 - a67d9cf - lavfi 2.66.100
 +  Add avfilter_fill_frame_from_{audio_,}buffer_ref() functions.
 +
+ 2013-05-xx - xxxxxxx - lavu 52.11.0 - pixdesc.h
+   Replace PIX_FMT_* flags with AV_PIX_FMT_FLAG_*.
  2013-04-xx - xxxxxxx - lavc 55.4.0 - avcodec.h
    Add field_order to AVCodecParserContext.
  
@@@ -70,43 -58,14 +70,43 @@@ void avcodec_get_chroma_sub_sample(enu
      *v_shift = desc->log2_chroma_h;
  }
  
 -static int is_gray(const AVPixFmtDescriptor *desc)
 +static int get_color_type(const AVPixFmtDescriptor *desc) {
 +    if(desc->nb_components == 1 || desc->nb_components == 2)
 +        return FF_COLOR_GRAY;
 +
 +    if(desc->name && !strncmp(desc->name, "yuvj", 4))
 +        return FF_COLOR_YUV_JPEG;
 +
-     if(desc->flags & PIX_FMT_RGB)
++    if(desc->flags & AV_PIX_FMT_FLAG_RGB)
 +        return  FF_COLOR_RGB;
 +
 +    if(desc->nb_components == 0)
 +        return FF_COLOR_NA;
 +
 +    return FF_COLOR_YUV;
 +}
 +
 +static int get_pix_fmt_depth(int *min, int *max, enum AVPixelFormat pix_fmt)
  {
 -    return desc->nb_components - (desc->flags & AV_PIX_FMT_FLAG_ALPHA) == 1;
 +    const AVPixFmtDescriptor *desc = av_pix_fmt_desc_get(pix_fmt);
 +    int i;
 +
 +    if (!desc || !desc->nb_components) {
 +        *min = *max = 0;
 +        return AVERROR(EINVAL);
 +    }
 +
 +    *min = INT_MAX, *max = -INT_MAX;
 +    for (i = 0; i < desc->nb_components; i++) {
 +        *min = FFMIN(desc->comp[i].depth_minus1+1, *min);
 +        *max = FFMAX(desc->comp[i].depth_minus1+1, *max);
 +    }
 +    return 0;
  }
  
 -int avcodec_get_pix_fmt_loss(enum AVPixelFormat dst_pix_fmt,
 -                             enum AVPixelFormat src_pix_fmt,
 -                             int has_alpha)
 +static int get_pix_fmt_score(enum AVPixelFormat dst_pix_fmt,
 +                              enum AVPixelFormat src_pix_fmt,
 +                              unsigned *lossp, unsigned consider)
  {
      const AVPixFmtDescriptor *src_desc = av_pix_fmt_desc_get(src_pix_fmt);
      const AVPixFmtDescriptor *dst_desc = av_pix_fmt_desc_get(dst_pix_fmt);
@@@ -363,22 -260,8 +363,22 @@@ void ff_shrink88(uint8_t *dst, int dst_
  /* return true if yuv planar */
  static inline int is_yuv_planar(const AVPixFmtDescriptor *desc)
  {
 -    return (!(desc->flags & AV_PIX_FMT_FLAG_RGB) &&
 -             (desc->flags & AV_PIX_FMT_FLAG_PLANAR));
 +    int i;
 +    int planes[4] = { 0 };
 +
-     if (     desc->flags & PIX_FMT_RGB
-         || !(desc->flags & PIX_FMT_PLANAR))
++    if (     desc->flags & AV_PIX_FMT_FLAG_RGB
++        || !(desc->flags & AV_PIX_FMT_FLAG_PLANAR))
 +        return 0;
 +
 +    /* set the used planes */
 +    for (i = 0; i < desc->nb_components; i++)
 +        planes[desc->comp[i].plane] = 1;
 +
 +    /* if there is an unused plane, the format is not planar */
 +    for (i = 0; i < desc->nb_components; i++)
 +        if (!planes[i])
 +            return 0;
 +    return 1;
  }
  
  int av_picture_crop(AVPicture *dst, const AVPicture *src,
Simple merge
@@@ -256,35 -209,13 +256,35 @@@ static int raw_decode(AVCodecContext *a
          }
      }
  
 +    if ((avctx->pix_fmt==AV_PIX_FMT_BGR24    ||
 +        avctx->pix_fmt==AV_PIX_FMT_GRAY8    ||
 +        avctx->pix_fmt==AV_PIX_FMT_RGB555LE ||
 +        avctx->pix_fmt==AV_PIX_FMT_RGB555BE ||
 +        avctx->pix_fmt==AV_PIX_FMT_RGB565LE ||
 +        avctx->pix_fmt==AV_PIX_FMT_MONOWHITE ||
 +        avctx->pix_fmt==AV_PIX_FMT_PAL8) &&
 +        FFALIGN(frame->linesize[0], linesize_align) * avctx->height <= buf_size)
 +        frame->linesize[0] = FFALIGN(frame->linesize[0], linesize_align);
 +
 +    if (avctx->pix_fmt == AV_PIX_FMT_NV12 && avctx->codec_tag == MKTAG('N', 'V', '1', '2') &&
 +        FFALIGN(frame->linesize[0], linesize_align) * avctx->height +
 +        FFALIGN(frame->linesize[1], linesize_align) * ((avctx->height + 1) / 2) <= buf_size) {
 +        int la0 = FFALIGN(frame->linesize[0], linesize_align);
 +        frame->data[1] += (la0 - frame->linesize[0]) * avctx->height;
 +        frame->linesize[0] = la0;
 +        frame->linesize[1] = FFALIGN(frame->linesize[1], linesize_align);
 +    }
 +
      if ((avctx->pix_fmt == AV_PIX_FMT_PAL8 && buf_size < context->frame_size) ||
-         (desc->flags & PIX_FMT_PSEUDOPAL)) {
+         (desc->flags & AV_PIX_FMT_FLAG_PSEUDOPAL)) {
          frame->buf[1]  = av_buffer_ref(context->palette);
 -        if (!frame->buf[1])
 +        if (!frame->buf[1]) {
 +            av_buffer_unref(&frame->buf[0]);
              return AVERROR(ENOMEM);
 +        }
          frame->data[1] = frame->buf[1]->data;
      }
 +
      if (avctx->pix_fmt == AV_PIX_FMT_BGR24 &&
          ((frame->linesize[0] + 3) & ~3) * avctx->height <= buf_size)
          frame->linesize[0] = (frame->linesize[0] + 3) & ~3;
Simple merge
@@@ -40,10 -49,9 +40,10 @@@ static int xwd_encode_frame(AVCodecCont
      uint32_t header_size;
      int i, out_size, ret;
      uint8_t *ptr, *buf;
 +    AVFrame * const p = (AVFrame *)pict;
  
      pixdepth = av_get_bits_per_pixel(desc);
-     if (desc->flags & PIX_FMT_BE)
+     if (desc->flags & AV_PIX_FMT_FLAG_BE)
          be = 1;
      switch (pix_fmt) {
      case AV_PIX_FMT_ARGB:
Simple merge
Simple merge
Simple merge
@@@ -78,9 -78,9 +78,9 @@@ static int filter_frame(AVFilterLink *i
      }
  
      /* copy palette */
-     if (priv->pix_desc->flags & PIX_FMT_PAL ||
-         priv->pix_desc->flags & PIX_FMT_PSEUDOPAL)
+     if (priv->pix_desc->flags & AV_PIX_FMT_FLAG_PAL ||
+         priv->pix_desc->flags & AV_PIX_FMT_FLAG_PSEUDOPAL)
 -        memcpy(out->data[1], in->data[1], 256*4);
 +        memcpy(out->data[1], in->data[1], AVPALETTE_SIZE);
  
      for (c = 0; c < priv->pix_desc->nb_components; c++) {
          int w1 = c == 1 || c == 2 ? w>>priv->pix_desc->log2_chroma_w : w;
@@@ -251,12 -215,13 +251,12 @@@ static int config_props(AVFilterLink *o
      outlink->h = h;
  
      /* TODO: make algorithm configurable */
 -    av_log(ctx, AV_LOG_VERBOSE, "w:%d h:%d fmt:%s -> w:%d h:%d fmt:%s flags:0x%0x\n",
 -           inlink ->w, inlink ->h, av_get_pix_fmt_name(inlink->format),
 -           outlink->w, outlink->h, av_get_pix_fmt_name(outlink->format),
 -           scale->flags);
  
-     scale->input_is_pal = desc->flags & PIX_FMT_PAL ||
-                           desc->flags & PIX_FMT_PSEUDOPAL;
+     scale->input_is_pal = desc->flags & AV_PIX_FMT_FLAG_PAL ||
+                           desc->flags & AV_PIX_FMT_FLAG_PSEUDOPAL;
 +    if (outfmt == AV_PIX_FMT_PAL8) outfmt = AV_PIX_FMT_BGR8;
-     scale->output_is_pal = av_pix_fmt_desc_get(outfmt)->flags & PIX_FMT_PAL ||
-                            av_pix_fmt_desc_get(outfmt)->flags & PIX_FMT_PSEUDOPAL;
++    scale->output_is_pal = av_pix_fmt_desc_get(outfmt)->flags & AV_PIX_FMT_FLAG_PAL ||
++                           av_pix_fmt_desc_get(outfmt)->flags & AV_PIX_FMT_FLAG_PSEUDOPAL;
  
      if (scale->sws)
          sws_freeContext(scale->sws);
Simple merge
@@@ -47,29 -45,6 +47,29 @@@ void av_image_fill_max_pixsteps(int max
      }
  }
  
-     if (desc->flags & PIX_FMT_BITSTREAM)
 +static inline
 +int image_get_linesize(int width, int plane,
 +                       int max_step, int max_step_comp,
 +                       const AVPixFmtDescriptor *desc)
 +{
 +    int s, shifted_w, linesize;
 +
 +    if (!desc)
 +        return AVERROR(EINVAL);
 +
 +    if (width < 0)
 +        return AVERROR(EINVAL);
 +    s = (max_step_comp == 1 || max_step_comp == 2) ? desc->log2_chroma_w : 0;
 +    shifted_w = ((width + (1 << s) - 1)) >> s;
 +    if (shifted_w && max_step > INT_MAX / shifted_w)
 +        return AVERROR(EINVAL);
 +    linesize = max_step * shifted_w;
 +
++    if (desc->flags & AV_PIX_FMT_FLAG_BITSTREAM)
 +        linesize = (linesize + 7) >> 3;
 +    return linesize;
 +}
 +
  int av_image_get_linesize(enum AVPixelFormat pix_fmt, int width, int plane)
  {
      const AVPixFmtDescriptor *desc = av_pix_fmt_desc_get(pix_fmt);
@@@ -92,14 -72,23 +92,14 @@@ int av_image_fill_linesizes(int linesiz
  
      memset(linesizes, 0, 4*sizeof(linesizes[0]));
  
-     if (!desc || desc->flags & PIX_FMT_HWACCEL)
+     if (!desc || desc->flags & AV_PIX_FMT_FLAG_HWACCEL)
          return AVERROR(EINVAL);
  
 -    if (desc->flags & AV_PIX_FMT_FLAG_BITSTREAM) {
 -        if (width > (INT_MAX -7) / (desc->comp[0].step_minus1+1))
 -            return AVERROR(EINVAL);
 -        linesizes[0] = (width * (desc->comp[0].step_minus1+1) + 7) >> 3;
 -        return 0;
 -    }
 -
      av_image_fill_max_pixsteps(max_step, max_step_comp, desc);
      for (i = 0; i < 4; i++) {
 -        int s = (max_step_comp[i] == 1 || max_step_comp[i] == 2) ? desc->log2_chroma_w : 0;
 -        int shifted_w = ((width + (1 << s) - 1)) >> s;
 -        if (max_step[i] > INT_MAX / shifted_w)
 -            return AVERROR(EINVAL);
 -        linesizes[i] = max_step[i] * shifted_w;
 +        if ((ret = image_get_linesize(width, i, max_step[i], max_step_comp[i], desc)) < 0)
 +            return ret;
 +        linesizes[i] = ret;
      }
  
      return 0;
@@@ -171,11 -169,11 +171,11 @@@ const AVPixFmtDescriptor av_pix_fmt_des
          .log2_chroma_w = 0,
          .log2_chroma_h = 0,
          .comp = {
 -            { 0, 2, 1, 0, 7 },        /* B */
 -            { 0, 2, 2, 0, 7 },        /* G */
              { 0, 2, 3, 0, 7 },        /* R */
 +            { 0, 2, 2, 0, 7 },        /* G */
 +            { 0, 2, 1, 0, 7 },        /* B */
          },
-         .flags = PIX_FMT_RGB,
+         .flags = AV_PIX_FMT_FLAG_RGB,
      },
      [AV_PIX_FMT_YUV422P] = {
          .name = "yuv422p",
          .log2_chroma_w = 0,
          .log2_chroma_h = 0,
          .comp = {
 -            {0, 0, 1, 0, 7},        /* Y */
 -            {1, 0, 1, 0, 7},        /* U */
 -            {2, 0, 1, 0, 7},        /* V */
 +            { 0, 0, 1, 0, 7 },        /* Y */
 +            { 1, 0, 1, 0, 7 },        /* U */
 +            { 2, 0, 1, 0, 7 },        /* V */
          },
-         .flags = PIX_FMT_PLANAR,
+         .flags = AV_PIX_FMT_FLAG_PLANAR,
      },
      [AV_PIX_FMT_XVMC_MPEG2_MC] = {
          .name = "xvmcmc",
          .log2_chroma_w = 0,
          .log2_chroma_h = 0,
          .comp = {
 -            { 0, 0, 1, 6, 1 },        /* B */
 -            { 0, 0, 1, 3, 2 },        /* G */
              { 0, 0, 1, 0, 2 },        /* R */
 +            { 0, 0, 1, 3, 2 },        /* G */
 +            { 0, 0, 1, 6, 1 },        /* B */
          },
-         .flags = PIX_FMT_RGB | PIX_FMT_PSEUDOPAL,
+         .flags = AV_PIX_FMT_FLAG_RGB | AV_PIX_FMT_FLAG_PSEUDOPAL,
      },
      [AV_PIX_FMT_BGR4] = {
          .name = "bgr4",
          .log2_chroma_w = 0,
          .log2_chroma_h = 0,
          .comp = {
 -            { 0, 3, 1, 0, 0 },        /* B */
 -            { 0, 3, 2, 0, 1 },        /* G */
              { 0, 3, 4, 0, 0 },        /* R */
 +            { 0, 3, 2, 0, 1 },        /* G */
 +            { 0, 3, 1, 0, 0 },        /* B */
          },
-         .flags = PIX_FMT_BITSTREAM | PIX_FMT_RGB,
+         .flags = AV_PIX_FMT_FLAG_BITSTREAM | AV_PIX_FMT_FLAG_RGB,
      },
      [AV_PIX_FMT_BGR4_BYTE] = {
          .name = "bgr4_byte",
          .log2_chroma_w = 0,
          .log2_chroma_h = 0,
          .comp = {
 -            { 0, 0, 1, 3, 0 },        /* B */
 -            { 0, 0, 1, 1, 1 },        /* G */
              { 0, 0, 1, 0, 0 },        /* R */
 +            { 0, 0, 1, 1, 1 },        /* G */
 +            { 0, 0, 1, 3, 0 },        /* B */
          },
-         .flags = PIX_FMT_RGB | PIX_FMT_PSEUDOPAL,
+         .flags = AV_PIX_FMT_FLAG_RGB | AV_PIX_FMT_FLAG_PSEUDOPAL,
      },
      [AV_PIX_FMT_RGB8] = {
          .name = "rgb8",
          .log2_chroma_h = 1,
          .comp = {
              { 0, 0, 1, 0, 7 },        /* Y */
 -            { 1, 1, 1, 0, 7 },        /* V */
              { 1, 1, 2, 0, 7 },        /* U */
 +            { 1, 1, 1, 0, 7 },        /* V */
          },
-         .flags = PIX_FMT_PLANAR,
+         .flags = AV_PIX_FMT_FLAG_PLANAR,
      },
      [AV_PIX_FMT_ARGB] = {
          .name = "argb",
              { 0, 3, 2, 0, 7 },        /* R */
              { 0, 3, 3, 0, 7 },        /* G */
              { 0, 3, 4, 0, 7 },        /* B */
 +            { 0, 3, 1, 0, 7 },        /* A */
          },
-         .flags = PIX_FMT_RGB | PIX_FMT_ALPHA,
+         .flags = AV_PIX_FMT_FLAG_RGB | AV_PIX_FMT_FLAG_ALPHA,
      },
      [AV_PIX_FMT_RGBA] = {
          .name = "rgba",
          .log2_chroma_w = 0,
          .log2_chroma_h = 0,
          .comp = {
 -            { 0, 3, 1, 0, 7 },        /* A */
 -            { 0, 3, 2, 0, 7 },        /* B */
 -            { 0, 3, 3, 0, 7 },        /* G */
              { 0, 3, 4, 0, 7 },        /* R */
 +            { 0, 3, 3, 0, 7 },        /* G */
 +            { 0, 3, 2, 0, 7 },        /* B */
 +            { 0, 3, 1, 0, 7 },        /* A */
          },
-         .flags = PIX_FMT_RGB | PIX_FMT_ALPHA,
+         .flags = AV_PIX_FMT_FLAG_RGB | AV_PIX_FMT_FLAG_ALPHA,
      },
      [AV_PIX_FMT_BGRA] = {
          .name = "bgra",
          .log2_chroma_w = 0,
          .log2_chroma_h = 0,
          .comp = {
 -            { 0, 3, 1, 0, 7 },        /* B */
 -            { 0, 3, 2, 0, 7 },        /* G */
              { 0, 3, 3, 0, 7 },        /* R */
 +            { 0, 3, 2, 0, 7 },        /* G */
 +            { 0, 3, 1, 0, 7 },        /* B */
              { 0, 3, 4, 0, 7 },        /* A */
          },
-         .flags = PIX_FMT_RGB | PIX_FMT_ALPHA,
+         .flags = AV_PIX_FMT_FLAG_RGB | AV_PIX_FMT_FLAG_ALPHA,
      },
 +    [AV_PIX_FMT_0RGB] = {
 +        .name = "0rgb",
 +        .nb_components= 3,
 +        .log2_chroma_w= 0,
 +        .log2_chroma_h= 0,
 +        .comp = {
 +            { 0, 3, 2, 0, 7 },        /* R */
 +            { 0, 3, 3, 0, 7 },        /* G */
 +            { 0, 3, 4, 0, 7 },        /* B */
 +        },
 +        .flags = PIX_FMT_RGB,
 +    },
 +    [AV_PIX_FMT_RGB0] = {
 +        .name = "rgb0",
 +        .nb_components= 3,
 +        .log2_chroma_w= 0,
 +        .log2_chroma_h= 0,
 +        .comp = {
 +            { 0, 3, 1, 0, 7 },        /* R */
 +            { 0, 3, 2, 0, 7 },        /* G */
 +            { 0, 3, 3, 0, 7 },        /* B */
 +        },
 +        .flags = PIX_FMT_RGB,
 +    },
 +    [AV_PIX_FMT_0BGR] = {
 +        .name = "0bgr",
 +        .nb_components= 3,
 +        .log2_chroma_w= 0,
 +        .log2_chroma_h= 0,
 +        .comp = {
 +            { 0, 3, 4, 0, 7 },        /* R */
 +            { 0, 3, 3, 0, 7 },        /* G */
 +            { 0, 3, 2, 0, 7 },        /* B */
 +        },
 +        .flags = PIX_FMT_RGB,
 +    },
 +    [AV_PIX_FMT_BGR0] = {
 +        .name = "bgr0",
 +        .nb_components= 3,
 +        .log2_chroma_w= 0,
 +        .log2_chroma_h= 0,
 +        .comp = {
 +            { 0, 3, 3, 0, 7 },        /* R */
 +            { 0, 3, 2, 0, 7 },        /* G */
 +            { 0, 3, 1, 0, 7 },        /* B */
 +        },
 +        .flags = PIX_FMT_RGB,
 +    },
      [AV_PIX_FMT_GRAY16BE] = {
          .name = "gray16be",
          .nb_components = 1,
              { 2, 0, 1, 0, 7 },        /* V */
              { 3, 0, 1, 0, 7 },        /* A */
          },
-         .flags = PIX_FMT_PLANAR | PIX_FMT_ALPHA,
+         .flags = AV_PIX_FMT_FLAG_PLANAR | AV_PIX_FMT_FLAG_ALPHA,
      },
 -        [AV_PIX_FMT_YUVA422P] = {
 +    [AV_PIX_FMT_YUVA422P] = {
          .name = "yuva422p",
          .nb_components = 4,
          .log2_chroma_w = 1,
              { 2, 1, 1, 0, 8 },        /* V */
              { 3, 1, 1, 0, 8 },        /* A */
          },
-         .flags = PIX_FMT_BE | PIX_FMT_PLANAR | PIX_FMT_ALPHA,
 -        .flags = AV_PIX_FMT_FLAG_BE | AV_PIX_FMT_FLAG_PLANAR,
++        .flags = AV_PIX_FMT_FLAG_BE | AV_PIX_FMT_FLAG_PLANAR | AV_PIX_FMT_FLAG_ALPHA,
      },
      [AV_PIX_FMT_YUVA420P9LE] = {
          .name = "yuva420p9le",
              { 0, 5, 3, 0, 15 },       /* G */
              { 0, 5, 5, 0, 15 },       /* B */
          },
-         .flags = PIX_FMT_RGB,
+         .flags = AV_PIX_FMT_FLAG_RGB,
      },
 +    [AV_PIX_FMT_RGBA64BE] = {
 +        .name = "rgba64be",
 +        .nb_components= 4,
 +        .log2_chroma_w= 0,
 +        .log2_chroma_h= 0,
 +        .comp = {
 +            { 0, 7, 1, 0, 15 },       /* R */
 +            { 0, 7, 3, 0, 15 },       /* G */
 +            { 0, 7, 5, 0, 15 },       /* B */
 +            { 0, 7, 7, 0, 15 },       /* A */
 +        },
 +        .flags = PIX_FMT_RGB | PIX_FMT_BE | PIX_FMT_ALPHA,
 +    },
 +    [AV_PIX_FMT_RGBA64LE] = {
 +        .name = "rgba64le",
 +        .nb_components= 4,
 +        .log2_chroma_w= 0,
 +        .log2_chroma_h= 0,
 +        .comp = {
 +            { 0, 7, 1, 0, 15 },       /* R */
 +            { 0, 7, 3, 0, 15 },       /* G */
 +            { 0, 7, 5, 0, 15 },       /* B */
 +            { 0, 7, 7, 0, 15 },       /* A */
 +        },
 +        .flags = PIX_FMT_RGB | PIX_FMT_ALPHA,
 +    },
      [AV_PIX_FMT_RGB565BE] = {
          .name = "rgb565be",
          .nb_components = 3,
          .log2_chroma_w = 0,
          .log2_chroma_h = 0,
          .comp = {
 -            { 0, 5, 1, 0, 15 },       /* B */
 -            { 0, 5, 3, 0, 15 },       /* G */
              { 0, 5, 5, 0, 15 },       /* R */
 +            { 0, 5, 3, 0, 15 },       /* G */
 +            { 0, 5, 1, 0, 15 },       /* B */
          },
-         .flags = PIX_FMT_BE | PIX_FMT_RGB,
+         .flags = AV_PIX_FMT_FLAG_BE | AV_PIX_FMT_FLAG_RGB,
      },
      [AV_PIX_FMT_BGR48LE] = {
          .name = "bgr48le",
          .log2_chroma_w = 0,
          .log2_chroma_h = 0,
          .comp = {
 -            { 0, 5, 1, 0, 15 },       /* B */
 -            { 0, 5, 3, 0, 15 },       /* G */
              { 0, 5, 5, 0, 15 },       /* R */
 +            { 0, 5, 3, 0, 15 },       /* G */
 +            { 0, 5, 1, 0, 15 },       /* B */
          },
-         .flags = PIX_FMT_RGB,
+         .flags = AV_PIX_FMT_FLAG_RGB,
      },
 +    [AV_PIX_FMT_BGRA64BE] = {
 +        .name = "bgra64be",
 +        .nb_components= 4,
 +        .log2_chroma_w= 0,
 +        .log2_chroma_h= 0,
 +        .comp = {
 +            { 0, 7, 5, 0, 15 },       /* R */
 +            { 0, 7, 3, 0, 15 },       /* G */
 +            { 0, 7, 1, 0, 15 },       /* B */
 +            { 0, 7, 7, 0, 15 },       /* A */
 +        },
 +        .flags = PIX_FMT_BE | PIX_FMT_RGB | PIX_FMT_ALPHA,
 +    },
 +    [AV_PIX_FMT_BGRA64LE] = {
 +        .name = "bgra64le",
 +        .nb_components= 4,
 +        .log2_chroma_w= 0,
 +        .log2_chroma_h= 0,
 +        .comp = {
 +            { 0, 7, 5, 0, 15 },       /* R */
 +            { 0, 7, 3, 0, 15 },       /* G */
 +            { 0, 7, 1, 0, 15 },       /* B */
 +            { 0, 7, 7, 0, 15 },       /* A */
 +        },
 +        .flags = PIX_FMT_RGB | PIX_FMT_ALPHA,
 +    },
      [AV_PIX_FMT_BGR565BE] = {
          .name = "bgr565be",
          .nb_components = 3,
          .log2_chroma_w = 0,
          .log2_chroma_h = 0,
          .comp = {
 -            { 0, 1, 0, 3, 4 },        /* B */
 -            { 0, 1, 1, 5, 5 },        /* G */
              { 0, 1, 1, 0, 4 },        /* R */
 +            { 0, 1, 1, 5, 5 },        /* G */
 +            { 0, 1, 0, 3, 4 },        /* B */
          },
-         .flags = PIX_FMT_BE | PIX_FMT_RGB,
+         .flags = AV_PIX_FMT_FLAG_BE | AV_PIX_FMT_FLAG_RGB,
      },
      [AV_PIX_FMT_BGR565LE] = {
          .name = "bgr565le",
          .log2_chroma_w = 0,
          .log2_chroma_h = 0,
          .comp = {
 -            { 0, 1, 2, 3, 4 },        /* B */
 -            { 0, 1, 1, 5, 5 },        /* G */
              { 0, 1, 1, 0, 4 },        /* R */
 +            { 0, 1, 1, 5, 5 },        /* G */
 +            { 0, 1, 2, 3, 4 },        /* B */
          },
-         .flags = PIX_FMT_RGB,
+         .flags = AV_PIX_FMT_FLAG_RGB,
      },
      [AV_PIX_FMT_BGR555BE] = {
          .name = "bgr555be",
          .log2_chroma_w = 0,
          .log2_chroma_h = 0,
          .comp = {
 -            { 0, 1, 0, 2, 4 },       /* B */
 -            { 0, 1, 1, 5, 4 },       /* G */
              { 0, 1, 1, 0, 4 },       /* R */
 +            { 0, 1, 1, 5, 4 },       /* G */
 +            { 0, 1, 0, 2, 4 },       /* B */
          },
-         .flags = PIX_FMT_BE | PIX_FMT_RGB,
+         .flags = AV_PIX_FMT_FLAG_BE | AV_PIX_FMT_FLAG_RGB,
       },
      [AV_PIX_FMT_BGR555LE] = {
          .name = "bgr555le",
          .log2_chroma_w = 0,
          .log2_chroma_h = 0,
          .comp = {
 -            { 0, 1, 2, 2, 4 },        /* B */
 -            { 0, 1, 1, 5, 4 },        /* G */
              { 0, 1, 1, 0, 4 },        /* R */
 +            { 0, 1, 1, 5, 4 },        /* G */
 +            { 0, 1, 2, 2, 4 },        /* B */
          },
-         .flags = PIX_FMT_RGB,
+         .flags = AV_PIX_FMT_FLAG_RGB,
      },
      [AV_PIX_FMT_BGR444BE] = {
          .name = "bgr444be",
          .log2_chroma_w = 0,
          .log2_chroma_h = 0,
          .comp = {
 -            { 0, 1, 0, 0, 3 },       /* B */
 -            { 0, 1, 1, 4, 3 },       /* G */
              { 0, 1, 1, 0, 3 },       /* R */
 +            { 0, 1, 1, 4, 3 },       /* G */
 +            { 0, 1, 0, 0, 3 },       /* B */
          },
-         .flags = PIX_FMT_BE | PIX_FMT_RGB,
+         .flags = AV_PIX_FMT_FLAG_BE | AV_PIX_FMT_FLAG_RGB,
       },
      [AV_PIX_FMT_BGR444LE] = {
          .name = "bgr444le",
          .log2_chroma_w = 0,
          .log2_chroma_h = 0,
          .comp = {
 -            { 0, 1, 2, 0, 3 },        /* B */
 -            { 0, 1, 1, 4, 3 },        /* G */
              { 0, 1, 1, 0, 3 },        /* R */
 +            { 0, 1, 1, 4, 3 },        /* G */
 +            { 0, 1, 2, 0, 3 },        /* B */
          },
-         .flags = PIX_FMT_RGB,
+         .flags = AV_PIX_FMT_FLAG_RGB,
      },
      [AV_PIX_FMT_VAAPI_MOCO] = {
          .name = "vaapi_moco",
          .name = "vaapi_vld",
          .log2_chroma_w = 1,
          .log2_chroma_h = 1,
-         .flags = PIX_FMT_HWACCEL,
+         .flags = AV_PIX_FMT_FLAG_HWACCEL,
      },
 -    [AV_PIX_FMT_VDA_VLD] = {
 -        .name = "vda_vld",
 -        .log2_chroma_w = 1,
 -        .log2_chroma_h = 1,
 -        .flags = AV_PIX_FMT_FLAG_HWACCEL,
 -    },
      [AV_PIX_FMT_YUV420P9LE] = {
          .name = "yuv420p9le",
          .nb_components = 3,
              { 1, 1, 1, 0, 9 },        /* U */
              { 2, 1, 1, 0, 9 },        /* V */
          },
-         .flags = PIX_FMT_BE | PIX_FMT_PLANAR,
+         .flags = AV_PIX_FMT_FLAG_BE | AV_PIX_FMT_FLAG_PLANAR,
      },
 +    [AV_PIX_FMT_YUV420P12LE] = {
 +        .name = "yuv420p12le",
 +        .nb_components = 3,
 +        .log2_chroma_w = 1,
 +        .log2_chroma_h = 1,
 +        .comp = {
 +            { 0, 1, 1, 0, 11 },        /* Y */
 +            { 1, 1, 1, 0, 11 },        /* U */
 +            { 2, 1, 1, 0, 11 },        /* V */
 +        },
 +        .flags = PIX_FMT_PLANAR,
 +    },
 +    [AV_PIX_FMT_YUV420P12BE] = {
 +        .name = "yuv420p12be",
 +        .nb_components = 3,
 +        .log2_chroma_w = 1,
 +        .log2_chroma_h = 1,
 +        .comp = {
 +            { 0, 1, 1, 0, 11 },        /* Y */
 +            { 1, 1, 1, 0, 11 },        /* U */
 +            { 2, 1, 1, 0, 11 },        /* V */
 +        },
 +        .flags = PIX_FMT_BE | PIX_FMT_PLANAR,
 +    },
 +    [AV_PIX_FMT_YUV420P14LE] = {
 +        .name = "yuv420p14le",
 +        .nb_components = 3,
 +        .log2_chroma_w = 1,
 +        .log2_chroma_h = 1,
 +        .comp = {
 +            { 0, 1, 1, 0, 13 },        /* Y */
 +            { 1, 1, 1, 0, 13 },        /* U */
 +            { 2, 1, 1, 0, 13 },        /* V */
 +        },
 +        .flags = PIX_FMT_PLANAR,
 +    },
 +    [AV_PIX_FMT_YUV420P14BE] = {
 +        .name = "yuv420p14be",
 +        .nb_components = 3,
 +        .log2_chroma_w = 1,
 +        .log2_chroma_h = 1,
 +        .comp = {
 +            { 0, 1, 1, 0, 13 },        /* Y */
 +            { 1, 1, 1, 0, 13 },        /* U */
 +            { 2, 1, 1, 0, 13 },        /* V */
 +        },
 +        .flags = PIX_FMT_BE | PIX_FMT_PLANAR,
 +    },
      [AV_PIX_FMT_YUV420P16LE] = {
          .name = "yuv420p16le",
          .nb_components = 3,
              { 1, 1, 1, 0, 9 },        /* U */
              { 2, 1, 1, 0, 9 },        /* V */
          },
-         .flags = PIX_FMT_BE | PIX_FMT_PLANAR,
+         .flags = AV_PIX_FMT_FLAG_BE | AV_PIX_FMT_FLAG_PLANAR,
      },
 +    [AV_PIX_FMT_YUV422P12LE] = {
 +        .name = "yuv422p12le",
 +        .nb_components = 3,
 +        .log2_chroma_w = 1,
 +        .log2_chroma_h = 0,
 +        .comp = {
 +            { 0, 1, 1, 0, 11 },        /* Y */
 +            { 1, 1, 1, 0, 11 },        /* U */
 +            { 2, 1, 1, 0, 11 },        /* V */
 +        },
 +        .flags = PIX_FMT_PLANAR,
 +    },
 +    [AV_PIX_FMT_YUV422P12BE] = {
 +        .name = "yuv422p12be",
 +        .nb_components = 3,
 +        .log2_chroma_w = 1,
 +        .log2_chroma_h = 0,
 +        .comp = {
 +            { 0, 1, 1, 0, 11 },        /* Y */
 +            { 1, 1, 1, 0, 11 },        /* U */
 +            { 2, 1, 1, 0, 11 },        /* V */
 +        },
 +        .flags = PIX_FMT_BE | PIX_FMT_PLANAR,
 +    },
 +    [AV_PIX_FMT_YUV422P14LE] = {
 +        .name = "yuv422p14le",
 +        .nb_components = 3,
 +        .log2_chroma_w = 1,
 +        .log2_chroma_h = 0,
 +        .comp = {
 +            { 0, 1, 1, 0, 13 },        /* Y */
 +            { 1, 1, 1, 0, 13 },        /* U */
 +            { 2, 1, 1, 0, 13 },        /* V */
 +        },
 +        .flags = PIX_FMT_PLANAR,
 +    },
 +    [AV_PIX_FMT_YUV422P14BE] = {
 +        .name = "yuv422p14be",
 +        .nb_components = 3,
 +        .log2_chroma_w = 1,
 +        .log2_chroma_h = 0,
 +        .comp = {
 +            { 0, 1, 1, 0, 13 },        /* Y */
 +            { 1, 1, 1, 0, 13 },        /* U */
 +            { 2, 1, 1, 0, 13 },        /* V */
 +        },
 +        .flags = PIX_FMT_BE | PIX_FMT_PLANAR,
 +    },
      [AV_PIX_FMT_YUV422P16LE] = {
          .name = "yuv422p16le",
          .nb_components = 3,
              { 1, 1, 1, 0, 8 },        /* U */
              { 2, 1, 1, 0, 8 },        /* V */
          },
-         .flags = PIX_FMT_BE | PIX_FMT_PLANAR,
+         .flags = AV_PIX_FMT_FLAG_BE | AV_PIX_FMT_FLAG_PLANAR,
      },
 +    [AV_PIX_FMT_YUV444P12LE] = {
 +        .name = "yuv444p12le",
 +        .nb_components = 3,
 +        .log2_chroma_w = 0,
 +        .log2_chroma_h = 0,
 +        .comp = {
 +            { 0, 1, 1, 0, 11 },        /* Y */
 +            { 1, 1, 1, 0, 11 },        /* U */
 +            { 2, 1, 1, 0, 11 },        /* V */
 +        },
 +        .flags = PIX_FMT_PLANAR,
 +    },
 +    [AV_PIX_FMT_YUV444P12BE] = {
 +        .name = "yuv444p12be",
 +        .nb_components = 3,
 +        .log2_chroma_w = 0,
 +        .log2_chroma_h = 0,
 +        .comp = {
 +            { 0, 1, 1, 0, 11 },        /* Y */
 +            { 1, 1, 1, 0, 11 },        /* U */
 +            { 2, 1, 1, 0, 11 },        /* V */
 +        },
 +        .flags = PIX_FMT_BE | PIX_FMT_PLANAR,
 +    },
 +    [AV_PIX_FMT_YUV444P14LE] = {
 +        .name = "yuv444p14le",
 +        .nb_components = 3,
 +        .log2_chroma_w = 0,
 +        .log2_chroma_h = 0,
 +        .comp = {
 +            { 0, 1, 1, 0, 13 },        /* Y */
 +            { 1, 1, 1, 0, 13 },        /* U */
 +            { 2, 1, 1, 0, 13 },        /* V */
 +        },
 +        .flags = PIX_FMT_PLANAR,
 +    },
 +    [AV_PIX_FMT_YUV444P14BE] = {
 +        .name = "yuv444p14be",
 +        .nb_components = 3,
 +        .log2_chroma_w = 0,
 +        .log2_chroma_h = 0,
 +        .comp = {
 +            { 0, 1, 1, 0, 13 },        /* Y */
 +            { 1, 1, 1, 0, 13 },        /* U */
 +            { 2, 1, 1, 0, 13 },        /* V */
 +        },
 +        .flags = PIX_FMT_BE | PIX_FMT_PLANAR,
 +    },
      [AV_PIX_FMT_DXVA2_VLD] = {
          .name = "dxva2_vld",
          .log2_chroma_w = 1,
          .log2_chroma_h = 1,
-         .flags = PIX_FMT_HWACCEL,
+         .flags = AV_PIX_FMT_FLAG_HWACCEL,
      },
 -    [AV_PIX_FMT_Y400A] = {
 -        .name = "y400a",
 +    [AV_PIX_FMT_VDA_VLD] = {
 +        .name = "vda_vld",
 +        .log2_chroma_w = 1,
 +        .log2_chroma_h = 1,
 +        .flags = PIX_FMT_HWACCEL,
 +    },
 +    [AV_PIX_FMT_GRAY8A] = {
 +        .name = "gray8a",
          .nb_components = 2,
          .comp = {
              { 0, 1, 1, 0, 7 },        /* Y */
          .log2_chroma_w = 0,
          .log2_chroma_h = 0,
          .comp = {
 +            { 2, 0, 1, 0, 7 },        /* R */
              { 0, 0, 1, 0, 7 },        /* G */
              { 1, 0, 1, 0, 7 },        /* B */
 -            { 2, 0, 1, 0, 7 },        /* R */
          },
-         .flags = PIX_FMT_PLANAR | PIX_FMT_RGB,
+         .flags = AV_PIX_FMT_FLAG_PLANAR | AV_PIX_FMT_FLAG_RGB,
      },
      [AV_PIX_FMT_GBRP9LE] = {
          .name = "gbrp9le",
          .log2_chroma_w = 0,
          .log2_chroma_h = 0,
          .comp = {
 +            { 2, 1, 1, 0, 8 },        /* R */
              { 0, 1, 1, 0, 8 },        /* G */
              { 1, 1, 1, 0, 8 },        /* B */
 -            { 2, 1, 1, 0, 8 },        /* R */
          },
-         .flags = PIX_FMT_PLANAR | PIX_FMT_RGB,
+         .flags = AV_PIX_FMT_FLAG_PLANAR | AV_PIX_FMT_FLAG_RGB,
      },
      [AV_PIX_FMT_GBRP9BE] = {
          .name = "gbrp9be",
          .log2_chroma_w = 0,
          .log2_chroma_h = 0,
          .comp = {
 +            { 2, 1, 1, 0, 8 },        /* R */
              { 0, 1, 1, 0, 8 },        /* G */
              { 1, 1, 1, 0, 8 },        /* B */
 -            { 2, 1, 1, 0, 8 },        /* R */
          },
-         .flags = PIX_FMT_BE | PIX_FMT_PLANAR | PIX_FMT_RGB,
+         .flags = AV_PIX_FMT_FLAG_BE | AV_PIX_FMT_FLAG_PLANAR | AV_PIX_FMT_FLAG_RGB,
      },
      [AV_PIX_FMT_GBRP10LE] = {
          .name = "gbrp10le",
          .log2_chroma_w = 0,
          .log2_chroma_h = 0,
          .comp = {
 +            { 2, 1, 1, 0, 9 },        /* R */
              { 0, 1, 1, 0, 9 },        /* G */
              { 1, 1, 1, 0, 9 },        /* B */
 -            { 2, 1, 1, 0, 9 },        /* R */
          },
-         .flags = PIX_FMT_PLANAR | PIX_FMT_RGB,
+         .flags = AV_PIX_FMT_FLAG_PLANAR | AV_PIX_FMT_FLAG_RGB,
      },
      [AV_PIX_FMT_GBRP10BE] = {
          .name = "gbrp10be",
          .log2_chroma_w = 0,
          .log2_chroma_h = 0,
          .comp = {
 +            { 2, 1, 1, 0, 9 },        /* R */
              { 0, 1, 1, 0, 9 },        /* G */
              { 1, 1, 1, 0, 9 },        /* B */
 -            { 2, 1, 1, 0, 9 },        /* R */
 +        },
 +        .flags = PIX_FMT_BE | PIX_FMT_PLANAR | PIX_FMT_RGB,
 +    },
 +    [AV_PIX_FMT_GBRP12LE] = {
 +        .name = "gbrp12le",
 +        .nb_components = 3,
 +        .log2_chroma_w = 0,
 +        .log2_chroma_h = 0,
 +        .comp = {
 +            { 2, 1, 1, 0, 11 },        /* R */
 +            { 0, 1, 1, 0, 11 },        /* G */
 +            { 1, 1, 1, 0, 11 },        /* B */
 +        },
 +        .flags = PIX_FMT_PLANAR | PIX_FMT_RGB,
 +    },
 +    [AV_PIX_FMT_GBRP12BE] = {
 +        .name = "gbrp12be",
 +        .nb_components = 3,
 +        .log2_chroma_w = 0,
 +        .log2_chroma_h = 0,
 +        .comp = {
 +            { 2, 1, 1, 0, 11 },        /* R */
 +            { 0, 1, 1, 0, 11 },        /* G */
 +            { 1, 1, 1, 0, 11 },        /* B */
 +        },
 +        .flags = PIX_FMT_BE | PIX_FMT_PLANAR | PIX_FMT_RGB,
 +    },
 +    [AV_PIX_FMT_GBRP14LE] = {
 +        .name = "gbrp14le",
 +        .nb_components = 3,
 +        .log2_chroma_w = 0,
 +        .log2_chroma_h = 0,
 +        .comp = {
 +            { 2, 1, 1, 0, 13 },        /* R */
 +            { 0, 1, 1, 0, 13 },        /* G */
 +            { 1, 1, 1, 0, 13 },        /* B */
 +        },
 +        .flags = PIX_FMT_PLANAR | PIX_FMT_RGB,
 +    },
 +    [AV_PIX_FMT_GBRP14BE] = {
 +        .name = "gbrp14be",
 +        .nb_components = 3,
 +        .log2_chroma_w = 0,
 +        .log2_chroma_h = 0,
 +        .comp = {
 +            { 2, 1, 1, 0, 13 },        /* R */
 +            { 0, 1, 1, 0, 13 },        /* G */
 +            { 1, 1, 1, 0, 13 },        /* B */
          },
-         .flags = PIX_FMT_BE | PIX_FMT_PLANAR | PIX_FMT_RGB,
+         .flags = AV_PIX_FMT_FLAG_BE | AV_PIX_FMT_FLAG_PLANAR | AV_PIX_FMT_FLAG_RGB,
      },
      [AV_PIX_FMT_GBRP16LE] = {
          .name = "gbrp16le",
          .log2_chroma_w = 0,
          .log2_chroma_h = 0,
          .comp = {
 +            { 2, 1, 1, 0, 15 },       /* R */
              { 0, 1, 1, 0, 15 },       /* G */
              { 1, 1, 1, 0, 15 },       /* B */
 -            { 2, 1, 1, 0, 15 },       /* R */
          },
-         .flags = PIX_FMT_PLANAR | PIX_FMT_RGB,
+         .flags = AV_PIX_FMT_FLAG_PLANAR | AV_PIX_FMT_FLAG_RGB,
      },
      [AV_PIX_FMT_GBRP16BE] = {
          .name = "gbrp16be",
          .log2_chroma_w = 0,
          .log2_chroma_h = 0,
          .comp = {
 +            { 2, 1, 1, 0, 15 },       /* R */
              { 0, 1, 1, 0, 15 },       /* G */
              { 1, 1, 1, 0, 15 },       /* B */
 -            { 2, 1, 1, 0, 15 },       /* R */
          },
-         .flags = PIX_FMT_BE | PIX_FMT_PLANAR | PIX_FMT_RGB,
+         .flags = AV_PIX_FMT_FLAG_BE | AV_PIX_FMT_FLAG_PLANAR | AV_PIX_FMT_FLAG_RGB,
      },
 +    [AV_PIX_FMT_GBRAP] = {
 +        .name = "gbrap",
 +        .nb_components = 4,
 +        .log2_chroma_w = 0,
 +        .log2_chroma_h = 0,
 +        .comp = {
 +            { 2, 0, 1, 0, 7 },        /* R */
 +            { 0, 0, 1, 0, 7 },        /* G */
 +            { 1, 0, 1, 0, 7 },        /* B */
 +            { 3, 0, 1, 0, 7 },        /* A */
 +        },
 +        .flags = PIX_FMT_PLANAR | PIX_FMT_RGB | PIX_FMT_ALPHA,
 +    },
 +    [AV_PIX_FMT_GBRAP16LE] = {
 +        .name = "gbrap16le",
 +        .nb_components = 4,
 +        .log2_chroma_w = 0,
 +        .log2_chroma_h = 0,
 +        .comp = {
 +            { 2, 1, 1, 0, 15 },       /* R */
 +            { 0, 1, 1, 0, 15 },       /* G */
 +            { 1, 1, 1, 0, 15 },       /* B */
 +            { 3, 1, 1, 0, 15 },       /* A */
 +        },
 +        .flags = PIX_FMT_PLANAR | PIX_FMT_RGB | PIX_FMT_ALPHA,
 +    },
 +    [AV_PIX_FMT_GBRAP16BE] = {
 +        .name = "gbrap16be",
 +        .nb_components = 4,
 +        .log2_chroma_w = 0,
 +        .log2_chroma_h = 0,
 +        .comp = {
 +            { 2, 1, 1, 0, 15 },       /* R */
 +            { 0, 1, 1, 0, 15 },       /* G */
 +            { 1, 1, 1, 0, 15 },       /* B */
 +            { 3, 1, 1, 0, 15 },       /* A */
 +        },
 +        .flags = PIX_FMT_BE | PIX_FMT_PLANAR | PIX_FMT_RGB | PIX_FMT_ALPHA,
 +    },
      [AV_PIX_FMT_VDPAU] = {
          .name = "vdpau",
          .log2_chroma_w = 1,
@@@ -86,14 -83,32 +86,32 @@@ typedef struct AVPixFmtDescriptor
      AVComponentDescriptor comp[4];
  }AVPixFmtDescriptor;
  
- #define PIX_FMT_BE        1 ///< Pixel format is big-endian.
- #define PIX_FMT_PAL       2 ///< Pixel format has a palette in data[1], values are indexes in this palette.
- #define PIX_FMT_BITSTREAM 4 ///< All values of a component are bit-wise packed end to end.
- #define PIX_FMT_HWACCEL   8 ///< Pixel format is an HW accelerated format.
- #define PIX_FMT_PLANAR   16 ///< At least one pixel component is not in the first data plane
- #define PIX_FMT_RGB      32 ///< The pixel format contains RGB-like data (as opposed to YUV/grayscale)
+ /**
+  * Pixel format is big-endian.
+  */
+ #define AV_PIX_FMT_FLAG_BE           (1 << 0)
+ /**
+  * Pixel format has a palette in data[1], values are indexes in this palette.
+  */
+ #define AV_PIX_FMT_FLAG_PAL          (1 << 1)
+ /**
+  * All values of a component are bit-wise packed end to end.
+  */
+ #define AV_PIX_FMT_FLAG_BITSTREAM    (1 << 2)
+ /**
+  * Pixel format is an HW accelerated format.
+  */
+ #define AV_PIX_FMT_FLAG_HWACCEL      (1 << 3)
+ /**
+  * At least one pixel component is not in the first data plane.
+  */
+ #define AV_PIX_FMT_FLAG_PLANAR       (1 << 4)
+ /**
+  * The pixel format contains RGB-like data (as opposed to YUV/grayscale).
+  */
+ #define AV_PIX_FMT_FLAG_RGB          (1 << 5)
  /**
 - * The pixel format is "pseudo-paletted". This means that Libav treats it as
 + * The pixel format is "pseudo-paletted". This means that FFmpeg treats it as
   * paletted internally, but the palette is generated by the decoder and is not
   * stored in the file.
   */
@@@ -74,9 -36,9 +74,9 @@@
   * @{
   */
  
 -#define LIBAVUTIL_VERSION_MAJOR 52
 -#define LIBAVUTIL_VERSION_MINOR 11
 -#define LIBAVUTIL_VERSION_MICRO  0
 +#define LIBAVUTIL_VERSION_MAJOR  52
- #define LIBAVUTIL_VERSION_MINOR  31
++#define LIBAVUTIL_VERSION_MINOR  32
 +#define LIBAVUTIL_VERSION_MICRO 100
  
  #define LIBAVUTIL_VERSION_INT   AV_VERSION_INT(LIBAVUTIL_VERSION_MAJOR, \
                                                 LIBAVUTIL_VERSION_MINOR, \
@@@ -659,8 -622,8 +659,8 @@@ static av_always_inline int isRGB(enum 
  
  #if 0 // FIXME
  #define isGray(x) \
-     (!(av_pix_fmt_desc_get(x)->flags & PIX_FMT_PAL) && \
 -    (!(av_pix_fmt_descriptors[x].flags & AV_PIX_FMT_FLAG_PAL) && \
 -     av_pix_fmt_descriptors[x].nb_components <= 2)
++    (!(av_pix_fmt_desc_get(x)->flags & AV_PIX_FMT_FLAG_PAL) && \
 +     av_pix_fmt_desc_get(x)->nb_components <= 2)
  #else
  #define isGray(x)                      \
      ((x) == AV_PIX_FMT_GRAY8       ||  \
@@@ -790,7 -713,8 +790,7 @@@ static av_always_inline int usePal(enu
  {
      const AVPixFmtDescriptor *desc = av_pix_fmt_desc_get(pix_fmt);
      av_assert0(desc);
-     return (desc->flags & PIX_FMT_PAL) || (desc->flags & PIX_FMT_PSEUDOPAL);
 -    return ((desc->flags & AV_PIX_FMT_FLAG_PAL) || (desc->flags & AV_PIX_FMT_FLAG_PSEUDOPAL) ||
 -            pix_fmt == AV_PIX_FMT_Y400A);
++    return (desc->flags & AV_PIX_FMT_FLAG_PAL) || (desc->flags & AV_PIX_FMT_FLAG_PSEUDOPAL);
  }
  
  extern const uint64_t ff_dither4[2];
@@@ -615,8 -561,14 +615,8 @@@ static rgbConvFn findRgbConvFn(SwsConte
  
  #define IS_NOT_NE(bpp, desc) \
      (((bpp + 7) >> 3) == 2 && \
-      (!(desc->flags & PIX_FMT_BE) != !HAVE_BIGENDIAN))
+      (!(desc->flags & AV_PIX_FMT_FLAG_BE) != !HAVE_BIGENDIAN))
  
 -    /* if this is non-native rgb444/555/565, don't handle it here. */
 -    if (IS_NOT_NE(srcId, desc_src) || IS_NOT_NE(dstId, desc_dst))
 -        return NULL;
 -
  #define CONV_IS(src, dst) (srcFormat == AV_PIX_FMT_##src && dstFormat == AV_PIX_FMT_##dst)
  
      if (isRGBA32(srcFormat) && isRGBA32(dstFormat)) {