Change #286609
| Category | ffmpeg |
| Changed by | Tymur Boiko <tboiko@nvidia.com> |
| Changed at | Sat 17 Oct 2026 04:06:11 |
| Repository | https://git.ffmpeg.org/ffmpeg.git |
| Project | ffmpeg |
| Branch | master |
| Revision | dc54ec7a0dccb411313361ffd702e0e389e79748 |
Comments
lavu/vulkan: wait for the frame timeline before the export layout transition switch_layout() submits vkCmdPipelineBarrier2 on the compute queue. The image was last written by vkCmdDecodeVideoKHR on the video queue, which signals the frame timeline at VK_PIPELINE_STAGE_2_VIDEO_DECODE_BIT_KHR. The layout transition is a write, and the cross-queue order is that semaphore wait. VK_PIPELINE_STAGE_2_NONE names no stage, so the barrier was outside the wait and raced VK_ACCESS_2_VIDEO_DECODE_WRITE_BIT_KHR (SYNC-HAZARD-WRITE-AFTER-WRITE). Wait at VK_PIPELINE_STAGE_2_ALL_COMMANDS_BIT so every command in the submission, including the transition, happens after the signal.
Changed files
- libavutil/hwcontext_vulkan.c