Merge commit '737d35e33408263c04d7730f5487eed0d04938ba'
authorMichael Niedermayer <michaelni@gmx.at>
Sat, 27 Dec 2014 12:37:39 +0000 (13:37 +0100)
committerMichael Niedermayer <michaelni@gmx.at>
Sat, 27 Dec 2014 13:46:15 +0000 (14:46 +0100)
* commit '737d35e33408263c04d7730f5487eed0d04938ba':
  vdpau: add support for the H.264 High 4:4:4 Predictive profile

Conflicts:
libavcodec/vdpau_internal.h

Merged-by: Michael Niedermayer <michaelni@gmx.at>
1  2 
libavcodec/vdpau.c
libavcodec/vdpau_h264.c
libavcodec/vdpau_internal.h

@@@ -286,19 -272,6 +286,21 @@@ int ff_vdpau_common_end_frame(AVCodecCo
      if (val < 0)
          return val;
  
-     hwctx->info = pic_ctx->info;
 +#if FF_API_BUFS_VDPAU
 +FF_DISABLE_DEPRECATION_WARNINGS
++    av_assert0(sizeof(hwctx->info) >= sizeof(pic_ctx->info));
++    memset(&hwctx->info, 0, sizeof(hwctx->info));
++    memcpy(&hwctx->info, &pic_ctx->info, sizeof(pic_ctx->info));
 +    hwctx->bitstream_buffers = pic_ctx->bitstream_buffers;
 +    hwctx->bitstream_buffers_used = pic_ctx->bitstream_buffers_used;
 +    hwctx->bitstream_buffers_allocated = pic_ctx->bitstream_buffers_allocated;
 +FF_ENABLE_DEPRECATION_WARNINGS
 +#endif
 +
 +    if (!hwctx->render && hwctx->render2) {
 +        status = hwctx->render2(avctx, frame, (void *)&pic_ctx->info,
 +                                pic_ctx->bitstream_buffers_used, pic_ctx->bitstream_buffers);
 +    } else
      status = vdctx->render(vdctx->decoder, surf, (void *)&pic_ctx->info,
                             pic_ctx->bitstream_buffers_used,
                             pic_ctx->bitstream_buffers);
Simple merge
@@@ -42,19 -37,16 +42,20 @@@ static inline uintptr_t ff_vdpau_get_su
      return (uintptr_t)pic->data[3];
  }
  
- #if !FF_API_BUFS_VDPAU
- union AVVDPAUPictureInfo {
 +struct vdpau_picture_context;
 +#if CONFIG_VDPAU
+ union VDPAUPictureInfo {
      VdpPictureInfoH264        h264;
      VdpPictureInfoMPEG1Or2    mpeg;
      VdpPictureInfoVC1          vc1;
      VdpPictureInfoMPEG4Part2 mpeg4;
+ #ifdef VDP_DECODER_PROFILE_H264_HIGH_444_PREDICTIVE
+     VdpPictureInfoH264Predictive h264_predictive;
+ #endif
  };
- #else
 +#include "vdpau.h"
- #endif
 +
  typedef struct VDPAUHWContext {
      AVVDPAUContext context;
      VdpDevice device;