10-bit surface support was added in libva 1.6.2, earlier versions
support H.265 encoding in 8-bit only.
---
libavcodec/vaapi_encode_h265.c | 6 ++++++
1 file changed, 6 insertions(+)
diff --git a/libavcodec/vaapi_encode_h265.c b/libavcodec/vaapi_encode_h265.c
index ade7d4a..e9133b4 100644
--- a/libavcodec/vaapi_encode_h265.c
+++ b/libavcodec/vaapi_encode_h265.c
@@ -1236,9 +1236,15 @@ static av_cold int vaapi_encode_h265_init(AVCodecContext
*avctx)
ctx->va_rt_format = VA_RT_FORMAT_YUV420;
break;
case FF_PROFILE_HEVC_MAIN_10:
+#ifdef VA_RT_FORMAT_YUV420_10BPP
ctx->va_profile = VAProfileHEVCMain10;
ctx->va_rt_format = VA_RT_FORMAT_YUV420_10BPP;
break;
+#else
+ av_log(avctx, AV_LOG_ERROR, "10-bit encoding is not "
+ "supported with this VAAPI version.\n");
+ return AVERROR(ENOSYS);
+#endif
default:
av_log(avctx, AV_LOG_ERROR, "Unknown H.265 profile %d.\n",
avctx->profile);
--
2.10.2
_______________________________________________
libav-devel mailing list
[email protected]
https://lists.libav.org/mailman/listinfo/libav-devel