avcodec/cavsdsp: use av_clip_uint8() for idct
[ffmpeg.git] / libavfilter / vf_curves.c
index 153ca45..69ec108 100644 (file)
@@ -211,7 +211,7 @@ static int get_nb_points(const struct keypoint *d)
 
 #define CLIP(v) (nbits == 8 ? av_clip_uint8(v) : av_clip_uint16(v))
 
-static inline int interpolate(AVFilterContext *ctx, uint16_t *y,
+static inline int interpolate(void *log_ctx, uint16_t *y,
                               const struct keypoint *points, int nbits)
 {
     int i, ret = 0;
@@ -315,7 +315,7 @@ static inline int interpolate(AVFilterContext *ctx, uint16_t *y,
             const double xx = (x - x_start) * 1./scale;
             const double yy = a + b*xx + c*xx*xx + d*xx*xx*xx;
             y[x] = CLIP(yy * scale);
-            av_log(ctx, AV_LOG_DEBUG, "f(%f)=%f -> y[%d]=%d\n", xx, yy, x, y[x]);
+            av_log(log_ctx, AV_LOG_DEBUG, "f(%f)=%f -> y[%d]=%d\n", xx, yy, x, y[x]);
         }
 
         point = point->next;
@@ -334,10 +334,10 @@ end:
 }
 
 #define DECLARE_INTERPOLATE_FUNC(nbits)                                     \
-static const int interpolate##nbits(AVFilterContext *ctx, uint16_t *y,      \
-                                    const struct keypoint *points)          \
+static int interpolate##nbits(void *log_ctx, uint16_t *y,                   \
+                              const struct keypoint *points)                \
 {                                                                           \
-    return interpolate(ctx, y, points, nbits);                              \
+    return interpolate(log_ctx, y, points, nbits);                          \
 }
 
 DECLARE_INTERPOLATE_FUNC(8)
@@ -460,7 +460,7 @@ static int dump_curves(const char *fname, uint16_t *graph[NB_COMP + 1],
     return 0;
 }
 
-static av_cold int init(AVFilterContext *ctx)
+static av_cold int curves_init(AVFilterContext *ctx)
 {
     int i, ret;
     CurvesContext *curves = ctx->priv;
@@ -609,20 +609,20 @@ static int filter_slice(AVFilterContext *ctx, void *arg, int jobnr, int nb_jobs)
             }
         }
     } else {
-    uint8_t       *dst = out->data[0] + slice_start * out->linesize[0];
-    const uint8_t *src =  in->data[0] + slice_start *  in->linesize[0];
-
-    for (y = slice_start; y < slice_end; y++) {
-        for (x = 0; x < in->width * step; x += step) {
-            dst[x + r] = curves->graph[R][src[x + r]];
-            dst[x + g] = curves->graph[G][src[x + g]];
-            dst[x + b] = curves->graph[B][src[x + b]];
-            if (!direct && step == 4)
-                dst[x + a] = src[x + a];
+        uint8_t       *dst = out->data[0] + slice_start * out->linesize[0];
+        const uint8_t *src =  in->data[0] + slice_start *  in->linesize[0];
+
+        for (y = slice_start; y < slice_end; y++) {
+            for (x = 0; x < in->width * step; x += step) {
+                dst[x + r] = curves->graph[R][src[x + r]];
+                dst[x + g] = curves->graph[G][src[x + g]];
+                dst[x + b] = curves->graph[B][src[x + b]];
+                if (!direct && step == 4)
+                    dst[x + a] = src[x + a];
+            }
+            dst += out->linesize[0];
+            src += in ->linesize[0];
         }
-        dst += out->linesize[0];
-        src += in ->linesize[0];
-    }
     }
     return 0;
 }
@@ -647,7 +647,7 @@ static int filter_frame(AVFilterLink *inlink, AVFrame *in)
 
     td.in  = in;
     td.out = out;
-    ctx->internal->execute(ctx, filter_slice, &td, NULL, FFMIN(outlink->h, ctx->graph->nb_threads));
+    ctx->internal->execute(ctx, filter_slice, &td, NULL, FFMIN(outlink->h, ff_filter_get_nb_threads(ctx)));
 
     if (out != in)
         av_frame_free(&in);
@@ -655,7 +655,7 @@ static int filter_frame(AVFilterLink *inlink, AVFrame *in)
     return ff_filter_frame(outlink, out);
 }
 
-static av_cold void uninit(AVFilterContext *ctx)
+static av_cold void curves_uninit(AVFilterContext *ctx)
 {
     int i;
     CurvesContext *curves = ctx->priv;
@@ -686,8 +686,8 @@ AVFilter ff_vf_curves = {
     .name          = "curves",
     .description   = NULL_IF_CONFIG_SMALL("Adjust components curves."),
     .priv_size     = sizeof(CurvesContext),
-    .init          = init,
-    .uninit        = uninit,
+    .init          = curves_init,
+    .uninit        = curves_uninit,
     .query_formats = query_formats,
     .inputs        = curves_inputs,
     .outputs       = curves_outputs,