This is an automated email from the git hooks/post-receive script.
Git pushed a commit to branch master
in repository ffmpeg.
The following commit(s) were added to refs/heads/master by this push:
new ebb6f28da5 vulkan_decode: don't fail COINCIDE-only profiles without
separate refs
ebb6f28da5 is described below
commit ebb6f28da523aad04a670ac46f2d766d19eef129
Author: Tymur Boiko <[email protected]>
AuthorDate: Mon Sep 14 21:31:55 2026 +0300
Commit: Lynne <[email protected]>
CommitDate: Sun Sep 20 11:43:58 2026 +0000
vulkan_decode: don't fail COINCIDE-only profiles without separate refs
d06e381534 made the COINCIDE-only sanity check actually fire. It treated
DPB_AND_OUTPUT_COINCIDE without SEPARATE_REFERENCE_IMAGES as a buggy
driver and returned AVERROR_EXTERNAL.
That combination is legal. chapters/video/decode.adoc requires only one
of COINCIDE or DISTINCT. chapters/videocoding.adoc: without
SEPARATE_REFERENCE_IMAGES all DPB slots must be layers of one VkImage
(VUID-VkVideoBeginCodingInfoKHR-flags-07244).
NVIDIA Ampere (NVDEC 5.0, e.g. RTX 3090) reports exactly this for every
decode profile. Keep the check as a verbose note and continue with the
existing coincide path (output images as DPB slots).
Signed-off-by: Tymur Boiko <[email protected]>
---
libavcodec/vulkan_decode.c | 7 +++----
1 file changed, 3 insertions(+), 4 deletions(-)
diff --git a/libavcodec/vulkan_decode.c b/libavcodec/vulkan_decode.c
index 961a62fbb7..34ca4dc565 100644
--- a/libavcodec/vulkan_decode.c
+++ b/libavcodec/vulkan_decode.c
@@ -1014,10 +1014,9 @@ static int vulkan_decode_get_profile(AVCodecContext
*avctx, AVBufferRef *frames_
VK_VIDEO_DECODE_CAPABILITY_DPB_AND_OUTPUT_DISTINCT_BIT_KHR)) ==
VK_VIDEO_DECODE_CAPABILITY_DPB_AND_OUTPUT_COINCIDE_BIT_KHR &&
!(caps->flags &
VK_VIDEO_CAPABILITY_SEPARATE_REFERENCE_IMAGES_BIT_KHR)) {
- av_log(avctx, AV_LOG_ERROR, "Cannot initialize Vulkan decoding
session, buggy driver: "
- "VK_VIDEO_DECODE_CAPABILITY_DPB_AND_OUTPUT_COINCIDE_BIT_KHR set
"
- "but VK_VIDEO_CAPABILITY_SEPARATE_REFERENCE_IMAGES_BIT_KHR is
unset!\n");
- return AVERROR_EXTERNAL;
+ av_log(avctx, AV_LOG_VERBOSE,
+ "COINCIDE-only decode without SEPARATE_REFERENCE_IMAGES "
+ "(layered DPB capability); continuing\n");
}
dec->dedicated_dpb = !!(dec_caps->flags &
VK_VIDEO_DECODE_CAPABILITY_DPB_AND_OUTPUT_DISTINCT_BIT_KHR);
--
To stop receiving notification emails like this one, please contact
[email protected].
_______________________________________________
ffmpeg-cvslog mailing list -- [email protected]
To unsubscribe send an email to [email protected]