[FFmpeg-devel] [PATCH] avfilter/vf_lut3d: support remaping negative values in the prelut
Mark Reid
mindmark at gmail.com
Sun Sep 6 00:15:39 EEST 2020
On Sat, Sep 5, 2020 at 2:13 PM <mindmark at gmail.com> wrote:
> From: Mark Reid <mindmark at gmail.com>
>
> ---
> libavfilter/vf_lut3d.c | 8 +++-----
> 1 file changed, 3 insertions(+), 5 deletions(-)
>
> diff --git a/libavfilter/vf_lut3d.c b/libavfilter/vf_lut3d.c
> index 6730a424ce..988f6c8b55 100644
> --- a/libavfilter/vf_lut3d.c
> +++ b/libavfilter/vf_lut3d.c
> @@ -878,18 +878,16 @@ static int parse_cinespace(AVFilterContext *ctx,
> FILE *f)
>
> prelut_sizes[i] = npoints;
> in_min[i] = FLT_MAX;
> - in_max[i] = FLT_MIN;
> + in_max[i] = -FLT_MAX;
> out_min[i] = FLT_MAX;
> - out_max[i] = FLT_MIN;
> -
> - last = FLT_MIN;
> + out_max[i] = -FLT_MAX;
>
> for (int j = 0; j < npoints; j++) {
> NEXT_FLOAT_OR_GOTO(v, end)
> in_min[i] = FFMIN(in_min[i], v);
> in_max[i] = FFMAX(in_max[i], v);
> in_prelut[i][j] = v;
> - if (v < last) {
> + if (j > 0 && v < last) {
> av_log(ctx, AV_LOG_ERROR, "Invalid file, non
> increasing prelut.\n");
> ret = AVERROR(ENOMEM);
> goto end;
> --
> 2.27.0
>
>
Sorry I meant to include this in the email.
Here is a sample cinespace lut that remaps negative values in the prelut
https://www.dropbox.com/s/7e4j7r264y0bueu/log_prelut.csp
More information about the ffmpeg-devel
mailing list