PR #22534 opened by Steven Xiao (younengxiao) URL: https://code.ffmpeg.org/FFmpeg/FFmpeg/pulls/22534 Patch URL: https://code.ffmpeg.org/FFmpeg/FFmpeg/pulls/22534.patch
Add support for CUDA and ROCm (AMD GPU) devices in the LibTorch DNN backend. This works for both NVIDIA CUDA and AMD ROCm, as PyTorch exposes ROCm through the CUDA-compatible API. Usage: ./ffmpeg -i input.mp4 -vf scale=224:224,format=rgb24,dnn_processing=dnn_backend=torch:model=sr_model_torch.pt:device=cuda output.mp4 >From acb916f0b6aa46f657971c2c7d94f54757caf8b6 Mon Sep 17 00:00:00 2001 From: stevxiao <[email protected]> Date: Thu, 5 Feb 2026 11:07:10 -0500 Subject: [PATCH] avfilter/dnn_backend_torch: add CUDA/ROCm device support Add support for CUDA and ROCm (AMD GPU) devices in the LibTorch DNN backend. This works for both NVIDIA CUDA and AMD ROCm, as PyTorch exposes ROCm through the CUDA-compatible API. Usage: ./ffmpeg -i input.mp4 -vf scale=224:224,format=rgb24,dnn_processing=dnn_backend=torch:model=sr_model_torch.pt:device=cuda output.mp4 Signed-off-by: younengxiao <[email protected]> --- libavfilter/dnn/dnn_backend_torch.cpp | 7 +++++++ 1 file changed, 7 insertions(+) diff --git a/libavfilter/dnn/dnn_backend_torch.cpp b/libavfilter/dnn/dnn_backend_torch.cpp index 99f55165f2..24a202f493 100644 --- a/libavfilter/dnn/dnn_backend_torch.cpp +++ b/libavfilter/dnn/dnn_backend_torch.cpp @@ -439,6 +439,13 @@ static DNNModel *dnn_load_model_th(DnnContext *ctx, DNNFunctionType func_type, A #else at::detail::getXPUHooks().initXPU(); #endif + } else if (device.is_cuda()) { + // CUDA device - works for both NVIDIA CUDA and AMD ROCm (which uses CUDA-compatible API) + if (!torch::cuda::is_available()) { + av_log(ctx, AV_LOG_ERROR, "CUDA/ROCm is not available\n"); + goto fail; + } + av_log(ctx, AV_LOG_INFO, "Using CUDA/ROCm device: %s\n", device_name); } else if (!device.is_cpu()) { av_log(ctx, AV_LOG_ERROR, "Not supported device:\"%s\"\n", device_name); goto fail; -- 2.52.0 _______________________________________________ ffmpeg-devel mailing list -- [email protected] To unsubscribe send an email to [email protected]
