OSDN Git Service

Merge remote-tracking branch 'qatar/master'
authorMichael Niedermayer <michaelni@gmx.at>
Mon, 17 Oct 2011 00:29:40 +0000 (02:29 +0200)
committerMichael Niedermayer <michaelni@gmx.at>
Mon, 17 Oct 2011 00:29:40 +0000 (02:29 +0200)
* qatar/master:
  w32threads: support for frame multithreading
  avcodec: remove stray @deprecated comment

Conflicts:
libavcodec/utils.c
libavcodec/w32thread.c

Merged-by: Michael Niedermayer <michaelni@gmx.at>
1  2 
libavcodec/Makefile
libavcodec/avcodec.h
libavcodec/h264.c
libavcodec/h264_direct.c
libavcodec/mpeg12.c
libavcodec/mpegvideo.c
libavcodec/pthread.c
libavcodec/utils.c
libavcodec/vp3.c

Simple merge
Simple merge
Simple merge
Simple merge
Simple merge
Simple merge
   * @see doc/multithreading.txt
   */
  
- #include <pthread.h>
+ #include "config.h"
  #include "avcodec.h"
 +#include "internal.h"
  #include "thread.h"
  
+ #if HAVE_PTHREADS
+ #include <pthread.h>
+ #elif HAVE_W32THREADS
+ #include "w32pthreads.h"
+ #endif
  typedef int (action_func)(AVCodecContext *c, void *arg);
  typedef int (action_func2)(AVCodecContext *c, void *arg, int jobnr, int threadnr);
  
@@@ -794,10 -720,10 +794,10 @@@ int attribute_align_arg avcodec_decode_
      if((avctx->coded_width||avctx->coded_height) && av_image_check_size(avctx->coded_width, avctx->coded_height, 0, avctx))
          return -1;
  
 -    avctx->pkt = avpkt;
 -
      if((avctx->codec->capabilities & CODEC_CAP_DELAY) || avpkt->size || (avctx->active_thread_type&FF_THREAD_FRAME)){
-         if (HAVE_PTHREADS && avctx->active_thread_type&FF_THREAD_FRAME)
 +        av_packet_split_side_data(avpkt);
 +        avctx->pkt = avpkt;
+         if (HAVE_THREADS && avctx->active_thread_type&FF_THREAD_FRAME)
               ret = ff_thread_decode_frame(avctx, picture, got_picture_ptr,
                                            avpkt);
          else {
Simple merge