On 24/01/17 08:20, Anton Khirnov wrote:
> Quoting Mark Thompson (2017-01-21 23:10:54)
>> On 13/01/17 11:07, Anton Khirnov wrote:
>>> Quoting Mark Thompson (2017-01-10 00:47:55)
>>>> ---
>>>> The i965 driver has been updated so that this works consistently.
>>>>
>>>>  libavcodec/vaapi_encode.c | 14 ++++++++++++++
>>>>  libavcodec/vaapi_encode.h |  4 ++++
>>>>  2 files changed, 18 insertions(+)
>>>>
>>>
>>> Code itself looks ok, but won't old versions of the driver misbehave?
>>
>> It will make the bitrate-targetted RC modes for VP8 and VP9 do nasty things 
>> with the Intel driver before 1.8.0.
>>
>> Would you prefer this to have some sort of hack to try to parse the
>> Intel driver version out of the vendor string and fail out for some
>> codecs?  (That's the only way I can see to test it - the API is clear
>> that this has always been valid, it was just the driver which didn't
>> implement it properly.)
>>
>> For VP8 it's essentially irrelevant because the driver is so terrible
>> in current versions that noone in their right mind would ever use it
>> (there are now patches outstanding on the libva list which make it
>> usable).  For VP9 it's unfortunate because it does already work mostly
>> sensibly, but given how recent the hardware is one would hope that
>> people aren't going to blindly expect an earlier version of libva to
>> work properly?
> 
> I guess if it's just VP8 and VP9 then we shouldn't be too concerned too
> much. Perhaps just mention on the wiki or somewhere that old intel
> drivers don't work properly.

Urgh, it seems that mesa also has issues with this in the current version: 
<https://lists.freedesktop.org/archives/mesa-dev/2017-January/142421.html>.

Given that it's required for sensible support of VP8/VP9 (which don't carry any 
framerate in the bitstream and therefore it is not present in the sequence 
parameters here), I think making it conditional on VAAPI 0.40.0 is the least 
broken option.  That is the most recent bump and is not yet released, but the 
releases are synchronised such that correct support in the Intel driver will be 
available at the same time.  Older versions should then just not be given the 
framerate structure at all, because it can only confuse them.

- Mark
_______________________________________________
libav-devel mailing list
libav-devel@libav.org
https://lists.libav.org/mailman/listinfo/libav-devel

Reply via email to