Merge remote-tracking branch 'qatar/master'
authorMichael Niedermayer <michaelni@gmx.at>
Wed, 17 Aug 2011 12:23:20 +0000 (14:23 +0200)
committerMichael Niedermayer <michaelni@gmx.at>
Wed, 17 Aug 2011 12:23:20 +0000 (14:23 +0200)
* qatar/master:
  Revert "avconv: use stream copy by default when possible."
  avconv: print stream copy information.
  avconv: use stream copy by default when possible.
  matroskaenc: vertical alignment.
  matroskaenc: implement query_codec()
  lavf: add avformat_query_codec().
  lavc: add avcodec_get_type() for mapping codec_id -> type.
  flvenc: use int64_t to store offsets
  avconv: don't segfault on 0 input files.
  Do not write ID3v1 tags by default
  mpegts: log into an AVFormatContext rather than MpegTSContext.

Conflicts:
doc/APIchanges
libavcodec/version.h
libavformat/avformat.h
libavformat/mp3enc.c

Merged-by: Michael Niedermayer <michaelni@gmx.at>
1  2 
avconv.c
doc/APIchanges
libavcodec/avcodec.h
libavcodec/utils.c
libavcodec/version.h
libavformat/avformat.h
libavformat/flvenc.c
libavformat/matroskaenc.c
libavformat/mp3enc.c
libavformat/utils.c

diff --cc avconv.c
Simple merge
diff --cc doc/APIchanges
@@@ -13,9 -13,12 +13,15 @@@ libavutil:   2011-04-1
  
  API changes, most recent first:
  
 +2011-08-14 - xxxxxx - lavu 52.12.0
 +  Add av_fifo_peek2(), deprecate av_fifo_peek().
 +
+ 2011-08-xx - xxxxxxx - lavf 53.4.0
+   Add avformat_query_codec().
+ 2011-08-xx - xxxxxxx - lavc 53.8.0
+   Add avcodec_get_type().
  2011-08-06 - 2f63440 - lavf 53.4.0
    Add error_recognition to AVFormatContext.
  
@@@ -208,10 -208,9 +208,11 @@@ enum CodecID 
      CODEC_ID_PRORES,
      CODEC_ID_JV,
      CODEC_ID_DFA,
 +    CODEC_ID_8SVX_RAW,
 +    CODEC_ID_G2M,
  
      /* various PCM "codecs" */
+     CODEC_ID_FIRST_AUDIO = 0x10000,     ///< A dummy id pointing at the start of audio codecs
      CODEC_ID_PCM_S16LE= 0x10000,
      CODEC_ID_PCM_S16BE,
      CODEC_ID_PCM_U16LE,
      CODEC_ID_BINKAUDIO_DCT,
      CODEC_ID_AAC_LATM,
      CODEC_ID_QDMC,
 +    CODEC_ID_CELT,
  
      /* subtitle codecs */
+     CODEC_ID_FIRST_SUBTITLE = 0x17000,          ///< A dummy ID pointing at the start of subtitle codecs.
      CODEC_ID_DVD_SUBTITLE= 0x17000,
      CODEC_ID_DVB_SUBTITLE,
      CODEC_ID_TEXT,  ///< raw UTF-8 text
      CODEC_ID_HDMV_PGS_SUBTITLE,
      CODEC_ID_DVB_TELETEXT,
      CODEC_ID_SRT,
 +    CODEC_ID_MICRODVD,
  
      /* other specific kind of codecs (generally used for attachments) */
+     CODEC_ID_FIRST_UNKNOWN = 0x18000,           ///< A dummy ID pointing at the start of various fake codecs.
      CODEC_ID_TTF= 0x18000,
  
      CODEC_ID_PROBE= 0x19000, ///< codec_id is not known (like CODEC_ID_NONE) but lavf should attempt to identify it
Simple merge
@@@ -21,7 -21,7 +21,7 @@@
  #define AVCODEC_VERSION_H
  
  #define LIBAVCODEC_VERSION_MAJOR 53
- #define LIBAVCODEC_VERSION_MINOR 10
 -#define LIBAVCODEC_VERSION_MINOR  8
++#define LIBAVCODEC_VERSION_MINOR 11
  #define LIBAVCODEC_VERSION_MICRO  0
  
  #define LIBAVCODEC_VERSION_INT  AV_VERSION_INT(LIBAVCODEC_VERSION_MAJOR, \
@@@ -324,9 -322,14 +324,17 @@@ typedef struct AVOutputFormat 
  
      const AVClass *priv_class; ///< AVClass for the private context
  
+     /**
+      * Test if the given codec can be stored in this container.
+      *
+      * @return 1 if the codec is supported, 0 if it is not.
+      *         A negative number if unknown.
+      */
+     int (*query_codec)(enum CodecID id, int std_compliance);
 +    void (*get_output_timestamp)(struct AVFormatContext *s, int stream,
 +                                 int64_t *dts, int64_t *wall);
 +
      /* private fields */
      struct AVOutputFormat *next;
  } AVOutputFormat;
Simple merge
Simple merge
@@@ -141,16 -135,11 +141,17 @@@ static int id3v2_put_ttag(AVFormatConte
  typedef struct MP3Context {
      const AVClass *class;
      int id3v2_version;
 -    int64_t nb_frames_offset;
+     int write_id3v1;
 +    int64_t frames_offset;
 +    int32_t frames;
 +    int32_t size;
 +    uint32_t want;
 +    uint32_t seen;
 +    uint32_t pos;
 +    uint64_t bag[VBR_NUM_BAGS];
  } MP3Context;
  
 -static int mp3_write_trailer(struct AVFormatContext *s)
 +static int mp2_write_trailer(struct AVFormatContext *s)
  {
      uint8_t buf[ID3v1_TAG_SIZE];
      MP3Context *mp3 = s->priv_data;
Simple merge