[FFmpeg-devel] [PATCH 00/16] vaapi: Improve infrastructure, add VP8 support
Mark Thompson
sw at jkqxz.net
Sun Jan 8 20:08:38 EET 2017
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
More information about the ffmpeg-devel
mailing list