aboutsummaryrefslogtreecommitdiff
path: root/include/libyuv/planar_functions.h
diff options
context:
space:
mode:
authorFrank Barchard <fbarchard@google.com>2019-12-08 20:23:10 -0800
committerCommit Bot <commit-bot@chromium.org>2019-12-09 04:45:59 +0000
commit6e6f81b8031a9d78d97c574578a0fc0651c52a1a (patch)
tree51c5f9e69f2487cbc6c6b5541c66e51e810bdede /include/libyuv/planar_functions.h
parentd82f4baf5fcc19f21b5decd7c4af63f120653e0b (diff)
downloadlibyuv-6e6f81b8031a9d78d97c574578a0fc0651c52a1a.tar.gz
Floating point Gaussian kernels
On SkylakeX for 720p TestGaussPlane_F32 (657 ms) On Pixel3 TestGaussPlane_F32 (1787 ms) Bug: libyuv:852, b/145611468 Change-Id: I9859af1b9381621067992305727da285f82bdded Reviewed-on: https://chromium-review.googlesource.com/c/libyuv/libyuv/+/1949667 Commit-Queue: Frank Barchard <fbarchard@chromium.org> Reviewed-by: Marat Dukhan <maratek@google.com>
Diffstat (limited to 'include/libyuv/planar_functions.h')
-rw-r--r--include/libyuv/planar_functions.h13
1 files changed, 13 insertions, 0 deletions
diff --git a/include/libyuv/planar_functions.h b/include/libyuv/planar_functions.h
index 5299fe2c..57395262 100644
--- a/include/libyuv/planar_functions.h
+++ b/include/libyuv/planar_functions.h
@@ -743,6 +743,19 @@ int ARGBBlur(const uint8_t* src_argb,
int height,
int radius);
+// Gaussian 5x5 blur a float plane.
+// Coefficients of 1, 4, 6, 4, 1.
+// Each destination pixel is a blur of the 5x5
+// pixels from the source.
+// Source edges are clamped.
+LIBYUV_API
+int GaussPlane_F32(const float* src,
+ int src_stride,
+ float* dst,
+ int dst_stride,
+ int width,
+ int height);
+
// Multiply ARGB image by ARGB value.
LIBYUV_API
int ARGBShade(const uint8_t* src_argb,