diff options
Diffstat (limited to 'i965_drv_video')
-rw-r--r-- | i965_drv_video/i965_drv_video.c | 11 |
1 files changed, 9 insertions, 2 deletions
diff --git a/i965_drv_video/i965_drv_video.c b/i965_drv_video/i965_drv_video.c index b9c5ce3..f0466ad 100644 --- a/i965_drv_video/i965_drv_video.c +++ b/i965_drv_video/i965_drv_video.c @@ -417,8 +417,15 @@ i965_CreateSurfaces(VADriverContextP ctx, obj_surface->subpic = VA_INVALID_ID; obj_surface->orig_width = width; obj_surface->orig_height = height; - obj_surface->width = ALIGN(obj_surface->orig_width, 128); - obj_surface->height = ALIGN(obj_surface->orig_height, 32); + + if (IS_GEN6(i965->intel.device_id)) { + obj_surface->width = ALIGN(obj_surface->orig_width, 128); + obj_surface->height = ALIGN(obj_surface->orig_height, 32); + } else { + obj_surface->width = ALIGN(obj_surface->orig_width, 16); + obj_surface->height = ALIGN(obj_surface->orig_height, 16); + } + obj_surface->size = SIZE_YUV420(obj_surface->width, obj_surface->height); obj_surface->flags = SURFACE_REFERENCED; obj_surface->bo = NULL; |