Merge commit 'd351ef47d0e0ccb7de96b37f137c16b2885580ac'
authorMichael Niedermayer <michaelni@gmx.at>
Mon, 9 Dec 2013 12:19:50 +0000 (13:19 +0100)
committerMichael Niedermayer <michaelni@gmx.at>
Mon, 9 Dec 2013 12:25:17 +0000 (13:25 +0100)
* commit 'd351ef47d0e0ccb7de96b37f137c16b2885580ac':
  pthread_frame: use the AVFrame API properly.

Conflicts:
libavcodec/pthread_frame.c

Merged-by: Michael Niedermayer <michaelni@gmx.at>
1  2 
libavcodec/pthread_frame.c

@@@ -145,16 -134,15 +145,12 @@@ static attribute_align_arg void *frame_
  
          if (fctx->die) break;
  
 -        if (!codec->update_thread_context && avctx->thread_safe_callbacks)
 +        if (!codec->update_thread_context && THREAD_SAFE_CALLBACKS(avctx))
              ff_thread_finish_setup(avctx);
  
-         avcodec_get_frame_defaults(&p->frame);
 -        pthread_mutex_lock(&p->mutex);
+         av_frame_unref(p->frame);
          p->got_frame = 0;
-         p->result = codec->decode(avctx, &p->frame, &p->got_frame, &p->avpkt);
-         /* many decoders assign whole AVFrames, thus overwriting extended_data;
-          * make sure it's set correctly */
-         p->frame.extended_data = p->frame.data;
+         p->result = codec->decode(avctx, p->frame, &p->got_frame, &p->avpkt);
  
          if (p->state == STATE_SETTING_UP) ff_thread_finish_setup(avctx);