Merge branch 'release/0.8' into release/0.7
authorMichael Niedermayer <michaelni@gmx.at>
Mon, 21 Nov 2011 18:41:08 +0000 (19:41 +0100)
committerMichael Niedermayer <michaelni@gmx.at>
Mon, 21 Nov 2011 18:41:08 +0000 (19:41 +0100)
* release/0.8: (31 commits)
  svq1dec: call avcodec_set_dimensions() after dimensions changed. Fixes NGS00148
  vp3dec: Check coefficient index in vp3_dequant() Fixes NGS00145
  qdm2dec: fix buffer overflow. Fixes NGS00144
  h264: Fix invalid interlaced progressive MB combinations for direct mode prediction. Fixes Ticket312
  mpegvideo: dont use ff_mspel_motion() for vc1 Fixes Ticket655
  imgutils: Fix illegal read.
  ac3probe: Detect Sonic Foundry Soft Encode AC3 as raw AC3. Our ac3 code chain can handle it fine. More ideal would be to write a demuxer that actually extracts what can be from the additional headers and uses it for whatever it can be used for.
  mjpeg: support mpo Fixes stereoscopic_photo.mpo
  Add a version bump and APIchanges entry for avcodec_open2 and avformat_find_stream_info.
  lavf: fix multiplication overflow in avformat_find_stream_info()
  lavf: fix invalid reads in avformat_find_stream_info()
  lavf: add avformat_find_stream_info()
  lavc: fix parentheses placement in avcodec_open2().
  lavc: introduce avcodec_open2() as a replacement for avcodec_open().
  rawdec: use a default sample rate if none is specified. Fixes "ffmpeg -f s16le -i /dev/zero"
  rawdec: add check on sample_rate
  qdm2dec: check remaining input bits in the mainloop of qdm2_fft_decode_tones() This is neccessary but likely not sufficient to prevent out of array reads.
  cinepak: check strip_size
  wma: Check channel number before init. Fixes Ticket240
  Do not try to read 16bit gray png files with alpha channel.
  ...

Conflicts:
libavcodec/version.h
libavformat/version.h

Merged-by: Michael Niedermayer <michaelni@gmx.at>
1  2 
ffplay.c
libavcodec/avcodec.h
libavcodec/cinepak.c
libavcodec/svq1dec.c
libavcodec/utils.c
libavcodec/version.h
libavformat/Makefile
libavformat/avformat.h
libavformat/utils.c
libavformat/version.h
libavutil/imgutils.c

diff --cc ffplay.c
Simple merge
@@@ -3810,28 -3711,45 +3812,64 @@@ int avcodec_default_execute2(AVCodecCon
   * @param codec The codec to use within the context.
   * @return zero on success, a negative value on error
   * @see avcodec_alloc_context, avcodec_find_decoder, avcodec_find_encoder, avcodec_close
+  *
+  * @deprecated use avcodec_open2
   */
  int avcodec_open(AVCodecContext *avctx, AVCodec *codec);
+ #endif
+ /**
+  * Initialize the AVCodecContext to use the given AVCodec. Prior to using this
+  * function the context has to be allocated with avcodec_alloc_context().
+  *
+  * The functions avcodec_find_decoder_by_name(), avcodec_find_encoder_by_name(),
+  * avcodec_find_decoder() and avcodec_find_encoder() provide an easy way for
+  * retrieving a codec.
+  *
+  * @warning This function is not thread safe!
+  *
+  * @code
+  * avcodec_register_all();
+  * av_dict_set(&opts, "b", "2.5M", 0);
+  * codec = avcodec_find_decoder(CODEC_ID_H264);
+  * if (!codec)
+  *     exit(1);
+  *
+  * context = avcodec_alloc_context();
+  *
+  * if (avcodec_open(context, codec, opts) < 0)
+  *     exit(1);
+  * @endcode
+  *
+  * @param avctx The context to initialize.
+  * @param options A dictionary filled with AVCodecContext and codec-private options.
+  *                On return this object will be filled with options that were not found.
+  *
+  * @return zero on success, a negative value on error
+  * @see avcodec_alloc_context3(), avcodec_find_decoder(), avcodec_find_encoder(),
+  *      av_dict_set(), av_opt_find().
+  */
+ int avcodec_open2(AVCodecContext *avctx, AVCodec *codec, AVDictionary **options);
  
 +#if FF_API_AUDIO_OLD
 +/**
 + * Decode an audio frame from buf into samples.
 + * Wrapper function which calls avcodec_decode_audio3.
 + *
 + * @deprecated Use avcodec_decode_audio3 instead.
 + * @param avctx the codec context
 + * @param[out] samples the output buffer
 + * @param[in,out] frame_size_ptr the output buffer size in bytes
 + * @param[in] buf the input buffer
 + * @param[in] buf_size the input buffer size in bytes
 + * @return On error a negative value is returned, otherwise the number of bytes
 + * used or zero if no frame could be decompressed.
 + */
 +attribute_deprecated int avcodec_decode_audio2(AVCodecContext *avctx, int16_t *samples,
 +                         int *frame_size_ptr,
 +                         const uint8_t *buf, int buf_size);
 +#endif
 +
  /**
   * Decode the audio frame of size avpkt->size from avpkt->data into samples.
   * Some decoders may support multiple frames in a single AVPacket, such
Simple merge
Simple merge
Simple merge
@@@ -20,8 -20,8 +20,8 @@@
  #ifndef AVCODEC_VERSION_H
  #define AVCODEC_VERSION_H
  
 -#define LIBAVCODEC_VERSION_MAJOR 53
 -#define LIBAVCODEC_VERSION_MINOR  8
 +#define LIBAVCODEC_VERSION_MAJOR 52
- #define LIBAVCODEC_VERSION_MINOR 122
++#define LIBAVCODEC_VERSION_MINOR 123
  #define LIBAVCODEC_VERSION_MICRO  0
  
  #define LIBAVCODEC_VERSION_INT  AV_VERSION_INT(LIBAVCODEC_VERSION_MAJOR, \
Simple merge
Simple merge
Simple merge
@@@ -23,8 -23,8 +23,8 @@@
  
  #include "libavutil/avutil.h"
  
 -#define LIBAVFORMAT_VERSION_MAJOR 53
 -#define LIBAVFORMAT_VERSION_MINOR  5
 +#define LIBAVFORMAT_VERSION_MAJOR 52
- #define LIBAVFORMAT_VERSION_MINOR 110
++#define LIBAVFORMAT_VERSION_MINOR 111
  #define LIBAVFORMAT_VERSION_MICRO  0
  
  #define LIBAVFORMAT_VERSION_INT AV_VERSION_INT(LIBAVFORMAT_VERSION_MAJOR, \
Simple merge