Lines Matching refs:geq
68 AVFILTER_DEFINE_CLASS(geq);
73 GEQContext *geq = priv;
74 AVFrame *picref = geq->picref;
77 const int w = (plane == 1 || plane == 2) ? FF_CEIL_RSHIFT(picref->width, geq->hsub) : picref->width;
78 const int h = (plane == 1 || plane == 2) ? FF_CEIL_RSHIFT(picref->height, geq->vsub) : picref->height;
105 GEQContext *geq = ctx->priv;
108 if (!geq->expr_str[Y] && !geq->expr_str[G] && !geq->expr_str[B] && !geq->expr_str[R]) {
113 geq->is_rgb = !geq->expr_str[Y];
115 if ((geq->expr_str[Y] || geq->expr_str[U] || geq->expr_str[V]) && (geq->expr_str[G] || geq->expr_str[B] || geq->expr_str[R])) {
121 if (!geq->expr_str[U] && !geq->expr_str[V]) {
123 geq->expr_str[U] = av_strdup(geq->expr_str[Y]);
124 geq->expr_str[V] = av_strdup(geq->expr_str[Y]);
127 if (!geq->expr_str[U]) geq->expr_str[U] = av_strdup(geq->expr_str[V]);
128 if (!geq->expr_str[V]) geq->expr_str[V] = av_strdup(geq->expr_str[U]);
131 if (!geq->expr_str[A])
132 geq->expr_str[A] = av_strdup("255");
133 if (!geq->expr_str[G])
134 geq->expr_str[G] = av_strdup("g(X,Y)");
135 if (!geq->expr_str[B])
136 geq->expr_str[B] = av_strdup("b(X,Y)");
137 if (!geq->expr_str[R])
138 geq->expr_str[R] = av_strdup("r(X,Y)");
140 if (geq->is_rgb ?
141 (!geq->expr_str[G] || !geq->expr_str[B] || !geq->expr_str[R])
143 (!geq->expr_str[U] || !geq->expr_str[V] || !geq->expr_str[A])) {
152 const char *const *func2_names = geq->is_rgb ? func2_rgb_names : func2_yuv_names;
155 ret = av_expr_parse(&geq->e[plane], geq->expr_str[plane < 3 && geq->is_rgb ? plane+4 : plane], var_names,
167 GEQContext *geq = ctx->priv;
179 if (geq->is_rgb) {
188 GEQContext *geq = inlink->dst->priv;
191 geq->hsub = desc->log2_chroma_w;
192 geq->vsub = desc->log2_chroma_h;
193 geq->planes = desc->nb_components;
200 GEQContext *geq = inlink->dst->priv;
208 geq->picref = in;
216 for (plane = 0; plane < geq->planes && out->data[plane]; plane++) {
220 const int w = (plane == 1 || plane == 2) ? FF_CEIL_RSHIFT(inlink->w, geq->hsub) : inlink->w;
221 const int h = (plane == 1 || plane == 2) ? FF_CEIL_RSHIFT(inlink->h, geq->vsub) : inlink->h;
232 dst[x] = av_expr_eval(geq->e[plane], values, geq);
238 av_frame_free(&geq->picref);
245 GEQContext *geq = ctx->priv;
247 for (i = 0; i < FF_ARRAY_ELEMS(geq->e); i++)
248 av_expr_free(geq->e[i]);
270 .name = "geq",