return MFX_FOURCC_NV12;
case AV_PIX_FMT_YUYV422:
return MFX_FOURCC_YUY2;
- case AV_PIX_FMT_RGB32:
+ case AV_PIX_FMT_BGRA:
return MFX_FOURCC_RGB4;
}
{
switch (frame->format) {
case AV_PIX_FMT_NV12:
+ case AV_PIX_FMT_P010:
surface->Data.Y = frame->data[0];
surface->Data.UV = frame->data[1];
break;
}
av_frame_copy_props(qsv_frame->frame, picref);
- av_frame_free(&picref);
} else
qsv_frame->frame = av_frame_clone(picref);
out_frames_ctx->height = FFALIGN(outlink->h, 32);
out_frames_ctx->sw_format = s->out_sw_format;
out_frames_ctx->initial_pool_size = 64;
+ if (avctx->extra_hw_frames > 0)
+ out_frames_ctx->initial_pool_size += avctx->extra_hw_frames;
out_frames_hwctx->frame_type = s->out_mem_mode;
ret = av_hwframe_ctx_init(out_frames_ref);