diff options
author | Niklas Haas <[email protected]> | 2025-09-16 14:17:14 +0200 |
---|---|---|
committer | Niklas Haas <[email protected]> | 2025-09-21 11:02:41 +0000 |
commit | 60dbcc5321feace40d80550fde1465788b416df2 (patch) | |
tree | 91a187bab6cde1e367a9327af88849608fb158ee | |
parent | 56bb187ca915642358b8527029139628771837cb (diff) |
avfilter/vf_idetdsp: pass actual bit depth
More informative and IMO cleaner; some implementations may want to
differentiate by exact bit depth or support 32 bit down the line.
-rw-r--r-- | libavfilter/vf_idet.c | 4 | ||||
-rw-r--r-- | libavfilter/vf_idetdsp.c | 6 | ||||
-rw-r--r-- | libavfilter/vf_idetdsp.h | 4 | ||||
-rw-r--r-- | libavfilter/x86/vf_idetdsp_init.c | 4 |
4 files changed, 9 insertions, 9 deletions
diff --git a/libavfilter/vf_idet.c b/libavfilter/vf_idet.c index 0667001252..c217021ae9 100644 --- a/libavfilter/vf_idet.c +++ b/libavfilter/vf_idet.c @@ -299,7 +299,7 @@ static int filter_frame(AVFilterLink *link, AVFrame *picref) if (!idet->csp) { idet->csp = av_pix_fmt_desc_get(link->format); - ff_idet_dsp_init(&idet->dsp, idet->csp->comp[0].depth > 8); + ff_idet_dsp_init(&idet->dsp, idet->csp->comp[0].depth); } if (idet->analyze_interlaced_flag) { @@ -429,7 +429,7 @@ static av_cold int init(AVFilterContext *ctx) else idet->decay_coefficient = PRECISION; - ff_idet_dsp_init(&idet->dsp, 0); + ff_idet_dsp_init(&idet->dsp, 8); return 0; } diff --git a/libavfilter/vf_idetdsp.c b/libavfilter/vf_idetdsp.c index 60771677cc..b6a095bcd8 100644 --- a/libavfilter/vf_idetdsp.c +++ b/libavfilter/vf_idetdsp.c @@ -49,10 +49,10 @@ int ff_idet_filter_line_c_16bit(const uint16_t *a, const uint16_t *b, const uint return ret; } -void av_cold ff_idet_dsp_init(IDETDSPContext *dsp, int for_16b) +void av_cold ff_idet_dsp_init(IDETDSPContext *dsp, int depth) { - dsp->filter_line = for_16b ? (ff_idet_filter_func)ff_idet_filter_line_c_16bit : ff_idet_filter_line_c; + dsp->filter_line = depth > 8 ? (ff_idet_filter_func)ff_idet_filter_line_c_16bit : ff_idet_filter_line_c; #if ARCH_X86 - ff_idet_dsp_init_x86(dsp, for_16b); + ff_idet_dsp_init_x86(dsp, depth); #endif } diff --git a/libavfilter/vf_idetdsp.h b/libavfilter/vf_idetdsp.h index 9953d25ef2..d31caa7aa8 100644 --- a/libavfilter/vf_idetdsp.h +++ b/libavfilter/vf_idetdsp.h @@ -27,9 +27,9 @@ typedef struct IDETDSPContext { ff_idet_filter_func filter_line; } IDETDSPContext; -void ff_idet_dsp_init(IDETDSPContext *idet, int for_16b); +void ff_idet_dsp_init(IDETDSPContext *idet, int depth); -void ff_idet_dsp_init_x86(IDETDSPContext *idet, int for_16b); +void ff_idet_dsp_init_x86(IDETDSPContext *idet, int depth); /* main fall-back for left-over */ int ff_idet_filter_line_c(const uint8_t *a, const uint8_t *b, const uint8_t *c, int w); diff --git a/libavfilter/x86/vf_idetdsp_init.c b/libavfilter/x86/vf_idetdsp_init.c index b51985004d..710d97a6b4 100644 --- a/libavfilter/x86/vf_idetdsp_init.c +++ b/libavfilter/x86/vf_idetdsp_init.c @@ -60,13 +60,13 @@ FUNC_MAIN_DECL(sse2, 16) FUNC_MAIN_DECL_16bit(sse2, 8) #endif -av_cold void ff_idet_dsp_init_x86(IDETDSPContext *dsp, int for_16b) +av_cold void ff_idet_dsp_init_x86(IDETDSPContext *dsp, int depth) { #if HAVE_X86ASM const int cpu_flags = av_get_cpu_flags(); if (EXTERNAL_SSE2(cpu_flags)) { - dsp->filter_line = for_16b ? (ff_idet_filter_func)idet_filter_line_16bit_sse2 : idet_filter_line_sse2; + dsp->filter_line = depth > 8 ? (ff_idet_filter_func)idet_filter_line_16bit_sse2 : idet_filter_line_sse2; } #endif // HAVE_X86ASM } |