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