[FFmpeg-cvslog] avfilter/vf_convolution: use sqrtf as its faster

Paul B Mahol git at videolan.org
Thu Nov 15 20:14:56 EET 2018


ffmpeg | branch: master | Paul B Mahol <onemda at gmail.com> | Thu Nov 15 19:09:20 2018 +0100| [662120f2b27dd02dc3e512ad436c28b47b093432] | committer: Paul B Mahol

avfilter/vf_convolution: use sqrtf as its faster

> http://git.videolan.org/gitweb.cgi/ffmpeg.git/?a=commit;h=662120f2b27dd02dc3e512ad436c28b47b093432
---

 libavfilter/vf_convolution.c | 12 ++++++------
 1 file changed, 6 insertions(+), 6 deletions(-)

diff --git a/libavfilter/vf_convolution.c b/libavfilter/vf_convolution.c
index 421c169fd7..1305569c88 100644
--- a/libavfilter/vf_convolution.c
+++ b/libavfilter/vf_convolution.c
@@ -157,7 +157,7 @@ static void filter16_prewitt(uint8_t *dstp, int width,
         int sumb = AV_RN16A(&c[0][2 * x]) * -1 + AV_RN16A(&c[2][2 * x]) *  1 + AV_RN16A(&c[3][2 * x]) * -1 +
                    AV_RN16A(&c[5][2 * x]) *  1 + AV_RN16A(&c[6][2 * x]) * -1 + AV_RN16A(&c[8][2 * x]) *  1;
 
-        dst[x] = av_clip(sqrt(suma*suma + sumb*sumb) * scale + delta, 0, peak);
+        dst[x] = av_clip(sqrtf(suma*suma + sumb*sumb) * scale + delta, 0, peak);
     }
 }
 
@@ -173,7 +173,7 @@ static void filter16_roberts(uint8_t *dstp, int width,
         int suma = AV_RN16A(&c[0][2 * x]) *  1 + AV_RN16A(&c[1][2 * x]) * -1;
         int sumb = AV_RN16A(&c[4][2 * x]) *  1 + AV_RN16A(&c[3][2 * x]) * -1;
 
-        dst[x] = av_clip(sqrt(suma*suma + sumb*sumb) * scale + delta, 0, peak);
+        dst[x] = av_clip(sqrtf(suma*suma + sumb*sumb) * scale + delta, 0, peak);
     }
 }
 
@@ -191,7 +191,7 @@ static void filter16_sobel(uint8_t *dstp, int width,
         int sumb = AV_RN16A(&c[0][2 * x]) * -1 + AV_RN16A(&c[2][2 * x]) *  1 + AV_RN16A(&c[3][2 * x]) * -2 +
                    AV_RN16A(&c[5][2 * x]) *  2 + AV_RN16A(&c[6][2 * x]) * -1 + AV_RN16A(&c[8][2 * x]) *  1;
 
-        dst[x] = av_clip(sqrt(suma*suma + sumb*sumb) * scale + delta, 0, peak);
+        dst[x] = av_clip(sqrtf(suma*suma + sumb*sumb) * scale + delta, 0, peak);
     }
 }
 
@@ -211,7 +211,7 @@ static void filter_prewitt(uint8_t *dst, int width,
         int sumb = c0[x] * -1 + c2[x] *  1 + c3[x] * -1 +
                    c5[x] *  1 + c6[x] * -1 + c8[x] *  1;
 
-        dst[x] = av_clip_uint8(sqrt(suma*suma + sumb*sumb) * scale + delta);
+        dst[x] = av_clip_uint8(sqrtf(suma*suma + sumb*sumb) * scale + delta);
     }
 }
 
@@ -226,7 +226,7 @@ static void filter_roberts(uint8_t *dst, int width,
         int suma = c[0][x] *  1 + c[1][x] * -1;
         int sumb = c[4][x] *  1 + c[3][x] * -1;
 
-        dst[x] = av_clip_uint8(sqrt(suma*suma + sumb*sumb) * scale + delta);
+        dst[x] = av_clip_uint8(sqrtf(suma*suma + sumb*sumb) * scale + delta);
     }
 }
 
@@ -246,7 +246,7 @@ static void filter_sobel(uint8_t *dst, int width,
         int sumb = c0[x] * -1 + c2[x] *  1 + c3[x] * -2 +
                    c5[x] *  2 + c6[x] * -1 + c8[x] *  1;
 
-        dst[x] = av_clip_uint8(sqrt(suma*suma + sumb*sumb) * scale + delta);
+        dst[x] = av_clip_uint8(sqrtf(suma*suma + sumb*sumb) * scale + delta);
     }
 }
 



More information about the ffmpeg-cvslog mailing list