diff mbox series

[FFmpeg-devel] avfilter/vf_yadif_cuda: remove unnecessary private struct fields

Message ID 20230615030436.358664-1-philipl@overt.org
State Accepted
Commit ecc3f158e130481a1e98d99e023d304c5796b2a7
Headers show
Series [FFmpeg-devel] avfilter/vf_yadif_cuda: remove unnecessary private struct fields | expand

Checks

Context Check Description
yinshiyou/make_loongarch64 success Make finished
yinshiyou/make_fate_loongarch64 success Make fate finished
andriy/make_x86 success Make finished
andriy/make_fate_x86 success Make fate finished

Commit Message

Philip Langdale June 15, 2023, 3:04 a.m. UTC
I'm not sure why I originally did this, but there's no good reason to
put pointers to the cuda context and stream in the priv struct. They
are directly available in the device context that is already being
stored there.

Signed-off-by: Philip Langdale <philipl@overt.org>
---
 libavfilter/vf_yadif_cuda.c | 12 ++++--------
 1 file changed, 4 insertions(+), 8 deletions(-)

Comments

Philip Langdale June 15, 2023, 7:35 p.m. UTC | #1
On Wed, 14 Jun 2023 20:04:35 -0700
Philip Langdale <philipl@overt.org> wrote:

> I'm not sure why I originally did this, but there's no good reason to
> put pointers to the cuda context and stream in the priv struct. They
> are directly available in the device context that is already being
> stored there.
> 
> Signed-off-by: Philip Langdale <philipl@overt.org>

pushed.

--phil
diff mbox series

Patch

diff --git a/libavfilter/vf_yadif_cuda.c b/libavfilter/vf_yadif_cuda.c
index b5ff84e11a..d777757e65 100644
--- a/libavfilter/vf_yadif_cuda.c
+++ b/libavfilter/vf_yadif_cuda.c
@@ -38,8 +38,6 @@  typedef struct DeintCUDAContext {
     AVBufferRef         *input_frames_ref;
     AVHWFramesContext   *input_frames;
 
-    CUcontext   cu_ctx;
-    CUstream    stream;
     CUmodule    cu_module;
     CUfunction  cu_func_uchar;
     CUfunction  cu_func_uchar2;
@@ -109,7 +107,7 @@  static CUresult call_kernel(AVFilterContext *ctx, CUfunction func,
     ret = CHECK_CU(cu->cuLaunchKernel(func,
                                       DIV_UP(dst_width, BLOCKX), DIV_UP(dst_height, BLOCKY), 1,
                                       BLOCKX, BLOCKY, 1,
-                                      0, s->stream, args, NULL));
+                                      0, s->hwctx->stream, args, NULL));
 
 exit:
     if (tex_prev)
@@ -131,7 +129,7 @@  static void filter(AVFilterContext *ctx, AVFrame *dst,
     CUcontext dummy;
     int i, ret;
 
-    ret = CHECK_CU(cu->cuCtxPushCurrent(s->cu_ctx));
+    ret = CHECK_CU(cu->cuCtxPushCurrent(s->hwctx->cuda_ctx));
     if (ret < 0)
         return;
 
@@ -197,7 +195,7 @@  static av_cold void deint_cuda_uninit(AVFilterContext *ctx)
 
     if (s->hwctx && s->cu_module) {
         CudaFunctions *cu = s->hwctx->internal->cuda_dl;
-        CHECK_CU(cu->cuCtxPushCurrent(s->cu_ctx));
+        CHECK_CU(cu->cuCtxPushCurrent(s->hwctx->cuda_ctx));
         CHECK_CU(cu->cuModuleUnload(s->cu_module));
         CHECK_CU(cu->cuCtxPopCurrent(&dummy));
     }
@@ -253,8 +251,6 @@  static int config_output(AVFilterLink *link)
         return AVERROR(ENOMEM);
     }
     s->hwctx = ((AVHWDeviceContext*)s->device_ref->data)->hwctx;
-    s->cu_ctx = s->hwctx->cuda_ctx;
-    s->stream = s->hwctx->stream;
     cu = s->hwctx->internal->cuda_dl;
 
     link->hw_frames_ctx = av_hwframe_ctx_alloc(s->device_ref);
@@ -310,7 +306,7 @@  static int config_output(AVFilterLink *link)
     y->csp = av_pix_fmt_desc_get(output_frames->sw_format);
     y->filter = filter;
 
-    ret = CHECK_CU(cu->cuCtxPushCurrent(s->cu_ctx));
+    ret = CHECK_CU(cu->cuCtxPushCurrent(s->hwctx->cuda_ctx));
     if (ret < 0)
         goto exit;