[Libva] [PATCH] libva-intel-driver: Implement max width and height in QuerySurfaceAttributes

Sean V Kelley seanvk at posteo.de
Tue Feb 3 16:23:59 PST 2015


On 02/03/2015 02:15 PM, Gwenole Beauchesne wrote:
> Hi,
> 
> 2015-02-03 22:11 GMT+01:00 Sean V Kelley <seanvk at posteo.de>:
>> From: Heng-ruey Hsu <henryhsu at chromium.org>
>>
>> With this, we can get hardware supported resolution for video encode and
>> decode. This CL is used to prepare GetSupportedResolution in chrome.
>>
>> Signed-off-by: Heng-ruey Hsu <henryhsu at chromium.org>
>> Reviewed-by: Wu-cheng Li <wuchengli at chromium.org>
>> Reviewed-by: Sean V Kelley <seanvk at posteo.de>
>> Cc: Pawel Osciak <posciak at chromium.org>
>> Cc: Stéphane Marchesin <marcheu at chromium.org>
>> ---
>>  src/i965_drv_video.c | 12 ++++++++++++
>>  1 file changed, 12 insertions(+)
>>
>> diff --git a/src/i965_drv_video.c b/src/i965_drv_video.c
>> index ac2aeac..64f4876 100644
>> --- a/src/i965_drv_video.c
>> +++ b/src/i965_drv_video.c
>> @@ -5149,6 +5149,18 @@ i965_QuerySurfaceAttributes(VADriverContextP ctx,
>>      attribs[i].value.value.p = NULL; /* ignore */
>>      i++;
>>
>> +    attribs[i].type = VASurfaceAttribMaxWidth;
>> +    attribs[i].value.type = VAGenericValueTypeInteger;
>> +    attribs[i].flags = VA_SURFACE_ATTRIB_GETTABLE;
>> +    attribs[i].value.value.i = i965->codec_info->max_width;
>> +    i++;
>> +
>> +    attribs[i].type = VASurfaceAttribMaxHeight;
>> +    attribs[i].value.type = VAGenericValueTypeInteger;
>> +    attribs[i].flags = VA_SURFACE_ATTRIB_GETTABLE;
>> +    attribs[i].value.value.i = i965->codec_info->max_height;
>> +    i++;
>> +
>>      if (i > *num_attribs) {
>>          *num_attribs = i;
>>          free(attribs);
> 
> This would work as a temporary solution.
> 
> However, a really correct solution requires a second patch to make
> codec_info really per-codec. i.e. max resolution constraints can vary
> on a per-codec basis, depending on the generation.

yes, I agree and that is planned.  Right now the max/min resolutions
are purely hard coded on per platform basis.

Thanks,

Sean

> 
> Regards,
> 



More information about the Libva mailing list