Lines Matching refs:boxblur
24 * Apply a boxblur filter to the input video.
79 BoxBlurContext *boxblur = ctx->priv;
89 boxblur->luma_radius_expr, &boxblur->luma_param .power,
90 boxblur->chroma_radius_expr, &boxblur->chroma_param.power,
91 boxblur->alpha_radius_expr, &boxblur->alpha_param .power);
100 boxblur->chroma_param.power = boxblur->luma_param.power;
101 av_strlcpy(boxblur->chroma_radius_expr, boxblur->luma_radius_expr,
102 sizeof(boxblur->chroma_radius_expr));
105 boxblur->alpha_param.power = boxblur->luma_param.power;
106 av_strlcpy(boxblur->alpha_radius_expr, boxblur->luma_radius_expr,
107 sizeof(boxblur->alpha_radius_expr));
115 BoxBlurContext *boxblur = ctx->priv;
117 av_freep(&boxblur->temp[0]);
118 av_freep(&boxblur->temp[1]);
140 BoxBlurContext *boxblur = ctx->priv;
147 av_freep(&boxblur->temp[0]);
148 av_freep(&boxblur->temp[1]);
149 if (!(boxblur->temp[0] = av_malloc(FFMAX(w, h))))
151 if (!(boxblur->temp[1] = av_malloc(FFMAX(w, h)))) {
152 av_freep(&boxblur->temp[0]);
156 boxblur->hsub = desc->log2_chroma_w;
157 boxblur->vsub = desc->log2_chroma_h;
161 var_values[VAR_CW] = cw = w>>boxblur->hsub;
162 var_values[VAR_CH] = ch = h>>boxblur->vsub;
163 var_values[VAR_HSUB] = 1<<boxblur->hsub;
164 var_values[VAR_VSUB] = 1<<boxblur->vsub;
167 expr = boxblur->comp##_radius_expr; \
170 boxblur->comp##_param.radius = res; \
185 boxblur->luma_param .radius, boxblur->luma_param .power,
186 boxblur->chroma_param.radius, boxblur->chroma_param.power,
187 boxblur->alpha_param .radius, boxblur->alpha_param .power,
191 if (boxblur->comp##_param.radius < 0 || \
192 2*boxblur->comp##_param.radius > FFMIN(w_, h_)) { \
195 boxblur->comp##_param.radius, FFMIN(w_, h_)/2); \
202 boxblur->radius[Y] = boxblur->luma_param.radius;
203 boxblur->radius[U] = boxblur->radius[V] = boxblur->chroma_param.radius;
204 boxblur->radius[A] = boxblur->alpha_param.radius;
206 boxblur->power[Y] = boxblur->luma_param.power;
207 boxblur->power[U] = boxblur->power[V] = boxblur->chroma_param.power;
208 boxblur->power[A] = boxblur->alpha_param.power;
216 /* Naive boxblur would sum source pixels from x-radius .. x+radius
309 BoxBlurContext *boxblur = ctx->priv;
314 int cw = inlink->w >> boxblur->hsub, ch = h0 >> boxblur->vsub;
321 w[plane], h[plane], boxblur->radius[plane], boxblur->power[plane],
322 boxblur->temp);
327 w[plane], h[plane], boxblur->radius[plane], boxblur->power[plane],
328 boxblur->temp);
334 .name = "boxblur",