dilagurung / libyuv

Automatically exported from code.google.com/p/libyuv
BSD 3-Clause "New" or "Revised" License
0 stars 0 forks source link

yuv scaler - optimize 2/3 scale factor #255

Closed GoogleCodeExporter closed 9 years ago

GoogleCodeExporter commented 9 years ago
Scaling from 1080p to 720p is a 2/3 scale factor and not currently a fast path.

2/3 of 1080p
set LIBYUV_WIDTH=1280
set LIBYUV_HEIGHT=720
set LIBYUV_REPEAT=1000
out\release\libyuv_unittest --gtest_filter=*.ScaleFrom1920*
[ RUN      ] libyuvTest.ScaleFrom1920x1080_Box
filter 2 -     3994 us C -     1937 us OPT

3/4 of 1080p
set LIBYUV_WIDTH=1440
set LIBYUV_HEIGHT=810
set LIBYUV_REPEAT=1000
[ RUN      ] libyuvTest.ScaleFrom1920x1080_Box
filter 2 -     3989 us C -      284 us OPT

Original issue reported on code.google.com by fbarch...@google.com on 8 Aug 2013 at 5:21

GoogleCodeExporter commented 9 years ago
Improved 2/3 in r859
[ RUN      ] libyuvTest.ScaleFrom1920x1080_Box
filter 2 -     4836 us C -     1470 us OPT

Original comment by fbarch...@google.com on 19 Nov 2013 at 6:17

GoogleCodeExporter commented 9 years ago
set LIBYUV_WIDTH=1280
set LIBYUV_HEIGHT=720
set LIBYUV_REPEAT=1000
out\release\libyuv_unittest --gtest_filter=*.ScaleFrom1920* | grep OPT

filter 0 -     1274 us C -      735 us OPT
filter 1 -     2086 us C -     1188 us OPT
filter 2 -     3988 us C -     1298 us OPT
filter 3 -     3882 us C -     1299 us OPT

Original comment by fbarch...@google.com on 9 Dec 2013 at 10:15

GoogleCodeExporter commented 9 years ago
Deferring until there is higher demand.

Original comment by fbarch...@google.com on 1 Apr 2014 at 3:46