MCPcopy Create free account
hub / github.com/FFmpeg/FFmpeg / vulkan_transfer_data_to

Function vulkan_transfer_data_to

libavutil/hwcontext_vulkan.c:4721–4744  ·  view source on GitHub ↗

Source from the content-addressed store, hash-verified

4719}
4720
4721static int vulkan_transfer_data_to(AVHWFramesContext *hwfc, AVFrame *dst,
4722 const AVFrame *src)
4723{
4724 av_unused VulkanDevicePriv *p = hwfc->device_ctx->hwctx;
4725
4726 switch (src->format) {
4727#if CONFIG_CUDA
4728 case AV_PIX_FMT_CUDA:
4729#ifdef _WIN32
4730 if ((p->vkctx.extensions & FF_VK_EXT_EXTERNAL_WIN32_MEMORY) &&
4731 (p->vkctx.extensions & FF_VK_EXT_EXTERNAL_WIN32_SEM))
4732#else
4733 if ((p->vkctx.extensions & FF_VK_EXT_EXTERNAL_FD_MEMORY) &&
4734 (p->vkctx.extensions & FF_VK_EXT_EXTERNAL_FD_SEM))
4735#endif
4736 return vulkan_transfer_data_from_cuda(hwfc, dst, src);
4737#endif
4738 default:
4739 if (src->hw_frames_ctx)
4740 return AVERROR(ENOSYS);
4741 else
4742 return vulkan_transfer_frame(hwfc, (AVFrame *)src, dst, 1);
4743 }
4744}
4745
4746#if CONFIG_CUDA
4747static int vulkan_transfer_data_to_cuda(AVHWFramesContext *hwfc, AVFrame *dst,

Callers

nothing calls this directly

Calls 2

vulkan_transfer_frameFunction · 0.85

Tested by

no test coverage detected