Merge commit 'c5fca0174db9ed45be821177f49bd9633152704d'
authorMichael Niedermayer <michaelni@gmx.at>
Mon, 28 Jul 2014 10:36:28 +0000 (12:36 +0200)
committerMichael Niedermayer <michaelni@gmx.at>
Mon, 28 Jul 2014 10:36:28 +0000 (12:36 +0200)
* commit 'c5fca0174db9ed45be821177f49bd9633152704d':
  lavc: add a property for marking codecs that support frame reordering

Conflicts:
doc/APIchanges
libavcodec/avcodec.h
libavcodec/codec_desc.c
libavcodec/version.h

Merged-by: Michael Niedermayer <michaelni@gmx.at>
1  2 
doc/APIchanges
libavcodec/avcodec.h
libavcodec/codec_desc.c
libavcodec/version.h

diff --cc doc/APIchanges
@@@ -15,28 -13,22 +15,31 @@@ libavutil:     2012-10-2
  
  API changes, most recent first:
  
 -2014-07-xx - xxxxxxx - lavu 53.18.0 - display.h
+ 2014-xx-xx - xxxxxxx - lavc 55.57.0 - avcodec.h
+   Add AV_CODEC_PROP_REORDER to mark codecs supporting frame reordering.
 +2014-07-27 - XXXXXXX - lavc 55.70.100 - avdct.h
 +  Add AVDCT / avcodec_dct_alloc() / avcodec_dct_init().
 +
 +2014-07-23 - XXXXXXX - lavf 55.49.100 - avio.h
 +  Add avio_read_to_bprint()
 +
 +2014-07-14 - 62227a7 - lavf 55.47.100 - avformat.h
 +  Add av_stream_get_parser()
 +
 +2014-07-09 - c67690f / a54f03b - lavu 52.92.100 / 53.18.0 - display.h
    Add av_display_matrix_flip() to flip the transformation matrix.
  
 -2014-07-xx - xxxxxxx - lavc 55.56.0 - dv_profile.h
 +2014-07-09 - 1b58f13 / f6ee61f - lavc 55.69.100 / 55.56.0 - dv_profile.h
    Add a public API for DV profile handling.
  
 -2014-06-xx - xxxxxxx - lavu 53.17.0 - imgutils.h
 +2014-06-20 - 0dceefc / 9e500ef - lavu 52.90.100 / 53.17.0 - imgutils.h
    Add av_image_check_sar().
  
 -2014-06-xx - xxxxxxx - lavc 55.55.0 - avcodec.h
 +2014-06-20 - 4a99333 / 874390e - lavc 55.68.100 / 55.55.0 - avcodec.h
    Add av_packet_rescale_ts() to simplify timestamp conversion.
  
 -2014-xx-xx - xxxxxxx - lavf 55.20.0 - avformat.h
 +2014-06-18 - ac293b6 / 194be1f - lavf 55.44.100 / 55.20.0 - avformat.h
    The proper way for providing a hint about the desired timebase to the muxers
    is now setting AVStream.time_base, instead of AVStream.codec.time_base as was
    done previously. The old method is now deprecated.
@@@ -596,15 -510,15 +596,25 @@@ typedef struct AVCodecDescriptor 
   */
  #define AV_CODEC_PROP_LOSSLESS      (1 << 2)
  /**
+  * Codec supports frame reordering. That is, the coded order (the order in which
+  * the encoded packets are output by the encoders / stored / input to the
+  * decoders) may be different from the presentation order of the corresponding
+  * frames.
+  *
+  * For codecs that do not have this property set, PTS and DTS should always be
+  * equal.
+  */
+ #define AV_CODEC_PROP_REORDER       (1 << 3)
++/**
 + * Subtitle codec is bitmap based
 + * Decoded AVSubtitle data can be read from the AVSubtitleRect->pict field.
 + */
 +#define AV_CODEC_PROP_BITMAP_SUB    (1 << 16)
 +/**
 + * Subtitle codec is text based.
 + * Decoded AVSubtitle data can be read from the AVSubtitleRect->ass field.
 + */
 +#define AV_CODEC_PROP_TEXT_SUB      (1 << 17)
  
  /**
   * @ingroup lavc_decoding
@@@ -41,8 -36,8 +41,8 @@@ static const AVCodecDescriptor codec_de
          .id        = AV_CODEC_ID_MPEG2VIDEO,
          .type      = AVMEDIA_TYPE_VIDEO,
          .name      = "mpeg2video",
 -        .long_name = NULL_IF_CONFIG_SMALL("MPEG-1 video"),
 +        .long_name = NULL_IF_CONFIG_SMALL("MPEG-2 video"),
-         .props     = AV_CODEC_PROP_LOSSY,
+         .props     = AV_CODEC_PROP_LOSSY | AV_CODEC_PROP_REORDER,
      },
  #if FF_API_XVMC
      {
@@@ -78,8 -73,8 +78,8 @@@
          .id        = AV_CODEC_ID_RV20,
          .type      = AVMEDIA_TYPE_VIDEO,
          .name      = "rv20",
 -        .long_name = NULL_IF_CONFIG_SMALL("RealVideo 1.0"),
 +        .long_name = NULL_IF_CONFIG_SMALL("RealVideo 2.0"),
-         .props     = AV_CODEC_PROP_LOSSY,
+         .props     = AV_CODEC_PROP_LOSSY | AV_CODEC_PROP_REORDER,
      },
      {
          .id        = AV_CODEC_ID_MJPEG,
          .id        = AV_CODEC_ID_HEVC,
          .type      = AVMEDIA_TYPE_VIDEO,
          .name      = "hevc",
 -        .long_name = NULL_IF_CONFIG_SMALL("HEVC (High Efficiency Video Coding)"),
 +        .long_name = NULL_IF_CONFIG_SMALL("H.265 / HEVC (High Efficiency Video Coding)"),
-         .props     = AV_CODEC_PROP_LOSSY,
+         .props     = AV_CODEC_PROP_LOSSY | AV_CODEC_PROP_REORDER,
      },
      {
          .id        = AV_CODEC_ID_FIC,
@@@ -29,8 -29,8 +29,8 @@@
  #include "libavutil/version.h"
  
  #define LIBAVCODEC_VERSION_MAJOR 55
- #define LIBAVCODEC_VERSION_MINOR  70
 -#define LIBAVCODEC_VERSION_MINOR 57
 -#define LIBAVCODEC_VERSION_MICRO  0
++#define LIBAVCODEC_VERSION_MINOR  71
 +#define LIBAVCODEC_VERSION_MICRO 100
  
  #define LIBAVCODEC_VERSION_INT  AV_VERSION_INT(LIBAVCODEC_VERSION_MAJOR, \
                                                 LIBAVCODEC_VERSION_MINOR, \