Welcome to mirror list, hosted at ThFree Co, Russian Federation.

github.com/FFmpeg/FFmpeg.git - Unnamed repository; edit this file 'description' to name the repository.
summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorMark Thompson <sw@jkqxz.net>2018-03-24 16:56:16 +0300
committerMark Thompson <sw@jkqxz.net>2018-03-27 00:28:24 +0300
commit213839edffbf3982570e4e06ca713f8547dd336a (patch)
tree8345d7073a509f4c2889434d3f7c115457de63d8 /libavfilter/vf_avgblur_opencl.c
parent9f17875134754eef899aefd30500904635edec9e (diff)
vf_avgblur_opencl: Don't run kernel on pixels outside the image
The output frame size is larger than the image containing a subsampled plane - use the actual size of the image being written rather than the dimensions of the intended output frame. Reviewed-by: Dylan Fernando <dylanf123@gmail.com>
Diffstat (limited to 'libavfilter/vf_avgblur_opencl.c')
-rw-r--r--libavfilter/vf_avgblur_opencl.c12
1 files changed, 8 insertions, 4 deletions
diff --git a/libavfilter/vf_avgblur_opencl.c b/libavfilter/vf_avgblur_opencl.c
index 5ee66c0ba2..3a5b4a28ca 100644
--- a/libavfilter/vf_avgblur_opencl.c
+++ b/libavfilter/vf_avgblur_opencl.c
@@ -170,8 +170,10 @@ static int avgblur_opencl_filter_frame(AVFilterLink *inlink, AVFrame *input)
goto fail;
}
- global_work[0] = output->width;
- global_work[1] = output->height;
+ err = ff_opencl_filter_work_size_from_image(avctx, global_work,
+ intermediate, p, 0);
+ if (err < 0)
+ goto fail;
av_log(avctx, AV_LOG_DEBUG, "Run kernel on plane %d "
"(%"SIZE_SPECIFIER"x%"SIZE_SPECIFIER").\n",
@@ -206,8 +208,10 @@ static int avgblur_opencl_filter_frame(AVFilterLink *inlink, AVFrame *input)
goto fail;
}
- global_work[0] = output->width;
- global_work[1] = output->height;
+ err = ff_opencl_filter_work_size_from_image(avctx, global_work,
+ output, p, 0);
+ if (err < 0)
+ goto fail;
av_log(avctx, AV_LOG_DEBUG, "Run kernel on plane %d "
"(%"SIZE_SPECIFIER"x%"SIZE_SPECIFIER").\n",