[vlc-devel] [PATCH v1 05/33] video_filter: use helper function to filter a picture

Steve Lhomme robux4 at ycbcr.xyz
Fri Sep 25 16:46:41 CEST 2020


If the underlying filter outputs more than one picture it will assert. In the
real world, all these converters only output one picture per input, just like
the containers they are called from.
---
 modules/hw/d3d11/d3d11_surface.c  | 2 +-
 modules/hw/d3d9/dxa9.c            | 2 +-
 modules/video_filter/ci_filters.m | 4 ++--
 3 files changed, 4 insertions(+), 4 deletions(-)

diff --git a/modules/hw/d3d11/d3d11_surface.c b/modules/hw/d3d11/d3d11_surface.c
index d6bc9ba0267..541095bc9b6 100644
--- a/modules/hw/d3d11/d3d11_surface.c
+++ b/modules/hw/d3d11/d3d11_surface.c
@@ -566,7 +566,7 @@ static void NV12_D3D11(filter_t *p_filter, picture_t *src, picture_t *dst)
         sys->staging_pic->context = NULL; // some CPU filters won't like the mix of CPU/GPU
 
         picture_Hold( src );
-        sys->filter->pf_video_filter(sys->filter, src);
+        filter_FilterSingle(sys->filter, src);
 
         sys->staging_pic->context = staging_pic_ctx;
         ID3D11DeviceContext_Unmap(sys->d3d_dev->d3dcontext, p_staging_sys->resource[KNOWN_DXGI_INDEX], 0);
diff --git a/modules/hw/d3d9/dxa9.c b/modules/hw/d3d9/dxa9.c
index 563818dc708..e33406a9942 100644
--- a/modules/hw/d3d9/dxa9.c
+++ b/modules/hw/d3d9/dxa9.c
@@ -258,7 +258,7 @@ static void YV12_D3D9(filter_t *p_filter, picture_t *src, picture_t *dst)
 
         picture_Hold( src );
 
-        sys->filter->pf_video_filter(sys->filter, src);
+        filter_FilterSingle(sys->filter, src);
 
         sys->staging->context = staging_pic_ctx;
 
diff --git a/modules/video_filter/ci_filters.m b/modules/video_filter/ci_filters.m
index 154fc44012c..e53395826d5 100644
--- a/modules/video_filter/ci_filters.m
+++ b/modules/video_filter/ci_filters.m
@@ -376,7 +376,7 @@ Filter(filter_t *filter, picture_t *src)
 
     if (ctx->src_converter)
     {
-        src = ctx->dst_converter->pf_video_filter(ctx->src_converter, src);
+        src = filter_FilterSingle(ctx->src_converter, src);
         if (!src)
             return NULL;
     }
@@ -416,7 +416,7 @@ Filter(filter_t *filter, picture_t *src)
 
     if (ctx->dst_converter)
     {
-        dst = ctx->dst_converter->pf_video_filter(ctx->dst_converter, dst);
+        dst = filter_FilterSingle(ctx->dst_converter, dst);
         if (!dst)
             return NULL;
     }
-- 
2.26.2



More information about the vlc-devel mailing list