static void SimpleVFilter16(uint8_t* p, int stride, int thresh) { int i; for (i = 0; i < 16; ++i) { if (needs_filter(p + i, stride, thresh)) { do_filter2(p + i, stride); } } }
static void SimpleHFilter16(uint8_t* p, int stride, int thresh) { int i; const int thresh2 = 2 * thresh + 1; for (i = 0; i < 16; ++i) { if (needs_filter(p + i * stride, 1, thresh2)) { do_filter2(p + i * stride, 1); } } }
static inline void FilterLoop24(uint8_t* p, int hstride, int vstride, int size, int thresh, int ithresh, int hev_thresh) { while (size-- > 0) { if (needs_filter2(p, hstride, thresh, ithresh)) { if (hev(p, hstride, hev_thresh)) { do_filter2(p, hstride); } else { do_filter4(p, hstride); } } p += vstride; } }
static WEBP_INLINE void FilterLoop26(uint8_t* p, int hstride, int vstride, int size, int thresh, int ithresh, int hev_thresh) { while (size-- > 0) { if (needs_filter2(p, hstride, thresh, ithresh)) { if (hev(p, hstride, hev_thresh)) { do_filter2(p, hstride); } else { do_filter6(p, hstride); } } p += vstride; } }