89 int i, j, plane, step;
91 for (plane = 0; plane < 4 && in->
data[plane] && in->
linesize[plane]; plane++) {
94 const int start = (height * job ) / nb_jobs;
95 const int end = (height * (job+1)) / nb_jobs;
99 outrow = out->
data[plane] + start * out->
linesize[plane];
100 inrow = in ->
data[plane] + start * in->
linesize[plane] + (width - 1) * step;
101 for (i = start; i <
end; i++) {
104 for (j = 0; j <
width; j++)
105 outrow[j] = inrow[-j];
110 uint16_t *outrow16 = (uint16_t *)outrow;
111 uint16_t * inrow16 = (uint16_t *) inrow;
112 for (j = 0; j <
width; j++)
113 outrow16[j] = inrow16[-j];
121 for (j = 0; j <
width; j++, out += 3, in -= 3) {
130 uint32_t *outrow32 = (uint32_t *)outrow;
131 uint32_t * inrow32 = (uint32_t *) inrow;
132 for (j = 0; j <
width; j++)
133 outrow32[j] = inrow32[-j];
138 for (j = 0; j <
width; j++)
139 memcpy(outrow + j*step, inrow - j*step, step);
198 .
inputs = avfilter_vf_hflip_inputs,
199 .
outputs = avfilter_vf_hflip_outputs,