mirror of
https://github.com/FFmpeg/FFmpeg.git
synced 2025-01-08 13:22:53 +02:00
hwcontext_vaapi: add a quirk for the missing MemoryType attribute
The Intel binary iHD driver does not support the VASurfaceAttribMemoryType, so surface allocation will fail when using it.
This commit is contained in:
parent
b57e38f52c
commit
2124711b95
@ -13,6 +13,9 @@ libavutil: 2015-08-28
|
||||
|
||||
API changes, most recent first:
|
||||
|
||||
2016-xx-xx - xxxxxxx - lavu 55.23.0 - hwcontext_vaapi.h
|
||||
Add AV_VAAPI_DRIVER_QUIRK_ATTRIB_MEMTYPE.
|
||||
|
||||
2016-xx-xx - xxxxxxx - lavf 57.08.0 - avio.h
|
||||
Add AVIO_SEEKABLE_TIME flag.
|
||||
|
||||
|
@ -273,6 +273,11 @@ static const struct {
|
||||
"i965",
|
||||
AV_VAAPI_DRIVER_QUIRK_RENDER_PARAM_BUFFERS,
|
||||
},
|
||||
{
|
||||
"Intel iHD",
|
||||
"ubit",
|
||||
AV_VAAPI_DRIVER_QUIRK_ATTRIB_MEMTYPE,
|
||||
},
|
||||
};
|
||||
|
||||
static int vaapi_device_init(AVHWDeviceContext *hwdev)
|
||||
@ -447,7 +452,8 @@ static int vaapi_frames_init(AVHWFramesContext *hwfc)
|
||||
}
|
||||
|
||||
if (!hwfc->pool) {
|
||||
int need_memory_type = 1, need_pixel_format = 1;
|
||||
int need_memory_type = !(hwctx->driver_quirks & AV_VAAPI_DRIVER_QUIRK_ATTRIB_MEMTYPE);
|
||||
int need_pixel_format = 1;
|
||||
for (i = 0; i < avfc->nb_attributes; i++) {
|
||||
if (ctx->attributes[i].type == VASurfaceAttribMemoryType)
|
||||
need_memory_type = 0;
|
||||
|
@ -45,6 +45,12 @@ enum {
|
||||
* separately afterwards.
|
||||
*/
|
||||
AV_VAAPI_DRIVER_QUIRK_RENDER_PARAM_BUFFERS = (1 << 1),
|
||||
|
||||
/**
|
||||
* The driver does not support the VASurfaceAttribMemoryType attribute,
|
||||
* so the surface allocation code will not try to use it.
|
||||
*/
|
||||
AV_VAAPI_DRIVER_QUIRK_ATTRIB_MEMTYPE = (1 << 2),
|
||||
};
|
||||
|
||||
/**
|
||||
|
@ -54,7 +54,7 @@
|
||||
*/
|
||||
|
||||
#define LIBAVUTIL_VERSION_MAJOR 55
|
||||
#define LIBAVUTIL_VERSION_MINOR 22
|
||||
#define LIBAVUTIL_VERSION_MINOR 23
|
||||
#define LIBAVUTIL_VERSION_MICRO 0
|
||||
|
||||
#define LIBAVUTIL_VERSION_INT AV_VERSION_INT(LIBAVUTIL_VERSION_MAJOR, \
|
||||
|
Loading…
Reference in New Issue
Block a user