diff options
Diffstat (limited to 'src/gallium/state_trackers/va/image.c')
-rw-r--r-- | src/gallium/state_trackers/va/image.c | 12 |
1 files changed, 12 insertions, 0 deletions
diff --git a/src/gallium/state_trackers/va/image.c b/src/gallium/state_trackers/va/image.c index 2ce22cefe7c..f87de8e5c4e 100644 --- a/src/gallium/state_trackers/va/image.c +++ b/src/gallium/state_trackers/va/image.c @@ -41,6 +41,8 @@ static const VAImageFormat formats[] = { {VA_FOURCC('N','V','1','2')}, + {VA_FOURCC('P','0','1','0')}, + {VA_FOURCC('P','0','1','6')}, {VA_FOURCC('I','4','2','0')}, {VA_FOURCC('Y','V','1','2')}, {VA_FOURCC('Y','U','Y','V')}, @@ -134,6 +136,16 @@ vlVaCreateImage(VADriverContextP ctx, VAImageFormat *format, int width, int heig img->data_size = w * h * 3 / 2; break; + case VA_FOURCC('P','0','1','0'): + case VA_FOURCC('P','0','1','6'): + img->num_planes = 2; + img->pitches[0] = w * 2; + img->offsets[0] = 0; + img->pitches[1] = w * 2; + img->offsets[1] = w * h * 2; + img->data_size = w * h * 3; + break; + case VA_FOURCC('I','4','2','0'): case VA_FOURCC('Y','V','1','2'): img->num_planes = 3; |