Lines Matching defs:histeq
82 AVFILTER_DEFINE_CLASS(histeq);
86 HisteqContext *histeq = ctx->priv;
90 histeq->strength, histeq->intensity, histeq->antibanding);
110 HisteqContext *histeq = ctx->priv;
113 histeq->bpp = av_get_bits_per_pixel(pix_desc) / 8;
114 ff_fill_rgba_map(histeq->rgba_map, inlink->format);
133 HisteqContext *histeq = ctx->priv;
135 int strength = histeq->strength * 1000;
136 int intensity = histeq->intensity * 1000;
154 memset(histeq->in_histogram, 0, sizeof(histeq->in_histogram));
158 for (x = 0; x < inlink->w * histeq->bpp; x += histeq->bpp) {
159 GET_RGB_VALUES(r, g, b, src, histeq->rgba_map);
161 dst[x + histeq->rgba_map[A]] = luma;
162 histeq->in_histogram[luma]++;
170 av_dlog(ctx, "in[%d]: %u\n", x, histeq->in_histogram[x]);
174 histeq->LUT[0] = histeq->in_histogram[0];
177 histeq->LUT[x] = histeq->LUT[x-1] + histeq->in_histogram[x];
181 histeq->LUT[x] = (histeq->LUT[x] * intensity) / (inlink->h * inlink->w);
186 histeq->LUT[x] = (strength * histeq->LUT[x]) / 255 +
190 memset(histeq->out_histogram, 0, sizeof(histeq->out_histogram));
195 for (x = 0; x < inlink->w * histeq->bpp; x += histeq->bpp) {
196 luma = dst[x + histeq->rgba_map[A]];
198 for (i = 0; i < histeq->bpp; ++i)
200 histeq->out_histogram[0]++;
202 lut = histeq->LUT[luma];
203 if (histeq->antibanding != HISTEQ_ANTIBANDING_NONE) {
205 lutlo = histeq->antibanding == HISTEQ_ANTIBANDING_WEAK ?
206 (histeq->LUT[luma] + histeq->LUT[luma - 1]) / 2 :
207 histeq->LUT[luma - 1];
212 luthi = (histeq->antibanding == HISTEQ_ANTIBANDING_WEAK) ?
213 (histeq->LUT[luma] + histeq->LUT[luma + 1]) / 2 :
214 histeq->LUT[luma + 1];
224 GET_RGB_VALUES(r, g, b, src, histeq->rgba_map);
234 dst[x + histeq->rgba_map[R]] = r;
235 dst[x + histeq->rgba_map[G]] = g;
236 dst[x + histeq->rgba_map[B]] = b;
238 histeq->out_histogram[oluma]++;
246 av_dlog(ctx, "out[%d]: %u\n", x, histeq->out_histogram[x]);
272 .name = "histeq",