Hi, This merges the improved VAAPI decode infrastructure from libav, with various related parts updated to work together.
The aims of this series are: * Remove struct vaapi_context and move everything it used to do into lavc. * Simplify VAAPI support in the ffmpeg utility, using generic hwcontext code. * Add hwaccel hooks for VP8 and use them to add VAAPI VP8 decode support. * Generally clean up the VAAPI decoding code so that it's easier to debug and change. The removal of struct vaapi_context is backward compatible - the structure is deprecated, but will continue to work until it gets removed in a future version bump. The patches are: 1-4: Some preparatory work to clean up the existing code and make the following patches simpler. 5: Add the new VAAPI decode infrastructure. Several patches are combined to avoid an intermediate with minor bugs which were later fixed in libav. 6-10: Convert the VAAPI hwaccels which are also present in libav. 11: Convert the VP9 hwaccel, which is not in libav. 12: Change the ffmpeg utility to use the new infrastructure. 13: Deprecate struct vaapi_context and remove the old infrastructure. 14: Add hwaccel hooks to the generic VP8 code. 15: Add the VAAPI VP8 decode hwaccel. 16: Fix profiles to make VP8 decoding actually work. Tested on Skylake, Kaby Lake and Polaris; with ffmpeg (uses new infrastructure) and mpv (uses the struct vaapi_context compatibility). More testing on other platforms or with other lavc users welcome. Thanks, - Mark _______________________________________________ ffmpeg-devel mailing list ffmpeg-devel@ffmpeg.org http://ffmpeg.org/mailman/listinfo/ffmpeg-devel