Commit 4db84bac authored by Clément Bœsch's avatar Clément Bœsch

lavfi/opencl: replace SHIFTUP with FF_CEIL_RSHIFT.

parent f0250cc4
...@@ -30,9 +30,6 @@ ...@@ -30,9 +30,6 @@
#define MIN_MATRIX_SIZE 3 #define MIN_MATRIX_SIZE 3
#define MAX_MATRIX_SIZE 63 #define MAX_MATRIX_SIZE 63
/* right-shift and round-up */
#define SHIFTUP(x,shift) (-((-(x))>>(shift)))
#if CONFIG_OPENCL #if CONFIG_OPENCL
typedef struct { typedef struct {
......
...@@ -24,6 +24,7 @@ ...@@ -24,6 +24,7 @@
*/ */
#include "unsharp_opencl.h" #include "unsharp_opencl.h"
#include "libavutil/common.h"
#include "libavutil/opencl_internal.h" #include "libavutil/opencl_internal.h"
#define PLANE_NUM 3 #define PLANE_NUM 3
...@@ -152,8 +153,8 @@ int ff_opencl_apply_unsharp(AVFilterContext *ctx, AVFrame *in, AVFrame *out) ...@@ -152,8 +153,8 @@ int ff_opencl_apply_unsharp(AVFilterContext *ctx, AVFrame *in, AVFrame *out)
AVFilterLink *link = ctx->inputs[0]; AVFilterLink *link = ctx->inputs[0];
UnsharpContext *unsharp = ctx->priv; UnsharpContext *unsharp = ctx->priv;
cl_int status; cl_int status;
int cw = SHIFTUP(link->w, unsharp->hsub); int cw = FF_CEIL_RSHIFT(link->w, unsharp->hsub);
int ch = SHIFTUP(link->h, unsharp->vsub); int ch = FF_CEIL_RSHIFT(link->h, unsharp->vsub);
const size_t global_work_size = link->w * link->h + 2 * ch * cw; const size_t global_work_size = link->w * link->h + 2 * ch * cw;
FFOpenclParam opencl_param = {0}; FFOpenclParam opencl_param = {0};
...@@ -245,7 +246,7 @@ int ff_opencl_unsharp_process_inout_buf(AVFilterContext *ctx, AVFrame *in, AVFra ...@@ -245,7 +246,7 @@ int ff_opencl_unsharp_process_inout_buf(AVFilterContext *ctx, AVFrame *in, AVFra
int ret = 0; int ret = 0;
AVFilterLink *link = ctx->inputs[0]; AVFilterLink *link = ctx->inputs[0];
UnsharpContext *unsharp = ctx->priv; UnsharpContext *unsharp = ctx->priv;
int ch = SHIFTUP(link->h, unsharp->vsub); int ch = FF_CEIL_RSHIFT(link->h, unsharp->vsub);
if ((!unsharp->opencl_ctx.cl_inbuf) || (!unsharp->opencl_ctx.cl_outbuf)) { if ((!unsharp->opencl_ctx.cl_inbuf) || (!unsharp->opencl_ctx.cl_outbuf)) {
unsharp->opencl_ctx.in_plane_size[0] = (in->linesize[0] * in->height); unsharp->opencl_ctx.in_plane_size[0] = (in->linesize[0] * in->height);
......
...@@ -114,9 +114,9 @@ static int apply_unsharp_c(AVFilterContext *ctx, AVFrame *in, AVFrame *out) ...@@ -114,9 +114,9 @@ static int apply_unsharp_c(AVFilterContext *ctx, AVFrame *in, AVFrame *out)
int i, plane_w[3], plane_h[3]; int i, plane_w[3], plane_h[3];
UnsharpFilterParam *fp[3]; UnsharpFilterParam *fp[3];
plane_w[0] = inlink->w; plane_w[0] = inlink->w;
plane_w[1] = plane_w[2] = SHIFTUP(inlink->w, unsharp->hsub); plane_w[1] = plane_w[2] = FF_CEIL_RSHIFT(inlink->w, unsharp->hsub);
plane_h[0] = inlink->h; plane_h[0] = inlink->h;
plane_h[1] = plane_h[2] = SHIFTUP(inlink->h, unsharp->vsub); plane_h[1] = plane_h[2] = FF_CEIL_RSHIFT(inlink->h, unsharp->vsub);
fp[0] = &unsharp->luma; fp[0] = &unsharp->luma;
fp[1] = fp[2] = &unsharp->chroma; fp[1] = fp[2] = &unsharp->chroma;
for (i = 0; i < 3; i++) { for (i = 0; i < 3; i++) {
...@@ -207,7 +207,7 @@ static int config_props(AVFilterLink *link) ...@@ -207,7 +207,7 @@ static int config_props(AVFilterLink *link)
ret = init_filter_param(link->dst, &unsharp->luma, "luma", link->w); ret = init_filter_param(link->dst, &unsharp->luma, "luma", link->w);
if (ret < 0) if (ret < 0)
return ret; return ret;
ret = init_filter_param(link->dst, &unsharp->chroma, "chroma", SHIFTUP(link->w, unsharp->hsub)); ret = init_filter_param(link->dst, &unsharp->chroma, "chroma", FF_CEIL_RSHIFT(link->w, unsharp->hsub));
if (ret < 0) if (ret < 0)
return ret; return ret;
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment