53 #define OFFSET(x) offsetof(HistogramContext, x)
54 #define FLAGS AV_OPT_FLAG_FILTERING_PARAM|AV_OPT_FLAG_VIDEO_PARAM
156 outlink->
h = outlink->
w = 256;
185 for (k = 0; k < h->
ncomp; k++)
186 for (i = 0; i < outlink->
h; i++)
191 for (k = 0; k < h->
ncomp; k++) {
194 unsigned max_hval = 0;
198 for (j = 0; j < in->
width; j++)
202 for (i = 0; i < 256; i++)
204 max_hval_log =
log2(max_hval + 1);
206 for (i = 0; i < outlink->
w; i++) {
216 for (l = 0; l < h->
ncomp; l++)
226 memset(h->
histogram, 0, 256 *
sizeof(
unsigned));
231 for (k = 0; k < h->
ncomp; k++) {
233 for (i = 0; i < inlink->
w; i++) {
234 for (j = 0; j < inlink->
h; j++) {
245 for (k = 0; k < h->
ncomp; k++) {
247 for (i = 0; i < inlink->
h; i++) {
250 for (j = 0; j < inlink->
w; j++) {
251 int pos = src[j] +
offset;
252 unsigned value = dst[pos];
261 for (i = 0; i < inlink->
h; i++) {
264 for (j = 0; j < inlink->
w; j++) {
266 if (out->
data[0][pos] < 255)
270 for (i = 0; i < 256; i++) {
272 for (j = 0; j < 256; j++) {
281 for (i = 0; i < inlink->
h; i++) {
284 for (j = 0; j < inlink->
w; j++) {
285 int u = in->
data[1][iw1 + j];
286 int v = in->
data[2][iw2 + j];
288 if (!out->
data[0][pos])
290 out->
data[1][pos] =
u;
291 out->
data[2][pos] =
v;
329 .priv_class = &histogram_class,