summaryrefslogtreecommitdiff
path: root/libavcodec/vaapi_encode_vp9.c
diff options
context:
space:
mode:
authorPhilip Langdale <philipl@overt.org>2022-08-04 20:35:04 -0700
committerPhilip Langdale <philipl@overt.org>2022-08-09 09:22:49 -0700
commit109515e16dfffa6bb34de75c5253b7cbb1f12fa6 (patch)
tree42316804ffa8a0eb58f755b7dbafb1c797394cff /libavcodec/vaapi_encode_vp9.c
parent737298b4f7b60bc2b755fe8fa9135f50a496d94d (diff)
downloadffmpeg-109515e16dfffa6bb34de75c5253b7cbb1f12fa6.tar.gz
lavc/vaapi_encode: enable 8bit 4:4:4 encoding for HEVC and VP9
Sufficiently recent Intel hardware is able to do encoding of 8bit 4:4:4 content in HEVC and VP9. The main requirement here is that the frames must be provided in the AYUV format. Enabling support is done by adding the appropriate encoding profiles and noting that AYUV is officially a four channel format with alpha so we must state that we expect all four channels.
Diffstat (limited to 'libavcodec/vaapi_encode_vp9.c')
-rw-r--r--libavcodec/vaapi_encode_vp9.c2
1 files changed, 2 insertions, 0 deletions
diff --git a/libavcodec/vaapi_encode_vp9.c b/libavcodec/vaapi_encode_vp9.c
index 892ad770c6..9b455e10c9 100644
--- a/libavcodec/vaapi_encode_vp9.c
+++ b/libavcodec/vaapi_encode_vp9.c
@@ -228,6 +228,8 @@ static av_cold int vaapi_encode_vp9_configure(AVCodecContext *avctx)
static const VAAPIEncodeProfile vaapi_encode_vp9_profiles[] = {
{ FF_PROFILE_VP9_0, 8, 3, 1, 1, VAProfileVP9Profile0 },
+ // Four channels because this uses the AYUV format which has Alpha
+ { FF_PROFILE_VP9_1, 8, 4, 0, 0, VAProfileVP9Profile1 },
{ FF_PROFILE_VP9_2, 10, 3, 1, 1, VAProfileVP9Profile2 },
{ FF_PROFILE_UNKNOWN }
};