From f59750641afdd6285bd977c450cc790bebb7693d Mon Sep 17 00:00:00 2001 From: Michael Niedermayer Date: Thu, 5 Jul 2012 04:37:12 +0200 Subject: swscale: x86: Add some forgotten 12-bit planar YUV cases Signed-off-by: Diego Biurrun --- libswscale/x86/scale.asm | 2 ++ libswscale/x86/swscale.c | 6 ++++-- 2 files changed, 6 insertions(+), 2 deletions(-) (limited to 'libswscale') diff --git a/libswscale/x86/scale.asm b/libswscale/x86/scale.asm index a4c7e1c00b..982b432047 100644 --- a/libswscale/x86/scale.asm +++ b/libswscale/x86/scale.asm @@ -407,11 +407,13 @@ SCALE_FUNC %1, %2, X, X8, 7, %3 SCALE_FUNCS 8, 15, %1 SCALE_FUNCS 9, 15, %2 SCALE_FUNCS 10, 15, %2 +SCALE_FUNCS 12, 15, %2 SCALE_FUNCS 16, 15, %3 %endif ; !sse4 SCALE_FUNCS 8, 19, %1 SCALE_FUNCS 9, 19, %2 SCALE_FUNCS 10, 19, %2 +SCALE_FUNCS 12, 19, %2 SCALE_FUNCS 16, 19, %3 %endmacro diff --git a/libswscale/x86/swscale.c b/libswscale/x86/swscale.c index 326f824d3e..5922d3a3d0 100644 --- a/libswscale/x86/swscale.c +++ b/libswscale/x86/swscale.c @@ -215,10 +215,12 @@ void ff_hscale ## from_bpc ## to ## to_bpc ## _ ## filter_n ## _ ## opt( \ SCALE_FUNC(filter_n, 8, 15, opt); \ SCALE_FUNC(filter_n, 9, 15, opt); \ SCALE_FUNC(filter_n, 10, 15, opt); \ + SCALE_FUNC(filter_n, 12, 15, opt); \ SCALE_FUNC(filter_n, 16, 15, opt); \ SCALE_FUNC(filter_n, 8, 19, opt); \ SCALE_FUNC(filter_n, 9, 19, opt); \ SCALE_FUNC(filter_n, 10, 19, opt); \ + SCALE_FUNC(filter_n, 12, 19, opt); \ SCALE_FUNC(filter_n, 16, 19, opt) #define SCALE_FUNCS_MMX(opt) \ @@ -325,8 +327,8 @@ av_cold void ff_sws_init_swscale_x86(SwsContext *c) hscalefn = c->dstBpc <= 15 ? ff_hscale10to15_ ## filtersize ## _ ## opt2 : \ ff_hscale10to19_ ## filtersize ## _ ## opt1; \ } else if (c->srcBpc == 12) { \ - hscalefn = c->dstBpc <= 15 ? ff_hscale16to15_ ## filtersize ## _ ## opt2 : \ - ff_hscale16to19_ ## filtersize ## _ ## opt1; \ + hscalefn = c->dstBpc <= 15 ? ff_hscale12to15_ ## filtersize ## _ ## opt2 : \ + ff_hscale12to19_ ## filtersize ## _ ## opt1; \ } else if (c->srcBpc == 16) { \ hscalefn = c->dstBpc <= 15 ? ff_hscale16to15_ ## filtersize ## _ ## opt2 : \ ff_hscale16to19_ ## filtersize ## _ ## opt1; \ -- cgit v1.2.3