On Tue, 09 Mar 2021 22:53:18 +0100 Lynne <d...@lynne.ee> wrote: > Sorry, as we discussed on IRC the Vulkan hwcontext should be > improved first and this filter should be kept as a pure hardware > filter.
I changed my mind on this because: - I think it's reasonably self-contained as is, and actually simpler to implement this way. - There's no duplication of code within this patch. - Sharing the VkImages directly is simply not a good approach. It creates an unnecessary API hassle (as demonstrated by the multitude of solved and unsolved issues surrounding device negotiation, synchronization, etc.) - Therefore, it's better to share using an agreed-upon mechanism like a shared memory object exported/imported using the Vulkan API. - A good API for this already exists (dmabufs). - You can already derive a drm device from a vulkan device and export vulkan hwframes as drmprime frames. I plan on adding support for drmprime frames to this filter, which I think is the cleaner way to avoid the upload/download. But I wanted to get feedback on the current version, since it's *functionally* complete as-is. If you're worried about dmabufs being a Linux-only API, I would still rather see an approach based on Vulkan memory object imports/exports rather than attempting to share and synchronize the VkImages directly. Even just the fact that we can't each enable extensions/features we want enabled independently is a reason that trying to share a single vulkan device is a bad idea. Right now the result of that is that vf_libplacebo atop hwcontext_vulkan would simply be missing out on features and performance, compared to this version. _______________________________________________ ffmpeg-devel mailing list ffmpeg-devel@ffmpeg.org https://ffmpeg.org/mailman/listinfo/ffmpeg-devel To unsubscribe, visit link above, or email ffmpeg-devel-requ...@ffmpeg.org with subject "unsubscribe".