---
libavfilter/convolution.h | 3 ++-
libavfilter/vf_convolution.c | 9 +++++----
2 files changed, 7 insertions(+), 5 deletions(-)
diff --git a/libavfilter/convolution.h b/libavfilter/convolution.h
index e44bfb5da8..ee7477ef89 100644
--- a/libavfilter/convolution.h
+++ b/libavfilter/convolution.h
@@ -34,13 +34,14 @@ typedef struct ConvolutionContext {
const AVClass *class;
char *matrix_str[4];
- float rdiv[4];
+ float user_rdiv[4];
float bias[4];
int mode[4];
float scale;
float delta;
int planes;
+ float rdiv[4];
int size[4];
int depth;
int max;
diff --git a/libavfilter/vf_convolution.c b/libavfilter/vf_convolution.c
index a00bb2b3c4..96c478d791 100644
--- a/libavfilter/vf_convolution.c
+++ b/libavfilter/vf_convolution.c
@@ -40,10 +40,10 @@ static const AVOption convolution_options[] = {
{ "1m", "set matrix for 2nd plane", OFFSET(matrix_str[1]), AV_OPT_TYPE_STRING,
{.str="0 0 0 0 1 0 0 0 0"}, 0, 0, FLAGS },
{ "2m", "set matrix for 3rd plane", OFFSET(matrix_str[2]), AV_OPT_TYPE_STRING,
{.str="0 0 0 0 1 0 0 0 0"}, 0, 0, FLAGS },
{ "3m", "set matrix for 4th plane", OFFSET(matrix_str[3]), AV_OPT_TYPE_STRING,
{.str="0 0 0 0 1 0 0 0 0"}, 0, 0, FLAGS },
- { "0rdiv", "set rdiv for 1st plane", OFFSET(rdiv[0]), AV_OPT_TYPE_FLOAT,
{.dbl=0.0}, 0.0, INT_MAX, FLAGS},
- { "1rdiv", "set rdiv for 2nd plane", OFFSET(rdiv[1]), AV_OPT_TYPE_FLOAT,
{.dbl=0.0}, 0.0, INT_MAX, FLAGS},
- { "2rdiv", "set rdiv for 3rd plane", OFFSET(rdiv[2]), AV_OPT_TYPE_FLOAT,
{.dbl=0.0}, 0.0, INT_MAX, FLAGS},
- { "3rdiv", "set rdiv for 4th plane", OFFSET(rdiv[3]), AV_OPT_TYPE_FLOAT,
{.dbl=0.0}, 0.0, INT_MAX, FLAGS},
+ { "0rdiv", "set rdiv for 1st plane", OFFSET(user_rdiv[0]),
AV_OPT_TYPE_FLOAT, {.dbl=0.0}, 0.0, INT_MAX, FLAGS},
+ { "1rdiv", "set rdiv for 2nd plane", OFFSET(user_rdiv[1]),
AV_OPT_TYPE_FLOAT, {.dbl=0.0}, 0.0, INT_MAX, FLAGS},
+ { "2rdiv", "set rdiv for 3rd plane", OFFSET(user_rdiv[2]),
AV_OPT_TYPE_FLOAT, {.dbl=0.0}, 0.0, INT_MAX, FLAGS},
+ { "3rdiv", "set rdiv for 4th plane", OFFSET(user_rdiv[3]),
AV_OPT_TYPE_FLOAT, {.dbl=0.0}, 0.0, INT_MAX, FLAGS},
{ "0bias", "set bias for 1st plane", OFFSET(bias[0]), AV_OPT_TYPE_FLOAT,
{.dbl=0.0}, 0.0, INT_MAX, FLAGS},
{ "1bias", "set bias for 2nd plane", OFFSET(bias[1]), AV_OPT_TYPE_FLOAT,
{.dbl=0.0}, 0.0, INT_MAX, FLAGS},
{ "2bias", "set bias for 3rd plane", OFFSET(bias[2]), AV_OPT_TYPE_FLOAT,
{.dbl=0.0}, 0.0, INT_MAX, FLAGS},
@@ -669,6 +669,7 @@ static int param_init(AVFilterContext *ctx)
for (i = 0; i < 4; i++) {
int *matrix = (int *)s->matrix[i];
char *orig, *p, *arg, *saveptr = NULL;
+ s->rdiv[i] = s->user_rdiv[i];
float sum = 1.f;
p = orig = av_strdup(s->matrix_str[i]);
--
2.43.2
_______________________________________________
ffmpeg-devel mailing list
ffmpeg-devel@ffmpeg.org
https://ffmpeg.org/mailman/listinfo/ffmpeg-devel
To unsubscribe, visit link above, or email
ffmpeg-devel-requ...@ffmpeg.org with subject "unsubscribe".